presenter 0.7.0 → 0.7.1
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/dist/export.js +21 -21
- package/dist/export.mjs +559 -523
- package/dist/presenter.js +2 -2
- package/dist/presenter.mjs +723 -687
- package/dist/renderer/browser-canvas/utils/clipToPath.d.ts +7 -0
- package/dist/utils/objects/circle/getCircleInsetFillPath.d.ts +7 -0
- package/dist/utils/objects/rectangle/getRectangleInsetFillPath.d.ts +7 -0
- package/package.json +3 -2
package/dist/export.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import Kt from "path";
|
|
2
|
-
import { Canvas as
|
|
3
|
-
import { readFile as
|
|
4
|
-
const
|
|
2
|
+
import { Canvas as Ya, Path2D as qa, Image as Ja } from "skia-canvas";
|
|
3
|
+
import { readFile as Ha } from "fs";
|
|
4
|
+
const Le = {
|
|
5
5
|
Browser: "browser",
|
|
6
6
|
Node: "node"
|
|
7
|
-
},
|
|
7
|
+
}, ye = {
|
|
8
8
|
ARROW: "Arrow",
|
|
9
9
|
CIRCLE: "Circle",
|
|
10
10
|
GROUP: "Group",
|
|
@@ -17,7 +17,7 @@ const De = {
|
|
|
17
17
|
SLIDE_OBJECT: "SlideObject",
|
|
18
18
|
TEXT: "Text"
|
|
19
19
|
};
|
|
20
|
-
function
|
|
20
|
+
function ja(e) {
|
|
21
21
|
const { drawn: n, startX: t, startY: A, endX: a, endY: i, arrowheadSize: s, isArrowheadFilled: c, isDrawnFromCenter: l } = e, r = { x: t, y: A }, o = { x: a, y: i }, f = Math.atan2(o.y - r.y, o.x - r.x), m = { x: r.x + (o.x - r.x) / 2, y: r.y + (o.y - r.y) / 2 }, d = o.x - r.x, g = o.y - r.y, y = Math.hypot(d, g) * n, v = Math.cos(f), b = Math.sin(f), x = l ? { x: m.x - v * y / 2, y: m.y - b * y / 2 } : r, D = l ? { x: m.x + v * y / 2, y: m.y + b * y / 2 } : { x: r.x + v * y, y: r.y + b * y }, B = c ? Math.PI / 6 : Math.PI / 4.5, T = y < s * 2 ? y / 2 : s, S = {
|
|
22
22
|
x: D.x - T * Math.cos(f - B),
|
|
23
23
|
y: D.y - T * Math.sin(f - B)
|
|
@@ -37,17 +37,17 @@ function Ha(e) {
|
|
|
37
37
|
doubledArrowheadPoints: [k, x, M]
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
|
-
function
|
|
40
|
+
function xa(e, n = null) {
|
|
41
41
|
return e.alpha * (n ?? 1);
|
|
42
42
|
}
|
|
43
43
|
function Zt(e, n = null) {
|
|
44
|
-
const { red: t, green: A, blue: a } = e, i = t << 16 | A << 8 | a, s = Math.round(
|
|
44
|
+
const { red: t, green: A, blue: a } = e, i = t << 16 | A << 8 | a, s = Math.round(xa(e, n) * 255);
|
|
45
45
|
return `#${i.toString(16).padStart(6, "0")}${s !== 255 ? s.toString(16).padStart(2, "0") : ""}`;
|
|
46
46
|
}
|
|
47
47
|
function Ge(e, n) {
|
|
48
48
|
throw new Error("Unexpected value: " + e);
|
|
49
49
|
}
|
|
50
|
-
const
|
|
50
|
+
const We = {
|
|
51
51
|
Browser: "browser",
|
|
52
52
|
Node: "node"
|
|
53
53
|
};
|
|
@@ -78,11 +78,11 @@ function Ee({
|
|
|
78
78
|
return;
|
|
79
79
|
}
|
|
80
80
|
switch (e.type) {
|
|
81
|
-
case
|
|
82
|
-
s.type ===
|
|
81
|
+
case Le.Browser:
|
|
82
|
+
s.type === We.Browser ? e.context.stroke(s.path) : console.warn("Attempted to use Node Path2D in Browser Canvas context");
|
|
83
83
|
break;
|
|
84
|
-
case
|
|
85
|
-
s.type ===
|
|
84
|
+
case Le.Node:
|
|
85
|
+
s.type === We.Node ? e.context.stroke(s.path) : console.warn("Attempted to use Browser Path2D in Node Canvas context");
|
|
86
86
|
break;
|
|
87
87
|
default:
|
|
88
88
|
Ge(e);
|
|
@@ -90,20 +90,20 @@ function Ee({
|
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
92
|
function kt(e, n = null) {
|
|
93
|
-
const { red: t, green: A, blue: a } = e, i =
|
|
93
|
+
const { red: t, green: A, blue: a } = e, i = xa(e, n);
|
|
94
94
|
return `rgba(${t}, ${A}, ${a}, ${i})`;
|
|
95
95
|
}
|
|
96
|
-
function
|
|
96
|
+
function Me({ ctx: e, path: n, color: t, opacity: A = null }) {
|
|
97
97
|
if (e.context.fillStyle = kt(t, A), n === void 0) {
|
|
98
98
|
e.context.fill();
|
|
99
99
|
return;
|
|
100
100
|
}
|
|
101
101
|
switch (e.type) {
|
|
102
|
-
case
|
|
103
|
-
n.type ===
|
|
102
|
+
case Le.Browser:
|
|
103
|
+
n.type === We.Browser ? e.context.fill(n.path) : console.warn("Attempted to use Node Path2D in Browser Canvas context");
|
|
104
104
|
break;
|
|
105
|
-
case
|
|
106
|
-
n.type ===
|
|
105
|
+
case Le.Node:
|
|
106
|
+
n.type === We.Node ? e.context.fill(n.path) : console.warn("Attempted to use Browser Path2D in Node Canvas context");
|
|
107
107
|
break;
|
|
108
108
|
default:
|
|
109
109
|
Ge(e);
|
|
@@ -124,7 +124,7 @@ function St(e, n) {
|
|
|
124
124
|
}
|
|
125
125
|
return { path: t, length: a };
|
|
126
126
|
}
|
|
127
|
-
const
|
|
127
|
+
const Ka = ({
|
|
128
128
|
ctx: e,
|
|
129
129
|
object: n,
|
|
130
130
|
opacity: t,
|
|
@@ -133,14 +133,14 @@ const ja = ({
|
|
|
133
133
|
const a = n.opacity * t;
|
|
134
134
|
if (a === 0 || n.drawn === 0)
|
|
135
135
|
return;
|
|
136
|
-
const { arrowPoints: i, arrowheadPoints: s, doubledArrowheadPoints: c } =
|
|
136
|
+
const { arrowPoints: i, arrowheadPoints: s, doubledArrowheadPoints: c } = ja(n), { path: l } = St(i, A), { path: r } = St(s, A);
|
|
137
137
|
if (Ee({
|
|
138
138
|
color: n.color,
|
|
139
139
|
ctx: e,
|
|
140
140
|
path: l,
|
|
141
141
|
opacity: a,
|
|
142
142
|
width: n.width
|
|
143
|
-
}), n.isArrowheadFilled && (r.path.closePath(),
|
|
143
|
+
}), n.isArrowheadFilled && (r.path.closePath(), Me({
|
|
144
144
|
ctx: e,
|
|
145
145
|
path: r,
|
|
146
146
|
color: n.color,
|
|
@@ -156,7 +156,7 @@ const ja = ({
|
|
|
156
156
|
c,
|
|
157
157
|
A
|
|
158
158
|
);
|
|
159
|
-
n.isArrowheadFilled && (o.path.closePath(),
|
|
159
|
+
n.isArrowheadFilled && (o.path.closePath(), Me({
|
|
160
160
|
ctx: e,
|
|
161
161
|
path: o,
|
|
162
162
|
color: n.color,
|
|
@@ -170,13 +170,32 @@ const ja = ({
|
|
|
170
170
|
});
|
|
171
171
|
}
|
|
172
172
|
};
|
|
173
|
-
function
|
|
173
|
+
function Za(e, n) {
|
|
174
|
+
const t = e.radius - e.borderWidth / 2;
|
|
175
|
+
if (t <= 0)
|
|
176
|
+
return;
|
|
177
|
+
const A = n(), a = -Math.PI / 2;
|
|
178
|
+
return A.path.arc(e.x, e.y, t, a, a + 2 * Math.PI), A;
|
|
179
|
+
}
|
|
180
|
+
function $a(e, n) {
|
|
174
181
|
const t = n(), A = -Math.PI / 2;
|
|
175
182
|
t.path.arc(e.x, e.y, e.radius, A, A + 2 * Math.PI);
|
|
176
183
|
const a = 2 * Math.PI * e.radius;
|
|
177
184
|
return { path: t, length: a };
|
|
178
185
|
}
|
|
179
|
-
|
|
186
|
+
function Ca(e, n) {
|
|
187
|
+
switch (e.type) {
|
|
188
|
+
case Le.Browser:
|
|
189
|
+
n.type === We.Browser ? e.context.clip(n.path) : console.warn("Attempted to use Node Path2D in Browser Canvas context");
|
|
190
|
+
break;
|
|
191
|
+
case Le.Node:
|
|
192
|
+
n.type === We.Node ? e.context.clip(n.path) : console.warn("Attempted to use Browser Path2D in Node Canvas context");
|
|
193
|
+
break;
|
|
194
|
+
default:
|
|
195
|
+
Ge(e);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
const er = ({
|
|
180
199
|
ctx: e,
|
|
181
200
|
object: n,
|
|
182
201
|
opacity: t,
|
|
@@ -185,13 +204,13 @@ const Za = ({
|
|
|
185
204
|
const a = n.opacity * t;
|
|
186
205
|
if (a === 0 || n.drawn === 0 && n.fill.alpha === 0)
|
|
187
206
|
return;
|
|
188
|
-
const { path: i, length: s } =
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
path: i,
|
|
192
|
-
|
|
193
|
-
opacity: a
|
|
194
|
-
|
|
207
|
+
const { path: i, length: s } = $a(n, A);
|
|
208
|
+
if (a < 1 && n.borderWidth > 0) {
|
|
209
|
+
const c = Za(n, A);
|
|
210
|
+
c !== void 0 && (e.context.save(), Ca(e, c), Me({ ctx: e, path: i, color: n.fill, opacity: a }), e.context.restore());
|
|
211
|
+
} else
|
|
212
|
+
Me({ ctx: e, path: i, color: n.fill, opacity: a });
|
|
213
|
+
Ee({
|
|
195
214
|
color: n.borderColor,
|
|
196
215
|
ctx: e,
|
|
197
216
|
drawn: n.drawn,
|
|
@@ -201,22 +220,22 @@ const Za = ({
|
|
|
201
220
|
width: n.borderWidth
|
|
202
221
|
});
|
|
203
222
|
};
|
|
204
|
-
function
|
|
223
|
+
function ve(e = null) {
|
|
205
224
|
return {
|
|
206
225
|
x: 0,
|
|
207
226
|
y: 0,
|
|
208
227
|
...e
|
|
209
228
|
};
|
|
210
229
|
}
|
|
211
|
-
const
|
|
212
|
-
function
|
|
230
|
+
const tr = ve();
|
|
231
|
+
function Fe(e = null) {
|
|
213
232
|
return {
|
|
214
233
|
height: 0,
|
|
215
234
|
width: 0,
|
|
216
235
|
...e
|
|
217
236
|
};
|
|
218
237
|
}
|
|
219
|
-
const
|
|
238
|
+
const ar = Fe({ width: 0, height: 0 }), Ue = {
|
|
220
239
|
TOP_LEFT: "TopLeft",
|
|
221
240
|
TOP: "Top",
|
|
222
241
|
TOP_RIGHT: "TopRight",
|
|
@@ -227,76 +246,76 @@ const er = Ie({ width: 0, height: 0 }), ze = {
|
|
|
227
246
|
BOTTOM: "Bottom",
|
|
228
247
|
BOTTOM_RIGHT: "BottomRight"
|
|
229
248
|
};
|
|
230
|
-
function
|
|
249
|
+
function Ie(e = null) {
|
|
231
250
|
return {
|
|
232
|
-
origin:
|
|
233
|
-
size:
|
|
251
|
+
origin: tr,
|
|
252
|
+
size: ar,
|
|
234
253
|
...e
|
|
235
254
|
};
|
|
236
255
|
}
|
|
237
|
-
|
|
238
|
-
function
|
|
256
|
+
Ie();
|
|
257
|
+
function qe(e, n, t) {
|
|
239
258
|
const { x: A, y: a } = e, { width: i, height: s } = t;
|
|
240
259
|
switch (n) {
|
|
241
|
-
case
|
|
242
|
-
return
|
|
243
|
-
origin:
|
|
260
|
+
case Ue.TOP_LEFT:
|
|
261
|
+
return Ie({
|
|
262
|
+
origin: ve({ x: A, y: a }),
|
|
244
263
|
size: t
|
|
245
264
|
});
|
|
246
|
-
case
|
|
247
|
-
return
|
|
248
|
-
origin:
|
|
265
|
+
case Ue.TOP:
|
|
266
|
+
return Ie({
|
|
267
|
+
origin: ve({ x: A - i / 2, y: a }),
|
|
249
268
|
size: t
|
|
250
269
|
});
|
|
251
|
-
case
|
|
252
|
-
return
|
|
253
|
-
origin:
|
|
270
|
+
case Ue.TOP_RIGHT:
|
|
271
|
+
return Ie({
|
|
272
|
+
origin: ve({ x: A - i, y: a }),
|
|
254
273
|
size: t
|
|
255
274
|
});
|
|
256
|
-
case
|
|
257
|
-
return
|
|
258
|
-
origin:
|
|
275
|
+
case Ue.LEFT:
|
|
276
|
+
return Ie({
|
|
277
|
+
origin: ve({ x: A, y: a - s / 2 }),
|
|
259
278
|
size: t
|
|
260
279
|
});
|
|
261
|
-
case
|
|
262
|
-
return
|
|
263
|
-
origin:
|
|
280
|
+
case Ue.CENTER:
|
|
281
|
+
return Ie({
|
|
282
|
+
origin: ve({ x: A - i / 2, y: a - s / 2 }),
|
|
264
283
|
size: t
|
|
265
284
|
});
|
|
266
|
-
case
|
|
267
|
-
return
|
|
268
|
-
origin:
|
|
285
|
+
case Ue.RIGHT:
|
|
286
|
+
return Ie({
|
|
287
|
+
origin: ve({ x: A - i, y: a - s / 2 }),
|
|
269
288
|
size: t
|
|
270
289
|
});
|
|
271
|
-
case
|
|
272
|
-
return
|
|
273
|
-
origin:
|
|
290
|
+
case Ue.BOTTOM_LEFT:
|
|
291
|
+
return Ie({
|
|
292
|
+
origin: ve({ x: A, y: a - s }),
|
|
274
293
|
size: t
|
|
275
294
|
});
|
|
276
|
-
case
|
|
277
|
-
return
|
|
278
|
-
origin:
|
|
295
|
+
case Ue.BOTTOM:
|
|
296
|
+
return Ie({
|
|
297
|
+
origin: ve({ x: A - i / 2, y: a - s }),
|
|
279
298
|
size: t
|
|
280
299
|
});
|
|
281
|
-
case
|
|
282
|
-
return
|
|
283
|
-
origin:
|
|
300
|
+
case Ue.BOTTOM_RIGHT:
|
|
301
|
+
return Ie({
|
|
302
|
+
origin: ve({ x: A - i, y: a - s }),
|
|
284
303
|
size: t
|
|
285
304
|
});
|
|
286
305
|
default:
|
|
287
306
|
Ge(n);
|
|
288
307
|
}
|
|
289
308
|
}
|
|
290
|
-
const
|
|
309
|
+
const rr = ({
|
|
291
310
|
ctx: e,
|
|
292
311
|
object: n,
|
|
293
312
|
renderObject: t,
|
|
294
313
|
opacity: A
|
|
295
314
|
}) => {
|
|
296
|
-
const a =
|
|
297
|
-
|
|
315
|
+
const a = qe(
|
|
316
|
+
ve({ x: n.x, y: n.y }),
|
|
298
317
|
n.anchor,
|
|
299
|
-
|
|
318
|
+
Fe({
|
|
300
319
|
width: n.width * n.scale,
|
|
301
320
|
height: n.height * n.scale
|
|
302
321
|
})
|
|
@@ -308,7 +327,7 @@ const tr = ({
|
|
|
308
327
|
n.previewColor !== null && (e.context.fillStyle = Zt(n.previewColor), e.context.fillRect(0, 0, n.width, n.height)), e.context.translate(s, c), e.context.rotate(-i * Math.PI / 180), e.context.translate(-s, -c), n.rotateOriginPreviewSize > 0 && (e.context.fillStyle = "red", e.context.beginPath(), e.context.arc(s, c, n.rotateOriginPreviewSize, 0, 2 * Math.PI), e.context.fill()), e.context.scale(1 / n.scale, 1 / n.scale), e.context.translate(-a.origin.x, -a.origin.y);
|
|
309
328
|
}
|
|
310
329
|
};
|
|
311
|
-
function
|
|
330
|
+
function $t(e, n, t, A, a = 0) {
|
|
312
331
|
const i = A();
|
|
313
332
|
i.path.moveTo(e.x + t, e.y), i.path.lineTo(e.x + n.width - t, e.y), i.path.arcTo(
|
|
314
333
|
e.x + n.width,
|
|
@@ -335,39 +354,39 @@ function xa(e, n, t, A, a = 0) {
|
|
|
335
354
|
const Gt = {
|
|
336
355
|
Browser: "browser",
|
|
337
356
|
Node: "node"
|
|
338
|
-
},
|
|
357
|
+
}, nr = ({
|
|
339
358
|
ctx: e,
|
|
340
359
|
imageById: n,
|
|
341
360
|
object: t,
|
|
342
361
|
opacity: A,
|
|
343
362
|
createPath2D: a
|
|
344
363
|
}) => {
|
|
345
|
-
const i =
|
|
346
|
-
|
|
364
|
+
const i = qe(
|
|
365
|
+
ve({ x: t.x, y: t.y }),
|
|
347
366
|
t.anchor,
|
|
348
|
-
|
|
367
|
+
Fe({ width: t.width, height: t.height })
|
|
349
368
|
), s = n[t.imageId];
|
|
350
369
|
if (s !== void 0) {
|
|
351
370
|
if (e.context.save(), t.rounding > 0) {
|
|
352
|
-
const c =
|
|
371
|
+
const c = $t(
|
|
353
372
|
i.origin,
|
|
354
373
|
i.size,
|
|
355
374
|
t.rounding,
|
|
356
375
|
a
|
|
357
376
|
);
|
|
358
377
|
switch (e.type) {
|
|
359
|
-
case
|
|
360
|
-
c.path.type ===
|
|
378
|
+
case Le.Browser:
|
|
379
|
+
c.path.type === We.Browser ? e.context.clip(c.path.path) : console.warn("Attempted to use Node Path2D in Browser Canvas context");
|
|
361
380
|
break;
|
|
362
|
-
case
|
|
363
|
-
c.path.type ===
|
|
381
|
+
case Le.Node:
|
|
382
|
+
c.path.type === We.Node ? e.context.clip(c.path.path) : console.warn("Attempted to use Browser Path2D in Node Canvas context");
|
|
364
383
|
break;
|
|
365
384
|
default:
|
|
366
385
|
Ge(e);
|
|
367
386
|
}
|
|
368
387
|
}
|
|
369
388
|
switch (e.context.globalAlpha = A * t.opacity, e.context.imageSmoothingEnabled = t.smooth, e.type) {
|
|
370
|
-
case
|
|
389
|
+
case Le.Browser:
|
|
371
390
|
s.type === Gt.Browser ? e.context.drawImage(
|
|
372
391
|
s.image,
|
|
373
392
|
i.origin.x,
|
|
@@ -376,7 +395,7 @@ const Gt = {
|
|
|
376
395
|
i.size.height
|
|
377
396
|
) : console.warn("Attempted to use Node Image in Browser Canvas context");
|
|
378
397
|
break;
|
|
379
|
-
case
|
|
398
|
+
case Le.Node:
|
|
380
399
|
s.type === Gt.Node ? e.context.drawImage(
|
|
381
400
|
s.image,
|
|
382
401
|
i.origin.x,
|
|
@@ -391,13 +410,13 @@ const Gt = {
|
|
|
391
410
|
e.context.restore();
|
|
392
411
|
}
|
|
393
412
|
};
|
|
394
|
-
function
|
|
413
|
+
function or(e, n) {
|
|
395
414
|
const t = n();
|
|
396
415
|
t.path.moveTo(e.startX, e.startY), t.path.lineTo(e.endX, e.endY);
|
|
397
416
|
const A = Math.hypot(e.endX - e.startX, e.endY - e.startY);
|
|
398
417
|
return { path: t, length: A };
|
|
399
418
|
}
|
|
400
|
-
const
|
|
419
|
+
const ir = ({
|
|
401
420
|
ctx: e,
|
|
402
421
|
object: n,
|
|
403
422
|
opacity: t,
|
|
@@ -406,7 +425,7 @@ const nr = ({
|
|
|
406
425
|
const a = n.opacity * t;
|
|
407
426
|
if (a === 0 || n.drawn === 0)
|
|
408
427
|
return;
|
|
409
|
-
const { path: i, length: s } =
|
|
428
|
+
const { path: i, length: s } = or(n, A);
|
|
410
429
|
Ee({
|
|
411
430
|
color: n.color,
|
|
412
431
|
ctx: e,
|
|
@@ -422,7 +441,7 @@ const nr = ({
|
|
|
422
441
|
function Pe(e, n = 0, t = 0, A = 1) {
|
|
423
442
|
if (typeof e == "string") {
|
|
424
443
|
const a = e.replace("#", ""), i = parseInt(a, 16);
|
|
425
|
-
return isNaN(i) ? (console.warn("Invalid hex color format:", e),
|
|
444
|
+
return isNaN(i) ? (console.warn("Invalid hex color format:", e), la) : a.length === 6 ? {
|
|
426
445
|
red: i >> 16 & 255,
|
|
427
446
|
green: i >> 8 & 255,
|
|
428
447
|
blue: i & 255,
|
|
@@ -432,7 +451,7 @@ function Pe(e, n = 0, t = 0, A = 1) {
|
|
|
432
451
|
green: i >> 16 & 255,
|
|
433
452
|
blue: i >> 8 & 255,
|
|
434
453
|
alpha: (i & 255) / 255
|
|
435
|
-
} : (console.warn("Invalid hex color format:", e),
|
|
454
|
+
} : (console.warn("Invalid hex color format:", e), la);
|
|
436
455
|
} else if (typeof e == "number")
|
|
437
456
|
return {
|
|
438
457
|
red: e,
|
|
@@ -454,23 +473,23 @@ Pe.GREEN = Pe(0, 255, 0);
|
|
|
454
473
|
Pe.RED = Pe(255, 0, 0);
|
|
455
474
|
Pe.TRANSPARENT = Pe(0, 0, 0, 0);
|
|
456
475
|
Pe.WHITE = Pe(255, 255, 255);
|
|
457
|
-
const
|
|
476
|
+
const la = { red: 0, green: 0, blue: 0, alpha: 1 }, Ar = ({
|
|
458
477
|
ctx: e,
|
|
459
478
|
object: n,
|
|
460
479
|
opacity: t,
|
|
461
480
|
renderObject: A
|
|
462
481
|
}) => {
|
|
463
482
|
e.context.save();
|
|
464
|
-
const a =
|
|
465
|
-
|
|
483
|
+
const a = qe(
|
|
484
|
+
ve({ x: n.x, y: n.y }),
|
|
466
485
|
n.anchor,
|
|
467
|
-
|
|
486
|
+
Fe({ width: n.width, height: n.height })
|
|
468
487
|
);
|
|
469
488
|
n.preview && (e.context.lineWidth = 4, e.context.strokeStyle = Zt(Pe.RED), e.context.rect(a.origin.x, a.origin.y, a.size.width, a.size.height), e.context.stroke()), e.context.beginPath(), e.context.rect(a.origin.x, a.origin.y, a.size.width, a.size.height), e.context.closePath(), e.context.clip();
|
|
470
489
|
for (const i of n.objects)
|
|
471
490
|
A(i, t * n.opacity);
|
|
472
491
|
e.context.restore();
|
|
473
|
-
},
|
|
492
|
+
}, sr = ({
|
|
474
493
|
ctx: e,
|
|
475
494
|
object: n,
|
|
476
495
|
opacity: t,
|
|
@@ -479,12 +498,12 @@ const sa = { red: 0, green: 0, blue: 0, alpha: 1 }, or = ({
|
|
|
479
498
|
const a = n.opacity * t;
|
|
480
499
|
if (a === 0 || n.drawn === 0 && n.fill.alpha === 0)
|
|
481
500
|
return;
|
|
482
|
-
const { origin: i } =
|
|
483
|
-
|
|
501
|
+
const { origin: i } = qe(
|
|
502
|
+
ve({ x: n.x, y: n.y }),
|
|
484
503
|
n.anchor,
|
|
485
|
-
|
|
504
|
+
Fe({ width: n.width, height: n.height })
|
|
486
505
|
), s = A(n.path);
|
|
487
|
-
e.context.save(), e.context.translate(i.x, i.y), e.context.scale(n.width / n.viewboxWidth, n.height / n.viewboxHeight),
|
|
506
|
+
e.context.save(), e.context.translate(i.x, i.y), e.context.scale(n.width / n.viewboxWidth, n.height / n.viewboxHeight), Me({
|
|
488
507
|
ctx: e,
|
|
489
508
|
path: s,
|
|
490
509
|
color: n.fill,
|
|
@@ -500,7 +519,7 @@ const sa = { red: 0, green: 0, blue: 0, alpha: 1 }, or = ({
|
|
|
500
519
|
width: n.strokeWidth
|
|
501
520
|
}), e.context.restore();
|
|
502
521
|
};
|
|
503
|
-
function
|
|
522
|
+
function La(e, n) {
|
|
504
523
|
const t = n(), A = e.points, a = A[0];
|
|
505
524
|
if (a === void 0)
|
|
506
525
|
return { path: t, length: 0 };
|
|
@@ -521,7 +540,7 @@ function Ca(e, n) {
|
|
|
521
540
|
);
|
|
522
541
|
return i += c, { path: t, length: i };
|
|
523
542
|
}
|
|
524
|
-
const
|
|
543
|
+
const lr = ({
|
|
525
544
|
ctx: e,
|
|
526
545
|
object: n,
|
|
527
546
|
opacity: t,
|
|
@@ -530,8 +549,8 @@ const Ar = ({
|
|
|
530
549
|
const a = n.opacity * t;
|
|
531
550
|
if (a === 0 || n.drawn === 0 && n.fill.alpha === 0)
|
|
532
551
|
return;
|
|
533
|
-
const { path: i, length: s } =
|
|
534
|
-
|
|
552
|
+
const { path: i, length: s } = La(n, A);
|
|
553
|
+
Me({
|
|
535
554
|
ctx: e,
|
|
536
555
|
path: i,
|
|
537
556
|
color: n.fill,
|
|
@@ -546,14 +565,31 @@ const Ar = ({
|
|
|
546
565
|
width: n.borderWidth
|
|
547
566
|
});
|
|
548
567
|
};
|
|
549
|
-
function
|
|
550
|
-
const { origin:
|
|
551
|
-
|
|
568
|
+
function cr(e, n) {
|
|
569
|
+
const t = e.borderWidth / 2, { origin: A, size: a } = qe(
|
|
570
|
+
ve({ x: e.x, y: e.y }),
|
|
552
571
|
e.anchor,
|
|
553
|
-
|
|
572
|
+
Fe({ width: e.width, height: e.height })
|
|
573
|
+
), i = a.width - e.borderWidth, s = a.height - e.borderWidth;
|
|
574
|
+
if (i <= 0 || s <= 0)
|
|
575
|
+
return;
|
|
576
|
+
const c = ve({ x: A.x + t, y: A.y + t }), l = Fe({ width: i, height: s }), r = Math.max(
|
|
577
|
+
0,
|
|
578
|
+
Math.min(e.rounding - t, Math.min(i, s) / 2)
|
|
579
|
+
);
|
|
580
|
+
if (r > 0)
|
|
581
|
+
return $t(c, l, r, n).path;
|
|
582
|
+
const o = n();
|
|
583
|
+
return o.path.moveTo(c.x, c.y), o.path.lineTo(c.x + i, c.y), o.path.lineTo(c.x + i, c.y + s), o.path.lineTo(c.x, c.y + s), o.path.closePath(), o;
|
|
584
|
+
}
|
|
585
|
+
function dr(e, n) {
|
|
586
|
+
const { origin: t, size: A } = qe(
|
|
587
|
+
ve({ x: e.x, y: e.y }),
|
|
588
|
+
e.anchor,
|
|
589
|
+
Fe({ width: e.width, height: e.height })
|
|
554
590
|
), a = Math.max(0, Math.min(e.rounding, Math.min(A.width, A.height) / 2)), i = Math.min(e.borderWidth * 2, A.width - a);
|
|
555
591
|
if (a > 0)
|
|
556
|
-
return
|
|
592
|
+
return $t(t, A, a, n, i);
|
|
557
593
|
{
|
|
558
594
|
const s = n();
|
|
559
595
|
s.path.moveTo(t.x, t.y), s.path.lineTo(t.x + A.width, t.y), s.path.lineTo(t.x + A.width, t.y + A.height), s.path.lineTo(t.x, t.y + A.height), s.path.lineTo(t.x, t.y), s.path.lineTo(t.x + i, t.y);
|
|
@@ -561,7 +597,7 @@ function sr(e, n) {
|
|
|
561
597
|
return { path: s, length: c };
|
|
562
598
|
}
|
|
563
599
|
}
|
|
564
|
-
const
|
|
600
|
+
const fr = ({
|
|
565
601
|
ctx: e,
|
|
566
602
|
object: n,
|
|
567
603
|
opacity: t,
|
|
@@ -570,13 +606,13 @@ const lr = ({
|
|
|
570
606
|
const a = n.opacity * t;
|
|
571
607
|
if (a === 0 || n.drawn === 0 && n.fill.alpha === 0)
|
|
572
608
|
return;
|
|
573
|
-
const { path: i, length: s } =
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
path: i,
|
|
577
|
-
|
|
578
|
-
opacity: a
|
|
579
|
-
|
|
609
|
+
const { path: i, length: s } = dr(n, A);
|
|
610
|
+
if (a < 1 && n.borderWidth > 0) {
|
|
611
|
+
const c = cr(n, A);
|
|
612
|
+
c !== void 0 && (e.context.save(), Ca(e, c), Me({ ctx: e, path: i, color: n.fill, opacity: a }), e.context.restore());
|
|
613
|
+
} else
|
|
614
|
+
Me({ ctx: e, path: i, color: n.fill, opacity: a });
|
|
615
|
+
Ee({
|
|
580
616
|
color: n.borderColor,
|
|
581
617
|
ctx: e,
|
|
582
618
|
drawn: n.drawn,
|
|
@@ -590,7 +626,7 @@ const lr = ({
|
|
|
590
626
|
CENTER: "center",
|
|
591
627
|
RIGHT: "right"
|
|
592
628
|
};
|
|
593
|
-
function
|
|
629
|
+
function Ba(e) {
|
|
594
630
|
return {
|
|
595
631
|
color: e.color,
|
|
596
632
|
fontFamily: e.fontFamily,
|
|
@@ -600,10 +636,10 @@ function La(e) {
|
|
|
600
636
|
ligatures: e.ligatures
|
|
601
637
|
};
|
|
602
638
|
}
|
|
603
|
-
function
|
|
639
|
+
function Da(e) {
|
|
604
640
|
return typeof e == "string" ? [[{ text: e }]] : e.map((n) => n.map((t) => typeof t == "string" ? { text: t } : t));
|
|
605
641
|
}
|
|
606
|
-
function
|
|
642
|
+
function Pa(e, n = 1) {
|
|
607
643
|
const t = Math.max(...e.map((i) => i.reduce((s, c) => s + c.width, 0)));
|
|
608
644
|
let A = 0, a = 0;
|
|
609
645
|
for (let i = 0; i < e.length; i++) {
|
|
@@ -618,34 +654,34 @@ function Da(e, n = 1) {
|
|
|
618
654
|
width: t
|
|
619
655
|
};
|
|
620
656
|
}
|
|
621
|
-
function
|
|
657
|
+
function hr(e) {
|
|
622
658
|
return {
|
|
623
659
|
width: e.width,
|
|
624
660
|
height: e.fontBoundingBoxAscent
|
|
625
661
|
};
|
|
626
662
|
}
|
|
627
|
-
function
|
|
628
|
-
e.context.fillStyle = kt(n.color, t), e.context.font = `${n.fontStyle} ${n.fontWeight} ${n.fontSize}px ${n.fontFamily}`, e.type ===
|
|
663
|
+
function ka(e, n, t = 1) {
|
|
664
|
+
e.context.fillStyle = kt(n.color, t), e.context.font = `${n.fontStyle} ${n.fontWeight} ${n.fontSize}px ${n.fontFamily}`, e.type === Le.Browser ? e.context.textRendering = n.ligatures ? "optimizeLegibility" : "optimizeSpeed" : e.context.fontVariant = n.ligatures ? "common-ligatures" : "no-common-ligatures";
|
|
629
665
|
}
|
|
630
|
-
function
|
|
666
|
+
function Ra(e, n, t) {
|
|
631
667
|
const A = [];
|
|
632
668
|
for (const a of e) {
|
|
633
669
|
const i = [];
|
|
634
670
|
for (const s of a) {
|
|
635
671
|
const { text: c, ...l } = s, r = { ...n, ...l };
|
|
636
|
-
|
|
672
|
+
ka(t, r);
|
|
637
673
|
const o = t.context.measureText(c);
|
|
638
|
-
i.push(
|
|
674
|
+
i.push(hr(o));
|
|
639
675
|
}
|
|
640
676
|
A.push(i);
|
|
641
677
|
}
|
|
642
678
|
return A;
|
|
643
679
|
}
|
|
644
|
-
const
|
|
680
|
+
const pr = ({ ctx: e, object: n, opacity: t }) => {
|
|
645
681
|
const A = n.opacity * t;
|
|
646
682
|
if (A === 0)
|
|
647
683
|
return;
|
|
648
|
-
const { length: a } = n, i =
|
|
684
|
+
const { length: a } = n, i = Da(n.text), s = Ba(n), c = Ra(i, s, e), l = Pa(c, n.lineSpacing), r = qe(ve({ x: n.x, y: n.y }), n.anchor, l);
|
|
649
685
|
let o = r.origin.x, f = r.origin.y, m = 0, d = 0;
|
|
650
686
|
for (let g = 0; g < i.length; g++) {
|
|
651
687
|
const u = i[g], y = c[g];
|
|
@@ -684,29 +720,29 @@ const dr = ({ ctx: e, object: n, opacity: t }) => {
|
|
|
684
720
|
const k = U ?? T;
|
|
685
721
|
m += k.length;
|
|
686
722
|
const M = { ...s, ...S };
|
|
687
|
-
|
|
723
|
+
ka(e, M, A), e.context.fillText(k, o, f), o += B.width;
|
|
688
724
|
}
|
|
689
725
|
}
|
|
690
|
-
},
|
|
691
|
-
[
|
|
692
|
-
[
|
|
693
|
-
[
|
|
694
|
-
[
|
|
695
|
-
[
|
|
696
|
-
[
|
|
697
|
-
[
|
|
698
|
-
[
|
|
699
|
-
[
|
|
700
|
-
[
|
|
726
|
+
}, Na = {
|
|
727
|
+
[ye.ARROW]: Ka,
|
|
728
|
+
[ye.CIRCLE]: er,
|
|
729
|
+
[ye.GROUP]: rr,
|
|
730
|
+
[ye.IMAGE]: nr,
|
|
731
|
+
[ye.LINE]: ir,
|
|
732
|
+
[ye.MASK]: Ar,
|
|
733
|
+
[ye.PATH]: sr,
|
|
734
|
+
[ye.POLYGON]: lr,
|
|
735
|
+
[ye.RECTANGLE]: fr,
|
|
736
|
+
[ye.SLIDE_OBJECT]: () => {
|
|
701
737
|
},
|
|
702
|
-
[
|
|
738
|
+
[ye.TEXT]: pr
|
|
703
739
|
};
|
|
704
|
-
function
|
|
740
|
+
function ea(e = null) {
|
|
705
741
|
return {
|
|
706
742
|
backgroundColor: Pe.WHITE,
|
|
707
743
|
slides: [],
|
|
708
744
|
title: "Presentation",
|
|
709
|
-
size:
|
|
745
|
+
size: Fe({ width: 3840, height: 2160 }),
|
|
710
746
|
resources: {
|
|
711
747
|
images: {}
|
|
712
748
|
},
|
|
@@ -721,7 +757,7 @@ const ot = {
|
|
|
721
757
|
/** Represents an immediate update to an object's properties without animation. */
|
|
722
758
|
UPDATE: "Update"
|
|
723
759
|
};
|
|
724
|
-
function
|
|
760
|
+
function ur(e) {
|
|
725
761
|
const n = Array.isArray(e) ? e : [e];
|
|
726
762
|
let t = 0, A = 0;
|
|
727
763
|
for (const a of n)
|
|
@@ -739,7 +775,7 @@ function fr(e) {
|
|
|
739
775
|
}
|
|
740
776
|
return A;
|
|
741
777
|
}
|
|
742
|
-
const
|
|
778
|
+
const gr = {
|
|
743
779
|
check: (e) => typeof e == "object" && e !== null && typeof e.red == "number" && typeof e.green == "number" && typeof e.blue == "number" && typeof e.alpha == "number",
|
|
744
780
|
interpolate: (e, n, t) => ({
|
|
745
781
|
red: Math.round(e.red + (n.red - e.red) * t),
|
|
@@ -747,23 +783,23 @@ const hr = {
|
|
|
747
783
|
blue: Math.round(e.blue + (n.blue - e.blue) * t),
|
|
748
784
|
alpha: e.alpha + (n.alpha - e.alpha) * t
|
|
749
785
|
})
|
|
750
|
-
},
|
|
786
|
+
}, mr = {
|
|
751
787
|
check: (e) => !0,
|
|
752
788
|
interpolate: (e, n) => n
|
|
753
|
-
},
|
|
789
|
+
}, vr = {
|
|
754
790
|
check: (e) => typeof e == "number",
|
|
755
791
|
interpolate: (e, n, t) => e + (n - e) * t
|
|
756
|
-
},
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
792
|
+
}, ca = [
|
|
793
|
+
vr,
|
|
794
|
+
gr,
|
|
795
|
+
mr
|
|
760
796
|
];
|
|
761
|
-
function
|
|
797
|
+
function yr(e, n, t, A = null) {
|
|
762
798
|
if (t === 0)
|
|
763
799
|
return e;
|
|
764
800
|
if (t === 1)
|
|
765
801
|
return { ...e, ...n };
|
|
766
|
-
const a = A != null ? [...A, ...
|
|
802
|
+
const a = A != null ? [...A, ...ca] : ca, i = {};
|
|
767
803
|
for (const s in n) {
|
|
768
804
|
const c = e[s], l = n[s];
|
|
769
805
|
for (const r of a)
|
|
@@ -778,7 +814,7 @@ function gr(e, n, t, A = null) {
|
|
|
778
814
|
}
|
|
779
815
|
return { ...e, ...i };
|
|
780
816
|
}
|
|
781
|
-
function
|
|
817
|
+
function da(e, n, t = null) {
|
|
782
818
|
if (n === null)
|
|
783
819
|
return;
|
|
784
820
|
const A = Array.isArray(n) ? n : [n];
|
|
@@ -800,7 +836,7 @@ function ca(e, n, t = null) {
|
|
|
800
836
|
);
|
|
801
837
|
e.set(i.object, {
|
|
802
838
|
...s,
|
|
803
|
-
...
|
|
839
|
+
...yr(
|
|
804
840
|
s,
|
|
805
841
|
i.props,
|
|
806
842
|
i.easing(l),
|
|
@@ -827,10 +863,10 @@ function ca(e, n, t = null) {
|
|
|
827
863
|
}
|
|
828
864
|
}
|
|
829
865
|
}
|
|
830
|
-
function
|
|
866
|
+
function br(e) {
|
|
831
867
|
return "objects" in e ? e.objects.filter((n) => "objectType" in n) : [];
|
|
832
868
|
}
|
|
833
|
-
function
|
|
869
|
+
function ta({
|
|
834
870
|
slide: e,
|
|
835
871
|
buildIndex: n,
|
|
836
872
|
buildTime: t
|
|
@@ -838,7 +874,7 @@ function ea({
|
|
|
838
874
|
const A = /* @__PURE__ */ new Map();
|
|
839
875
|
function a(s) {
|
|
840
876
|
A.set(s, s);
|
|
841
|
-
for (const c of
|
|
877
|
+
for (const c of br(s))
|
|
842
878
|
a(c);
|
|
843
879
|
}
|
|
844
880
|
for (const s of e.objects)
|
|
@@ -846,15 +882,15 @@ function ea({
|
|
|
846
882
|
const i = t === null ? n : n - 1;
|
|
847
883
|
for (let s = 0; s < i; s++) {
|
|
848
884
|
const c = e.animations[s] ?? null;
|
|
849
|
-
|
|
885
|
+
da(A, c);
|
|
850
886
|
}
|
|
851
887
|
if (t !== null && n > 0) {
|
|
852
888
|
const s = e.animations[n - 1] ?? null;
|
|
853
|
-
|
|
889
|
+
da(A, s, t);
|
|
854
890
|
}
|
|
855
891
|
return A;
|
|
856
892
|
}
|
|
857
|
-
function
|
|
893
|
+
function aa(e) {
|
|
858
894
|
const n = [];
|
|
859
895
|
if (e.isAllKey) {
|
|
860
896
|
for (let t = 0; t <= e.animations.length; t++)
|
|
@@ -866,25 +902,25 @@ function ta(e) {
|
|
|
866
902
|
}), e.isEndKey && n[n.length - 1] !== e.animations.length && n.push(e.animations.length), n;
|
|
867
903
|
}
|
|
868
904
|
function ut(e) {
|
|
869
|
-
return new
|
|
905
|
+
return new Ya(e.width, e.height);
|
|
870
906
|
}
|
|
871
907
|
function Rt(e) {
|
|
872
|
-
const n = new
|
|
908
|
+
const n = new qa(e);
|
|
873
909
|
return {
|
|
874
|
-
type:
|
|
910
|
+
type: We.Node,
|
|
875
911
|
path: n
|
|
876
912
|
};
|
|
877
913
|
}
|
|
878
|
-
async function
|
|
914
|
+
async function Fa(e, n) {
|
|
879
915
|
if (Object.keys(e).length === 0)
|
|
880
916
|
return {};
|
|
881
917
|
const t = {}, A = (i) => new Promise((s, c) => {
|
|
882
|
-
|
|
918
|
+
Ha(Kt.join(n, i), (l, r) => {
|
|
883
919
|
if (l) {
|
|
884
920
|
c(l);
|
|
885
921
|
return;
|
|
886
922
|
}
|
|
887
|
-
const o = new
|
|
923
|
+
const o = new Ja();
|
|
888
924
|
o.src = r, s(o);
|
|
889
925
|
});
|
|
890
926
|
}), a = Object.entries(e).map(async ([i, s]) => {
|
|
@@ -896,17 +932,17 @@ async function Na(e, n) {
|
|
|
896
932
|
});
|
|
897
933
|
return await Promise.all(a), t;
|
|
898
934
|
}
|
|
899
|
-
const
|
|
935
|
+
const fa = Object.freeze({
|
|
900
936
|
directoryName: "",
|
|
901
937
|
imageIndex: 0,
|
|
902
938
|
imageById: {},
|
|
903
939
|
startImageIndex: 0
|
|
904
940
|
});
|
|
905
|
-
class
|
|
941
|
+
class Un {
|
|
906
942
|
constructor(n) {
|
|
907
943
|
const { objectRenderers: t, imageFormat: A = "png", ...a } = n;
|
|
908
944
|
this.props = {
|
|
909
|
-
presentation:
|
|
945
|
+
presentation: ea(),
|
|
910
946
|
imageFormat: A,
|
|
911
947
|
animationHoldFrames: 1,
|
|
912
948
|
framesPerSecond: 30,
|
|
@@ -914,18 +950,18 @@ class En {
|
|
|
914
950
|
getFilenameForImage: (i) => `${i.toString().padStart(4, "0")}.${A}`,
|
|
915
951
|
logFrequency: 0,
|
|
916
952
|
objectRenderers: {
|
|
917
|
-
...
|
|
953
|
+
...Na,
|
|
918
954
|
...t
|
|
919
955
|
},
|
|
920
956
|
resourcePathPrefix: "",
|
|
921
957
|
...a
|
|
922
|
-
}, this.state = { ...
|
|
958
|
+
}, this.state = { ...fa };
|
|
923
959
|
}
|
|
924
960
|
async save(n, t = 0) {
|
|
925
961
|
const { presentation: A, animationHoldFrames: a, isAnimatedExport: i } = this.props;
|
|
926
962
|
this.state = {
|
|
927
|
-
...
|
|
928
|
-
imageById: await
|
|
963
|
+
...fa,
|
|
964
|
+
imageById: await Fa(
|
|
929
965
|
A.resources.images,
|
|
930
966
|
this.props.resourcePathPrefix
|
|
931
967
|
),
|
|
@@ -942,7 +978,7 @@ class En {
|
|
|
942
978
|
const r = c.animations[l];
|
|
943
979
|
if (r === void 0)
|
|
944
980
|
continue;
|
|
945
|
-
const o =
|
|
981
|
+
const o = ur(r), f = Math.ceil(o / 1e3 * this.props.framesPerSecond);
|
|
946
982
|
for (let m = 0; m < f; m++)
|
|
947
983
|
this.renderImage(
|
|
948
984
|
s,
|
|
@@ -953,7 +989,7 @@ class En {
|
|
|
953
989
|
this.renderImage(s, l + 1);
|
|
954
990
|
}
|
|
955
991
|
} else {
|
|
956
|
-
const l =
|
|
992
|
+
const l = aa(c);
|
|
957
993
|
for (const r of l)
|
|
958
994
|
this.renderImage(s, r);
|
|
959
995
|
}
|
|
@@ -967,9 +1003,9 @@ class En {
|
|
|
967
1003
|
if (d === void 0)
|
|
968
1004
|
return;
|
|
969
1005
|
const g = ut(c.size), u = {
|
|
970
|
-
type:
|
|
1006
|
+
type: Le.Node,
|
|
971
1007
|
context: g.getContext("2d")
|
|
972
|
-
}, y =
|
|
1008
|
+
}, y = ta({
|
|
973
1009
|
slide: d,
|
|
974
1010
|
buildIndex: t,
|
|
975
1011
|
buildTime: A
|
|
@@ -991,27 +1027,27 @@ class En {
|
|
|
991
1027
|
await g.toFile(m, { format: this.props.imageFormat }), s > 0 && o % s === 0 && console.log(`Rendered image ${o}: ${m}`);
|
|
992
1028
|
}
|
|
993
1029
|
}
|
|
994
|
-
const
|
|
1030
|
+
const ha = Object.freeze({
|
|
995
1031
|
imageById: {}
|
|
996
1032
|
});
|
|
997
|
-
class
|
|
1033
|
+
class On {
|
|
998
1034
|
constructor(n) {
|
|
999
1035
|
const { objectRenderers: t, ...A } = n;
|
|
1000
1036
|
this.props = {
|
|
1001
|
-
presentation:
|
|
1037
|
+
presentation: ea(),
|
|
1002
1038
|
objectRenderers: {
|
|
1003
|
-
...
|
|
1039
|
+
...Na,
|
|
1004
1040
|
...t
|
|
1005
1041
|
},
|
|
1006
1042
|
resourcePathPrefix: "",
|
|
1007
1043
|
...A
|
|
1008
|
-
}, this.state = { ...
|
|
1044
|
+
}, this.state = { ...ha };
|
|
1009
1045
|
}
|
|
1010
1046
|
async save(n) {
|
|
1011
1047
|
const { presentation: t } = this.props;
|
|
1012
1048
|
this.state = {
|
|
1013
|
-
...
|
|
1014
|
-
imageById: await
|
|
1049
|
+
...ha,
|
|
1050
|
+
imageById: await Fa(
|
|
1015
1051
|
t.resources.images,
|
|
1016
1052
|
this.props.resourcePathPrefix
|
|
1017
1053
|
)
|
|
@@ -1021,7 +1057,7 @@ class Mn {
|
|
|
1021
1057
|
const i = t.slides[a];
|
|
1022
1058
|
if (i === void 0)
|
|
1023
1059
|
continue;
|
|
1024
|
-
const s =
|
|
1060
|
+
const s = aa(i);
|
|
1025
1061
|
for (const c of s)
|
|
1026
1062
|
this.addPage(A, a, c);
|
|
1027
1063
|
}
|
|
@@ -1032,9 +1068,9 @@ class Mn {
|
|
|
1032
1068
|
if (c === void 0)
|
|
1033
1069
|
return;
|
|
1034
1070
|
const l = n.newPage(i.size.width, i.size.height), r = {
|
|
1035
|
-
type:
|
|
1071
|
+
type: Le.Node,
|
|
1036
1072
|
context: l
|
|
1037
|
-
}, o =
|
|
1073
|
+
}, o = ta({
|
|
1038
1074
|
slide: c,
|
|
1039
1075
|
buildIndex: A,
|
|
1040
1076
|
buildTime: null
|
|
@@ -1056,7 +1092,7 @@ class Mn {
|
|
|
1056
1092
|
}
|
|
1057
1093
|
}
|
|
1058
1094
|
var bt = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
|
|
1059
|
-
function
|
|
1095
|
+
function wr(e) {
|
|
1060
1096
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
1061
1097
|
}
|
|
1062
1098
|
function wt(e) {
|
|
@@ -1074,9 +1110,9 @@ Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/js
|
|
|
1074
1110
|
JSZip uses the library pako released under the MIT license :
|
|
1075
1111
|
https://github.com/nodeca/pako/blob/main/LICENSE
|
|
1076
1112
|
*/
|
|
1077
|
-
var
|
|
1078
|
-
function
|
|
1079
|
-
return
|
|
1113
|
+
var pa;
|
|
1114
|
+
function xr() {
|
|
1115
|
+
return pa || (pa = 1, (function(e, n) {
|
|
1080
1116
|
(function(t) {
|
|
1081
1117
|
e.exports = t();
|
|
1082
1118
|
})(function() {
|
|
@@ -2452,8 +2488,8 @@ function yr() {
|
|
|
2452
2488
|
h.pending_buf[h.pending++] = z >>> 8 & 255, h.pending_buf[h.pending++] = 255 & z;
|
|
2453
2489
|
}
|
|
2454
2490
|
function Y(h, z) {
|
|
2455
|
-
var E, C, w = h.max_chain_length, P = h.strstart, X = h.prev_length,
|
|
2456
|
-
h.prev_length >= h.good_match && (w >>= 2),
|
|
2491
|
+
var E, C, w = h.max_chain_length, P = h.strstart, X = h.prev_length, W = h.nice_match, R = h.strstart > h.w_size - J ? h.strstart - (h.w_size - J) : 0, V = h.window, Z = h.w_mask, q = h.prev, ee = h.strstart + M, me = V[P + X - 1], pe = V[P + X];
|
|
2492
|
+
h.prev_length >= h.good_match && (w >>= 2), W > h.lookahead && (W = h.lookahead);
|
|
2457
2493
|
do
|
|
2458
2494
|
if (V[(E = z) + X] === pe && V[E + X - 1] === me && V[E] === V[P] && V[++E] === V[P + 1]) {
|
|
2459
2495
|
P += 2, E++;
|
|
@@ -2461,7 +2497,7 @@ function yr() {
|
|
|
2461
2497
|
;
|
|
2462
2498
|
while (V[++P] === V[++E] && V[++P] === V[++E] && V[++P] === V[++E] && V[++P] === V[++E] && V[++P] === V[++E] && V[++P] === V[++E] && V[++P] === V[++E] && V[++P] === V[++E] && P < ee);
|
|
2463
2499
|
if (C = M - (ee - P), P = ee - M, X < C) {
|
|
2464
|
-
if (h.match_start = z,
|
|
2500
|
+
if (h.match_start = z, W <= (X = C)) break;
|
|
2465
2501
|
me = V[P + X - 1], pe = V[P + X];
|
|
2466
2502
|
}
|
|
2467
2503
|
}
|
|
@@ -2469,7 +2505,7 @@ function yr() {
|
|
|
2469
2505
|
return X <= h.lookahead ? X : h.lookahead;
|
|
2470
2506
|
}
|
|
2471
2507
|
function Ae(h) {
|
|
2472
|
-
var z, E, C, w, P, X,
|
|
2508
|
+
var z, E, C, w, P, X, W, R, V, Z, q = h.w_size;
|
|
2473
2509
|
do {
|
|
2474
2510
|
if (w = h.window_size - h.lookahead - h.strstart, h.strstart >= q + (q - J)) {
|
|
2475
2511
|
for (s.arraySet(h.window, h.window, q, q, 0), h.match_start -= q, h.strstart -= q, h.block_start -= q, z = E = h.hash_size; C = h.head[--z], h.head[z] = q <= C ? C - q : 0, --E; ) ;
|
|
@@ -2477,7 +2513,7 @@ function yr() {
|
|
|
2477
2513
|
w += q;
|
|
2478
2514
|
}
|
|
2479
2515
|
if (h.strm.avail_in === 0) break;
|
|
2480
|
-
if (X = h.strm,
|
|
2516
|
+
if (X = h.strm, W = h.window, R = h.strstart + h.lookahead, V = w, Z = void 0, Z = X.avail_in, V < Z && (Z = V), E = Z === 0 ? 0 : (X.avail_in -= Z, s.arraySet(W, X.input, X.next_in, Z, R), X.state.wrap === 1 ? X.adler = l(X.adler, W, Z, R) : X.state.wrap === 2 && (X.adler = r(X.adler, W, Z, R)), X.next_in += Z, X.total_in += Z, Z), h.lookahead += E, h.lookahead + h.insert >= k) for (P = h.strstart - h.insert, h.ins_h = h.window[P], h.ins_h = (h.ins_h << h.hash_shift ^ h.window[P + 1]) & h.hash_mask; h.insert && (h.ins_h = (h.ins_h << h.hash_shift ^ h.window[P + k - 1]) & h.hash_mask, h.prev[P & h.w_mask] = h.head[h.ins_h], h.head[h.ins_h] = P, P++, h.insert--, !(h.lookahead + h.insert < k)); ) ;
|
|
2481
2517
|
} while (h.lookahead < J && h.strm.avail_in !== 0);
|
|
2482
2518
|
}
|
|
2483
2519
|
function xe(h, z) {
|
|
@@ -2520,7 +2556,7 @@ function yr() {
|
|
|
2520
2556
|
var z;
|
|
2521
2557
|
return h && h.state ? (h.total_in = h.total_out = 0, h.data_type = v, (z = h.state).pending = 0, z.pending_out = 0, z.wrap < 0 && (z.wrap = -z.wrap), z.status = z.wrap ? L : _, h.adler = z.wrap === 2 ? 0 : 1, z.last_flush = f, c._tr_init(z), d) : ae(h, g);
|
|
2522
2558
|
}
|
|
2523
|
-
function
|
|
2559
|
+
function Be(h) {
|
|
2524
2560
|
var z = se(h);
|
|
2525
2561
|
return z === d && (function(E) {
|
|
2526
2562
|
E.window_size = 2 * E.w_size, $(E.head), E.max_lazy_match = i[E.level].max_lazy, E.good_match = i[E.level].good_length, E.nice_match = i[E.level].nice_length, E.max_chain_length = i[E.level].max_chain, E.strstart = 0, E.block_start = 0, E.lookahead = 0, E.insert = 0, E.match_length = E.prev_length = k - 1, E.match_available = 0, E.ins_h = 0;
|
|
@@ -2531,8 +2567,8 @@ function yr() {
|
|
|
2531
2567
|
var X = 1;
|
|
2532
2568
|
if (z === u && (z = 6), C < 0 ? (X = 0, C = -C) : 15 < C && (X = 2, C -= 16), w < 1 || x < w || E !== b || C < 8 || 15 < C || z < 0 || 9 < z || P < 0 || y < P) return ae(h, g);
|
|
2533
2569
|
C === 8 && (C = 9);
|
|
2534
|
-
var
|
|
2535
|
-
return (h.state =
|
|
2570
|
+
var W = new we();
|
|
2571
|
+
return (h.state = W).strm = h, W.wrap = X, W.gzhead = null, W.w_bits = C, W.w_size = 1 << W.w_bits, W.w_mask = W.w_size - 1, W.hash_bits = w + 7, W.hash_size = 1 << W.hash_bits, W.hash_mask = W.hash_size - 1, W.hash_shift = ~~((W.hash_bits + k - 1) / k), W.window = new s.Buf8(2 * W.w_size), W.head = new s.Buf16(W.hash_size), W.prev = new s.Buf16(W.w_size), W.lit_bufsize = 1 << w + 6, W.pending_buf_size = 4 * W.lit_bufsize, W.pending_buf = new s.Buf8(W.pending_buf_size), W.d_buf = 1 * W.lit_bufsize, W.l_buf = 3 * W.lit_bufsize, W.level = z, W.strategy = P, W.method = E, Be(h);
|
|
2536
2572
|
}
|
|
2537
2573
|
i = [new fe(0, 0, 0, 0, function(h, z) {
|
|
2538
2574
|
var E = 65535;
|
|
@@ -2548,7 +2584,7 @@ function yr() {
|
|
|
2548
2584
|
return h.insert = 0, z === m ? (N(h, !0), h.strm.avail_out === 0 ? K : O) : (h.strstart > h.block_start && (N(h, !1), h.strm.avail_out), p);
|
|
2549
2585
|
}), new fe(4, 4, 8, 4, xe), new fe(4, 5, 16, 8, xe), new fe(4, 6, 32, 32, xe), new fe(4, 4, 16, 16, ce), new fe(8, 16, 32, 32, ce), new fe(8, 16, 128, 128, ce), new fe(8, 32, 128, 256, ce), new fe(32, 128, 258, 1024, ce), new fe(32, 258, 258, 4096, ce)], a.deflateInit = function(h, z) {
|
|
2550
2586
|
return ue(h, z, b, 15, 8, 0);
|
|
2551
|
-
}, a.deflateInit2 = ue, a.deflateReset =
|
|
2587
|
+
}, a.deflateInit2 = ue, a.deflateReset = Be, a.deflateResetKeep = se, a.deflateSetHeader = function(h, z) {
|
|
2552
2588
|
return h && h.state ? h.state.wrap !== 2 ? g : (h.state.gzhead = z, d) : g;
|
|
2553
2589
|
}, a.deflate = function(h, z) {
|
|
2554
2590
|
var E, C, w, P;
|
|
@@ -2590,7 +2626,7 @@ function yr() {
|
|
|
2590
2626
|
} else if (h.avail_in === 0 && G(z) <= G(E) && z !== m) return ae(h, -5);
|
|
2591
2627
|
if (C.status === 666 && h.avail_in !== 0) return ae(h, -5);
|
|
2592
2628
|
if (h.avail_in !== 0 || C.lookahead !== 0 || z !== f && C.status !== 666) {
|
|
2593
|
-
var
|
|
2629
|
+
var W = C.strategy === 2 ? (function(R, V) {
|
|
2594
2630
|
for (var Z; ; ) {
|
|
2595
2631
|
if (R.lookahead === 0 && (Ae(R), R.lookahead === 0)) {
|
|
2596
2632
|
if (V === f) return p;
|
|
@@ -2616,21 +2652,21 @@ function yr() {
|
|
|
2616
2652
|
}
|
|
2617
2653
|
return R.insert = 0, V === m ? (N(R, !0), R.strm.avail_out === 0 ? K : O) : R.last_lit && (N(R, !1), R.strm.avail_out === 0) ? p : I;
|
|
2618
2654
|
})(C, z) : i[C.level].func(C, z);
|
|
2619
|
-
if (
|
|
2620
|
-
if (
|
|
2655
|
+
if (W !== K && W !== O || (C.status = 666), W === p || W === K) return h.avail_out === 0 && (C.last_flush = -1), d;
|
|
2656
|
+
if (W === I && (z === 1 ? c._tr_align(C) : z !== 5 && (c._tr_stored_block(C, 0, 0, !1), z === 3 && ($(C.head), C.lookahead === 0 && (C.strstart = 0, C.block_start = 0, C.insert = 0))), F(h), h.avail_out === 0)) return C.last_flush = -1, d;
|
|
2621
2657
|
}
|
|
2622
2658
|
return z !== m ? d : C.wrap <= 0 ? 1 : (C.wrap === 2 ? (j(C, 255 & h.adler), j(C, h.adler >> 8 & 255), j(C, h.adler >> 16 & 255), j(C, h.adler >> 24 & 255), j(C, 255 & h.total_in), j(C, h.total_in >> 8 & 255), j(C, h.total_in >> 16 & 255), j(C, h.total_in >> 24 & 255)) : (H(C, h.adler >>> 16), H(C, 65535 & h.adler)), F(h), 0 < C.wrap && (C.wrap = -C.wrap), C.pending !== 0 ? d : 1);
|
|
2623
2659
|
}, a.deflateEnd = function(h) {
|
|
2624
2660
|
var z;
|
|
2625
2661
|
return h && h.state ? (z = h.state.status) !== L && z !== 69 && z !== 73 && z !== 91 && z !== 103 && z !== _ && z !== 666 ? ae(h, g) : (h.state = null, z === _ ? ae(h, -3) : d) : g;
|
|
2626
2662
|
}, a.deflateSetDictionary = function(h, z) {
|
|
2627
|
-
var E, C, w, P, X,
|
|
2663
|
+
var E, C, w, P, X, W, R, V, Z = z.length;
|
|
2628
2664
|
if (!h || !h.state || (P = (E = h.state).wrap) === 2 || P === 1 && E.status !== L || E.lookahead) return g;
|
|
2629
|
-
for (P === 1 && (h.adler = l(h.adler, z, Z, 0)), E.wrap = 0, Z >= E.w_size && (P === 0 && ($(E.head), E.strstart = 0, E.block_start = 0, E.insert = 0), V = new s.Buf8(E.w_size), s.arraySet(V, z, Z - E.w_size, E.w_size, 0), z = V, Z = E.w_size), X = h.avail_in,
|
|
2665
|
+
for (P === 1 && (h.adler = l(h.adler, z, Z, 0)), E.wrap = 0, Z >= E.w_size && (P === 0 && ($(E.head), E.strstart = 0, E.block_start = 0, E.insert = 0), V = new s.Buf8(E.w_size), s.arraySet(V, z, Z - E.w_size, E.w_size, 0), z = V, Z = E.w_size), X = h.avail_in, W = h.next_in, R = h.input, h.avail_in = Z, h.next_in = 0, h.input = z, Ae(E); E.lookahead >= k; ) {
|
|
2630
2666
|
for (C = E.strstart, w = E.lookahead - (k - 1); E.ins_h = (E.ins_h << E.hash_shift ^ E.window[C + k - 1]) & E.hash_mask, E.prev[C & E.w_mask] = E.head[E.ins_h], E.head[E.ins_h] = C, C++, --w; ) ;
|
|
2631
2667
|
E.strstart = C, E.lookahead = k - 1, Ae(E);
|
|
2632
2668
|
}
|
|
2633
|
-
return E.strstart += E.lookahead, E.block_start = E.strstart, E.insert = E.lookahead, E.lookahead = 0, E.match_length = E.prev_length = k - 1, E.match_available = 0, h.next_in =
|
|
2669
|
+
return E.strstart += E.lookahead, E.block_start = E.strstart, E.insert = E.lookahead, E.lookahead = 0, E.match_length = E.prev_length = k - 1, E.match_available = 0, h.next_in = W, h.input = R, h.avail_in = X, E.wrap = P, d;
|
|
2634
2670
|
}, a.deflateInfo = "pako deflate (from Nodeca project)";
|
|
2635
2671
|
}, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./messages": 51, "./trees": 52 }], 47: [function(t, A, a) {
|
|
2636
2672
|
A.exports = function() {
|
|
@@ -2751,7 +2787,7 @@ function yr() {
|
|
|
2751
2787
|
a.inflateReset = D, a.inflateReset2 = B, a.inflateResetKeep = x, a.inflateInit = function(L) {
|
|
2752
2788
|
return T(L, 15);
|
|
2753
2789
|
}, a.inflateInit2 = T, a.inflate = function(L, _) {
|
|
2754
|
-
var p, I, K, O, ae, G, $, F, N, j, H, Y, Ae, xe, ce, fe, we, se,
|
|
2790
|
+
var p, I, K, O, ae, G, $, F, N, j, H, Y, Ae, xe, ce, fe, we, se, Be, ue, h, z, E, C, w = 0, P = new i.Buf8(4), X = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
|
|
2755
2791
|
if (!L || !L.state || !L.output || !L.input && L.avail_in !== 0) return d;
|
|
2756
2792
|
(p = L.state).mode === 12 && (p.mode = 13), ae = L.next_out, K = L.output, $ = L.avail_out, O = L.next_in, I = L.input, G = L.avail_in, F = p.hold, N = p.bits, j = G, H = $, z = m;
|
|
2757
2793
|
e: for (; ; ) switch (p.mode) {
|
|
@@ -2993,7 +3029,7 @@ function yr() {
|
|
|
2993
3029
|
G--, F += I[O++] << N, N += 8;
|
|
2994
3030
|
}
|
|
2995
3031
|
if (fe && (240 & fe) == 0) {
|
|
2996
|
-
for (se = ce,
|
|
3032
|
+
for (se = ce, Be = fe, ue = we; fe = (w = p.lencode[ue + ((F & (1 << se + Be) - 1) >> se)]) >>> 16 & 255, we = 65535 & w, !(se + (ce = w >>> 24) <= N); ) {
|
|
2997
3033
|
if (G === 0) break e;
|
|
2998
3034
|
G--, F += I[O++] << N, N += 8;
|
|
2999
3035
|
}
|
|
@@ -3027,7 +3063,7 @@ function yr() {
|
|
|
3027
3063
|
G--, F += I[O++] << N, N += 8;
|
|
3028
3064
|
}
|
|
3029
3065
|
if ((240 & fe) == 0) {
|
|
3030
|
-
for (se = ce,
|
|
3066
|
+
for (se = ce, Be = fe, ue = we; fe = (w = p.distcode[ue + ((F & (1 << se + Be) - 1) >> se)]) >>> 16 & 255, we = 65535 & w, !(se + (ce = w >>> 24) <= N); ) {
|
|
3031
3067
|
if (G === 0) break e;
|
|
3032
3068
|
G--, F += I[O++] << N, N += 8;
|
|
3033
3069
|
}
|
|
@@ -3164,8 +3200,8 @@ function yr() {
|
|
|
3164
3200
|
var I = new Array(o);
|
|
3165
3201
|
l(I);
|
|
3166
3202
|
var K, O, ae, G = new Array(d);
|
|
3167
|
-
function $(w, P, X,
|
|
3168
|
-
this.static_tree = w, this.extra_bits = P, this.extra_base = X, this.elems =
|
|
3203
|
+
function $(w, P, X, W, R) {
|
|
3204
|
+
this.static_tree = w, this.extra_bits = P, this.extra_base = X, this.elems = W, this.max_length = R, this.has_stree = w && w.length;
|
|
3169
3205
|
}
|
|
3170
3206
|
function F(w, P) {
|
|
3171
3207
|
this.dyn_tree = w, this.max_code = 0, this.stat_desc = P;
|
|
@@ -3187,8 +3223,8 @@ function yr() {
|
|
|
3187
3223
|
return X >>> 1;
|
|
3188
3224
|
}
|
|
3189
3225
|
function xe(w, P, X) {
|
|
3190
|
-
var
|
|
3191
|
-
for (
|
|
3226
|
+
var W, R, V = new Array(y + 1), Z = 0;
|
|
3227
|
+
for (W = 1; W <= y; W++) V[W] = Z = Z + X[W - 1] << 1;
|
|
3192
3228
|
for (R = 0; R <= P; R++) {
|
|
3193
3229
|
var q = w[2 * R + 1];
|
|
3194
3230
|
q !== 0 && (w[2 * R] = Ae(V[q]++, q));
|
|
@@ -3204,45 +3240,45 @@ function yr() {
|
|
|
3204
3240
|
function fe(w) {
|
|
3205
3241
|
8 < w.bi_valid ? j(w, w.bi_buf) : 0 < w.bi_valid && (w.pending_buf[w.pending++] = w.bi_buf), w.bi_buf = 0, w.bi_valid = 0;
|
|
3206
3242
|
}
|
|
3207
|
-
function we(w, P, X,
|
|
3243
|
+
function we(w, P, X, W) {
|
|
3208
3244
|
var R = 2 * P, V = 2 * X;
|
|
3209
|
-
return w[R] < w[V] || w[R] === w[V] &&
|
|
3245
|
+
return w[R] < w[V] || w[R] === w[V] && W[P] <= W[X];
|
|
3210
3246
|
}
|
|
3211
3247
|
function se(w, P, X) {
|
|
3212
|
-
for (var
|
|
3213
|
-
w.heap[X] =
|
|
3248
|
+
for (var W = w.heap[X], R = X << 1; R <= w.heap_len && (R < w.heap_len && we(P, w.heap[R + 1], w.heap[R], w.depth) && R++, !we(P, W, w.heap[R], w.depth)); ) w.heap[X] = w.heap[R], X = R, R <<= 1;
|
|
3249
|
+
w.heap[X] = W;
|
|
3214
3250
|
}
|
|
3215
|
-
function
|
|
3216
|
-
var
|
|
3217
|
-
if (w.last_lit !== 0) for (;
|
|
3251
|
+
function Be(w, P, X) {
|
|
3252
|
+
var W, R, V, Z, q = 0;
|
|
3253
|
+
if (w.last_lit !== 0) for (; W = w.pending_buf[w.d_buf + 2 * q] << 8 | w.pending_buf[w.d_buf + 2 * q + 1], R = w.pending_buf[w.l_buf + q], q++, W === 0 ? Y(w, R, P) : (Y(w, (V = p[R]) + f + 1, P), (Z = S[V]) !== 0 && H(w, R -= I[V], Z), Y(w, V = N(--W), X), (Z = U[V]) !== 0 && H(w, W -= G[V], Z)), q < w.last_lit; ) ;
|
|
3218
3254
|
Y(w, x, P);
|
|
3219
3255
|
}
|
|
3220
3256
|
function ue(w, P) {
|
|
3221
|
-
var X,
|
|
3257
|
+
var X, W, R, V = P.dyn_tree, Z = P.stat_desc.static_tree, q = P.stat_desc.has_stree, ee = P.stat_desc.elems, me = -1;
|
|
3222
3258
|
for (w.heap_len = 0, w.heap_max = u, X = 0; X < ee; X++) V[2 * X] !== 0 ? (w.heap[++w.heap_len] = me = X, w.depth[X] = 0) : V[2 * X + 1] = 0;
|
|
3223
3259
|
for (; w.heap_len < 2; ) V[2 * (R = w.heap[++w.heap_len] = me < 2 ? ++me : 0)] = 1, w.depth[R] = 0, w.opt_len--, q && (w.static_len -= Z[2 * R + 1]);
|
|
3224
3260
|
for (P.max_code = me, X = w.heap_len >> 1; 1 <= X; X--) se(w, V, X);
|
|
3225
|
-
for (R = ee; X = w.heap[1], w.heap[1] = w.heap[w.heap_len--], se(w, V, 1),
|
|
3226
|
-
w.heap[--w.heap_max] = w.heap[1], (function(pe,
|
|
3227
|
-
var At, _e, st,
|
|
3228
|
-
for (
|
|
3229
|
-
for (
|
|
3261
|
+
for (R = ee; X = w.heap[1], w.heap[1] = w.heap[w.heap_len--], se(w, V, 1), W = w.heap[1], w.heap[--w.heap_max] = X, w.heap[--w.heap_max] = W, V[2 * R] = V[2 * X] + V[2 * W], w.depth[R] = (w.depth[X] >= w.depth[W] ? w.depth[X] : w.depth[W]) + 1, V[2 * X + 1] = V[2 * W + 1] = R, w.heap[1] = R++, se(w, V, 1), 2 <= w.heap_len; ) ;
|
|
3262
|
+
w.heap[--w.heap_max] = w.heap[1], (function(pe, Te) {
|
|
3263
|
+
var At, _e, st, be, vt, Tt, ze = Te.dyn_tree, Aa = Te.max_code, Wa = Te.stat_desc.static_tree, Qa = Te.stat_desc.has_stree, Va = Te.stat_desc.extra_bits, sa = Te.stat_desc.extra_base, lt = Te.stat_desc.max_length, yt = 0;
|
|
3264
|
+
for (be = 0; be <= y; be++) pe.bl_count[be] = 0;
|
|
3265
|
+
for (ze[2 * pe.heap[pe.heap_max] + 1] = 0, At = pe.heap_max + 1; At < u; At++) lt < (be = ze[2 * ze[2 * (_e = pe.heap[At]) + 1] + 1] + 1) && (be = lt, yt++), ze[2 * _e + 1] = be, Aa < _e || (pe.bl_count[be]++, vt = 0, sa <= _e && (vt = Va[_e - sa]), Tt = ze[2 * _e], pe.opt_len += Tt * (be + vt), Qa && (pe.static_len += Tt * (Wa[2 * _e + 1] + vt)));
|
|
3230
3266
|
if (yt !== 0) {
|
|
3231
3267
|
do {
|
|
3232
|
-
for (
|
|
3233
|
-
pe.bl_count[
|
|
3268
|
+
for (be = lt - 1; pe.bl_count[be] === 0; ) be--;
|
|
3269
|
+
pe.bl_count[be]--, pe.bl_count[be + 1] += 2, pe.bl_count[lt]--, yt -= 2;
|
|
3234
3270
|
} while (0 < yt);
|
|
3235
|
-
for (
|
|
3271
|
+
for (be = lt; be !== 0; be--) for (_e = pe.bl_count[be]; _e !== 0; ) Aa < (st = pe.heap[--At]) || (ze[2 * st + 1] !== be && (pe.opt_len += (be - ze[2 * st + 1]) * ze[2 * st], ze[2 * st + 1] = be), _e--);
|
|
3236
3272
|
}
|
|
3237
3273
|
})(w, P), xe(V, me, w.bl_count);
|
|
3238
3274
|
}
|
|
3239
3275
|
function h(w, P, X) {
|
|
3240
|
-
var
|
|
3241
|
-
for (Z === 0 && (ee = 138, me = 3), P[2 * (X + 1) + 1] = 65535,
|
|
3276
|
+
var W, R, V = -1, Z = P[1], q = 0, ee = 7, me = 4;
|
|
3277
|
+
for (Z === 0 && (ee = 138, me = 3), P[2 * (X + 1) + 1] = 65535, W = 0; W <= X; W++) R = Z, Z = P[2 * (W + 1) + 1], ++q < ee && R === Z || (q < me ? w.bl_tree[2 * R] += q : R !== 0 ? (R !== V && w.bl_tree[2 * R]++, w.bl_tree[2 * D]++) : q <= 10 ? w.bl_tree[2 * B]++ : w.bl_tree[2 * T]++, V = R, me = (q = 0) === Z ? (ee = 138, 3) : R === Z ? (ee = 6, 3) : (ee = 7, 4));
|
|
3242
3278
|
}
|
|
3243
3279
|
function z(w, P, X) {
|
|
3244
|
-
var
|
|
3245
|
-
for (Z === 0 && (ee = 138, me = 3),
|
|
3280
|
+
var W, R, V = -1, Z = P[1], q = 0, ee = 7, me = 4;
|
|
3281
|
+
for (Z === 0 && (ee = 138, me = 3), W = 0; W <= X; W++) if (R = Z, Z = P[2 * (W + 1) + 1], !(++q < ee && R === Z)) {
|
|
3246
3282
|
if (q < me) for (; Y(w, R, w.bl_tree), --q != 0; ) ;
|
|
3247
3283
|
else R !== 0 ? (R !== V && (Y(w, R, w.bl_tree), q--), Y(w, D, w.bl_tree), H(w, q - 3, 2)) : q <= 10 ? (Y(w, B, w.bl_tree), H(w, q - 3, 3)) : (Y(w, T, w.bl_tree), H(w, q - 11, 7));
|
|
3248
3284
|
V = R, me = (q = 0) === Z ? (ee = 138, 3) : R === Z ? (ee = 6, 3) : (ee = 7, 4);
|
|
@@ -3250,16 +3286,16 @@ function yr() {
|
|
|
3250
3286
|
}
|
|
3251
3287
|
l(G);
|
|
3252
3288
|
var E = !1;
|
|
3253
|
-
function C(w, P, X,
|
|
3254
|
-
H(w, (r << 1) + (
|
|
3289
|
+
function C(w, P, X, W) {
|
|
3290
|
+
H(w, (r << 1) + (W ? 1 : 0), 3), (function(R, V, Z, q) {
|
|
3255
3291
|
fe(R), j(R, Z), j(R, ~Z), i.arraySet(R.pending_buf, R.window, V, Z, R.pending), R.pending += Z;
|
|
3256
3292
|
})(w, P, X);
|
|
3257
3293
|
}
|
|
3258
3294
|
a._tr_init = function(w) {
|
|
3259
3295
|
E || ((function() {
|
|
3260
|
-
var P, X,
|
|
3261
|
-
for (R =
|
|
3262
|
-
for (p[
|
|
3296
|
+
var P, X, W, R, V, Z = new Array(y + 1);
|
|
3297
|
+
for (R = W = 0; R < o - 1; R++) for (I[R] = W, P = 0; P < 1 << S[R]; P++) p[W++] = R;
|
|
3298
|
+
for (p[W - 1] = R, R = V = 0; R < 16; R++) for (G[R] = V, P = 0; P < 1 << U[R]; P++) _[V++] = R;
|
|
3263
3299
|
for (V >>= 7; R < d; R++) for (G[R] = V << 7, P = 0; P < 1 << U[R] - 7; P++) _[256 + V++] = R;
|
|
3264
3300
|
for (X = 0; X <= y; X++) Z[X] = 0;
|
|
3265
3301
|
for (P = 0; P <= 143; ) J[2 * P + 1] = 8, P++, Z[8]++;
|
|
@@ -3269,7 +3305,7 @@ function yr() {
|
|
|
3269
3305
|
for (xe(J, m + 1, Z), P = 0; P < d; P++) L[2 * P + 1] = 5, L[2 * P] = Ae(P, 5);
|
|
3270
3306
|
K = new $(J, S, f + 1, m, y), O = new $(L, U, 0, d, y), ae = new $(new Array(0), k, 0, g, b);
|
|
3271
3307
|
})(), E = !0), w.l_desc = new F(w.dyn_ltree, K), w.d_desc = new F(w.dyn_dtree, O), w.bl_desc = new F(w.bl_tree, ae), w.bi_buf = 0, w.bi_valid = 0, ce(w);
|
|
3272
|
-
}, a._tr_stored_block = C, a._tr_flush_block = function(w, P, X,
|
|
3308
|
+
}, a._tr_stored_block = C, a._tr_flush_block = function(w, P, X, W) {
|
|
3273
3309
|
var R, V, Z = 0;
|
|
3274
3310
|
0 < w.level ? (w.strm.data_type === 2 && (w.strm.data_type = (function(q) {
|
|
3275
3311
|
var ee, me = 4093624447;
|
|
@@ -3281,11 +3317,11 @@ function yr() {
|
|
|
3281
3317
|
var ee;
|
|
3282
3318
|
for (h(q, q.dyn_ltree, q.l_desc.max_code), h(q, q.dyn_dtree, q.d_desc.max_code), ue(q, q.bl_desc), ee = g - 1; 3 <= ee && q.bl_tree[2 * M[ee] + 1] === 0; ee--) ;
|
|
3283
3319
|
return q.opt_len += 3 * (ee + 1) + 5 + 5 + 4, ee;
|
|
3284
|
-
})(w), R = w.opt_len + 3 + 7 >>> 3, (V = w.static_len + 3 + 7 >>> 3) <= R && (R = V)) : R = V = X + 5, X + 4 <= R && P !== -1 ? C(w, P, X,
|
|
3285
|
-
var
|
|
3286
|
-
for (H(q, ee - 257, 5), H(q, me - 1, 5), H(q, pe - 4, 4),
|
|
3320
|
+
})(w), R = w.opt_len + 3 + 7 >>> 3, (V = w.static_len + 3 + 7 >>> 3) <= R && (R = V)) : R = V = X + 5, X + 4 <= R && P !== -1 ? C(w, P, X, W) : w.strategy === 4 || V === R ? (H(w, 2 + (W ? 1 : 0), 3), Be(w, J, L)) : (H(w, 4 + (W ? 1 : 0), 3), (function(q, ee, me, pe) {
|
|
3321
|
+
var Te;
|
|
3322
|
+
for (H(q, ee - 257, 5), H(q, me - 1, 5), H(q, pe - 4, 4), Te = 0; Te < pe; Te++) H(q, q.bl_tree[2 * M[Te] + 1], 3);
|
|
3287
3323
|
z(q, q.dyn_ltree, ee - 1), z(q, q.dyn_dtree, me - 1);
|
|
3288
|
-
})(w, w.l_desc.max_code + 1, w.d_desc.max_code + 1, Z + 1),
|
|
3324
|
+
})(w, w.l_desc.max_code + 1, w.d_desc.max_code + 1, Z + 1), Be(w, w.dyn_ltree, w.dyn_dtree)), ce(w), W && fe(w);
|
|
3289
3325
|
}, a._tr_tally = function(w, P, X) {
|
|
3290
3326
|
return w.pending_buf[w.d_buf + 2 * w.last_lit] = P >>> 8 & 255, w.pending_buf[w.d_buf + 2 * w.last_lit + 1] = 255 & P, w.pending_buf[w.l_buf + w.last_lit] = 255 & X, w.last_lit++, P === 0 ? w.dyn_ltree[2 * X]++ : (w.matches++, P--, w.dyn_ltree[2 * (p[X] + f + 1)]++, w.dyn_dtree[2 * N(P)]++), w.last_lit === w.lit_bufsize - 1;
|
|
3291
3327
|
}, a._tr_align = function(w) {
|
|
@@ -3377,8 +3413,8 @@ function yr() {
|
|
|
3377
3413
|
});
|
|
3378
3414
|
})(_t)), _t.exports;
|
|
3379
3415
|
}
|
|
3380
|
-
var
|
|
3381
|
-
const
|
|
3416
|
+
var Cr = xr();
|
|
3417
|
+
const Ta = /* @__PURE__ */ wr(Cr);
|
|
3382
3418
|
function Re(e, n, t, A) {
|
|
3383
3419
|
function a(i) {
|
|
3384
3420
|
return i instanceof t ? i : new t(function(s) {
|
|
@@ -3407,7 +3443,7 @@ function Re(e, n, t, A) {
|
|
|
3407
3443
|
});
|
|
3408
3444
|
}
|
|
3409
3445
|
const oe = 914400, gt = 12700, Ce = `\r
|
|
3410
|
-
`,
|
|
3446
|
+
`, Lr = 2147483649, Et = /^[0-9a-fA-F]{6}$/, Br = 1.67, Dr = 27, Ze = { type: "solid", color: "666666", pt: 1 }, Sa = [0.05, 0.1, 0.05, 0.1], $e = { color: "363636", pt: 1 }, je = { color: "888888", style: "solid", size: 1, cap: "flat" }, De = "000000", Se = 12, Pr = 18, et = "LAYOUT_16x9", Wt = "DEFAULT", Ia = "333333", Je = { type: "outer", blur: 3, offset: 23e3 / 12700, angle: 90, color: "000000", opacity: 0.35, rotateWithShape: !0 }, pt = [0.5, 0.5, 0.5, 0.5], ua = { color: "000000" }, kr = { size: 8, color: "FFFFFF", opacity: 0.75 }, Oe = "2094734552", Ct = "2094734553", dt = "2094734554", Qt = "2094734555", _a = "2094734556", ct = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""), ft = [
|
|
3411
3447
|
"C0504D",
|
|
3412
3448
|
"4F81BD",
|
|
3413
3449
|
"9BBB59",
|
|
@@ -3424,7 +3460,7 @@ const oe = 914400, gt = 12700, Ce = `\r
|
|
|
3424
3460
|
"F79646",
|
|
3425
3461
|
"628FC6",
|
|
3426
3462
|
"C86360"
|
|
3427
|
-
],
|
|
3463
|
+
], Rr = [
|
|
3428
3464
|
"5DA5DA",
|
|
3429
3465
|
"FAA43A",
|
|
3430
3466
|
"60BD68",
|
|
@@ -3452,7 +3488,7 @@ var at;
|
|
|
3452
3488
|
(function(e) {
|
|
3453
3489
|
e.b = "b", e.ctr = "ctr", e.t = "t";
|
|
3454
3490
|
})(at || (at = {}));
|
|
3455
|
-
const
|
|
3491
|
+
const Ea = "{F7021451-1387-4CA6-816F-3879F97B5CBC}";
|
|
3456
3492
|
var Vt;
|
|
3457
3493
|
(function(e) {
|
|
3458
3494
|
e.arraybuffer = "arraybuffer", e.base64 = "base64", e.binarystring = "binarystring", e.blob = "blob", e.nodebuffer = "nodebuffer", e.uint8array = "uint8array";
|
|
@@ -3477,22 +3513,22 @@ var Ht;
|
|
|
3477
3513
|
(function(e) {
|
|
3478
3514
|
e.top = "top", e.middle = "middle", e.bottom = "bottom";
|
|
3479
3515
|
})(Ht || (Ht = {}));
|
|
3480
|
-
var
|
|
3516
|
+
var Ve;
|
|
3481
3517
|
(function(e) {
|
|
3482
3518
|
e.ACTION_BUTTON_BACK_OR_PREVIOUS = "actionButtonBackPrevious", e.ACTION_BUTTON_BEGINNING = "actionButtonBeginning", e.ACTION_BUTTON_CUSTOM = "actionButtonBlank", e.ACTION_BUTTON_DOCUMENT = "actionButtonDocument", e.ACTION_BUTTON_END = "actionButtonEnd", e.ACTION_BUTTON_FORWARD_OR_NEXT = "actionButtonForwardNext", e.ACTION_BUTTON_HELP = "actionButtonHelp", e.ACTION_BUTTON_HOME = "actionButtonHome", e.ACTION_BUTTON_INFORMATION = "actionButtonInformation", e.ACTION_BUTTON_MOVIE = "actionButtonMovie", e.ACTION_BUTTON_RETURN = "actionButtonReturn", e.ACTION_BUTTON_SOUND = "actionButtonSound", e.ARC = "arc", e.BALLOON = "wedgeRoundRectCallout", e.BENT_ARROW = "bentArrow", e.BENT_UP_ARROW = "bentUpArrow", e.BEVEL = "bevel", e.BLOCK_ARC = "blockArc", e.CAN = "can", e.CHART_PLUS = "chartPlus", e.CHART_STAR = "chartStar", e.CHART_X = "chartX", e.CHEVRON = "chevron", e.CHORD = "chord", e.CIRCULAR_ARROW = "circularArrow", e.CLOUD = "cloud", e.CLOUD_CALLOUT = "cloudCallout", e.CORNER = "corner", e.CORNER_TABS = "cornerTabs", e.CROSS = "plus", e.CUBE = "cube", e.CURVED_DOWN_ARROW = "curvedDownArrow", e.CURVED_DOWN_RIBBON = "ellipseRibbon", e.CURVED_LEFT_ARROW = "curvedLeftArrow", e.CURVED_RIGHT_ARROW = "curvedRightArrow", e.CURVED_UP_ARROW = "curvedUpArrow", e.CURVED_UP_RIBBON = "ellipseRibbon2", e.CUSTOM_GEOMETRY = "custGeom", e.DECAGON = "decagon", e.DIAGONAL_STRIPE = "diagStripe", e.DIAMOND = "diamond", e.DODECAGON = "dodecagon", e.DONUT = "donut", e.DOUBLE_BRACE = "bracePair", e.DOUBLE_BRACKET = "bracketPair", e.DOUBLE_WAVE = "doubleWave", e.DOWN_ARROW = "downArrow", e.DOWN_ARROW_CALLOUT = "downArrowCallout", e.DOWN_RIBBON = "ribbon", e.EXPLOSION1 = "irregularSeal1", e.EXPLOSION2 = "irregularSeal2", e.FLOWCHART_ALTERNATE_PROCESS = "flowChartAlternateProcess", e.FLOWCHART_CARD = "flowChartPunchedCard", e.FLOWCHART_COLLATE = "flowChartCollate", e.FLOWCHART_CONNECTOR = "flowChartConnector", e.FLOWCHART_DATA = "flowChartInputOutput", e.FLOWCHART_DECISION = "flowChartDecision", e.FLOWCHART_DELAY = "flowChartDelay", e.FLOWCHART_DIRECT_ACCESS_STORAGE = "flowChartMagneticDrum", e.FLOWCHART_DISPLAY = "flowChartDisplay", e.FLOWCHART_DOCUMENT = "flowChartDocument", e.FLOWCHART_EXTRACT = "flowChartExtract", e.FLOWCHART_INTERNAL_STORAGE = "flowChartInternalStorage", e.FLOWCHART_MAGNETIC_DISK = "flowChartMagneticDisk", e.FLOWCHART_MANUAL_INPUT = "flowChartManualInput", e.FLOWCHART_MANUAL_OPERATION = "flowChartManualOperation", e.FLOWCHART_MERGE = "flowChartMerge", e.FLOWCHART_MULTIDOCUMENT = "flowChartMultidocument", e.FLOWCHART_OFFLINE_STORAGE = "flowChartOfflineStorage", e.FLOWCHART_OFFPAGE_CONNECTOR = "flowChartOffpageConnector", e.FLOWCHART_OR = "flowChartOr", e.FLOWCHART_PREDEFINED_PROCESS = "flowChartPredefinedProcess", e.FLOWCHART_PREPARATION = "flowChartPreparation", e.FLOWCHART_PROCESS = "flowChartProcess", e.FLOWCHART_PUNCHED_TAPE = "flowChartPunchedTape", e.FLOWCHART_SEQUENTIAL_ACCESS_STORAGE = "flowChartMagneticTape", e.FLOWCHART_SORT = "flowChartSort", e.FLOWCHART_STORED_DATA = "flowChartOnlineStorage", e.FLOWCHART_SUMMING_JUNCTION = "flowChartSummingJunction", e.FLOWCHART_TERMINATOR = "flowChartTerminator", e.FOLDED_CORNER = "folderCorner", e.FRAME = "frame", e.FUNNEL = "funnel", e.GEAR_6 = "gear6", e.GEAR_9 = "gear9", e.HALF_FRAME = "halfFrame", e.HEART = "heart", e.HEPTAGON = "heptagon", e.HEXAGON = "hexagon", e.HORIZONTAL_SCROLL = "horizontalScroll", e.ISOSCELES_TRIANGLE = "triangle", e.LEFT_ARROW = "leftArrow", e.LEFT_ARROW_CALLOUT = "leftArrowCallout", e.LEFT_BRACE = "leftBrace", e.LEFT_BRACKET = "leftBracket", e.LEFT_CIRCULAR_ARROW = "leftCircularArrow", e.LEFT_RIGHT_ARROW = "leftRightArrow", e.LEFT_RIGHT_ARROW_CALLOUT = "leftRightArrowCallout", e.LEFT_RIGHT_CIRCULAR_ARROW = "leftRightCircularArrow", e.LEFT_RIGHT_RIBBON = "leftRightRibbon", e.LEFT_RIGHT_UP_ARROW = "leftRightUpArrow", e.LEFT_UP_ARROW = "leftUpArrow", e.LIGHTNING_BOLT = "lightningBolt", e.LINE_CALLOUT_1 = "borderCallout1", e.LINE_CALLOUT_1_ACCENT_BAR = "accentCallout1", e.LINE_CALLOUT_1_BORDER_AND_ACCENT_BAR = "accentBorderCallout1", e.LINE_CALLOUT_1_NO_BORDER = "callout1", e.LINE_CALLOUT_2 = "borderCallout2", e.LINE_CALLOUT_2_ACCENT_BAR = "accentCallout2", e.LINE_CALLOUT_2_BORDER_AND_ACCENT_BAR = "accentBorderCallout2", e.LINE_CALLOUT_2_NO_BORDER = "callout2", e.LINE_CALLOUT_3 = "borderCallout3", e.LINE_CALLOUT_3_ACCENT_BAR = "accentCallout3", e.LINE_CALLOUT_3_BORDER_AND_ACCENT_BAR = "accentBorderCallout3", e.LINE_CALLOUT_3_NO_BORDER = "callout3", e.LINE_CALLOUT_4 = "borderCallout4", e.LINE_CALLOUT_4_ACCENT_BAR = "accentCallout3=4", e.LINE_CALLOUT_4_BORDER_AND_ACCENT_BAR = "accentBorderCallout4", e.LINE_CALLOUT_4_NO_BORDER = "callout4", e.LINE = "line", e.LINE_INVERSE = "lineInv", e.MATH_DIVIDE = "mathDivide", e.MATH_EQUAL = "mathEqual", e.MATH_MINUS = "mathMinus", e.MATH_MULTIPLY = "mathMultiply", e.MATH_NOT_EQUAL = "mathNotEqual", e.MATH_PLUS = "mathPlus", e.MOON = "moon", e.NON_ISOSCELES_TRAPEZOID = "nonIsoscelesTrapezoid", e.NOTCHED_RIGHT_ARROW = "notchedRightArrow", e.NO_SYMBOL = "noSmoking", e.OCTAGON = "octagon", e.OVAL = "ellipse", e.OVAL_CALLOUT = "wedgeEllipseCallout", e.PARALLELOGRAM = "parallelogram", e.PENTAGON = "homePlate", e.PIE = "pie", e.PIE_WEDGE = "pieWedge", e.PLAQUE = "plaque", e.PLAQUE_TABS = "plaqueTabs", e.QUAD_ARROW = "quadArrow", e.QUAD_ARROW_CALLOUT = "quadArrowCallout", e.RECTANGLE = "rect", e.RECTANGULAR_CALLOUT = "wedgeRectCallout", e.REGULAR_PENTAGON = "pentagon", e.RIGHT_ARROW = "rightArrow", e.RIGHT_ARROW_CALLOUT = "rightArrowCallout", e.RIGHT_BRACE = "rightBrace", e.RIGHT_BRACKET = "rightBracket", e.RIGHT_TRIANGLE = "rtTriangle", e.ROUNDED_RECTANGLE = "roundRect", e.ROUNDED_RECTANGULAR_CALLOUT = "wedgeRoundRectCallout", e.ROUND_1_RECTANGLE = "round1Rect", e.ROUND_2_DIAG_RECTANGLE = "round2DiagRect", e.ROUND_2_SAME_RECTANGLE = "round2SameRect", e.SMILEY_FACE = "smileyFace", e.SNIP_1_RECTANGLE = "snip1Rect", e.SNIP_2_DIAG_RECTANGLE = "snip2DiagRect", e.SNIP_2_SAME_RECTANGLE = "snip2SameRect", e.SNIP_ROUND_RECTANGLE = "snipRoundRect", e.SQUARE_TABS = "squareTabs", e.STAR_10_POINT = "star10", e.STAR_12_POINT = "star12", e.STAR_16_POINT = "star16", e.STAR_24_POINT = "star24", e.STAR_32_POINT = "star32", e.STAR_4_POINT = "star4", e.STAR_5_POINT = "star5", e.STAR_6_POINT = "star6", e.STAR_7_POINT = "star7", e.STAR_8_POINT = "star8", e.STRIPED_RIGHT_ARROW = "stripedRightArrow", e.SUN = "sun", e.SWOOSH_ARROW = "swooshArrow", e.TEAR = "teardrop", e.TRAPEZOID = "trapezoid", e.UP_ARROW = "upArrow", e.UP_ARROW_CALLOUT = "upArrowCallout", e.UP_DOWN_ARROW = "upDownArrow", e.UP_DOWN_ARROW_CALLOUT = "upDownArrowCallout", e.UP_RIBBON = "ribbon2", e.U_TURN_ARROW = "uturnArrow", e.VERTICAL_SCROLL = "verticalScroll", e.WAVE = "wave";
|
|
3483
|
-
})(
|
|
3484
|
-
var
|
|
3519
|
+
})(Ve || (Ve = {}));
|
|
3520
|
+
var Q;
|
|
3485
3521
|
(function(e) {
|
|
3486
3522
|
e.AREA = "area", e.BAR = "bar", e.BAR3D = "bar3D", e.BUBBLE = "bubble", e.BUBBLE3D = "bubble3D", e.DOUGHNUT = "doughnut", e.LINE = "line", e.PIE = "pie", e.RADAR = "radar", e.SCATTER = "scatter";
|
|
3487
|
-
})(
|
|
3523
|
+
})(Q || (Q = {}));
|
|
3488
3524
|
var Dt;
|
|
3489
3525
|
(function(e) {
|
|
3490
3526
|
e.TEXT1 = "tx1", e.TEXT2 = "tx2", e.BACKGROUND1 = "bg1", e.BACKGROUND2 = "bg2", e.ACCENT1 = "accent1", e.ACCENT2 = "accent2", e.ACCENT3 = "accent3", e.ACCENT4 = "accent4", e.ACCENT5 = "accent5", e.ACCENT6 = "accent6";
|
|
3491
3527
|
})(Dt || (Dt = {}));
|
|
3492
|
-
var
|
|
3528
|
+
var Qe;
|
|
3493
3529
|
(function(e) {
|
|
3494
3530
|
e.chart = "chart", e.image = "image", e.line = "line", e.rect = "rect", e.text = "text", e.placeholder = "placeholder";
|
|
3495
|
-
})(
|
|
3531
|
+
})(Qe || (Qe = {}));
|
|
3496
3532
|
var ne;
|
|
3497
3533
|
(function(e) {
|
|
3498
3534
|
e.chart = "chart", e.hyperlink = "hyperlink", e.image = "image", e.media = "media", e.online = "online", e.placeholder = "placeholder", e.table = "table", e.tablecell = "tablecell", e.text = "text", e.notes = "notes";
|
|
@@ -3505,7 +3541,7 @@ var rt;
|
|
|
3505
3541
|
(function(e) {
|
|
3506
3542
|
e.DEFAULT = "•", e.CHECK = "✓", e.STAR = "★", e.TRIANGLE = "▶";
|
|
3507
3543
|
})(rt || (rt = {}));
|
|
3508
|
-
const nt = "data:image/png;base64,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", Pr = "data:image/png;base64,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AAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKREkRUAAACwrUpLSwuGDRvWfMCAAS26du3avKysrLiioqKkZcuWzZs1a1bcvHnz0tLS0rJsNtusuLi4ebNmzUoLCgo+8/eijY2N9Zs3b66pra2tqqur21xTU1NdVVVVs2nTptqNGzdWbdiwoeYvf/nL5hUrVlQtWLBgw6xZs6pqamoaJQYAAEDaKYABAACIiIghQ4aUHnTQQW379u3bql27dq3at2/fpkWLFq2bN29eWVpa2qpZs2bNCwsLm2ez2fLCwsLyoqKi8sLCwtKknK+hoaG6vr6+qqGh4S91dXV/aWhoqNq8eXNVTU3NuqqqqvUbNmxYu2rVqjWrV69e99Zbb6177rnnPpgzZ06NTwYAAABJogAGAADIA8OGDWt+xBFHdBwwYECnLl26dGjdunXHFi1adCgtLe1YUlLSvlmzZq0KCgqK07yDwsLCssLCwrKIaPdp/zuNjY21mzdvXrdp06ZVNTU172/YsGHl2rVr31+2bNnKBQsWrHjyySffnzVrVpVPGAAAAE1Fpuexsd9HfaF+ZcSal0ptCAAAIAE6deqUPf744zvtueeeXbp3796lbdu2XSorKzuXlpZ2KS0t7VBYWFhhSztGQ0PDxpqampU1NTXL169fv+yDDz5Y9s477yybPXv2sj/96U8rVqxYUWdLAAAAbE9t9q6Jog4f/TUFMAAAQEJks9nMt7/97Y4jRozo1bdv397t2rXrXl5e3rWsrKxzcXFx+4gosKUmp7G2tnZVTU3Nso0bNy5btWrV0tdff/2tJ598cvG999672noAAADYFgpgAACAhPne977X6a9Fb/v27Xu1bNmyV1lZWa8kvXOXLauvr9/wl7/8ZdG6desWL1u2bNHChQsX/fGPf1w8derUjbYDAADAliiAAQAAmqhsNps59dRTuxx66KH9+/Tp87n27dv3Ly8v719UVOSRzXlq06ZNKzZu3Pj6+++//8abb775xqOPPvrG3XffvcpmAAAA+CsFMAAAQBNx6qmndvniF784qHfv3v3btWv3uYqKis8VFhaW2wxbUl9fv37Dhg1vfPDBB68vXrz4jccee2z+jTfeuNxmAAAA8pMCGAAAYBc45phjWn/rW9/aq3///kPatGnTv6Kiop9HOLO9NDQ0VG/cuPGtNWvWLFy4cOGcO+6445WHHnporc0AAACknwIYAABgJzjjjDO6f+lLX9qrV69eg1u3bj2orKysR0RkbIadJFddXb103bp18xcvXjz30UcffeXqq69+x1oAAADSRwEMAACwnZWWlhb86le/2u3QQw8d1r17931btmw5qLCwsMxmaEoaGhqqP/zww/nvvPPOzGeeeWbW2LFj36ipqWm0GQAAgGRTAAMAAGwHP/7xj7t+9atf3bdXr15D27Ztu1c2m21jKyRJXV3dmg8++OCVRYsWvfznP/95xh/+8IdltgIAAJA8CmAAAIBtcOKJJ7Y75ZRTDujXr9+w1q1bD81ms61shTSpq6tbt3bt2pfffPPNWbfccsvUe++9d7WtAAAANH0KYAAAgE+hoqKi4IILLhg0YsSI/bp27bpfy5YtB2YymUKbIR/kcrmGDz/8cP6777474/nnn59x4YUXvrZx40aPiwYAAGiCFMAAAAAf4/jjj2/7/e9//8D+/fsf2Lp1630KCgpKbAUiGhsbN61fv37eW2+9NeWGG2545u67715lKwAAAE2DAhgAAOB/ZLPZzAUXXPC5I4888sDu3bsfWFFRsVtEFNgMbFl1dfWSd999d8qsWbNmnnvuuS+vW7euwVYAAAB2DQUwAACQ10pLSwsuvfTSQYcccsjBXbt2HVFWVtbDVmDb1dbWrnr//fdfmDp16uRf/vKXL65evbreVgAAAHYeBTAAAJB3Bg0aVHrBBRd8fs899zywQ4cOBxQVFbWwFdj+Ghsba9euXTtrzpw5T59//vmTX3755WpbAQAA2LEUwAAAQF4YNmxY8/POO+/gIUOGHOZ9vrDz/W0ZfNFFFz07a9asKlsBAADY/hTAAABAarVq1arwyiuv3HfEiBEjO3TocFBhYWGZrcCu19DQUP3+++8/O2XKlIk/+clPZm7cuLHRVgAAALYPBTAAAJAqrVq1Kvztb3+7/3777Xd4x44dRxQWFpbbCjRdDQ0NG99///0pM2bMeOqHP/zhC8pgAACAz0YBDAAApMJZZ53V45vf/OaRvXr1GllaWtrVRiB5ampq3l28ePHEO++8c9LVV1/9jo0AAABsPQUwAACQWMOHDy+/6KKLvjB48OCjW7RoMdBGID0+/PDDV+fNmzfhvPPOe3L69Ol/sREAAIBPRwEMAAAkSqtWrQpvuOGGQ/bbb79/atOmzX6ZTCZrK5BeuVyubs2aNTNmzJjx2JgxYyavW7euwVYAAAA+ngIYAABIhB//+Mddv/e9732lZ8+e/1RcXNzWRiD/1NbWfvD2228/dssttzz029/+9l0bAQAA+L8UwAAAQJNVUVFRcO21137+4IMPPrZ169b7ZTKZAlsBIqJxzZo1M59//vnxp5122hR3BQMAAPx/CmAAAKDJOeWUUzqefvrpx/bu3ftL2Wy2jY0AH6e+vn7j0qVLH/vd7373x+uvv36ZjQAAAPlOAQwAADQJ2Ww2c+uttx5wyCGHnNC6deu9I8LdvsDWaFy7du1L06ZN+/OPfvSjZ1evXl1vJQAAQD5SAAMAALtU//79S6655pp/2nPPPY8tLy/vayPAZ1VTU7NswYIF488999wHp06dutFGAACAfKIABgAAdomf//znPU855ZQTu3btemRhYWGZjQDbW2NjY92KFSuevOWWW+689NJLF9kIAACQDxTAAADATuMxz8Cusn79+rlPP/30f5188slT6+rqcjYCAACklQIYAADY4fr27Vv8hz/84a+Pee5nI8CuUlNT8+68efPu/8EPfvDgwoULN9kIAACQNgpgAABghxkyZEjpNddc89XBgwefWFxc3MFGgKaitrZ21dy5c+/5yU9+8uc5c+bU2AgAAJAWWyqAPYoNAADYJqNHj+4wb968n06ZMuXRYcOGnaH8BZqa4uLi9sOGDTtjypQpj86bN++nJ510UntbAQAA0s4dwAAAwFY599xze33/+9//dufOnY/IZDJZGwGSIpfL1S1fvvzJG2644fbLLrvsbRsBAACSyiOgAQCAz+y8887r+53vfOfbHTt2PDyTyRTaCJBUuVyuYcWKFU/cdNNN//XrX/96sY0AAABJowAGAAC22WWXXTboG9/4xg9at249zDaAtFm7du2su++++9pzzjnnNdsAAACSQgEMAABsNcUvkE8UwQAAQJIogAEAgE9N8Qvks7Vr18665557rvv5z38+3zYAAICmaksFcGHlwOj6UV9orIqoWZG1PQAAyBO/+MUvet9xxx3nHHrooT8pLS3tYiNAPiotLe2y7777HvP973+/X1lZ2ZIpU6assxUAAKCpKetcHwXlH/01BTAAAOS5M844o/u99957zpe//OWflZeX94qIjK0AeS5TXl7e8+CDDx71/e9/v3dEvDVjxowPrQUAAGgqFMAAAMD/ceKJJ7a77777fjJq1Kh/KS8v7xOKX4B/lCkvL+99+OGHj/rWt77VfvXq1Qvnz59fbS0AAMCutqUC2DuAAQAgzwwdOrTs+uuvP6l///4nFRYWltkI20NjY2Ns2rQpqquro6amJurr62PTpk2xefPmqK+vj+rq6qivr4/NmzfHpk2boqGhYZv/fxUWFkZJSUk0a9YsioqKoqysLIqKiqJZs2ZRUlISRUVFUVpa+r9/FRQUCIjtoqGhoeq11167a8yYMffMmTOnxkYAAIBdZUvvAFYAAwBAnujUqVP2nnvuGbXXXnudnM1mK22Ej9PQ0BAbN26MDRs2/J+/Nm7cGBs3boyamprYtGlTbNq0KWpqaqK2trbJnqe4uDhKSkqitLT0f/9eUVERFRUV0aJFi//zV0VFRRQWFvog8LHq6urWvvjii7eceOKJf169enW9jQAAADubAhgAAPLcXXfdddAXv/jF00tLS7vZRn7L5XKxYcOGWLt2baxbty7Wrl37d3+tW7cuNmzYkPd7atGiRbRu3TpatWoVrVu3jjZt2vzvf27dunW0aNHCh4morq5e+sgjj1zzne98Z6ptAAAAO5MCGAAA8tTVV189+MQTTzyzoqJioG3kj8bGxli5cmUsX748Pvjgg1i9evX//n3t2rXR2NhoSZ9RYWFhtGrVKtq1axdt27b937937tw5OnTo4LHTeWbDhg3z77333qvOPPPMebYBAADsDApgAADIM1/72tfaXHrppad27979qIjQRKVUQ0NDrFq1KlasWBHvv//+//595cqVTfqRzGlXXFwcHTp0iI4dO0bnzp2jY8eO0alTp2jXrp1HS6dYLpdrfOeddx76+c9/fv2ECRPW2QgAALAjKYABACBP9OrVq9ldd931jT322OM7hYWFZTaSHh9++GG88847sXTp0njvvfdixYoVsXr16mhoaLCchCgsLIz27dtHp06dolu3btG9e/fo3r27x0mnTENDQ9W8efNu++Y3v/nHJUuWbLYRAABgR1AAAwBAHrjrrrtG/NM//dOZJSUlXWwj2davXx9Lly6Nd955539L3w8//NBiUqqysvJ/y+C//tWqVSuLSbiamppljz322G9Gjx49xTYAAIDtTQEMAAAp9qtf/arPD3/4w5+1atVqL9tIno0bN8aSJUvirbfeikWLFsV7770XmzZtspg8V1JSEl27do0+ffpE3759o3fv3lFeXm4xCbRu3bqXr7322ivGjh27yDYAAIDtRQEMAAApNGjQoNI77rjju7vttttJBQUFWRtJhtWrV8ebb74ZixcvjiVLlsTy5cujsbHRYtiigoKC6Ny5c/Tu3Tt69+4d/fr1i7Zt21pMQjQ2Nta98cYbd33rW9+6ff78+TU2AgAAfFYKYAAASJHS0tKCBx988Jj99tvvn7PZbBsbaboaGhri7bffjrfeeisWLFgQS5YscXcv201FRUX06tUr+vbtG3379o2ePXtGYWGhxTRhdXV1a2bMmHHjV77ylYdqamr85gcAALDNFMAAAJASp59+erdf/vKX51ZWVu5jG03T6tWr47XXXouFCxfGm2++GRs3brQUdooWLVpE3759Y8CAATFw4EB3CDdh69evf/E//uM//vPqq69+xzYAAIBtoQAGAICEGzRoUOm99977w969ex+byWTc4teErF+/PubNmxcLFiyIN954Q+FLk9GiRYvo169fDBgwIPbYY4+orKy0lCYkl8s1LF68eNyJJ554rcdCAwAAW0sBDAAACXbNNdcMOemkk35RVlbWyzZ2vVwuF++++27MnTs3XnvttViyZIl3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B7lcrm7y5Mm//vKXv/yIbQAAwK63pXcAK4ABAMg7paWlBTNnzjyzT58+x9vG39uwYUOMGzcuZsyY4VHPQF7KZDKx3377xde//vWoqKiwkH+waNGiP+27775X1dTUeCwEAADsQgpgAAD4H926dctOnjz5V506dRppG/9fLpeLqVOnxp///OfYuHGjhQB5r6KiIkaNGhX777+/x0L/g+XLlz9+6KGHXvLuu+/W2QYAAOwaWyqAvQMYAIC8MXz48PInnnjiynbt2o2wjf/vnXfeiWuvvTaee+652Lx5s4UARMTmzZtjzpw58dprr0XPnj2jRYsWlvI/Kioq+n7rW98aMnXq1Ofee+89f3AAAMAusKV3ACuAAQDIC9/+9rc73n777X9o0aLFANv4b1VVVXHXXXfFvffeG+vXr7cQgI+wbt26eP7552P9+vWx2267RVFRkaVERElJSefjjjvuoA8++GDKK6+88hcbAQCAnUsBDABAXjv//PP7XXzxxX8oKSnpbBv/bfr06XHttdfGokWLLAPgU3jnnXdi2rRp0bp16+jc2R8nERHZbLbyC1/4whElJSUvTp48eY2NAADAzqMABgAgb/3ud7/b60c/+tFVRUVFrWwjYs2aNXHzzTfHpEmTora21kIAtkJtbW289NJL8c4770Tfvn2jtLQ073dSWFhYNnz48C/26dNn4UMPPbTMpwQAAHYOBTAAAHnp1ltv3f+b3/zmfxYWFjbP913kcrl4/vnn4/rrr4/ly5f7cAB8BitXroxp06ZFRUVFdOvWLTKZTF7vo6CgIDto0KBDBw0atOiBBx54xycEAAB2vC0VwJmex8Z+H/WF+pURa17ym6wAACTTww8//KXDDjvsXzKZTN6/rPGDDz6I22+/Pd544w0fDIDtbMCAAfGtb30r2rRpk/e7yOVyjVOmTPn1yJEjH/LJAACAHavN3jVR1OGjv6YABgAgdV555ZXTPve5z30r3/fQ0NAQjz32WDz++ONRV1fngwGwg2Sz2Tj66KPjC1/4QhQUFOT9Pl5//fU79tprr9/7ZAAAwI6jAAYAIC9ks9nMyy+/fFafPn2Oz/ddvPvuu3HbbbfFe++954MBsJN069YtvvOd70S3bt3yfhdLliy5f5999rmypqam0ScDAAC2PwUwAACpV1paWjBr1qyzevfufVw+7yGXy8WTTz4ZDz74oLt+AXaBbDYbxxxzTBxxxBF5fzfw0qVLHxg6dOjlSmAAANj+FMAAAKRar169mk2ePHlsu3btDsrnPaxcuTJuueWWePvtt30oAHaxnj17ximnnBIdOnTI6z2sXr16yiGHHPIvS5Ys2exTAQAA28+WCuDCyoHR9aO+0FgVUbMia3sAADRpQ4cOLXvqqacub9Omzf75uoNcLhfPPPNMXH/99bF27VofCoAmYP369TFlypQoKSmJnj17RiaTycs9NG/evPtJJ500ZPLkyc+sWLHCoykAAGA7KetcHwXlH/01BTAAAIk1ZMiQ0kceeeSKVq1a7Z2vO6iuro7bb789nnjiiWhs9IRNgKaksbEx5s+fH++//34MGDAgstn8/DlLaWlpp6997WuDn3rqqadXrlxZ75MBAACfnQIYAIDUOfTQQ1s8+OCDv2/ZsuUe+bqDOXPmxNVXX+2RzwBN3PLly+OFF16Ijh075u0joUtLSzudcMIJ+7/00ktPv/3227U+FQAA8NkogAEASJVhw4Y1v++++37TsmXLQfl4/vr6+hg/fnz88Y9/jNpaP0MHSILNmzfHiy++GJs3b47ddtstCgoK8m4HxcXFbY866qg9n3vuuaeXL1/ucdAAAPAZKIABAEiNI488snLcuHG/b9GixcB8PP97770XV111VcyZM8eHASCBFi1aFC+//HL069cvWrRokXfnLykp6XDcccftP2fOnGcWLVq0yScCAAC2jQIYAIBUOPLIIyvvvPPO35aXl++Wj+d/+umn48Ybb4wPP/zQhwEgwf7yl7/ECy+8ECUlJdGrV6+8O3+zZs3aHHXUUfspgQEAYNspgAEASLxjjz227W233faH5s2b98m3s1dVVcXNN98cTz31VDQ2NvowAKRAY2NjzJ8/P5YtWxYDBgyIZs2a5dX5mzVr1uaYY4458M0333xm4cKFNT4RAACwdRTAAAAk2qGHHtritttuuzofy9+33347rrnmmli8eLEPAkAKvf/++/HKK69Enz59orKyMq/Ons1mK4888sh9Zs6c+dTSpUs3+zQAAMCnpwAGACCxjjjiiJb33nvvteXl5f3y6dy5XC4mTZoUN998c1RVVfkgAKRYVVVVTJ06NbLZbPTp0ycymUzenL24uLjtV7/61c+/8sorTy1evLjWpwEAAD4dBTAAAIl06KGHtrj33nt/l2/lb3V1ddx0000xefLkyOVyPggAeSCXy8WCBQvi3Xffjd133z2y2fz5mUyzZs1aH3300fvNmDHjSXcCAwDAp6MABgAgcYYOHVo2fvz4qysqKgbk07mXLVsWV111lUc+A+SplStXxiuvvBKf+9znoqKiIm/O3axZszZHH3300GeeeebJFStW1PkkAADAlimAAQBIlCFDhpQ++uij17Rs2XL3fDr31KlT49prr42NGzf6EADksaqqqpg+fXq0bds2unTpkjfnLikpaT9q1KihTz755JMrV66s90kAAICPt6UCuMB6AABoSjp16pSdMGHCv1dWVu6RL2dubGyMcePGxR133BF1dW56AiCitrY2br755hg/fnw0NjbmzbkrKyv3mDBhwr9369bNXQkAALCNFMAAADQZrVq1Kpw+ffolbdq02T9fzlxdXR2/+93vYtKkSd73C8DfyeVy8fjjj8fvf//7qK6uzptzt2nTZv8pU6Zc0qpVq0KfAgAA2HoKYAAAmoSKioqC2bNnX9KuXbuD8uXMS5cujYsuuijmz5/vAwDAx3r11VfjoosuiqVLl+bNmdu1a3fQ7Nmz/72iosLPrgAAYCu5iAYAoEmYOXPmz9q1a3dIvpz35ZdfjiuuuCLWrVsnfAA+0bp16+KKK66Il19+OW/O3K5du4Nnzpz5M+kDAMDWUQADALDLvfjii2N69OgxKh/Omsvl4oEHHogbbrghamtrhQ/Ap1ZbWxs33HBDPPDAA3nz2oAePXqMevHFF8dIHwAAPj0FMAAAu9SkSZO+NnDgwFPy4ax1dXVx8803x8SJE73vF4BtksvlYuLEiXHLLbdEXV1dXpx54MCBJ0+aNOlr0gcAgE9HAQwAwC7z6KOPHnXggQeekw9nXbduXfz617+OWbNmCR6Az2zmzJnx61//Ol9eJZA58MADz3n00UePkjwAAHyywsqB0fWjvtBYFVGzImtDAADsEDfeeOO+Rx999EWZTKYw7Wddvnx5XHXVVbFy5UrBA7DdbNiwIWbPnh0DBw6MioqKtB8307179/179uz56sMPP7xc+gAA5LuyzvVRUP7RX1MAAwCw011xxRV7fPe7372qoKCgWdrPOmfOnPjtb38bGzduFDwA2111dXVMmzYtOnfuHB07dkz1WTOZTOHuu+9+eJs2bV6aNGnSKukDAJDPFMAAADQZZ5xxRvef/exnvy0sLCxP+1knTJgQd999d9TX1wsegB2moaEhXnrppchms9G3b99UnzWTyRTttddeB/3lL395dubMmRukDwBAvlIAAwDQJBx00EEVf/jDH64pLi7ulOZz5nK5eOCBB+Kxxx4TOgA77c+eBQsWRF1dXfTv3z8ymUxqz1pQUFBywAEHDJs+ffqkpUuXbpY+AAD5aEsFcIH1AACwMwwaNKj0vvvuu7qsrKxXms9ZV1cX1113XUyaNEnoAOx0EydOjOuvvz7q6upSfc6ysrJef/rTn67u379/idQBAODvKYABANjhKioqCh577LGLKyoqBqb5nNXV1XHNNdfE7NmzhQ7ALvPKK6/ElVdeGVVVVak+Z4sWLQZOnDhxbEVFhZ9vAQDA33CBDADADjdz5syftW3b9sA0n3HdunVx2WWXxRtvvCFwAHa5xYsXx2WXXRZr165N9TnbtWt34MyZM38mcQAA+P8UwAAA7FBPPvnkqB49eoxK8xlXrVoVV1xxRSxfvlzgADQZK1asiCuuuCJWrlyZ6nP26NFj1KRJk0ZJHAAA/lth5cDo+lFfaKyKqFmRtSEAALbZjTfeuO+XvvSlCzOZTGp/8fDdd9+NK6+8MtatWydwAJqc6urqmDVrVvTv3z8qKytTe85u3boN79mz57yHH37Yb2MBAJAXyjrXR0H5R39NAQwAwA5x3nnn9T311FOvLigoKE7rGV977bW45pprorq6WuAANFmbN2+OGTNmRI8ePaJ9+/apPGMmkykYNGjQIYWFhVOee+45v5UFAEDqKYABANipjjrqqFb/8R//8YdmzZq1SusZX3755bj++uujrq5O4AA0eQ0NDfHSSy9Fp06dolOnTqk8Y0FBQXbYsGGfnz9//qQ33nhjk9QBAEizLRXA3gEMAMB21a1bt+wNN9zwnyUlJR3TesYpU6bEjTfeGPX19QIHIDHq6+vjxhtvjKlTp6b2jCUlJZ1uuOGG/+jWrZu7GgAAyFsKYAAAtqunn376XyorK/dI6/kmTZoUd955ZzQ2NgobgMRpbGyMO+64I5588snUnrGysnLw008//UtpAwCQrxTAAABsN88///w3unTp8k9pPd/EiRNj3LhxkcvlhA1AYuVyubj//vtTXQJ36dLlS88+++yJ0gYAIB95BzAAANvFTTfdNPzII488L5PJZNJ4vsceeyzGjx8vaABS47XXXotmzZpF3759U3m+zp0779urV695Dz/88DJpAwCQNlt6B7ACGACAz+wXv/hF7x/+8IdXFxQUNEvj+R544IF45JFHBA1A6ixYsCDq6upiwIABqTtbJpPJDBo06ODGxsbnpk6dul7aAACkiQIYAIAd5oADDqj43e9+99tmzZq1TeP5xo0bF5MmTRI0AKm1aNGi2Lx5cwwcODB1ZysoKMjut99+w5577rnH33vvvc3SBgAgLbZUAHsHMAAA2yybzWbuvPPOfyktLe2exvNNmDBB+QtAXpg0aVI89NBDqTxbaWlpj3vuuedfstlsRtIAAOQDBTAAANvs+eef/06HDh0OTePZHn744Xj44YeFDEDeeOSRR+LPf/5zKs/WoUOHw5599tlvSxkAgHygAAYAYJvcd999hw8ePPjUNJ7t/vvvjwkTJggZgLzz2GOPxX333ZfKs+25554/+NOf/nSYlAEASDvvAAYAYKudccYZ3ceMGXN5QUFBcdrONnHixHjkkUeEDEDeWrx4cWSz2ejbt2/ajpbp06fPvn/5y18mz5w5c4OkAQBIsi29A1gBDADAVhk2bFjzG2+88Q/NmjVrl7azPfroo6l99CUAbI2FCxdGUVFR9OvXL1XnKigoKD7wwAP3e/LJJx9dsWJFnaQBAEiqLRXAHgENAMBWuffee39ZWlraPW3nevzxx+PBBx8UMAD8jz//+c8xceLE1J2rtLS0x3333fdLCQMAkFYKYAAAPrVJkyaN6tSp0xEpPFeMHz9ewADwD8aPHx+TJ09O3bk6der0hUmTJn1VwgAApJFHQAMA8Kmcd955fU888cR/z2QyRWk618yZM+Puu+8WMAB8jNdeey06duwYnTt3TtW5unbtuk9BQcHzzz333DopAwCQNN4BDADAZ3LEEUe0vOKKK67NZrOVaTrXyy+/HDfffHPkcjkhA8DHyOVyMXv27OjSpUt06tQpNefKZDJF++yzz/CpU6c+9u67726WNAAASeIdwAAAbLNsNpu55ZZb/q2kpKRjms61YMGCuPnmm6OxsVHIAPAJGhsb4+abb44333wzVecqLS3tcvfdd5+fzWYzUgYAIC0UwAAAbNGkSZO+3rZt2wPTdKZly5bFDTfcEPX19QIGgE+prq4urr322li+fHmqztWuXbsDH3/88VESBgAgLTwCGgCAj3XZZZcN+upXvzo2k8mk5hcH33///bjyyiujqqpKwACwlerq6uLll1+OIUOGRHl5eWrO1aVLl31LS0unPvPMM2ukDABAEngENAAAW61///4lJ5988q8ymUxRWs60YcOG+P3vfx8bN24UMABso40bN8bvfve7VP15WlBQkP3hD394ft++fYslDABA4q9vrQAAgI/y4IMPnl1WVtYrLeeprq6O3/zmN7Fq1SrhAsBntGrVqrjyyiujuro6NWcqKyvr8/DDD58lXQAAkk4BDADA/zF+/Pgju3XrdnRazlNfX5/KdxYCwK60fPnyuO6666K+vj41Z+rRo8dXx40bd4R0AQBIMgUwAAB/53vf+16nI4444py0nCeXy8Vtt90Wb7zxhnABYDt7/fXX47bbbotcLpeaMx155JHnfvvb3+4oXQAAkkoBDADA/6qoqCi4+OKLLywsLCxPy5nGjx8fs2bNEi4A7CCzZs2Khx56KDXnKSwsrPj1r399QUVFhZ+bAQCQSC5kAQD4XxMnThxdWVk5OC3nef7552PixImCBYAd7LHHHosXXnghNeeprKzc89FHHz1RsgAAJFFh5cDo+lFfaKyKqFmRtSEAgDxxwQUX7DZq1KgLM5lMYRrO8+qrr8Ytt9ySqkdSAkBT/7O3d+/e0a5du1Scp2PHjkNzudxzU6ZMWSddAACamrLO9VHwMc/wcwcwAADRt2/f4h//+McXZzKZVPwG4HvvvRc33HBDNDY2ChcAdpKGhoa47rrrYtmyZak4T0FBQfbss88e27dv32LpAgCQqGtZKwAAYPz48T8qKyvrkYazbNiwIX7/+99HbW2tYAFgJ9u0aVP8/ve/j40bN6biPGVlZb3GjRs3RrIAACSJAhgAIM/ddNNNw/v06XN8Gs5SX18f1157baxdu1awALCLrFmzJq699tqor69PxXn69ev3jd///vdDJQsAQFIogAEA8thBBx1Uceyxx/5rRGTScJ477rgjFi9eLFgA2MUWLVoUd955Z1qOU/CNb3zj34YNG9ZcsgAAJOIC1goAAPLXzTfffFZxcXG7NJxl4sSJMX36dKECQBMxbdq0mDRpUirOUlJS0unOO+88Q6oAACSBAhgAIE/913/914FdunT5UhrO8tprr8Wf//xnoQJAEzN+/PhYsGBBKs7SrVu3o2+66abhUgUAoKlTAAMA5KEvfelLlV/5yld+lYazrFixIq6//vpobGwULAA0MY2NjXHdddfFihUr0nCczHHHHfergw46qEKyAAA0ZQpgAIA8dPXVV5+ezWYrk36OmpqauPbaa2PTpk1CBYAmatOmTXHttddGTU1N4s+SzWbb3njjjT+RKgAATZkCGAAgz9x6663Du3Tp8uWknyOXy8Utt9wSK1euFCoANHErV66MW2+9NXK5XOLP4lHQAAA0dQpgAIA8MnTo0LKvfvWrv0jDWSZMmBBz584VKgAkxJw5c+Kxxx5LxVlGjRr1i6FDh5ZJFQCApkgBDACQR+64444fFRcXd0z6OV5++eV45JFHBAoACfPQQw+l4he4SkpKOt5xxx0/lCgAAE2RAhgAIE9cfvnlu/fs2XNU0s/xwQcfxB133JGKR0gCQL7J5XJx2223xZo1axJ/lp49ex57+eWX7y5VAACaGgUwAEAe6NatW/a73/3uv2YymURf/9XX18cNN9wQ1dXVQgWAhKqqqoobb7wx6uvrE32OTCZT8N3vfvdX3bp1y0oVAICmRAEMAJAHxo8ff0pZWVmvpJ/jnnvuiaVLlwoUABJuyZIlcd999yX+HGVlZT3Hjx9/ikQBAGhKFMAAACn385//vOeAAQNGJ/0c06dPjylTpggUAFJi8uTJMWPGjMSfY8CAAaN//vOf95QoAABNhQIYACDFstls5qyzzjo3k8kk+tGEK1asiLvvvlugAJAyd911V6xYsSLRZ8hkMtmzzjrr3Gw2m5EoAABNgQIYACDFxo0b98XKysq9knyG2trauOGGG6K2tlagAJAyf/1zfvPmzYk+R2Vl5V7jxo0bKVEAAJoCBTAAQEoNHz68/OCDDz4t6ee4//77Y/ny5QIFgJRavnx5jBs3LvHnGDFixI+HDRvWXKIAAOxqCmAAgJS69dZbT8tms22TfIYZM2bEc889J0wASLnJkyfHzJkzE32G4uLitrfffvtp0gQAYFdTAAMApNBVV121R48ePb6S5DOsXLky7rrrLmECQJ64++6744MPPkj0GXr27PnVK664Yg9pAgCwKymAAQBSprS0tOAb3/jGT5N8rdfY2Bi333679/4CQB6pqamJ2267LRobG5N8jIJvfvObZ5aWlvqZGwAAu+6i1AoAANJlwoQJX6uoqBiQ5DOMHz8+Fi1aJEwAyDNvvvlmPPjgg4k+Q4sWLQY9+OCDx0gTAIBdRQEMAJAiRx55ZOWwYcN+kOQzzJ07N5544glhAkCemjhxYixYsCDRZxg+fPiPjjjiiJbSBABgV1AAAwCkyBVXXHFyUVFRRVLnr6qqijvvvDNyuZwwASBP5XK5uP3226O6ujqxZygqKmrxm9/85mRpAgCwKyiAAQBS4vzzz+/Xu3fv45J8httvvz0+/PBDYQJAnlu3bl3cfvvtiT5D7969jz///PP7SRMAgJ1NAQwAkALZbDZz6qmn/jyTyST2+m769OkxZ84cYQIAERExe/bsmDFjRmLnz2QyBaeeeurPs9lsRpoAAOxMCmAAgBT44x//eERlZeXgpM6/du3auPfeewUJAPyde+65J9atW5fY+SsrKwf/6U9/+oIkAQDYmRTAAAAJ17dv3+JDDjnkR0k+w9133x01NTXCBAD+Tk1NTdx9992JPsPBBx/8o759+xZLEwCAnUUBDACQcHfdddc3S0pKOiV1/smTJ8e8efMECQB8pLlz58azzz6b2PlLSko63nPPPd+SJAAAO4sCGAAgwb70pS9VDhw48KSkzr9mzZoYP368IAGALXrggQdizZo1iZ2/f//+Jx111FGtJAkAwM6gAAYASLArrrji1MLCwvIkzp7L5eK2226LTZs2CRIA2KJNmzbFbbfdFrlcLpHzFxYWll1++eU/kCQAADuDAhgAIKF+8Ytf9O7evftXkjr/s88+G2+88YYgAYBP5Y033ojnn38+sfN369bt6F/96ld9JAkAwI6mAAYASKgf/vCHP8pkMom8nvvggw/igQceECIAsFXGjRsX69atS+TsmUym4NRTT/2xFAEA2NEUwAAACXTdddcNa9eu3YFJnD2Xy8Udd9wRtbW1ggQAtsqmTZvizjvvTOz8bdq02f+mm27aT5IAAOxICmAAgIQpLS0t+NrXvnZ6Uud/4YUXYuHChYIEALbJq6++GjNmzEjs/Mccc8zpFRUVfiYHAMAO42ITACBhbr/99oMrKip2S+LsGzZsiHHjxgkRAPhM7r///qiqqkrk7OXl5X3/67/+6wgpAgCwoyiAAQASpKKiouCwww47Nanz33vvvYn9YS0A0HRs2LAh7r///sTOf9BBB/1zq1atCiUJAMCOoAAGAEiQ+++//+iysrKeSZx9zpw58dJLLwkRANguXnjhhViwYEEiZy8tLe32xz/+8StSBABgR1AAAwAkRN++fYv33Xfff07i7LW1tXHvvfcKEQDYru6+++6oq6tL5Oz77bffKf379y+RIgAA25sCGAAgIW6++eZRxcXFbZM4+yOPPBJr164VIgCwXa1atSoee+yxRM6ezWbb3njjjV+TIgAA25sCGAAgAYYOHVq21157fSeJs7/33nvxxBNPCBEA2CEmTpwYK1asSOTsQ4YM+c7QoUPLpAgAwPakAAYASIBrr732xKKiosqkzZ3L5eKee+6JxsZGIQIAO0R9fX3cddddkcvlEjd7UVFR5bXXXnuCFAEA2J4UwAAATdwBBxxQMWDAgG8kcfYZM2bEW2+9JUQAYId6880348UXX0zk7AMGDPjG8OHDy6UIAMD2ogAGAGjirrrqqhOKiooqkjb3pk2b4oEHHhAgALBT3H///VFbW5u4uYuKilpcffXV7gIGAGC7UQADADRhBx10UEX//v0Teffvww8/HB9++KEQAYCdYv369TFhwoREzj5w4MBvHHDAARVSBABge1AAAwA0Yf/5n/95bGFhYfOkzb1q1aqYPHmyAAGAnerpp5+O1atXJ27uwsLC8ssuu2yUBAEA2B4UwAAATdQBBxxQMWjQoNFJnP3uu++O+vp6IQIAO1V9fX3cddddiZx99913/+bQoUPLpAgAwGelAAYAaKIuv/zyYwsLC8uTNvfcuXNjwYIFAgQAdokFCxbE3LlzEzd3UVFRi9/97ndflyAAAJ+VAhgAoAkaOnRo2aBBgxL37t+6urr405/+JEAAYJf605/+FHV1dYmbe/fdd//mkCFDSiUIAMBnoQAGAGiCfvOb33ylqKioZdLmfu655xL53j0AIF1Wr14dzz33XOLmLioqann11VcfLUEAAD4LBTAAQBPTq1evZoMHD/5m0uaurq6ORx55RIAAQJPwyCOPRHV1deLmHjJkyLe6deuWlSAAANtKAQwA0MTcdNNNxxQXF7dN2twTJkyIqqoqAQIATUJVVVUifzmtuLi43a233uouYAAAtpkCGACgCWnVqlXhXnvtdVLS5l61alU8++yzAgQAmpTJkyfHqlWrEjf30KFDR7dq1apQggAAbAsFMABAE3LLLbccXlJS0jlpcz/44INRX18vQACgSamvr48HH3wwcXOXlJR0vummmw6VIAAA20IBDADQRGSz2cwBBxzw7aTNvWjRonjppZcECAA0SS+99FIsXrw4cXOPGDHiO9lsNiNBAAC2lgIYAKCJuOaaa/YuLy/vm7S5H3roocjlcgIEAJqkXC6XyLuAy8vL+1111VV7SRAAgK2lAAYAaCK+8pWvfDdpM8+bNy8WLlwoPACgSVu4cGG8+uqrrg8BAMgLCmAAgCbgsssuG1RZWblPkmbO5XIxfvx44QEAifDAAw8k7qklrVu33veSSy7pLz0AALaGAhgAoAkYNWrUCUmbefbs2bFs2TLhAQCJsGzZsnjllVcSN/cJJ5xwovQAANgaCmAAgF3sn//5nzt37NjxiCTN3NjYGA888IDwAIBEGT9+fDQ0NCRq5k6dOn1h9OjRHaQHAMCnpQAGANjFfvSjH30tk8kk6rps2rRpsWrVKuEBAImyatWqeOGFFxI1cyaTKfzpT386SnoAAHxaCmAAgF1o0KBBpX369Plqkmaur6+PCRMmCA8ASKQJEyZEXV1dombu27fvV/r27VssPQAAPg0FMADALnTZZZcdXlRUVJGkmadOnRpr164VHgCQSOvXr48pU6YkauaioqLK3/zmN0dIDwCAT0MBDACwi2Sz2cy+++57UpJmrqurc/cvAJB4jz76aOLuAt5///1PymazGekBAPBJFMAAALvI1VdfPbSsrKx3kmaeMmVKbNiwQXgAQKJt2LAhnn/++UTNXFZW1ueqq67aS3oAAHwSBTAAwC7y5S9/+bgkzVtfXx8TJ04UHACQCo8//nji7gL+0pe+dLzkAAD4JApgAIBdYPTo0R3atm07IkkzT5s2LdatWyc8ACAVPvzww5g+fXqiZm7fvv2I0aNHd5AeAABbogAGANgFfvrTn47KZDKFSZm3vr4+HnnkEcEBAKnyyCOPRH19fWLmzWQyhT/96U+/JjkAALZEAQwAsJN16tQp26dPn6OTNLO7fwGANFq3bl1MmzYtUTP36dPnmE6dOmWlBwDAx1EAAwDsZFddddUB2Wy2dVLmbWxsjEmTJgmOVOvYsWN06OCJmgD5aNKkSdHY2JiYebPZbOurrrrqAMkBAPBxFMAAADvZiBEjvp6keV988cVYtWqV4Ei1Ll26xIUXXhinnXZadO3a1UIA8siqVavipZdecj0JAEBqKIABAHaiM844o3tlZeXeSZk3l8vFxIkTBUdeyGQyMXjw4PjVr34VY8aMcUcwQB55/PHHI5fLJWbeysrKvc8444zukgMA4KMogAEAdqJTTjnlqxGRScq8CxYsiPfee09w5JVMJhN77713XHjhhTFmzJho3769pQCk3HvvvRcLFy5M1B9X/3NdCQAA/4cCGABgJ+nVq1ezXr16fTlJM3v3L/nsr0XwBRdcECeffHK0bdvWUgBSLGnXPb169fpyr169mkkOAIB/pAAGANhJrrjiioOLiopaJmXeBN4JAztEYWFhDB8+PC688MIYPXp0VFZWWgpACi1YsCCWLVuWmHmLiopaXnnllYdIDgCAf6QABgDYSYYPH/6VJM2btHfhwY5WVFQUI0aMiEsuuSRGjx4dLVu2tBSAFMnlcvH4448naub99tvvK5IDAOAfKYABAHaC0aNHd6isrByalHnXrl0bL7/8suDgI/y1CL744ovjhBNOiBYtWlgKQEq89NJLsW7dusTMW1lZudfo0aM7SA4AgL+lAAYA2AlOP/30o5J07fXMM89EQ0OD4GALiouL47DDDouxY8fGqFGjoqyszFIAEq6hoSGeeeaZJI1c8D/XmQAA8P8vEq0AAGDHymazmX79+n05KfPW1tbGlClTBAefUnFxcYwcOTIuvfTSGDVqVJSWlloKQII9//zzUVtbm5h5+/Xr9+VsNpuRHAAAf6UABgDYwX7zm9/sWVJS0jkp886YMSOqq6sFB1uppKQkRo4cGZdcckkcffTRUVJSYikACVRdXR0zZ85M0p8/na+44orBkgMA4K8UwAAAO9gXvvCFLyVl1lwuF08//bTQ4DNo3rx5HHXUUXHJJZfEyJEjI5vNWgpAwjz11FORy+USM++RRx75ZakBAPBXCmAAgB1oyJAhpZ07dz4iKfO+/vrrsWLFCsHBdlBeXh6jRo2KSy+9VBEMkDArVqyI119/PTHzdunS5fD+/ft79AQAABGhAAYA2KHGjh17aGFhYWJeCOruX9j+KioqYtSoUXHxxRfH4YcfHkVFRZYC4LpouyosLGz+H//xHwdLDQCACAUwAMAOteeeex6ZlFnXrl0b8+bNExrsIK1atYrjjz8+LrroohgxYkQUFPh2DKApmzdvXqxZsyYx8+61115HSg0AgAgFMADADnPMMce0bt269b5Jmfe5556LxsZGwcEO1qZNmxg9enRcfPHFimCAJqyxsTGee+65JP35MvyYY45pLTkAAPykAQBgBznzzDMPz2Qyibje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FpafffbZvaQFAJA+CmAAgE9p//3375+EOV9//XVhAXmjvLw8Ro0aFf/+7/8eI0eOjGw2aymA67FP6fOf//xAaQEApI8CGADgU+rRo8fuTX3G2traePvtt4UF5J2KiooYNWpUXHzxxXH44Yc3+XdvAum2ePHiRLySo1evXoOkBQCQPgpgAIBPqXXr1k3+DoklS5ZEQ0ODsIC81apVqzj++OPj4osvjhEjRkRBgW97gZ2voaEhlixZ0uTnbNOmjQIYACCFfCcMAPApDBkypLR58+a9m/qcb775prAAIqJ169YxevToGDt2rCIYcF32MZo3b95n0KBBpdICAEgX3wEDAHwKp556av9MJtPkr53eeustYQH8jTZt2sTo0aPjvPPOi+HDhyuCAddlfyOTyRT84Ac/+Jy0AADSxXe+AACfwuDBg5v84/Hq6+tj0aJFwgL4CJ06dYqTTz45/u3f/i323nvvyGQylgLsUIsXL07Eqzn23HPPgdICAEgXBTAAwKfQpUuXAU19xnfeeSfq6uqEBbAFnTt3jjFjxiiCgR2utrY23n333SRc53oPMABAyiiAAQA+hZYtW/Zv6jN6/DPAp9elS5cYM2ZMnHvuuTF48GALAfL2+iwJ17kAAGwdBTAAwCcYPnx4eUlJSeemPqfHPwNsvV69esVpp50W55xzTvTvrwMB8u/6rLS0tPPw4cPLpQUAkB4KYACAT/Ctb31rt4ho8s8IXbx4sbAAtlGfPn3irLPOinPOOSd22203CwG2i4T8gl7m29/+dj9pAQCkhwIYAOAT7L777k2+CVi7dm1s2LBBWACfUZ8+feLss8+OM888M3r27GkhwGfy4Ycfxrp165r8nAMHDlQAAwCkSJEVAABsWadOnZr8D8TefvttQQFsRwMGDIgBAwbEggULYvz48bF06VJLAbb5Oq1Vq1audwEA2GkUwAAAn6CyslIBDJCnBgwYEP3794958+bFQw89FO+++66lAFtlyZIlsddeezX1613PvgcASBEFMADAFnTq1CnbvHnzXk19ziVLlggLYAfJZDIxePDg2GOPPeLll1+OBx98MFauXGkxQGqu05o3b967Xbt2RatXr66XGABA8nkHMADAFowZM6ZnJpPJNuUZGxsbPZoUYCfIZDKx9957x4UXXhhjxoyJ9u3bWwrwiZYuXRqNjY1NesaCgoLsqaee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k8nE7NmzY+LEibFmzRoNAXif/VNSzJo161kTAwBongTAAAC70O233/7KOeecszU/P78022sdMGBAtG/f3tWu0My9+uqrMWnSpFi1apVmALyPjh07xgEHHJCIWhsbG6u/8Y1v/NXUAACaJwEwAMAutHLlyob169fP6tat2+hsrzWVSsXhhx8ekyZNMjhohubMmROTJ0+OJUuWaAbAh3D44YdHKpVKRK3r16+fVVFR0WhqAADNU54WAADsWq+++mpirts77LDDDAyamTfffDP+/d//PX7yk58IfwE+pFQqFSNGjEhMva+88sozpgYA0Hw5AQwAsIvddNNNz5166qnV+fn5rbO91m7dukX//v1j4cKFBgc5btmyZfHYY4/F/PnzNQPgIzrggAOic+fOiai1sbFxy4033jjL1AAAmi8BMADALrZy5cqG8vLyGT179vx0Euo9+uijBcCQw5YvXx7jxo0T/AJ8wv1SUpSXlz9TXl7eYGoAAM2XABgAYDeYMWPGUxdccEEiAuAhQ4ZE69ato7q62uAgh6xcuTImTJgQc+fOjUwmoyEAH1ObNm3i0EMPTUy9zz777FOmBgDQvPkGMADAbvDVr371lYaGhk1JqLWgoCCOOOIIQ4McsW7duvj5z38ed955Z8yZM0f4C/AJjRw5MvLz8xNRa0NDw8abbrrpVVMDAGjenAAGANgNKisrm1atWjW9T58+5ySh3qOPPjqefPJJQREk2Pr16+Oxxx6L2bNn+3cZYBdJpVIxatSoxNS7cuXKadXV1WmTAwBo3pwABgDYTaZNm5aY6/c6duwYAwYMMDRIoA0bNsSvf/3r+Nd//dd49dVXhb8Au9CAAQOiY8eOian36aefftLUAAAQAAMA7CZf+9rX5tTX11ckpd6jjjrK0CBBqqqq4v77749vf/vb8eKLL0ZTU5OmAOxiRx55ZGJqra+vX/eNb3zjdVMDAMAV0AAAu0ltbW16xYoVT++///6fT0K9hx56aLRt2zaqqqoMD7LYli1bYsqUKfHcc8/F9u3bNQRgN2nbtm0MGTIkMfUuX778qdraWtc/AwDgBDAAwO70xz/+cUJSas3Pz4/jjjvO0CBL1dTUxKOPPhq33XZb/OUvfxH+Auxmxx57bOTn5yel3Myvf/3rCaYGAECEABgAYLe66667llZXV89PSr1HH310tGjRwuAgi7wd/H7jG9+IqVOnRn19vaYA7GYtWrSIo48+OjH1btmy5Y177rlnhckBABDhCmgAgN3u9ddfn3T44YcPSEKtxcXFcdhhh8XMmTMNDvayurq6ePrpp2PatGmxbds2DQHYgw477LAoKSlJTL3z5s17wtQAAHibE8AAALvZ9773vanpdLohKfWecMIJkUqlDA72koaGhpg6dWrceuut8fjjjwt/AfawVCoVJ5xwQmLqTafT27/73e8+ZXIAALzNCWAAgN1s+vTpWyoqKmZ26dIlER/Y7d69e/Tv3z/efPNNw4M9qKGhIaZNmxZPPfVUVFdXawjAXnLAAQdE9+7dE1NvRUXFczNmzPAXBwAA/+QEMADAHjBr1qxEXcuXpFMvkHTpdDqee+65uP322+PRRx8V/gLsZccff3yi6p0xY8YkUwMA4J2cAAYA2AO++tWvvnT66adXFRYWtk1CvQMHDoyOHTvGhg0bDA92k3Q6HbNmzYrJkyfHxo0bNQQgC3Ts2DEGDhyYmHobGhoqb7755pdMDgCAd3ICGABgDygvL29YsWLF1MRsEvPy4sQTTzQ42A3S6XS8+OKL8Z3vfCfuv/9+4S9AFjnppJMiLy85r8tWrFgxpaKiotHkAAB4JwEwAMAe8qtf/erRiMgkpd6jjjoqysrKDA52kUwmE6+++mp873vfi1//+texdu1aTQHIImVlZXHUUUcl6q+W//7v//6zyQEA8G4CYACAPeQ///M/l1dWVv4tKfUWFhbGMcccY3CwC7wd/P785z+PNWvWaAhAFjruuOOioCA5X0urqqqa/dOf/nS1yQEA8G4CYACAPeill14al6R6jzvuuCgqKjI4+JjmzJkTd911V/z85z+P1au9owfIVkVFRYn7xbcXXnhhnMkBALAzBVoAALDnjB079pkFCxZUFhYWtktCvSUlJXHEEUfE9OnTDQ8+gjfffDPGjx8fb731lmYAJMCRRx4ZJSUliam3oaFh0zXXXPOsyQEAsDMCYACAPai8vLxh6dKlE/v3739xUmo+8cQT49lnn410Om2A8AEWLVoUjz32WCxevFgzABIiLy8vTjzxxETVvGTJkifKy8sbTA8AgJ3ucbUAAGDP+u1vfzsxIjJJqbdjx44xdOhQg4P3sXz58rj77rvjRz/6kfAXIGGGDRsWHTp0SFLJmd/85jePmxwAAO9FAAwAsIf953/+5/JNmza9kqSaTz/99EilUoYH77Jy5cr4yU9+Et///vdj/vz5GgKQMHl5eXHGGWckquZNmza9fM8996wwPQAA3osroAEA9oKXXnpp/KmnnnpYUurt2rVrDBkyJGbPnm14EBHr1q2L8ePHx+zZsyOTyWgIQEINHTo0OnfunKiaX3jhhQkmBwDA+xEAAwDsBZdffvkzS5YsWVdUVNQlKTWfccYZ8be//U3YRbO2fv36eOyxxwS/ADkglUrF6aefnqia6+rq1lx22WXTTQ8AgPcjAAYA2AsqKyub5s+f/8ihhx56dVJq7tatm1PANFsbNmyIxx9/PF555ZVoamrSEIAc8KlPfSq6du2aqJrfeOONcdXV1WnTAwDg/fgGMADAXvL1r399XDqdrktSzb4FTHNTVVUV999/f3z729+OF198UfgLkCNSqVR8+tOfTlTN6XS69pvf/OZjpgcAwAdxAhgAYC+ZMWNG9Zo1a/7Ss2fPxLx97N69ewwcODDmzJljgOS0LVu2xIQJE+KFF16IxsZGDQHIMYceemh069YtUTWvXr36qRkzZlSbHgAAH8QJYACAvejXv/71HyMiUR8SPeuss5wCJmdt27YtHn300bjtttviueeeE/4C5KC8vLwYM2ZM0srO/OpXv/qT6QEA8KH2vFoAALD3fP/733+rqqoqUR/V7dGjR3zqU58yPHJKfX19TJ06Nb71rW/F1KlTo76+XlMActSIESOiS5cuiap506ZNf73rrruWmh4AAB+GABgAYC975plnHkpazWeccUbk5dlKkjvmzZsXjz76aGzdulUzAHJYQUFBnH766Ymre9q0aQ+aHgAAH5a3dgAAe9nYsWNn1tfXr01SzZ07d47DDjvM8ACARBk5cmR06NAhUTXX1dWtHjt27POmBwDAhyUABgDYyyorK5tee+21Pyat7jPPPDMKCgoMEABIhBYtWiTy9O/s2bP/UF1dnTZBAAA+LAEwAEAWuOqqqyY0NjZWJanm9u3bx9FHH214AEAiHHfccdGmTZtE1dzQ0LDxiiuumGh6AAB8FAJgAIAssGDBgrqFCxc+lrS6R48eHYWFhQYIAGS1li1bxsknn5y4uhcuXDhu6dKl200QAICPQgAMAJAlvv71r/8pnU7XJqnmtm3bximnnGJ4AEBWO+2006K0tDRRNTc1NdV+7Wtfe8j0AAD4qATAAABZ4umnn968fPnyxF3xN3r06GjXrp0BAgBZqUOHDnH88ccnru5ly5ZNmD59+hYTBADgoxIAAwBkkbvvvvtPmUymKUk1FxYWxumnn254AEBWOvPMMxP3yYpMJtN41113/dH0AAD4OATAAABZ5Be/+MWatWvXTkta3UcccUT06tXLAAGArNK7d+847LDDEld3eXn5X+6///51JggAwMchAAYAyDIPP/zwn5JWcyqVijPPPNPwAICsMmbMmEilUomr+8EHH/yT6QEA8HEJgAEAsszXv/71NzZs2DAraXUPHDgwDj74YAMEALLCoEGDYsCAAYmru6KiYuatt966wAQBAPi4BMAAAFlo3Lhxv01i3WPGjIm8PFtMAGDvysvLizFjxiSy9j//+c+/NUEAAD7RflgLAACyz/XXXz+nqqrqr0mru1evXnHUUUcZIACwVx1zzDHRvXv3xNW9adOmV2666aa5JggAwCchAAYAyFJ/+tOf7k1i3WPGjInS0lIDBAD2ijZt2sRZZ52VyNofeOCBe00QAIBPSgAMAJClbrrpprlJPAVcXFwcZ555pgECAHvFWWedFS1btkxc3Zs2bXrl5ptvnmeCAAB8UgJgAIAsNm7cuF8lse5Ro0ZF7969DRAA2KP69OkTI0eOTGTtjz322K9MEACAXUEADACQxcaOHTu7qqrqb0mrO5VKxfnnnx+pVMoQAYA9tv/4/Oc/n8j9R2Vl5d+uueaav5kiAAC7ggAYACDLTZ069bdJrLtv374xZMgQAwQA9ojDDjsssTeQTJ48+TcmCADAriIABgDIcpdeeumLVVVVryax9s9//vNRXFxsiADAblVaWhrnn39+Imuvqqr66+WXX/6SKQIAsKsIgAEAEuChhx76WRLrLisri9NPP90AAYDd6qyzzoqSkpIklp753e9+91MTBABgVxIAAwAkwA033DB3w4YNs5JY+3HHHRd9+vQxRABgt+jbt28cddRRiay9oqJi1te//vU3TBEAgF1JAAwAkBA///nPfxoR6aTVnUql4vOf/3zk5dl6AgC7Vn5+flx00UWRSqWSWH76F7/4xX+bIgAAu5q3cAAACXHHHXe8tW7duulJrL13795xzDHHGCIAsEudcMIJ0b1790TWXl5e/pc77rjjLVMEAGBXEwADACTI3XfffW8mk2lKYu1nnXVWtG3b1hAB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onv37vEv//IvccABBzSrdWcymaYnnnji9s997nPPeAoAAODDEQADAJBYDz/88NJjjjlmY+/evY+KiGZzFKq0tDSGDx8eq1evjvXr13sQAHLcwIED45prrol27do1t6VnZsyY8YOzzjprqqcAAAA+PAEwAACJdv/99795zDHHVO6zzz5HRDMKgVu0aBGHHXZYtGzZMhYuXBjpdNrDAJBjCgoK4pxzzonzzz8/WrRo0dyWn37uuefuOuWUUyZ4EgAA4KMRAAMAkHi///3v5w8bNmxF3759j2lO10GnUqno27dvDB06NBYvXhxbtmzxMADkiJ49e8YNN9wQgwcPblbf+434x7XPU6ZM+fbpp58+2ZMAAAAfnQAYAICc8OCDDy4ZNmzYin79+jWrEDgionXr1nHEEUdEfX19LF261MMAkGCpVCpOOOGEuOKKK6JNmzbNbv07wt9vnXPOOX/xNAAAwMcjAAYAIGc89NBDS4YNG7a8X79+xza3EDg/Pz8OPvjg6NWrV8yfPz8aGho8EAAJU1JSEpdffnmccMIJkZ+f3+zWn8lkGp944olvffazn53maQAAgI9PAAwAQE556KGHlo4cOXJdnz59RqWa252ZEdG1a9cYNmxYLFu2LCorKz0QAAnRt2/fuO6662K//fZrluvPZDLpp59++rvnnHPO054GAAD4ZATAAADknD/96U+LDj300KX7779/s7sOOiKiuLg4jjzyyCgpKYk333wz0um0hwIgSxUUFMRnP/vZuPDCC6OkpKRZ9iCdTjc88sgjt5x//vnTPREAAPDJCYABAMhJDz/88NId3wQelUqlmt09mqlUKvr06RMHH3xwLFy4MLZt2+ahAMgynTt3jrFjx8bQoUOjGV5aERH/CH+feOKJ2y+88MLnPBEAALBrCIABAMhZDz300JIePXq8NmjQoGPz8vJaNMcetG3bNkaNGhVNTU2xZMkSDwVAFkilUjF69Oi48soro0OHDs22D01NTdt++9vf/stll132oqcCAAB2HQEwAAA5bdKkSeXdu3efM3jw4GYbAufn58eAAQOiV69esWDBgti+fbsHA2Avad26dVx66aVx/PHHR35+frPtQ2NjY/WvfvWrf7nuuute81QAAMCuJQAGACDnTZ48eW1jY+OMI4444uiCgoKS5tqHrl27xqhRo2Lbtm2xcuVKDwbAHpRKpWLUqFExduzY6NWrV7PuRX19/fo77rjjK9/61rcWejIAAGDXEwADANAsPP/881UbNmx45rjjjjuqsLCwrLn2obCwMAYNGhT77bdfLF68OGpraz0cALtZ+/bt44orrogTTzwxCgub9/uU2tralTfffPPVP/nJT1Z7MgAAYPcQAAMA0Gz87W9/27p27doZJ5xwwsjCwsK2zbkXnTp1ipEjR0Z1dbXTwAC70ciRI+Pqq6+OHj16NPte1NTULL/hhhuu/e1vf7vOkwEAALuPABgAgGbltdde2zpv3rynTznllKFFRUWdmnMvCgsL49BDD4399tsvFi1a5DQwwC709qnfk08+udmf+o2I2Lx587yLL774unHjxm30dAAAwO71fgFwat9zYsTOftC4LmLjq610DwCAxOrVq1fhs88++69du3Y9QTciGhoaYurUqTF58uRobGzUEICPqaCgIE499dQYPXq04HeH8vLyp4499tjvrly5skE3AABg9+swrDYKuuz8ZwJgAAByWuvWrfNeeumlm/fdd9+zdeMfVq9eHffff38sWbJEMwA+ov322y8uuugi1z2/w8KFC38/fPjwnzY0NGR0AwAA9gwBMAAAzd7zzz9/8aGHHnp1RKR0IyKTycTMmTPjz3/+c9TV1WkIwAcoKSmJ8847L0aMGBGplL9Kdki//PLL9xx77LEPagUAAOxZ7xcA+wYwAADNwn333Tfn+OOP39yrV6/DQwgcqVQqevfuHcOHD49169ZFRUWFhwTgPRxyyCExduzY6N+/v/B3h0wm0/jMM8/828knnzxONwAAYM97v28AC4ABAGg2fve7370xePDgJf369Ts6lUrl60hEcXFxjBgxInr06BFLly6N2tpaTQHYoUOHDvGFL3whzjzzzCguLtaQHZqammoeeOCBWz73uc9N1w0AANg7BMAAALDDww8/vKygoOC54cOHH1FQUFCqI//QrVu3OO6446K0tDQWL14cTU1NmgI0Wy1btoxzzjknLr300ujevbuGvENtbe2K22677arbbrvtDd0AAIC9RwAMAADv8Oyzz25avHjx0yeddNKQoqKiTjryD3l5edGnT58YOXJkbN26NVatWqUpQLNz+OGHx1e+8pUYMGBA5OXlacg7VFVV/e3CCy+8/oEHHvDdAAAA2MsEwAAA8C7z58+vefbZZ58+44wz+hcXF/fSkf/RsmXLGDJkSOyzzz6xdOnSqKmp0RQg53Xs2DG++MUvximnnBItW7bUkHdZt27dMyeffPI3Xn755W26AQAAe9/7BcCpfc+JETv7QeO6iI2vttI9AAByWmFhYer555//0sEHH3y5bvxfTU1N8fzzz8f48eOjurpaQ4Cc07p16zjzzDPjyCOPdOJ35zJ///vff3rMMcfc39DQkNEOAADIDh2G1UZBl53/TAAMAAARMWnSpM8cc8wxt6RSKdfg7ERNTU1MmTIlpk2bFg0NDRoCJF5hYWGccsopcdJJJ0VRUZGG7EQ6na6fOnXqd88555y/6AYAAGSX9wuAXQENAAAR8Yc//GHhfvvt98aAAQOOysvLkwS8S2FhYQwYMCCGDh0amzZtinXr1mkKkFiDBw+Oq666KoYOHRoFBQUashONjY1Vv//972/5whe+MEs3AAAg+/gGMAAAfAgTJkxYXV1dPf3II4/8VGFhYTsd+b9KS0vjsMMOi/79+8eaNWti8+bNmgIkRu/evePyyy+PU045JUpLSzXkPWzdunXxLbfccs33vve9hboBAADZyTeAAQDgI+jTp0+LJ5988us9evQ4TTfe3/z58+ORRx6JlStXagaQtXr16hXnnHNODBgwQDM+wKpVq5444YQTfrBy5Ur3/QMAQBbzDWAAAPgYnnnmmfOHDx9+fSqVytON95bJZGL27Nkxbty4qKio0BAga3Tu3DnOOuusGDp0aKRSKQ15/z/Lm2bNmvXDk08++THdAACA7OcbwAAA8DH85je/eX3//fd//cADDzzSd4HfWyqViu7du8cxxxwT7dq1i2XLlkV9fb3GAHtN27Zt49xzz42LL744evToIfz9AI2NjdUPPvjgLZ/97Gf/ohsAAJAMvgEMAAAf0/jx41dFxPOHHXbYiMLCwjIdeW95eXnRu3fvOOqoo6KgoCBWrlwZjY2NGgPsMcXFxXHKKafEl770pejbt2/k5bnA4YPU1tau+MEPfnD9LbfcMk83AAAgQf/94xvAAADwyQwePLjVo48++s1u3bqdpBsfTn19fTzzzDMxderU2LZtm4YAu01ZWVmceuqpceSRR0ZRkQsbPqyVK1c+/ulPf/pHixcvdm0DAAAkjG8AAwDALvLkk0+edeSRR96USqVcl/MhCYKB3eXtE7/HHnus4PcjyGQyDbNmzfoP3/sFAIDk8g1gAADYRX7/+98v6NGjx2uHHHLIyPz8fL8x+SEUFBREv3794qijjoq8vLxYtWqVq6GBT6Rly5ZxwgknxBVXXBEHHXRQFBQUaMqH1NDQsOG3v/3t1z7/+c8/oxsAAJBcroAGAIBd7Lzzzut4991339m2bdvBuvHR1NTUxLPPPhvTpk2LLVu2aAjwoZWVlcXxxx8fxxxzTBQXF2vIR1RVVfW3a6+99vZHHnlkg24AAECyuQIaAAB2g06dOhVMmzZtbN++fT8XESkd+WgaGhri+eefjyeffDI2bJBFAO/7522cdNJJccQRR0RhodvKPobMokWL/nTsscf+pLKyskk7AAAg+QTAAACwG/3hD38Ydfrpp99WUFDQRjc+unQ6Ha+++mpMnTo1Vq5cqSHAP/Xq1StOOeWUGDp0aOTl5WnIx9DY2Fg1YcKEOy666KKZugEAALlDAAwAALvZaaed1vbee+/9docOHUbqxse3fPnymDZtWrz88suRTqc1BJqhvLy8OOyww+L444+P3r17a8gnsHHjxue//OUvf3fSpElVugEAALlFAAwAAHtAYWFh6qmnnjpv+PDh16RSKXeUfgIbNmyIGTNmxHPPPRc1NTUaAs1AcXFxjBo1Ko4++ujo2LGjhnwCmUym4ZVXXvl/J5100kMNDQ0ZHQEAgNzzfgFwftuDoufOfpDeFlFb7p0VAAB8WOl0On7zm9+8Xlpa+uLgwYM/VVhYWKYrH09xcXEMGDAgjj322GjTpk2sXbs2amtrNQZyUIcOHeKMM86ISy+9NAYOHBjFxcWa8gnU1tau+slPfnLjxRdf/IybFAAAIHcVd2+MvNKd/8wJYAAA2A1OPPHENvfdd9+tnTp1Olo3PrnGxsb429/+Fs8++2wsWrRIQyAH9OvXL44++ugYNmxYFBQUaMguUFFR8cwXv/jFf5s+ffoW3QAAgNzmCmgAANhLHn744RNGjx799YKCgta6sWusX78+Zs6cGc8//3xUV1drCCRIaWlpHHnkkXHUUUdF586dNWQXaWxs3DJ16tS7PvvZz/5FNwAAoHkQAAMAwF50ySWXdP3+97//rXbt2g3VjV2nsbExXnvttXjuuedi/vz5GgJZbMCAATFq1KgYPHiw0767WFVV1atf//rXv/e73/1urW4AAEDzIQAGAIC9rF27dvlTp0699OCDD740lUrl68iutXz58nj++efj5ZdfjpqaGg2BLFBSUhLDhw+PI444Inr37q0hu1gmk2mcN2/efSeeeOJvq6urfewXAACaGQEwAABkia9//ev73Xjjjf9aWlraXzd2vXQ6HW+++WY899xz8dprr0VjY6OmwB5UUFAQgwcPjlGjRsUBBxwQeXl5mrIbVFdXL/zP//zPf/3BD36wRDcAAKB5EgADAEAWOfjgg1v9+c9/vrZ3795jIiKlI7tHZWVlvPjii/HCCy/EunXrNAR2o65du8bIkSPj8MMPj7Zt22rI7pNZunTpn88888z/t3jx4nrtAACA5ksADAAAWejuu+8eePHFF9/WqlUrd6PuZuXl5fHqq6/GSy+9FOvXr9cQ2AU6d+4cI0aMiGHDhkW3bt00ZDerqalZ9tvf/vbOm266aa5uAAAAAmAAAMhS/fr1K3r44Ycv79+//4WpVMpdqXvA8uXL46WXXoqXX345qqurNQQ+grKyshg+fHiMGDHCd333kEwmk164cOEfzj777F8sXbp0u44AAAARAmAAAMh6P/3pT4d97nOf+2bLli176Mae0dDQEHPnzo2//vWvMXfu3Ni+Xa4CO9OyZcsYNGhQDBs2LA455JAoKCjQlD2ktrZ21R//+Mc7rr322r/rBgAA8E4CYAAASIA+ffq0ePTRR69wGnjPS6fTsXTp0nj11VedDIaIaNu2bQwbNiyGDRsWffr0ibw8fyTtSZlMpuG11177+ZlnnvmnioqKRh0BAADeTQAMAAAJ8uMf//jQCy644JutWrXaRzf2vLdPBs+ePTvmzp0bdXV1mkKzUFZWFoMHD45hw4ZF//79Iz8/X1P2gpqammX333//nTfccINv/QIAAO9JAAwAAAnTrl27/HHjxp37qU996qq8vDwb870kk8nEihUrYu7cuTFnzpxYsWJFZDIZjSEnpFKp6Nu3bwwbNiwGDRoUHTt21JS9qKmpqfbVV1/92ZgxY/5cWVnZpCMAAMD7EQADAEBCffnLX+5x++23f7V9+/aH68bet2XLlnjjjTdizpw5MW/evKivr9cUEqVly5Zx8MEHx6BBg+KQQw6J0tJSTckCGzdufPG73/3uv//iF79YoxsAAMCHIQAGAIAEKywsTE2cOPGMkSNHXlNQUNBaR7JDXV1dvPnmm/HGG2/EG2+8EevXr9cUslKXLl3ioIMOioMOOigOOOCAKCoq0pQs0djYuGXmzJk/PvPMMyc2NDS4XgAAAPjQBMAAAJADjjzyyNY/+9nPrujbt++5EZGnI9mluro6Fi5cGPPnz4958+ZFZWWlprBXtGvXLg455JAYMGBA9O/fP1q39nsjWSj91ltv/fmqq676xaxZs6q1AwAA+KgEwAAAkEN++ctfjhgzZsyNrVq16q0b2SmdTsfKlStj0aJFsXDhwli8eHFs27ZNY9gtSkpKol+/ftG/f//Yf//9o1evXpGX53dEslVNTc3yRx999EdXXnnlK7oBAAB8XAJgAADIMd26dSt8+OGHPzd48ODL8vPzbdyzXCaTiTVr1sTChQtj0aJFsWjRotiyZYvG8LGUlZVF//79/xn6du/ePVKplMZkuaampprXXnvtV2PGjHmgoqKiUUcAAIBPQgAMAAA56rjjjiv7r//6r8tdC508mzdvjuXLl8eKFSti+fLlsXjx4qipqdEY/pfi4uLo169f9O7dO/bZZ5/Yd999o6ysTGMSJJPJpJcsWfLn66677pfTp0/3mx8AAMAuIQAGAIAc99Of/nTIueeee3NpaWlf3UimxsbGWLlyZSxdujSWLVsWy5cvj3Xr1kUmk9GcZiKVSkWXLl1in332iT59+kSfPn2iV69eUVBQoDkJtXXr1sUPPvjgj6699tq/6wYAALArCYABAKAZaNeuXf64cePOGTp06BUFBQWtdST56uvrY+XKlf88KbxixYpYu3ZtpNNpzUm4vLy86Nq1a+yzzz7//KdXr17RsmVLzckBjY2NW/7617/+4pxzznm0srKySUcAAIBdTQAMAADNyIknntjmnnvuuXzfffcdk0qlHB3MMdu3b481a9bEmjVrYu3atbF27dooLy+PDRs2CIazUF5eXnTs2DG6desWXbt2jW7dukW3bt2iR48eUVhYqEE5JpPJNC5ZsuRR1z0DAAC7mwAYAACaoa9+9av7Xnfdddd16NDhCN3IfY2Njf8MhNetWxfr1q2LioqKWLduXWzbtk2DdrPS0tLo3LnzP//p0qVLdO3aNbp27eoK52Ziw4YNM//rv/7rxz/60Y+W6wYAALC7CYABAKAZ++UvfznirLPOuq64uNj3gZupmpqaWL9+/T//qaioiMrKyqisrIxNmzZFY2OjJn2AgoKCaN++fbRr1y7at28fHTt2jC5dukSnTp2ic+fOUVxcrEnN1NatW98aP378PVdcccXLugEAAOwpAmAAAGjm2rVrl//ggw+eOWLEiCsLCwvb6gjvtHnz5n+GwZs2bYrKysqorq6OLVu2xJYtW6K6ujqqq6sjk8nk3NpTqVS0bt06WrduHWVlZdGmTZsoLS39X2Fvu3btok2bNh4U/peGhobKl1566efnnHPO+OrqavevAwAAe5QAGAAAiIiIoUOHFt97770XHHjggRfk5+c7ssiHlk6n/xkEV1dXR01Nzfv+k8lkora2NtLpdNTX10dTU1PU1dXt0u8U5+XlRcuWLSM/Pz+KiooiLy8vWrVqFalUKoqLi3f6T0lJSbRq1eqfgW9paWnk5eUZMB9aU1NTzYIFC/745S9/+Y+zZ8+u0REAAGBvEAADAAD/y2mnndb2rrvuurRPnz5n5+XlFeoIe9LbgfDbtm/f/r7XUBcUFESLFi3++b/fDnxhT8pkMg1LliwZd8stt/xq0qRJVToCAADsTQJgAABgp0477bS2d95554X777//5wTBAP9XJpNpWLhw4QO33nrrHwS/AABAtni/ADi/7UHRc2c/SG+LqC33/gcAAHLZokWL6u69995X0un0swcddFCnkpKS3roC8A8VFRUz/7//7/+77aKLLpq6aNGiOh0BAACyRXH3xsgr3fnPBMAAAEDMnDmz8u67736qqalpWr9+/Ypbt27dN5VKpXQGaG4ymUx6zZo1U+65555/Peeccx6cOXNmpa4AAADZRgAMAAB8KDNnzqz88Y9//Gw6nZ4uCAaak7eD37vvvvtfzz///McEvwAAQDYTAAMAAB+JIBhoLgS/AABAEgmAAQCAj+XtILisrOyFvn37diwuLu4VEYJgIBdkKioqnrv33nu/PWbMmEcEvwAAQJK8XwCc2vecGLGzHzSui9j4aivdAwAA/unqq6/u8ZWvfOX8Pn36nJWXl9dCR4CkSafT9UuXLh3/X//1Xw/84he/WKMjAABAEnUYVhsFXXb+MwEwAADwkZ1xxhntb7/99rMPPPDA8/Pz81vrCJDtmpqaqhcsWPDgd77znUcmTpzotC8AAJBoAmAAAGC3GD58eMkPf/jDzwwePPjioqKijjoCZJv6+voNr7322u9vvPHGx2fPnl2jIwAAQC4QAAMAALvV0KFDi++5556zDjnkkPOKioq66giwt9XV1a19/fXXH7z++uvHC34BAIBcIwAGAAD2iFatWuXdc889w0455ZTzO3bseJSOAHtYZsOGDbOmTJny4PXXX/9qbW1tWksAAIBcJAAGAAD2uH/913/tf/7555/dq1ev0/Ly8lroCLC7pNPp+pUrV05+4IEHHvnOd76zSEcAAIBcJwAGAAD2mjPOOKP97bfffvYBBxzw2YKCgjY6AuwqjY2NVW+++eafv/e97z06YcKETToCAAA0FwJgAABgrxs+fHjJ97///dGDBg0aU1paur+OAB9XdXX1wtdee+3Rr371q1Nfe+21Wh0BAACaGwEwAACQVb761a/ue8EFF3y6b9++ZxUUFLTWEeCDNDY2bnnrrbfG/+EPf5j4ox/9aLmOAAAAzZkAGAAAyEpDhw4t/sEPfnDy4MGDz27dunV/HQHerbq6+s2XX375weuuu+7ppUuXbtcRAAAAATAAAJDlCgsLU3ffffeQ0aNHn9G1a9fj8vLyinQFmq90Ol1XXl4+bcqUKROuvfbav+sIAADA/yYABgAAEqNPnz4t/v3f/33UyJEjz2rfvv2nIiKlK9AsZDZt2vTXF1544bGvfe1rzzntCwAA8N4EwAAAQCJddNFFXa6++uqTDzzwwLNbtmzZTUcg99TV1a1ZsGDBuJ/+9KdP3n///et0BAAA4IMJgAEAgETr1q1b4d13333k4YcffmqHDh2OyMvLK9QVSK50Ot2wcePGWbNmzZp8/fXXz6qoqGjUFQAAgA9PAAwAAOSMo48+uvWtt956/CGHHHJKu3btBkdEnq5AIqQrKytfmzdv3uQ777xz+owZM6q1BAAA4OMRAAMAADnpuOOOK/vGN75x/CGHHHJa27ZtB4bvBUO2yVRVVc2dN2/epO9///vTpk+fvkVLAAAAPjkBMAAAkPNuu+22vmedddZJffr0Oa5Vq1a9dQT2ntra2uXLly+f/uijjz51xx13vKUjAAAAu5YAGAAAaFa+9KUvdbv44ouP7t+//wlOBsMekamqqpq7cOHCv/z+97+fcd9995VrCQAAwO4jAAYAAJqtSy65pOtll112jDAYdrl0VVXVvIULF/7lV7/61bO/+93v1moJAADAniEABgAAiIirr766x/nnnz9q//33P7JNmzZDUqlUga7Ah5fJZBoqKyv/vnjx4uf+9Kc/zbr33ntX6woAAMCeJwAGAAB4l379+hV97WtfGzRy5MhRPXv2PLaoqKizrsD/VV9fv37VqlXPvPDCC8/9+7//+5zFixfX6woAAMDeJQAGAAB4H61bt8678847Bx599NFHde/efURpaen+4apomq/M1q1bF69Zs+bF5557btY3v/nNOdXV1WltAQAAyB4CYAAAgI9g8ODBrcaOHXvI8OHDD+vevfvw1q1bHxACYXJXprq6+s01a9a88sorr7z8k5/8ZN5rr71Wqy0AAADZSwAMAADwCVx//fX7nHHGGYf169dvePv27Yfm5+e31hWSrLGxsXrjxo2vvvXWWy+PHz/+lR//+McrdQUAACA5BMAAAAC70Je//OUe55xzzvA+ffoM7tix45CioqKuukI2q6+vX7t27doXFy9ePGfixImv3Xvvvat1BQAAILkEwAAAALvRl7/85R6f+cxnBvfr129Qly5dDm/ZsqVAmL2qrq5u7bp16wS+AAAAOUoADAAAsIe0atUq75prrtnn2GOPPXi//fY7uH379oeUlpb2TaVS+brDbpKuqalZtnHjxnlvvfXW3GeffXbef/3Xfy2vra1Naw0AAEBuEgADAADsRQceeGDLq6+++oAhQ4Yc3LNnz4Pbtm17sGuj+biampqqq6qqXi8vL583Z86ceb/85S/nvfjii1t1BgAAoPkQAAMAAGSZoUOHFn/xi1/cf9CgQQf26NHjwHbt2h3YqlWr3qlUKk932CFdU1OzvLKycsHq1asXzJkzZ8Gf//znJTNmzKjWGgAAgOZNAAwAAJAAxx13XNkFF1xw4MEHH3xA165dDywtLd23pKRkn1QqVag7uS2TyTRs27ZtRXV19dJ169YtfOONNxZOmDBh4YQJEzbpDgAAAO8mAAYAAEiw8847r+OJJ57Yp3///vt16dKlT5s2bfZr3bp1v/z8/GLdSZampqaa6urqxZs3b16ybt26pQsXLlzy9NNPL33ooYc26A4AAAAflgAYAAAgx7Rr1y7/kksu6TFkyJCe++67b89OnTr1Kisr61VcXNyzZcuW3VKpVL4u7R2ZTKaprq6uvKamZtWWLVtWVlRUrFy6dOnK2bNnr7r//vvXVFZWNukSAAAAn4QAGAAAoBnp1KlTwec+97luQ4cO7bnPPvv0aNeuXafWrVt3Li4u7tqyZcvORUVFnfLy8lro1MeTTqe319fXr6+rq6uoqalZW11dvb6y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AACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoMY3JP//9K8My551lzpAk293a7QAAAAAAAAD8iIw3r+SL7TpPxuSt4/ibJJuz20QDBgAAAAAAAHhzrJPp6NvHYcyyjLl7dJTPbl/Jp6sPLufSsM+5ec7q5YOrF0OeP/SVaAAAAAAAAIA3weH7u6zfm79dWDIMSw6225w785vsx3XyzasOby5ssz69c4sAAAAAAAAAr9n69C6bC9sT93a7rKdnORin5Otxynzi1JQcfiwCAwAAAAAAALxO69O7HH68TaaT98cp85R8vbp3Nfszv8q0LHn7xMF1sjk/ZzUPmZ/MmWefhAYAAAAAAAD4oayPdjn7223Gn7x6ZrXPnetX8mBKkpv3cufDd/Pufn5FL56SzcVtNheT3dNt8tQlAwAAAAAAAHyv1sm0ySv/9XtsNWZ3I/lHkgzHi7/4XY7WYz5yiwAAAAAAAAA/Ivtcv/3nPEyS1fHa42t5+vNLyX7JoRsCAAAAAAAAePPt1/nbV3/KvePn1Xc371/NYxEYAAAAAAAA4M0yTHk2rvNo2WdzvHZqzN9v/SF3vju3evng/at5fPDLPDu1yuGyZHSVAAAAAAAAAK/XOGe4ueSvZ4e8M8xZbVe5ceuPufvy3Oqkw4+v5emDX+fuuTlLhhwsEYIBAAAAAAAAXpclGR8OuXP0TR4cPM/9z/+SRyfNDf/1TZezOp/87KdjzizJZkhO7edMy/w/nAUAAAAAAADg/zaMWcZkP8/ZLsmLacr2/MV8+cnvs/tP5/4FmLjAq1ifcioAAAAASUVORK5CYII=";
|
|
3544
|
+
const nt = "data:image/png;base64,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", Nr = "data:image/png;base64,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AAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKSEAhgAAAAAAAAgJRTAAAAAAAAAACmhAAYAAAAAAABICQUwAAAAAAAAQEoogAEAAAAAAABSQgEMAAAAAAAAkBIKYAAAAAAAAICUUAADAAAAAAAApIQCGAAAAAAAACAlFMAAAAAAAAAAKaEABgAAAAAAAEgJBTAAAAAAAABASiiAAQAAAAAAAFJCAQwAAAAAAACQEgpgAAAAAAAAgJRQAAMAAAAAAACkhAIYAAAAAAAAICUUwAAAAAAAAAApoQAGAAAAAAAASAkFMAAAAAAAAEBKKIABAAAAAAAAUkIBDAAAAAAAAJASCmAAAAAAAACAlFAAAwAAAAAAAKREkRUAAACwrUpLSwuGDRvWfMCAAS26du3avKysrLiioqKkZcuWzZs1a1bcvHnz0tLS0rJsNtusuLi4ebNmzUoLCgo+8/eijY2N9Zs3b66pra2tqqur21xTU1NdVVVVs2nTptqNGzdWbdiwoeYvf/nL5hUrVlQtWLBgw6xZs6pqamoaJQYAAEDaKYABAACIiIghQ4aUHnTQQW379u3bql27dq3at2/fpkWLFq2bN29eWVpa2qpZs2bNCwsLm2ez2fLCwsLyoqKi8sLCwtKknK+hoaG6vr6+qqGh4S91dXV/aWhoqNq8eXNVTU3NuqqqqvUbNmxYu2rVqjWrV69e99Zbb6177rnnPpgzZ06NTwYAAABJogAGAADIA8OGDWt+xBFHdBwwYECnLl26dGjdunXHFi1adCgtLe1YUlLSvlmzZq0KCgqK07yDwsLCssLCwrKIaPdp/zuNjY21mzdvXrdp06ZVNTU172/YsGHl2rVr31+2bNnKBQsWrHjyySffnzVrVpVPGAAAAE1Fpuexsd9HfaF+ZcSal0ptCAAAIAE6deqUPf744zvtueeeXbp3796lbdu2XSorKzuXlpZ2KS0t7VBYWFhhSztGQ0PDxpqampU1NTXL169fv+yDDz5Y9s477yybPXv2sj/96U8rVqxYUWdLAAAAbE9t9q6Jog4f/TUFMAAAQEJks9nMt7/97Y4jRozo1bdv397t2rXrXl5e3rWsrKxzcXFx+4gosKUmp7G2tnZVTU3Nso0bNy5btWrV0tdff/2tJ598cvG999672noAAADYFgpgAACAhPne977X6a9Fb/v27Xu1bNmyV1lZWa8kvXOXLauvr9/wl7/8ZdG6desWL1u2bNHChQsX/fGPf1w8derUjbYDAADAliiAAQAAmqhsNps59dRTuxx66KH9+/Tp87n27dv3Ly8v719UVOSRzXlq06ZNKzZu3Pj6+++//8abb775xqOPPvrG3XffvcpmAAAA+CsFMAAAQBNx6qmndvniF784qHfv3v3btWv3uYqKis8VFhaW2wxbUl9fv37Dhg1vfPDBB68vXrz4jccee2z+jTfeuNxmAAAA8pMCGAAAYBc45phjWn/rW9/aq3///kPatGnTv6Kiop9HOLO9NDQ0VG/cuPGtNWvWLFy4cOGcO+6445WHHnporc0AAACknwIYAABgJzjjjDO6f+lLX9qrV69eg1u3bj2orKysR0RkbIadJFddXb103bp18xcvXjz30UcffeXqq69+x1oAAADSRwEMAACwnZWWlhb86le/2u3QQw8d1r17931btmw5qLCwsMxmaEoaGhqqP/zww/nvvPPOzGeeeWbW2LFj36ipqWm0GQAAgGRTAAMAAGwHP/7xj7t+9atf3bdXr15D27Ztu1c2m21jKyRJXV3dmg8++OCVRYsWvfznP/95xh/+8IdltgIAAJA8CmAAAIBtcOKJJ7Y75ZRTDujXr9+w1q1bD81ms61shTSpq6tbt3bt2pfffPPNWbfccsvUe++9d7WtAAAANH0KYAAAgE+hoqKi4IILLhg0YsSI/bp27bpfy5YtB2YymUKbIR/kcrmGDz/8cP6777474/nnn59x4YUXvrZx40aPiwYAAGiCFMAAAAAf4/jjj2/7/e9//8D+/fsf2Lp1630KCgpKbAUiGhsbN61fv37eW2+9NeWGG2545u67715lKwAAAE2DAhgAAOB/ZLPZzAUXXPC5I4888sDu3bsfWFFRsVtEFNgMbFl1dfWSd999d8qsWbNmnnvuuS+vW7euwVYAAAB2DQUwAACQ10pLSwsuvfTSQYcccsjBXbt2HVFWVtbDVmDb1dbWrnr//fdfmDp16uRf/vKXL65evbreVgAAAHYeBTAAAJB3Bg0aVHrBBRd8fs899zywQ4cOBxQVFbWwFdj+Ghsba9euXTtrzpw5T59//vmTX3755WpbAQAA2LEUwAAAQF4YNmxY8/POO+/gIUOGHOZ9vrDz/W0ZfNFFFz07a9asKlsBAADY/hTAAABAarVq1arwyiuv3HfEiBEjO3TocFBhYWGZrcCu19DQUP3+++8/O2XKlIk/+clPZm7cuLHRVgAAALYPBTAAAJAqrVq1Kvztb3+7/3777Xd4x44dRxQWFpbbCjRdDQ0NG99///0pM2bMeOqHP/zhC8pgAACAz0YBDAAApMJZZ53V45vf/OaRvXr1GllaWtrVRiB5ampq3l28ePHEO++8c9LVV1/9jo0AAABsPQUwAACQWMOHDy+/6KKLvjB48OCjW7RoMdBGID0+/PDDV+fNmzfhvPPOe3L69Ol/sREAAIBPRwEMAAAkSqtWrQpvuOGGQ/bbb79/atOmzX6ZTCZrK5BeuVyubs2aNTNmzJjx2JgxYyavW7euwVYAAAA+ngIYAABIhB//+Mddv/e9732lZ8+e/1RcXNzWRiD/1NbWfvD2228/dssttzz029/+9l0bAQAA+L8UwAAAQJNVUVFRcO21137+4IMPPrZ169b7ZTKZAlsBIqJxzZo1M59//vnxp5122hR3BQMAAPx/CmAAAKDJOeWUUzqefvrpx/bu3ftL2Wy2jY0AH6e+vn7j0qVLH/vd7373x+uvv36ZjQAAAPlOAQwAADQJ2Ww2c+uttx5wyCGHnNC6deu9I8LdvsDWaFy7du1L06ZN+/OPfvSjZ1evXl1vJQAAQD5SAAMAALtU//79S6655pp/2nPPPY8tLy/vayPAZ1VTU7NswYIF488999wHp06dutFGAACAfKIABgAAdomf//znPU855ZQTu3btemRhYWGZjQDbW2NjY92KFSuevOWWW+689NJLF9kIAACQDxTAAADATuMxz8Cusn79+rlPP/30f5188slT6+rqcjYCAACklQIYAADY4fr27Vv8hz/84a+Pee5nI8CuUlNT8+68efPu/8EPfvDgwoULN9kIAACQNgpgAABghxkyZEjpNddc89XBgwefWFxc3MFGgKaitrZ21dy5c+/5yU9+8uc5c+bU2AgAAJAWWyqAPYoNAADYJqNHj+4wb968n06ZMuXRYcOGnaH8BZqa4uLi9sOGDTtjypQpj86bN++nJ510UntbAQAA0s4dwAAAwFY599xze33/+9//dufOnY/IZDJZGwGSIpfL1S1fvvzJG2644fbLLrvsbRsBAACSyiOgAQCAz+y8887r+53vfOfbHTt2PDyTyRTaCJBUuVyuYcWKFU/cdNNN//XrX/96sY0AAABJowAGAAC22WWXXTboG9/4xg9at249zDaAtFm7du2su++++9pzzjnnNdsAAACSQgEMAABsNcUvkE8UwQAAQJIogAEAgE9N8Qvks7Vr18665557rvv5z38+3zYAAICmaksFcGHlwOj6UV9orIqoWZG1PQAAyBO/+MUvet9xxx3nHHrooT8pLS3tYiNAPiotLe2y7777HvP973+/X1lZ2ZIpU6assxUAAKCpKetcHwXlH/01BTAAAOS5M844o/u99957zpe//OWflZeX94qIjK0AeS5TXl7e8+CDDx71/e9/v3dEvDVjxowPrQUAAGgqFMAAAMD/ceKJJ7a77777fjJq1Kh/KS8v7xOKX4B/lCkvL+99+OGHj/rWt77VfvXq1Qvnz59fbS0AAMCutqUC2DuAAQAgzwwdOrTs+uuvP6l///4nFRYWltkI20NjY2Ns2rQpqquro6amJurr62PTpk2xefPmqK+vj+rq6qivr4/NmzfHpk2boqGhYZv/fxUWFkZJSUk0a9YsioqKoqysLIqKiqJZs2ZRUlISRUVFUVpa+r9/FRQUCIjtoqGhoeq11167a8yYMffMmTOnxkYAAIBdZUvvAFYAAwBAnujUqVP2nnvuGbXXXnudnM1mK22Ej9PQ0BAbN26MDRs2/J+/Nm7cGBs3boyamprYtGlTbNq0KWpqaqK2trbJnqe4uDhKSkqitLT0f/9eUVERFRUV0aJFi//zV0VFRRQWFvog8LHq6urWvvjii7eceOKJf169enW9jQAAADubAhgAAPLcXXfdddAXv/jF00tLS7vZRn7L5XKxYcOGWLt2baxbty7Wrl37d3+tW7cuNmzYkPd7atGiRbRu3TpatWoVrVu3jjZt2vzvf27dunW0aNHCh4morq5e+sgjj1zzne98Z6ptAAAAO5MCGAAA8tTVV189+MQTTzyzoqJioG3kj8bGxli5cmUsX748Pvjgg1i9evX//n3t2rXR2NhoSZ9RYWFhtGrVKtq1axdt27b937937tw5OnTo4LHTeWbDhg3z77333qvOPPPMebYBAADsDApgAADIM1/72tfaXHrppad27979qIjQRKVUQ0NDrFq1KlasWBHvv//+//595cqVTfqRzGlXXFwcHTp0iI4dO0bnzp2jY8eO0alTp2jXrp1HS6dYLpdrfOeddx76+c9/fv2ECRPW2QgAALAjKYABACBP9OrVq9ldd931jT322OM7hYWFZTaSHh9++GG88847sXTp0njvvfdixYoVsXr16mhoaLCchCgsLIz27dtHp06dolu3btG9e/fo3r27x0mnTENDQ9W8efNu++Y3v/nHJUuWbLYRAABgR1AAAwBAHrjrrrtG/NM//dOZJSUlXWwj2davXx9Lly6Nd955539L3w8//NBiUqqysvJ/y+C//tWqVSuLSbiamppljz322G9Gjx49xTYAAIDtTQEMAAAp9qtf/arPD3/4w5+1atVqL9tIno0bN8aSJUvirbfeikWLFsV7770XmzZtspg8V1JSEl27do0+ffpE3759o3fv3lFeXm4xCbRu3bqXr7322ivGjh27yDYAAIDtRQEMAAApNGjQoNI77rjju7vttttJBQUFWRtJhtWrV8ebb74ZixcvjiVLlsTy5cujsbHRYtiigoKC6Ny5c/Tu3Tt69+4d/fr1i7Zt21pMQjQ2Nta98cYbd33rW9+6ff78+TU2AgAAfFYKYAAASJHS0tKCBx988Jj99tvvn7PZbBsbaboaGhri7bffjrfeeisWLFgQS5YscXcv201FRUX06tUr+vbtG3379o2ePXtGYWGhxTRhdXV1a2bMmHHjV77ylYdqamr85gcAALDNFMAAAJASp59+erdf/vKX51ZWVu5jG03T6tWr47XXXouFCxfGm2++GRs3brQUdooWLVpE3759Y8CAATFw4EB3CDdh69evf/E//uM//vPqq69+xzYAAIBtoQAGAICEGzRoUOm99977w969ex+byWTc4teErF+/PubNmxcLFiyIN954Q+FLk9GiRYvo169fDBgwIPbYY4+orKy0lCYkl8s1LF68eNyJJ554rcdCAwAAW0sBDAAACXbNNdcMOemkk35RVlbWyzZ2vVwuF++++27MnTs3XnvttViyZIl3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B7lcrm7y5Mm//vKXv/yIbQAAwK63pXcAK4ABAMg7paWlBTNnzjyzT58+x9vG39uwYUOMGzcuZsyY4VHPQF7KZDKx3377xde//vWoqKiwkH+waNGiP+27775X1dTUeCwEAADsQgpgAAD4H926dctOnjz5V506dRppG/9fLpeLqVOnxp///OfYuHGjhQB5r6KiIkaNGhX777+/x0L/g+XLlz9+6KGHXvLuu+/W2QYAAOwaWyqAvQMYAIC8MXz48PInnnjiynbt2o2wjf/vnXfeiWuvvTaee+652Lx5s4UARMTmzZtjzpw58dprr0XPnj2jRYsWlvI/Kioq+n7rW98aMnXq1Ofee+89f3AAAMAusKV3ACuAAQDIC9/+9rc73n777X9o0aLFANv4b1VVVXHXXXfFvffeG+vXr7cQgI+wbt26eP7552P9+vWx2267RVFRkaVERElJSefjjjvuoA8++GDKK6+88hcbAQCAnUsBDABAXjv//PP7XXzxxX8oKSnpbBv/bfr06XHttdfGokWLLAPgU3jnnXdi2rRp0bp16+jc2R8nERHZbLbyC1/4whElJSUvTp48eY2NAADAzqMABgAgb/3ud7/b60c/+tFVRUVFrWwjYs2aNXHzzTfHpEmTora21kIAtkJtbW289NJL8c4770Tfvn2jtLQ073dSWFhYNnz48C/26dNn4UMPPbTMpwQAAHYOBTAAAHnp1ltv3f+b3/zmfxYWFjbP913kcrl4/vnn4/rrr4/ly5f7cAB8BitXroxp06ZFRUVFdOvWLTKZTF7vo6CgIDto0KBDBw0atOiBBx54xycEAAB2vC0VwJmex8Z+H/WF+pURa17ym6wAACTTww8//KXDDjvsXzKZTN6/rPGDDz6I22+/Pd544w0fDIDtbMCAAfGtb30r2rRpk/e7yOVyjVOmTPn1yJEjH/LJAACAHavN3jVR1OGjv6YABgAgdV555ZXTPve5z30r3/fQ0NAQjz32WDz++ONRV1fngwGwg2Sz2Tj66KPjC1/4QhQUFOT9Pl5//fU79tprr9/7ZAAAwI6jAAYAIC9ks9nMyy+/fFafPn2Oz/ddvPvuu3HbbbfFe++954MBsJN069YtvvOd70S3bt3yfhdLliy5f5999rmypqam0ScDAAC2PwUwAACpV1paWjBr1qyzevfufVw+7yGXy8WTTz4ZDz74oLt+AXaBbDYbxxxzTBxxxBF5fzfw0qVLHxg6dOjlSmAAANj+FMAAAKRar169mk2ePHlsu3btDsrnPaxcuTJuueWWePvtt30oAHaxnj17ximnnBIdOnTI6z2sXr16yiGHHPIvS5Ys2exTAQAA28+WCuDCyoHR9aO+0FgVUbMia3sAADRpQ4cOLXvqqacub9Omzf75uoNcLhfPPPNMXH/99bF27VofCoAmYP369TFlypQoKSmJnj17RiaTycs9NG/evPtJJ500ZPLkyc+sWLHCoykAAGA7KetcHwXlH/01BTAAAIk1ZMiQ0kceeeSKVq1a7Z2vO6iuro7bb789nnjiiWhs9IRNgKaksbEx5s+fH++//34MGDAgstn8/DlLaWlpp6997WuDn3rqqadXrlxZ75MBAACfnQIYAIDUOfTQQ1s8+OCDv2/ZsuUe+bqDOXPmxNVXX+2RzwBN3PLly+OFF16Ijh075u0joUtLSzudcMIJ+7/00ktPv/3227U+FQAA8NkogAEASJVhw4Y1v++++37TsmXLQfl4/vr6+hg/fnz88Y9/jNpaP0MHSILNmzfHiy++GJs3b47ddtstCgoK8m4HxcXFbY866qg9n3vuuaeXL1/ucdAAAPAZKIABAEiNI488snLcuHG/b9GixcB8PP97770XV111VcyZM8eHASCBFi1aFC+//HL069cvWrRokXfnLykp6XDcccftP2fOnGcWLVq0yScCAAC2jQIYAIBUOPLIIyvvvPPO35aXl++Wj+d/+umn48Ybb4wPP/zQhwEgwf7yl7/ECy+8ECUlJdGrV6+8O3+zZs3aHHXUUfspgQEAYNspgAEASLxjjz227W233faH5s2b98m3s1dVVcXNN98cTz31VDQ2NvowAKRAY2NjzJ8/P5YtWxYDBgyIZs2a5dX5mzVr1uaYY4458M0333xm4cKFNT4RAACwdRTAAAAk2qGHHtritttuuzofy9+33347rrnmmli8eLEPAkAKvf/++/HKK69Enz59orKyMq/Ons1mK4888sh9Zs6c+dTSpUs3+zQAAMCnpwAGACCxjjjiiJb33nvvteXl5f3y6dy5XC4mTZoUN998c1RVVfkgAKRYVVVVTJ06NbLZbPTp0ycymUzenL24uLjtV7/61c+/8sorTy1evLjWpwEAAD4dBTAAAIl06KGHtrj33nt/l2/lb3V1ddx0000xefLkyOVyPggAeSCXy8WCBQvi3Xffjd133z2y2fz5mUyzZs1aH3300fvNmDHjSXcCAwDAp6MABgAgcYYOHVo2fvz4qysqKgbk07mXLVsWV111lUc+A+SplStXxiuvvBKf+9znoqKiIm/O3axZszZHH3300GeeeebJFStW1PkkAADAlimAAQBIlCFDhpQ++uij17Rs2XL3fDr31KlT49prr42NGzf6EADksaqqqpg+fXq0bds2unTpkjfnLikpaT9q1KihTz755JMrV66s90kAAICPt6UCuMB6AABoSjp16pSdMGHCv1dWVu6RL2dubGyMcePGxR133BF1dW56AiCitrY2br755hg/fnw0NjbmzbkrKyv3mDBhwr9369bNXQkAALCNFMAAADQZrVq1Kpw+ffolbdq02T9fzlxdXR2/+93vYtKkSd73C8DfyeVy8fjjj8fvf//7qK6uzptzt2nTZv8pU6Zc0qpVq0KfAgAA2HoKYAAAmoSKioqC2bNnX9KuXbuD8uXMS5cujYsuuijmz5/vAwDAx3r11VfjoosuiqVLl+bNmdu1a3fQ7Nmz/72iosLPrgAAYCu5iAYAoEmYOXPmz9q1a3dIvpz35ZdfjiuuuCLWrVsnfAA+0bp16+KKK66Il19+OW/O3K5du4Nnzpz5M+kDAMDWUQADALDLvfjii2N69OgxKh/Omsvl4oEHHogbbrghamtrhQ/Ap1ZbWxs33HBDPPDAA3nz2oAePXqMevHFF8dIHwAAPj0FMAAAu9SkSZO+NnDgwFPy4ax1dXVx8803x8SJE73vF4BtksvlYuLEiXHLLbdEXV1dXpx54MCBJ0+aNOlr0gcAgE9HAQwAwC7z6KOPHnXggQeekw9nXbduXfz617+OWbNmCR6Az2zmzJnx61//Ol9eJZA58MADz3n00UePkjwAAHyywsqB0fWjvtBYFVGzImtDAADsEDfeeOO+Rx999EWZTKYw7Wddvnx5XHXVVbFy5UrBA7DdbNiwIWbPnh0DBw6MioqKtB8307179/179uz56sMPP7xc+gAA5LuyzvVRUP7RX1MAAwCw011xxRV7fPe7372qoKCgWdrPOmfOnPjtb38bGzduFDwA2111dXVMmzYtOnfuHB07dkz1WTOZTOHuu+9+eJs2bV6aNGnSKukDAJDPFMAAADQZZ5xxRvef/exnvy0sLCxP+1knTJgQd999d9TX1wsegB2moaEhXnrppchms9G3b99UnzWTyRTttddeB/3lL395dubMmRukDwBAvlIAAwDQJBx00EEVf/jDH64pLi7ulOZz5nK5eOCBB+Kxxx4TOgA77c+eBQsWRF1dXfTv3z8ymUxqz1pQUFBywAEHDJs+ffqkpUuXbpY+AAD5aEsFcIH1AACwMwwaNKj0vvvuu7qsrKxXms9ZV1cX1113XUyaNEnoAOx0EydOjOuvvz7q6upSfc6ysrJef/rTn67u379/idQBAODvKYABANjhKioqCh577LGLKyoqBqb5nNXV1XHNNdfE7NmzhQ7ALvPKK6/ElVdeGVVVVak+Z4sWLQZOnDhxbEVFhZ9vAQDA33CBDADADjdz5syftW3b9sA0n3HdunVx2WWXxRtvvCFwAHa5xYsXx2WXXRZr165N9TnbtWt34MyZM38mcQAA+P8UwAAA7FBPPvnkqB49eoxK8xlXrVoVV1xxRSxfvlzgADQZK1asiCuuuCJWrlyZ6nP26NFj1KRJk0ZJHAAA/lth5cDo+lFfaKyKqFmRtSEAALbZjTfeuO+XvvSlCzOZTGp/8fDdd9+NK6+8MtatWydwAJqc6urqmDVrVvTv3z8qKytTe85u3boN79mz57yHH37Yb2MBAJAXyjrXR0H5R39NAQwAwA5x3nnn9T311FOvLigoKE7rGV977bW45pprorq6WuAANFmbN2+OGTNmRI8ePaJ9+/apPGMmkykYNGjQIYWFhVOee+45v5UFAEDqKYABANipjjrqqFb/8R//8YdmzZq1SusZX3755bj++uujrq5O4AA0eQ0NDfHSSy9Fp06dolOnTqk8Y0FBQXbYsGGfnz9//qQ33nhjk9QBAEizLRXA3gEMAMB21a1bt+wNN9zwnyUlJR3TesYpU6bEjTfeGPX19QIHIDHq6+vjxhtvjKlTp6b2jCUlJZ1uuOGG/+jWrZu7GgAAyFsKYAAAtqunn376XyorK/dI6/kmTZoUd955ZzQ2NgobgMRpbGyMO+64I5588snUnrGysnLw008//UtpAwCQrxTAAABsN88///w3unTp8k9pPd/EiRNj3LhxkcvlhA1AYuVyubj//vtTXQJ36dLlS88+++yJ0gYAIB95BzAAANvFTTfdNPzII488L5PJZNJ4vsceeyzGjx8vaABS47XXXotmzZpF3759U3m+zp0779urV695Dz/88DJpAwCQNlt6B7ACGACAz+wXv/hF7x/+8IdXFxQUNEvj+R544IF45JFHBA1A6ixYsCDq6upiwIABqTtbJpPJDBo06ODGxsbnpk6dul7aAACkiQIYAIAd5oADDqj43e9+99tmzZq1TeP5xo0bF5MmTRI0AKm1aNGi2Lx5cwwcODB1ZysoKMjut99+w5577rnH33vvvc3SBgAgLbZUAHsHMAAA2yybzWbuvPPOfyktLe2exvNNmDBB+QtAXpg0aVI89NBDqTxbaWlpj3vuuedfstlsRtIAAOQDBTAAANvs+eef/06HDh0OTePZHn744Xj44YeFDEDeeOSRR+LPf/5zKs/WoUOHw5599tlvSxkAgHygAAYAYJvcd999hw8ePPjUNJ7t/vvvjwkTJggZgLzz2GOPxX333ZfKs+25554/+NOf/nSYlAEASDvvAAYAYKudccYZ3ceMGXN5QUFBcdrONnHixHjkkUeEDEDeWrx4cWSz2ejbt2/ajpbp06fPvn/5y18mz5w5c4OkAQBIsi29A1gBDADAVhk2bFjzG2+88Q/NmjVrl7azPfroo6l99CUAbI2FCxdGUVFR9OvXL1XnKigoKD7wwAP3e/LJJx9dsWJFnaQBAEiqLRXAHgENAMBWuffee39ZWlraPW3nevzxx+PBBx8UMAD8jz//+c8xceLE1J2rtLS0x3333fdLCQMAkFYKYAAAPrVJkyaN6tSp0xEpPFeMHz9ewADwD8aPHx+TJ09O3bk6der0hUmTJn1VwgAApJFHQAMA8Kmcd955fU888cR/z2QyRWk618yZM+Puu+8WMAB8jNdeey06duwYnTt3TtW5unbtuk9BQcHzzz333DopAwCQNN4BDADAZ3LEEUe0vOKKK67NZrOVaTrXyy+/HDfffHPkcjkhA8DHyOVyMXv27OjSpUt06tQpNefKZDJF++yzz/CpU6c+9u67726WNAAASeIdwAAAbLNsNpu55ZZb/q2kpKRjms61YMGCuPnmm6OxsVHIAPAJGhsb4+abb44333wzVecqLS3tcvfdd5+fzWYzUgYAIC0UwAAAbNGkSZO+3rZt2wPTdKZly5bFDTfcEPX19QIGgE+prq4urr322li+fHmqztWuXbsDH3/88VESBgAgLTwCGgCAj3XZZZcN+upXvzo2k8mk5hcH33///bjyyiujqqpKwACwlerq6uLll1+OIUOGRHl5eWrO1aVLl31LS0unPvPMM2ukDABAEngENAAAW61///4lJ5988q8ymUxRWs60YcOG+P3vfx8bN24UMABso40bN8bvfve7VP15WlBQkP3hD394ft++fYslDABA4q9vrQAAgI/y4IMPnl1WVtYrLeeprq6O3/zmN7Fq1SrhAsBntGrVqrjyyiujuro6NWcqKyvr8/DDD58lXQAAkk4BDADA/zF+/Pgju3XrdnRazlNfX5/KdxYCwK60fPnyuO6666K+vj41Z+rRo8dXx40bd4R0AQBIMgUwAAB/53vf+16nI4444py0nCeXy8Vtt90Wb7zxhnABYDt7/fXX47bbbotcLpeaMx155JHnfvvb3+4oXQAAkkoBDADA/6qoqCi4+OKLLywsLCxPy5nGjx8fs2bNEi4A7CCzZs2Khx56KDXnKSwsrPj1r399QUVFhZ+bAQCQSC5kAQD4XxMnThxdWVk5OC3nef7552PixImCBYAd7LHHHosXXnghNeeprKzc89FHHz1RsgAAJFFh5cDo+lFfaKyKqFmRtSEAgDxxwQUX7DZq1KgLM5lMYRrO8+qrr8Ytt9ySqkdSAkBT/7O3d+/e0a5du1Scp2PHjkNzudxzU6ZMWSddAACamrLO9VHwMc/wcwcwAADRt2/f4h//+McXZzKZVPwG4HvvvRc33HBDNDY2ChcAdpKGhoa47rrrYtmyZak4T0FBQfbss88e27dv32LpAgCQqGtZKwAAYPz48T8qKyvrkYazbNiwIX7/+99HbW2tYAFgJ9u0aVP8/ve/j40bN6biPGVlZb3GjRs3RrIAACSJAhgAIM/ddNNNw/v06XN8Gs5SX18f1157baxdu1awALCLrFmzJq699tqor69PxXn69ev3jd///vdDJQsAQFIogAEA8thBBx1Uceyxx/5rRGTScJ477rgjFi9eLFgA2MUWLVoUd955Z1qOU/CNb3zj34YNG9ZcsgAAJOIC1goAAPLXzTfffFZxcXG7NJxl4sSJMX36dKECQBMxbdq0mDRpUirOUlJS0unOO+88Q6oAACSBAhgAIE/913/914FdunT5UhrO8tprr8Wf//xnoQJAEzN+/PhYsGBBKs7SrVu3o2+66abhUgUAoKlTAAMA5KEvfelLlV/5yld+lYazrFixIq6//vpobGwULAA0MY2NjXHdddfFihUr0nCczHHHHfergw46qEKyAAA0ZQpgAIA8dPXVV5+ezWYrk36OmpqauPbaa2PTpk1CBYAmatOmTXHttddGTU1N4s+SzWbb3njjjT+RKgAATZkCGAAgz9x6663Du3Tp8uWknyOXy8Utt9wSK1euFCoANHErV66MW2+9NXK5XOLP4lHQAAA0dQpgAIA8MnTo0LKvfvWrv0jDWSZMmBBz584VKgAkxJw5c+Kxxx5LxVlGjRr1i6FDh5ZJFQCApkgBDACQR+64444fFRcXd0z6OV5++eV45JFHBAoACfPQQw+l4he4SkpKOt5xxx0/lCgAAE2RAhgAIE9cfvnlu/fs2XNU0s/xwQcfxB133JGKR0gCQL7J5XJx2223xZo1axJ/lp49ex57+eWX7y5VAACaGgUwAEAe6NatW/a73/3uv2YymURf/9XX18cNN9wQ1dXVQgWAhKqqqoobb7wx6uvrE32OTCZT8N3vfvdX3bp1y0oVAICmRAEMAJAHxo8ff0pZWVmvpJ/jnnvuiaVLlwoUABJuyZIlcd999yX+HGVlZT3Hjx9/ikQBAGhKFMAAACn385//vOeAAQNGJ/0c06dPjylTpggUAFJi8uTJMWPGjMSfY8CAAaN//vOf95QoAABNhQIYACDFstls5qyzzjo3k8kk+tGEK1asiLvvvlugAJAyd911V6xYsSLRZ8hkMtmzzjrr3Gw2m5EoAABNgQIYACDFxo0b98XKysq9knyG2trauOGGG6K2tlagAJAyf/1zfvPmzYk+R2Vl5V7jxo0bKVEAAJoCBTAAQEoNHz68/OCDDz4t6ee4//77Y/ny5QIFgJRavnx5jBs3LvHnGDFixI+HDRvWXKIAAOxqCmAAgJS69dZbT8tms22TfIYZM2bEc889J0wASLnJkyfHzJkzE32G4uLitrfffvtp0gQAYFdTAAMApNBVV121R48ePb6S5DOsXLky7rrrLmECQJ64++6744MPPkj0GXr27PnVK664Yg9pAgCwKymAAQBSprS0tOAb3/jGT5N8rdfY2Bi333679/4CQB6pqamJ2267LRobG5N8jIJvfvObZ5aWlvqZGwAAu+6i1AoAANJlwoQJX6uoqBiQ5DOMHz8+Fi1aJEwAyDNvvvlmPPjgg4k+Q4sWLQY9+OCDx0gTAIBdRQEMAJAiRx55ZOWwYcN+kOQzzJ07N5544glhAkCemjhxYixYsCDRZxg+fPiPjjjiiJbSBABgV1AAAwCkyBVXXHFyUVFRRVLnr6qqijvvvDNyuZwwASBP5XK5uP3226O6ujqxZygqKmrxm9/85mRpAgCwKyiAAQBS4vzzz+/Xu3fv45J8httvvz0+/PBDYQJAnlu3bl3cfvvtiT5D7969jz///PP7SRMAgJ1NAQwAkALZbDZz6qmn/jyTyST2+m769OkxZ84cYQIAERExe/bsmDFjRmLnz2QyBaeeeurPs9lsRpoAAOxMCmAAgBT44x//eERlZeXgpM6/du3auPfeewUJAPyde+65J9atW5fY+SsrKwf/6U9/+oIkAQDYmRTAAAAJ17dv3+JDDjnkR0k+w9133x01NTXCBAD+Tk1NTdx9992JPsPBBx/8o759+xZLEwCAnUUBDACQcHfdddc3S0pKOiV1/smTJ8e8efMECQB8pLlz58azzz6b2PlLSko63nPPPd+SJAAAO4sCGAAgwb70pS9VDhw48KSkzr9mzZoYP368IAGALXrggQdizZo1iZ2/f//+Jx111FGtJAkAwM6gAAYASLArrrji1MLCwvIkzp7L5eK2226LTZs2CRIA2KJNmzbFbbfdFrlcLpHzFxYWll1++eU/kCQAADuDAhgAIKF+8Ytf9O7evftXkjr/s88+G2+88YYgAYBP5Y033ojnn38+sfN369bt6F/96ld9JAkAwI6mAAYASKgf/vCHP8pkMom8nvvggw/igQceECIAsFXGjRsX69atS+TsmUym4NRTT/2xFAEA2NEUwAAACXTdddcNa9eu3YFJnD2Xy8Udd9wRtbW1ggQAtsqmTZvizjvvTOz8bdq02f+mm27aT5IAAOxICmAAgIQpLS0t+NrXvnZ6Uud/4YUXYuHChYIEALbJq6++GjNmzEjs/Mccc8zpFRUVfiYHAMAO42ITACBhbr/99oMrKip2S+LsGzZsiHHjxgkRAPhM7r///qiqqkrk7OXl5X3/67/+6wgpAgCwoyiAAQASpKKiouCwww47Nanz33vvvYn9YS0A0HRs2LAh7r///sTOf9BBB/1zq1atCiUJAMCOoAAGAEiQ+++//+iysrKeSZx9zpw58dJLLwkRANguXnjhhViwYEEiZy8tLe32xz/+8StSBABgR1AAAwAkRN++fYv33Xfff07i7LW1tXHvvfcKEQDYru6+++6oq6tL5Oz77bffKf379y+RIgAA25sCGAAgIW6++eZRxcXFbZM4+yOPPBJr164VIgCwXa1atSoee+yxRM6ezWbb3njjjV+TIgAA25sCGAAgAYYOHVq21157fSeJs7/33nvxxBNPCBEA2CEmTpwYK1asSOTsQ4YM+c7QoUPLpAgAwPakAAYASIBrr732xKKiosqkzZ3L5eKee+6JxsZGIQIAO0R9fX3cddddkcvlEjd7UVFR5bXXXnuCFAEA2J4UwAAATdwBBxxQMWDAgG8kcfYZM2bEW2+9JUQAYId6880348UXX0zk7AMGDPjG8OHDy6UIAMD2ogAGAGjirrrqqhOKiooqkjb3pk2b4oEHHhAgALBT3H///VFbW5u4uYuKilpcffXV7gIGAGC7UQADADRhBx10UEX//v0Teffvww8/HB9++KEQAYCdYv369TFhwoREzj5w4MBvHHDAARVSBABge1AAAwA0Yf/5n/95bGFhYfOkzb1q1aqYPHmyAAGAnerpp5+O1atXJ27uwsLC8ssuu2yUBAEA2B4UwAAATdQBBxxQMWjQoNFJnP3uu++O+vp6IQIAO1V9fX3cddddiZx99913/+bQoUPLpAgAwGelAAYAaKIuv/zyYwsLC8uTNvfcuXNjwYIFAgQAdokFCxbE3LlzEzd3UVFRi9/97ndflyAAAJ+VAhgAoAkaOnRo2aBBgxL37t+6urr405/+JEAAYJf605/+FHV1dYmbe/fdd//mkCFDSiUIAMBnoQAGAGiCfvOb33ylqKioZdLmfu655xL53j0AIF1Wr14dzz33XOLmLioqann11VcfLUEAAD4LBTAAQBPTq1evZoMHD/5m0uaurq6ORx55RIAAQJPwyCOPRHV1deLmHjJkyLe6deuWlSAAANtKAQwA0MTcdNNNxxQXF7dN2twTJkyIqqoqAQIATUJVVVUifzmtuLi43a233uouYAAAtpkCGACgCWnVqlXhXnvtdVLS5l61alU8++yzAgQAmpTJkyfHqlWrEjf30KFDR7dq1apQggAAbAsFMABAE3LLLbccXlJS0jlpcz/44INRX18vQACgSamvr48HH3wwcXOXlJR0vummmw6VIAAA20IBDADQRGSz2cwBBxzw7aTNvWjRonjppZcECAA0SS+99FIsXrw4cXOPGDHiO9lsNiNBAAC2lgIYAKCJuOaaa/YuLy/vm7S5H3roocjlcgIEAJqkXC6XyLuAy8vL+1111VV7SRAAgK2lAAYAaCK+8pWvfDdpM8+bNy8WLlwoPACgSVu4cGG8+uqrrg8BAMgLCmAAgCbgsssuG1RZWblPkmbO5XIxfvx44QEAifDAAw8k7qklrVu33veSSy7pLz0AALaGAhgAoAkYNWrUCUmbefbs2bFs2TLhAQCJsGzZsnjllVcSN/cJJ5xwovQAANgaCmAAgF3sn//5nzt37NjxiCTN3NjYGA888IDwAIBEGT9+fDQ0NCRq5k6dOn1h9OjRHaQHAMCnpQAGANjFfvSjH30tk8kk6rps2rRpsWrVKuEBAImyatWqeOGFFxI1cyaTKfzpT386SnoAAHxaCmAAgF1o0KBBpX369Plqkmaur6+PCRMmCA8ASKQJEyZEXV1dombu27fvV/r27VssPQAAPg0FMADALnTZZZcdXlRUVJGkmadOnRpr164VHgCQSOvXr48pU6YkauaioqLK3/zmN0dIDwCAT0MBDACwi2Sz2cy+++57UpJmrqurc/cvAJB4jz76aOLuAt5///1PymazGekBAPBJFMAAALvI1VdfPbSsrKx3kmaeMmVKbNiwQXgAQKJt2LAhnn/++UTNXFZW1ueqq67aS3oAAHwSBTAAwC7y5S9/+bgkzVtfXx8TJ04UHACQCo8//nji7gL+0pe+dLzkAAD4JApgAIBdYPTo0R3atm07IkkzT5s2LdatWyc8ACAVPvzww5g+fXqiZm7fvv2I0aNHd5AeAABbogAGANgFfvrTn47KZDKFSZm3vr4+HnnkEcEBAKnyyCOPRH19fWLmzWQyhT/96U+/JjkAALZEAQwAsJN16tQp26dPn6OTNLO7fwGANFq3bl1MmzYtUTP36dPnmE6dOmWlBwDAx1EAAwDsZFddddUB2Wy2dVLmbWxsjEmTJgmOVOvYsWN06OCJmgD5aNKkSdHY2JiYebPZbOurrrrqAMkBAPBxFMAAADvZiBEjvp6keV988cVYtWqV4Ei1Ll26xIUXXhinnXZadO3a1UIA8siqVavipZdecj0JAEBqKIABAHaiM844o3tlZeXeSZk3l8vFxIkTBUdeyGQyMXjw4PjVr34VY8aMcUcwQB55/PHHI5fLJWbeysrKvc8444zukgMA4KMogAEAdqJTTjnlqxGRScq8CxYsiPfee09w5JVMJhN77713XHjhhTFmzJho3769pQCk3HvvvRcLFy5M1B9X/3NdCQAA/4cCGABgJ+nVq1ezXr16fTlJM3v3L/nsr0XwBRdcECeffHK0bdvWUgBSLGnXPb169fpyr169mkkOAIB/pAAGANhJrrjiioOLiopaJmXeBN4JAztEYWFhDB8+PC688MIYPXp0VFZWWgpACi1YsCCWLVuWmHmLiopaXnnllYdIDgCAf6QABgDYSYYPH/6VJM2btHfhwY5WVFQUI0aMiEsuuSRGjx4dLVu2tBSAFMnlcvH4448naub99tvvK5IDAOAfKYABAHaC0aNHd6isrByalHnXrl0bL7/8suDgI/y1CL744ovjhBNOiBYtWlgKQEq89NJLsW7dusTMW1lZudfo0aM7SA4AgL+lAAYA2AlOP/30o5J07fXMM89EQ0OD4GALiouL47DDDouxY8fGqFGjoqyszFIAEq6hoSGeeeaZJI1c8D/XmQAA8P8vEq0AAGDHymazmX79+n05KfPW1tbGlClTBAefUnFxcYwcOTIuvfTSGDVqVJSWlloKQII9//zzUVtbm5h5+/Xr9+VsNpuRHAAAf6UABgDYwX7zm9/sWVJS0jkp886YMSOqq6sFB1uppKQkRo4cGZdcckkcffTRUVJSYikACVRdXR0zZ85M0p8/na+44orBkgMA4K8UwAAAO9gXvvCFLyVl1lwuF08//bTQ4DNo3rx5HHXUUXHJJZfEyJEjI5vNWgpAwjz11FORy+USM++RRx75ZakBAPBXCmAAgB1oyJAhpZ07dz4iKfO+/vrrsWLFCsHBdlBeXh6jRo2KSy+9VBEMkDArVqyI119/PTHzdunS5fD+/ft79AQAABGhAAYA2KHGjh17aGFhYWJeCOruX9j+KioqYtSoUXHxxRfH4YcfHkVFRZYC4LpouyosLGz+H//xHwdLDQCACAUwAMAOteeeex6ZlFnXrl0b8+bNExrsIK1atYrjjz8+LrroohgxYkQUFPh2DKApmzdvXqxZsyYx8+61115HSg0AgAgFMADADnPMMce0bt269b5Jmfe5556LxsZGwcEO1qZNmxg9enRcfPHFimCAJqyxsTGee+65JP35MvyYY45pLTkAAPykAQBgBznzzDMPz2Qyibje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FpafffbZvaQFAJA+CmAAgE9p//3375+EOV9//XVhAXmjvLw8Ro0aFf/+7/8eI0eOjGw2aymA67FP6fOf//xAaQEApI8CGADgU+rRo8fuTX3G2traePvtt4UF5J2KiooYNWpUXHzxxXH44Yc3+XdvAum2ePHiRLySo1evXoOkBQCQPgpgAIBPqXXr1k3+DoklS5ZEQ0ODsIC81apVqzj++OPj4osvjhEjRkRBgW97gZ2voaEhlixZ0uTnbNOmjQIYACCFfCcMAPApDBkypLR58+a9m/qcb775prAAIqJ169YxevToGDt2rCIYcF32MZo3b95n0KBBpdICAEgX3wEDAHwKp556av9MJtPkr53eeustYQH8jTZt2sTo0aPjvPPOi+HDhyuCAddlfyOTyRT84Ac/+Jy0AADSxXe+AACfwuDBg5v84/Hq6+tj0aJFwgL4CJ06dYqTTz45/u3f/i323nvvyGQylgLsUIsXL07Eqzn23HPPgdICAEgXBTAAwKfQpUuXAU19xnfeeSfq6uqEBbAFnTt3jjFjxiiCgR2utrY23n333SRc53oPMABAyiiAAQA+hZYtW/Zv6jN6/DPAp9elS5cYM2ZMnHvuuTF48GALAfL2+iwJ17kAAGwdBTAAwCcYPnx4eUlJSeemPqfHPwNsvV69esVpp50W55xzTvTvrwMB8u/6rLS0tPPw4cPLpQUAkB4KYACAT/Ctb31rt4ho8s8IXbx4sbAAtlGfPn3irLPOinPOOSd22203CwG2i4T8gl7m29/+dj9pAQCkhwIYAOAT7L777k2+CVi7dm1s2LBBWACfUZ8+feLss8+OM888M3r27GkhwGfy4Ycfxrp165r8nAMHDlQAAwCkSJEVAABsWadOnZr8D8TefvttQQFsRwMGDIgBAwbEggULYvz48bF06VJLAbb5Oq1Vq1audwEA2GkUwAAAn6CyslIBDJCnBgwYEP3794958+bFQw89FO+++66lAFtlyZIlsddeezX1613PvgcASBEFMADAFnTq1CnbvHnzXk19ziVLlggLYAfJZDIxePDg2GOPPeLll1+OBx98MFauXGkxQGqu05o3b967Xbt2RatXr66XGABA8nkHMADAFowZM6ZnJpPJNuUZGxsbPZoUYCfIZDKx9957x4UXXhhjxoyJ9u3bWwrwiZYuXRqNjY1NesaCgoLsqaee2kNaAADp4A5gAIAt2Hvvvfs29RlXrlwZtbW1wgLYSf5aBO+5554xa9asmDBhQqxevdpigI9UW1sb77//fnTu3LlJzzls2LC+EbFIYgAAyecOYACALejRo0eTL4DfeecdQQHsAoWFhTF8+PC48MILY/To0VFZWWkpQGKv15Jw3QsAwKejAAYA2ILWrVs3+ff/vvvuu4IC2IUKCwtjxIgRcckll8To0aOjZcuWlgIk7notCde9AAB8Oh4BDQCwBc2bN+/Z1GdUAAM0kW+wi4pixIgRsd9++8WUKVPiscceiw0bNlgMEO+9914SrnsVwAAAKeEOYACAj9G/f/+SkpKSjk19TgUwQNPSrFmzOOyww2Ls2LExatSoKCsrsxTIc0m4XistLe3Ut2/fYmkBACSfAhgA4GOccMIJ3Zr69dK6deuiqqpKWABNUHFxcYwcOTJ+/etfK4Ihz1VVVcX69eub+pgF3/zmN7tLCwAg+RTAAAAfY8iQIT2b+oxJeJwgQL77axE8duzYOProo6OkpMRSIA8l4botCde/AAB8MgUwAMDH6N69e8+mPqPHPwMkR/PmzeOoo46KSy65JEaOHBnNmjWzFMgjSbhuS8L1LwAAn0wBDADwMVq1atWjqc+4bNkyQQEkTHl5eYwaNSr+/d//PUaOHBnZbNZSIA8k4botCde/AAB8MgUwAMDHqKio6NXUZ1y+fLmgAJL750yMGjUqLr744jj88MOjqKjIUiDFknDd1rJly16SAgBIPgUwAMBHyGazmbKysq5NecbGxsZYtWqVsAASrlWrVnH88cfHxRdfHCNGjIiCAt+qQxqtWrUqGhsbm/SMJSUlXbPZbEZaAADJ5rtKAICPcNxxx7UrKCgobsozrl69Ourr64UFkBKtW7eO0aNHx9ixYxXBkEJ1dXXxwQcfNOkZCwoKio877rh20gIASDbfTQIAfITPf/7zXZr6jO+//76gAFKoTZs2MXr06Dj//PNj+PDhimBIkRUrVrgOBgBgh/NdJP+PvTuPr7I888d/nSwEkhD2HUQEUVRAoIiouCtq64Jabd1arVorbqO2tlXbaavTOu38Rqffdmpbu9rWpYogsqgFRXCttAIKArJDgAAJBLKQ5JzfH8WO4+DOcp6T9/v18jWvTv657ut6hNvnk/t+AICd2G+//bL+xVcSXiAC8PF17do1Lr300rj99ttj2LBhkUq5lRWSLgn7tyTsgwEAeH8FWgAA8H917txZAAxAVujevXtceeWVsXr16njiiSdi9uzZkclkNAYSKAn7tyTsgwEAeH8CYACAnWjXrp0roAHIKj169Igrr7wyli5dGpMmTYo5c+ZoCiRMEvZvSdgHAwDw/gTAAAA7UVxc3D3baxQAAzRPffr0ibFjx8aSJUti/PjxsWDBAk2BhEjC/i0J+2AAAN6fbwADAOxESUlJz2yur7q6Ourq6gwKoBnbb7/94l/+5V/ia1/7WhxwwAEaAglQV1cX1dXV9sEAAOxWAmAAgHc5/PDDSwsKCtpmc40VFRUGBUBERPTt2zduvPHGuOGGG2LffffVEMhy2b6PKygoaDt8+PASkwIASC4BMADAu5x44oldsr3GDRs2GBQA/8uAAQPiG9/4Rtxwww3Ru3dvDQH7uE+yH+5qUgAAyeUbwAAA79KvX7+sD4DXr19vUADs1IABA+LAAw+MuXPnxoQJE2LlypWaAlkkCTe5HHDAAV0i4i3TAgBIJgEwAMC7dO/evXO21+gEMADvJ5VKxaBBg2LgwIExe/bsGD9+fKxbt05jwD4uZ/bDAAC8NwEwAMC7tG/fvlO21ygABuDDSKVSMWzYsBg6dGjMnj07HnvsMbdIwF6WhBPASdgPAwDw3gTAAADv0rp166w/8ZCEF4cAZI+3g+BDDz00XnnllZg4caK/S8A+LtH7YQAA3psAGADgXUpKSrL6xENjY2Ns3rzZoAD4yPLz8+Pwww+P4cOHx/PPPx8TJ06MqqoqjYE9aPPmzdHY2BgFBdn7Wi7b98MAALw/ATAAwLu0bNmySzbXV1lZGZlMxqAA+Njy8/Nj1KhRMXLkyHjhhRcEwbAHZTKZqKqqio4dO9oPAwCwWwiAAQDepaioKKuvvKusrDQkAHaJgoKCGDVqVIwYMSJmzpwZkydPji1btmgM7IH9XDYHwNm+HwYA4P3laQEAwP8YPnx4SX5+fkk21ygABmBXa9GiRRx//PFxxx13xNlnnx0lJSWaAs14P5efn18yfPhwfxAAACSUABgA4B2OOOKIDtleo+//ArC7FBUVxejRo+P73/9+nH322VFcXKwpsBsk4cr1JOyLAQDYOQEwAMA79O3bt1221+gEMAC729tB8B133BGnn356tGrVSlOgme3n9ttvv7YmBQCQTAJgAIB36NSpkwAYAHYoKSmJz3zmM3HnnXfG6NGjo0WLFpoCzWQ/l4R9MQAAOycABgB4hw4dOrTN9hqTcGUgALmlpKQkzj777PjOd74To0aNivz8fE2BHN/PJWFfDADAzgmAAQDeoaysrG221ygABmBvad++fVx00UVx5513xgknnBCFhYWaAjm6nysrK3MCGAAgoQTAAADvUFJS0j6b68tkMlFdXW1QAOxV7dq1i/POOy+++93vxqhRoyIvz+sF+CiSsJ8rLS0VAAMAJJT/QgMAeIfi4uK22VxfXV1dNDY2GhQAWeHtE8F33HGHIBg+gsbGxqirq7MvBgBgt/BfZgAA79CqVausPung9C8A2ahDhw5x0UUXxbe//e04/PDDBcGQA/u6oqIiJ4ABABLKf5EBALxDQUGBABgAPqauXbvGpZdeGt/61rdi2LBhkUqlNAUSuq9r0aJFW1MCAEimAi0AAPgfhYWFZdlc39atWw0JgKzXrVu3uPLKK2P16tXxxBNPxOzZsyOTyWgMJGhfl+37YgAA3psAGADgnZujgoLW2VyfE8AAJEmPHj3iyiuvjKVLl8akSZNizpw5mgIJ2ddl+74YAID35gpoAIAdWrdunZefn98ym2sUAAOQRH369ImxY8fGLbfcEgMGDNAQSMC+Lj8/v1WrVq28OwQASCCbOACAHQYNGlQSEVn9scJt27YZFACJtd9++8UNN9wQX/va1+KAAw7QEJq1BOzr8gYPHlxsUgAAySMABgDY4YADDijJ9hpramoMCoDE69u3b9x4441xww03xL777qshNEu1tbVZX2P//v1LTQoAIHl8AxgAYIeePXtm/QuuJLwoBIAPa8CAATFgwICYP39+jBs3LpYvX64pNBtJ2Nf16NGjxKQAAJJHAAwAsEOnTp0EwACwFwwYMCAOPPDAmDt3bkyYMCFWrlypKeS8JOzrunbtKgAGAEggATAAwA5lZWVZ/4Krrq7OoADISalUKgYNGhQDBw6M2bNnx4QJE2Lt2rUaQ85KQgDcpk0bV0ADACSQABgAYIeysjIngAFgL0ulUjFs2LAYOnRozJ49O8aPHx/r1q3TGHKOABgAgN1FAAwAsENJSUlxttfoBDAAzcXbQfCQIUPi5ZdfjokTJ0ZFRYXGkDOSEAAnYX8MAMD/JQAGANihqKioKNtrrKmpMSgAmpW8vLw4/PDDY/jw4fH888/HE088EZWVlRpD4iUhAG7RokWRSQEAJI8AGABgh8LCwhbZXF86nY7t27cbFADNUn5+fowaNSpGjhwZL7zwQkycODGqqqo0hsTavn17ZDKZSKVSWVtjixYtWpgUAEDyCIABAHbI9gC4oaHBkABo9goKCmLUqFExYsSImDlzZkyePDm2bNmiMSROJpOJhoaGyOaMtbCw0AlgAIAk/neTFgAA7NgYFRRk9QuuxsZGQwKAHVq0aBHHH398HHnkkfHMM8/E1KlTY9u2bRpDomR7AJzt+2MAAN5jH6cFAAA7NkZZ/oLL9c8A8H8VFRXF6NGj49hjj41nnnkmpkyZEjU1NRpDImT7DS8FBQWugAYASCABMADA2xujLH/B5QpoAHhvbwfBRx11VEyfPj2efvrpqK2t1RiymgAYAIDdIU8LAAD+QQAMAMlXUlISn/nMZ+LOO++M0aNHZ/X1uiAABgBgdxAAAwDskO1XQAuAAeDDKykpibPPPjv+7d/+LUaPHh2FhYWagv3dR5Sfn9/SlAAAkkcADADw9sYoL88JYADIMa1bt46zzz47vve978UJJ5wgCMb+7iPIz8/3LwwAQAIJgAEAdkilUlm9N2psbDQkAPiY2rVrF+edd15897vfjRNOOCEKCgo0Bfu7D94f55sSAEDyCIABAHbI9gA4nU4bEgB8Qu3bt/9nEDxq1KjIy/NqBPu799kfp0wJACB5/FcOAMAOXnABQPPRoUOHuOiii+J73/ueIJi9JpPJZHuJ/sUAAEggmzgAgP+R1QFwAl4QAkDidOzYMS666KL41re+FYcffnj4fTDs796xOc7yG3IAANg5mzgAgITsjQTAALD7dOvWLS699NL41re+FcOGDRMEs0dk+xXQeXl5/kUAAEigAi0AAPiHbH/BJQAGgN2ve/fuceWVV8ayZcviiSeeiDlz5mgKzXl/5/AIAEACCYABAHbIZDJOAAMAERGx7777xtixY2PJkiUxYcKEmD9/vqZgfwwAQCIIgAEA/ocr7gCA/2W//faLG264Id56660YP358vPnmm5rCLpPtV0Cn3IUOAJBIAmAAgB2y/QVXtr8gBIBc1rdv37jxxhvjrbfeinHjxsWiRYs0hU/MFdAAANjEAQDsXln9Bs4BDADY+/r27Rs333xz3HDDDdG7d28NIdf3d75BAgCQQE4AAwDskO0nMATAAJA9BgwYEAMGDIj58+fHI488EitXrtQUcnF/5woaAIAEcgIYAGCHVCqVzvL6DAkAssyAAQPi1ltvjbFjx0bPnj01hJza32UScEc1AAD/lxPAAAD/QwAMAHysv6MHDRoUBx98cDz//PMxadKk2LRpk8aQ+P1dtv+CJAAAO+cEMADADul0dr/fEgADQHarr6+PioqK2LZtm2aQE/u7dDrtBDAAQAI5AQwA8D+cAAYAPrK6urp4+umnY9q0acJfcm1/5wQwAEACCYABAP6HEw4AwIfW0NAQ06ZNiyeffDK2bt2qIXxkCfgGsAAYACCBBMAAADtkMpmsDoDz8ny9AwCywdvB71NPPRXV1dUaQs7u7wTAAADJJAAGANgh219wCYABYO9qbGyMGTNmxJNPPhmVlZUawieWn5+f9VtkUwIASB4BMADADplMpiGb6yssLDQkANgL0ul0zJo1KyZPnhwbN27UEHaZgoLsfjXX1NTUaEoAAAncZ2oBAMA/NDY2bs/m+gTAALBnpdPpePnll2Py5Mmxdu1aDWGXa9GiRbb/O1BvSgAAySMABgDYoampSQAMAEQmk4nZs2fH448/HuXl5RpCs93fNTY2CoABABJIAAwAsENDQ0NWv+ASAAPA7vV28PvEE0/E6tWrNYTdLtuvgM72G3IAAHiPfaYWAAD8gyugAaD5mjNnTkyaNCmWLl2qGewx2X4FtAAYACCZBMAAADs0NTU5AQwAzcyCBQtiwoQJ8dZbb2kG9nfv0tDQIAAGAEggATAAwA7Z/oJLAAwAu87ChQtj/PjxsXjxYs1gr8n2K6Cz/RckAQB4j32mFgAA/EO2B8AFBQWRl5cX6XTasADgY1q+fHmMGzcu5s+frxnsVXl5eVkfAG/fvt0JYACABBIAAwDs0NDQkPUnHFq1ahXbtm0zLAD4iFauXBmPPPKI4Jes2tclYH8sAAYASCABMADADrW1tXXZXqMAGAA+mnXr1sX48eNj9uzZkclkNISs2tdlu7q6ulqTAgBIHgEwAMAOW7du3ZrtNSbhRSEAZIP169fHY489JvjFvu4TqK6u3mpSAADJIwAGANihqqpKAAwACbdhw4Z4/PHH45VXXommpiYNwb7uE6isrHT1DABAAgmAAQB22LRpU9a/4GrZsqVBAcBOVFVVxcSJE+OFF16IxsZGDSHrJSEA3rRpkxPAAAAJJAAGANhh3bp1WR8AOwEMAP/bli1bYsKECYJfEicJ+7ry8nIBMABAAgmAAQB2WLZsmSugASAhqqurY/LkyTFz5syor6/XEBInCfu6pUuXCoABABJIAAwAsMP8+fOz/gRwcXGxQQHQrNXU1MSUKVPimWeeEfySaEnY173++uu+AQwAkEACYACAHRYsWFCXyWQaUqlUYbbW2Lp1a4MCoFmqq6uLp59+OqZNmxbbtsmkSL5s39el0+mGpUuXbjcpAIDkEQADALxDU1PTtoKCgrbZWp8AGIDmZvv27TF9+vR48sknY+tWt9GSO7J9X9fU1ORfOACAhBIAAwC8Q0NDw9ZsDoBLS0sNCYDm8ndyTJs2LZ566qmorq7WEHJOtu/rGhsb/YsHAJBQAmAAgHeor6+vbNWqVc9src8JYAByXWNjY8yYMSOefPLJqKys1BByVrbv6+rr66tMCQAgmQTAAADv0NDQkNVvmgXAAOSqdDods2bNismTJ8fGjRs1hJyX7fu6bN8XAwDw3gTAAADvUFdXV5XN9ZWWlkYqlYpMJmNYAOSETCYTr732Wjz++OOxatUqDaFZSKVSUVJSktU11tbWVpkUAEAyCYABAN5h27Ztm7K5vvz8/GjVqlXU1NQYFgCJlslkYvbs2fH4449HeXm5htCstGrVKvLz87O6xq1btzoBDACQUAJgAIB3qK6u3pztNZaVlQmAAUist4PfiRMnxpo1azSEZqmsrCzra9y2bVuVSQEAJJMAGADgHaqqqjZle43t2rWLtWvXGhYAiTNnzpyYNGlSLF26VDNo1tq1a5f1NW7atMkJYACALNbQWBgFjQ0REZFKRSavMJre/pkAGADgHSoqKqqyvcYkvDAEgHdasGBBTJgwId566y3NgITs5zZs2CAABgDIYoUFDf9MejMRqab0/+S+AmAAgHdYtWpV1r/oatu2rUEBkAgLFy6M8ePHx+LFizUD3iEJAfDq1aurTAoAIJkEwAAA77BgwYKsD4CdAAYg2y1fvjzGjRsX8+fP1wzYiST8Ql8S9sUAAOycABgA4B2eeOKJjZlMpimVSuVna41OAAOQrVauXBmPPPKI4Bc+QLb/Ql8mk2l64oknNpoUAEAyCYABAN6huro6vX379g1FRUVdsrVGJ4AByDZr166NCRMmxOzZsyOTyWgIJHw/t3379g3V1dVpkwIASCYBMADAu9TV1a0XAAPAB1u/fn089thjgl/Isf1cXV3delMCAEguATAAwLvU1dVVtGnTJmvrKykpiRYtWsT27dsNC4C9oqKiIiZOnBivvPJKNDU1aQh8BEVFRVFcXJz1+2GTAgBILgEwAMC7bN26dV2XLll7ADhSqVR07Ngx1qxZY1gA7FFVVVUxceLEeP755wW/8DF17NgxUqlU1u+HTQoAILkEwAAA71JVVZX1Jx46deokAAZgj9m8eXM8/vjj8cILL0RjY6OGwCfcx9kPAwCwOwmAAQDeZf369Vn/zbMkvDgEIPm2bNkSU6ZMiZkzZ0Z9fb2GwC7QsWNH+2EAAHYrATAAwLusXr066088JOHFIQDJVVNTE1OmTIlnnnlG8Au7WBJ+kW/VqlUCYACABBMAAwC8y9///ves/+aZABiA3aG2tjYmT54czz77bNTV1WkINNN93KuvvioABgBIMAEwAMC7PPzww+t//OMfN6RSqcJsrbFz584GBcAus3379pg+fXpMnTo1tm3bpiGwG2X7CeB0Ot3w8MMPC4ABABJMAAwA8C7V1dXpurq68latWu2TrTV26NAh8vLyIp1OGxgAH1tDQ0NMmzYtnnrqqaiurtYQ2M3y8vKiQ4cOWV1jfX39mtraWptMAIAEEwADAOxEbW3tmmwOgAsKCqJdu3axceNGwwLgI2tsbIwZM2bEk08+GZWVlRoCe0j79u2joCC7X8fV1NSUmxQAQLIJgAEAdmLz5s2r2rdvn9U1duvWTQAMwEeSTqdj1qxZMXnyZH+HwF7av2W7LVu2rDQpAIBkEwADAOzEpk2bVvfp0yera+zWrVvMmzfPsAD4QG8Hv1OmTIkNGzZoCOzF/Vu227BhwxqTAgBINgEwAMBOrFixYvWwYcOyusYkvEAEYO/KZDLx0ksvxZQpU6K83K2usLd17do162tctWrVKpMCAEg2ATAAwE7Mnz9/9ZgxY7K6xiS8QARg78hkMjF79uyYOHFirFnjMB9kiyT8At+8efP8oQEAkHACYACAnRg3btyab37zm5mISGVrjU4AA7Azc+bMiSeeeCKWLVumGZBlEvALfJlx48atNikAgGQTAAMA7MTrr79e29DQsKmwsLBDttZYXFwcZWVlsWXLFgMDIBYsWBDjx4+PJUuWaAZkobKysiguLs7qGhsaGjYuWLCgzrQAAJJNAAwA8B62bt26vF27dh2yucauXbsKgAGauYULF8b48eNj8eLFmgFZLAm3t2zbtm25SQEAJJ8AGADgPVRVVS1t167d0GyusWfPnrFw4ULDAmiGli1bFo899ljMnz9fMyABevbsmfU1VlZWLjUpAIDkEwADALyHdevWLevTp09W15iEF4kA7ForVqyIRx99VPALCZOEfdvatWuXmRQAQPIJgAEA3sPChQuXHX744VldY69evQwKoJlYtWpVjB8/PubOnRuZTEZDIGGSsG9buHDhMpMCAEg+ATAAwHuYNm3a0ksuuSSra+zevXvk5+dHU1OTgQHkqHXr1sX48eNj9uzZgl9IqIKCgkR8A/jpp59eZloAADmw/9QCAICde+ihhzbcd999W/Pz80uzdjNXUBBdunSJNWvWGBhAjqmoqIiJEyfGyy+/HOl0WkMgwbp27RoFBdn9Gq6xsbH6kUce2WBaAADJJwAGAHgf27ZtW15WVnZwNtfYq1cvATBADqmqqoqJEyfG888/74YHyBFJ+P7vtm3blpsUAEBuEAADALyPLVu2LMv2ALhnz57x0ksvGRZAwm3evDkef/zxeOGFF6KxsVFDIIck4fu/W7ZsWWpSAAC5QQAMAPA+1q9fvyzbT2z06NHDoAASbMuWLTFlypSYOXNm1NfXawjkoCTs19avX7/MpAAAcoMAGADgfSxYsGDh0KFDs7rGfffdN1KpVGQyGQMDSJCampqYMmVKPPPMM4JfyGGpVCr23XffrK9z/vz5C00LACA3CIABAN7Ho48++uYFF1yQ1TWWlJRE586dY926dQYGkAC1tbUxefLkePbZZ6Ourk5DIMd17do1WrVqlfV1/vnPf15kWgAAuUEADADwPiZNmlRVX1+/oaioqGM217nvvvsKgAGy3Pbt22P69OkxderU2LZtm4ZAM9GnT5+sr7G+vr7iySefrDItAIDcIAAGAPgAW7duXZTtAXCfPn3ipZdeMiyALNTQ0BDTpk2Lp556KqqrqzUEmpkkXP+8detWp38BAHKIABgA4ANUVFQs7NChw8hsrjEJLxYBmpvGxsaYMWNGPPnkk1FZWakh0EwlYZ9WUVHh+78AADlEAAwA8AGWLl266MADD8zqGnv16hUFBQXR2NhoYAB7WTqdjlmzZsWkSZNi06ZNGgLNWGFhYfTs2TMR+13TAgDIHQJgAIAPMHPmzEWnnnpqdm/qCgqiZ8+esWzZMgMD2EveDn4nT54cGzdu1BAg9tlnn8jPz0/CfnexaQEA5I48LQAAeH+//OUvV6bT6bpsr7NPnz6GBbAXZDKZePHFF+O73/1u3H///cJf4J+ScP1zOp2u++Uvf7nStAAAcocTwAAAH6C6ujpdXV29uE2bNodkc539+vWL6dOnGxjAHpLJZGL27NkxceLEWLNmjYYAO92fJWCvu7i6ujptWgAAuUMADADwIWzYsGFetgfA/fv3NyiAPeTVV1+NSZMmxapVqzQD2KlUKpWI/dmGDRvmmhYAQG4RAAMAfAiLFy9+o2/fvlldY1lZWXTu3DnWr19vYAC7yYIFC2L8+PGxZMkSzQDeV5cuXaK0tDQJ+9z5pgUAkFsEwAAAH8JTTz31+ujRo7O+zv33318ADLAbLFy4MMaPHx+LFy/WDOBD78uSYMqUKa+bFgBAbsnTAgCAD/aLX/xiTWNjY1W215mUF40ASbFs2bK4++674z/+4z+Ev8BHkoTv/zY0NFTee++9q00LACC3OAEMAPAhNDQ0ZDZv3jy/Q4cOI7O5TgEwwK6xYsWKePTRR2P+fDejArm7L9uyZYs/5AAAcpAAGADgQ1q3bl3WB8AdO3aMNm3axObNmw0M4GNYtWpVjB8/PubOnRuZTEZDgI+lbdu20aFDh0Tsb00LACD3CIABAD6kefPmzTvooIOyvs4DDzwwXnrpJQMD+AjWrVsX48ePj9mzZwt+gV2yH0uCuXPnzjMtAIDcIwAGAPiQ/vznP88/77zzsr7OAw44QAAM8CFVVFTEuHHjBL/ALt+PJcHDDz/sBDAAQA4SAAMAfEgTJ06srK2tXdGqVat9srnOgw8+2LAAPkBVVVVMnDgxnn/++WhqatIQYJdKwq0xNTU1yydNmlRlWgAAuUcADADwEWzYsOHvvXr1yuoAuG3bttG1a9dYu3atgQG8y+bNm+Pxxx+PF154IRobGzUE2OW6desWbdu2TcS+1rQAAHKTABgA4CNYuHDha7169Toj2+scMGCAABjgHbZs2RJTpkyJ5557LrZv364hwG6TlO//Lly48O+mBQCQmwTAAAAfwcSJE/9+wgknZH2dBx54YEyfPt3AgGavpqYmpkyZEs8880zU19drCLDbDRgwIBF1jh8//u+mBQCQmwTAAAAfwb333rv6Bz/4wfqioqLO2VznAQccEHl5eZFOpw0NaJZqa2tj8uTJ8eyzz0ZdXZ2GAHtEXl5e9O/fP+vrrK+vX3ffffeVmxgAQG4SAAMAfESVlZVzu3btmtXHgFu1ahX77LNPLFu2zMCAZqWuri6efvrpmDZtWmzbtk1DgD1qn332iVatWmV9nZs2bZpjWgAAuUsADADwES1dunR2tgfAERGDBg0SAAPNRkNDQ0ybNi2eeuqpqK6u1hBgr+2/kuCtt976m2kBAOQuATAAwEc0ffr0v48cOTLr6xw4cGBMmDDBwICc1tDQEM8991w8+eSTUVlZqSHAXt9/JcG0adP+bloAALlLAAwA8BH9x3/8x9JbbrmlOj8/v3U219mrV68oKyuLLVu2GBqQc9LpdMyaNSsmTZoUmzZt0hBgrysrK4tevXplfZ2NjY1b7rnnnmUmBgCQuwTAAAAfUW1tbXrDhg1/7dKly3HZXGcqlYqBAwfGrFmzDA3IGW8Hv5MnT46NGzdqCJA1Bg4cGKlUKuvr3Lhx4yu1tbVpEwMAyF0CYACAj+Gtt956JdsD4IgQAAM5I51Ox8svvxxTpkyJ8vJyDQGyct+VBIsWLXrFtAAAcpsAGADgYxg/fvwrRxxxRNbXedBBB0VBQUE0NjYaGpBImUwmZs+eHRMnTow1a9ZoCJCVCgoK4qCDDkpErY888ogAGAAgx+VpAQDAR/fjH/94ZX19/fpsr7OoqCj69etnYEAivfrqq3HHHXfEz3/+c+EvkNX69esXRUVFWV9nXV1d+b333rvaxAAAcpsTwAAAH9OGDRte6dGjx6ezvc5BgwbFggULDAxIjCVLlsSECRNi/vz5mgEkwuDBgxNR5/r1653+BQBoBgTAAAAf07x5815OQgA8bNiwePjhhyOTyRgakNXefPPNmDBhQixevFgzgMRIpVIxdOjQRNQ6d+7cl0wMACD3CYABAD6m++677+XRo0dnIiKVzXW2bds2evfuHcuWLTM0ICstW7YsHnvsMSd+gUTq06dPtG3bNgmlpu+9996/mhgAQO4TAAMAfEwTJ06s3Lp165LS0tK+2V7rkCFDBMBA1lmxYkU8+uijgl8g0YYMGZKIOqurqxc+/fTTm00MACD3CYABAD6B8vLyl/fff/+sD4AHDx4c48aNMzAgK6xcuTImTJgQc+fOdT09kHhJ+f7vmjVrfP8XAKCZEAADAHwCM2fOfG7//ff/fLbX2a1bt+jWrVuUl5cbGrDXrFu3LsaPHx+zZ88W/AI5oWfPntGlS5dE1DpjxoznTAwAoHkQAAMAfAK33Xbba5dcckl1fn5+62yvdciQIQJgYK9Yv359PPbYY4JfIOck5frnxsbGzbfddts8EwMAaB4EwAAAn0BlZWXThg0b/tqlS5fjsr3WQw89NCZNmmRowJ78MzKeeOKJeP7556OpqUlDgJxz6KGHJqLOioqKV6qrq9MmBgDQPAiAAQA+oXnz5s1MQgDcu3dv10ADe0RVVVVMnDgxXnjhhWhsbNQQICd17949evbsmZT9quufAQCakTwtAAD4ZP77v/97VkQk4kTFpz71KQMDdpstW7bEQw89FLfffns899xzwl8gpw0fPjwRdWYymfTdd9/9gokBADQfTgADAHxCkyZNqtqyZcuCsrKyg7K91uHDh8fjjz9uaMAuVVNTE1OmTIlnnnkm6uvrNQTIealUKg477LBE1Lply5bXp0+fvsXUAACaDwEwAMAusHz58lkDBw7M+gC4S5cu0atXr1i5cqWhAZ9YbW1tTJ48OZ599tmoq6vTEKDZ6N27d3Ts2DEx+1QTAwBoXgTAAAC7wLPPPvvCwIEDr0hCrcOGDRMAA59IXV1dPP300zFt2rTYtm2bhgDNzrBhwxJT61/+8pcXTQwAoHnxDWAAgF3g1ltvnV9fX782CbUefvjhkUqlDA34yBoaGmLq1Klx6623xuOPPy78BZqlJF3/XFdXt/rWW29dYGoAAM2LE8AAALtAQ0NDZs2aNc/16dPns9lea7t27aJPnz6xZMkSgwM+7J9xMW3atHjqqaeiurpaQ4Bmbb/99ou2bdsmotbVq1fPNDEAgOZHAAwAsIs8++yz05IQAEdEHHHEEQJg4AOl0+mYNWtWTJo0KTZt2qQhABFx5JFHJqbW6dOnTzMxAIDmxxXQAAC7yC233PJaQ0NDZRJqHT58eLRo0cLQgJ1Kp9Px3HPPxW233Rb333+/8Bdgh6KiovjUpz6ViFobGho23HLLLXNNDQCg+XECGABgF6murk6Xl5c/t88++5yR7bW2bNkyDj300Hj55ZcNDvindDodL7/8ckyZMiXKy8s1BOBdhgwZEkVFRYmodc2aNc/V1tamTQ0AoPkRAAMA7EIvvvjiM0kIgCMiRo4cKQAGIiIik8nE7NmzY+LEibFmzRoNAXif/VNSzJo161kTAwBongTAAAC70O233/7KOeecszU/P78022sdMGBAtG/f3tWu0My9+uqrMWnSpFi1apVmALyPjh07xgEHHJCIWhsbG6u/8Y1v/NXUAACaJwEwAMAutHLlyob169fP6tat2+hsrzWVSsXhhx8ekyZNMjhohubMmROTJ0+OJUuWaAbAh3D44YdHKpVKRK3r16+fVVFR0WhqAADNU54WAADsWq+++mpirts77LDDDAyamTfffDP+/d//PX7yk58IfwE+pFQqFSNGjEhMva+88sozpgYA0Hw5AQwAsIvddNNNz5166qnV+fn5rbO91m7dukX//v1j4cKFBgc5btmyZfHYY4/F/PnzNQPgIzrggAOic+fOiai1sbFxy4033jjL1AAAmi8BMADALrZy5cqG8vLyGT179vx0Euo9+uijBcCQw5YvXx7jxo0T/AJ8wv1SUpSXlz9TXl7eYGoAAM2XABgAYDeYMWPGUxdccEEiAuAhQ4ZE69ato7q62uAgh6xcuTImTJgQc+fOjUwmoyEAH1ObNm3i0EMPTUy9zz777FOmBgDQvPkGMADAbvDVr371lYaGhk1JqLWgoCCOOOIIQ4McsW7duvj5z38ed955Z8yZM0f4C/AJjRw5MvLz8xNRa0NDw8abbrrpVVMDAGjenAAGANgNKisrm1atWjW9T58+5ySh3qOPPjqefPJJQREk2Pr16+Oxxx6L2bNn+3cZYBdJpVIxatSoxNS7cuXKadXV1WmTAwBo3pwABgDYTaZNm5aY6/c6duwYAwYMMDRIoA0bNsSvf/3r+Nd//dd49dVXhb8Au9CAAQOiY8eOian36aefftLUAAAQAAMA7CZf+9rX5tTX11ckpd6jjjrK0CBBqqqq4v77749vf/vb8eKLL0ZTU5OmAOxiRx55ZGJqra+vX/eNb3zjdVMDAMAV0AAAu0ltbW16xYoVT++///6fT0K9hx56aLRt2zaqqqoMD7LYli1bYsqUKfHcc8/F9u3bNQRgN2nbtm0MGTIkMfUuX778qdraWtc/AwDgBDAAwO70xz/+cUJSas3Pz4/jjjvO0CBL1dTUxKOPPhq33XZb/OUvfxH+Auxmxx57bOTn5yel3Myvf/3rCaYGAECEABgAYLe66667llZXV89PSr1HH310tGjRwuAgi7wd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qATAAABZ4umnn968fPnyxF3xN3r06GjXrp0BAgBZqUOHDnH88ccnru5ly5ZNmD59+hYTBADgoxIAAwBkkbvvvvtPmUymKUk1FxYWxumnn254AEBWOvPMMxP3yYpMJtN41113/dH0AAD4OATAAABZ5Be/+MWatWvXTkta3UcccUT06tXLAAGArNK7d+847LDDEld3eXn5X+6///51JggAwMchAAYAyDIPP/zwn5JWcyqVijPPPNPwAICsMmbMmEilUomr+8EHH/yT6QEA8HEJgAEAsszXv/71NzZs2DAraXUPHDgwDj74YAMEALLCoEGDYsCAAYmru6KiYuatt966wAQBAPi4BMAAAFlo3Lhxv01i3WPGjIm8PFtMAGDvysvLizFjxiSy9j//+c+/NUEAAD7RflgLAACyz/XXXz+nqqrqr0mru1evXnHUUUcZIACwVx1zzDHRvXv3xNW9adOmV2666aa5JggAwCchAAYAyFJ/+tOf7k1i3WPGjInS0lIDBAD2ijZt2sRZZ52VyNofeOCBe00QAIBPSgAMAJClbrrpprlJPAVcXFwcZ555pgECAHvFWWedFS1btkxc3Zs2bXrl5ptvnmeCAAB8UgJgAIAsNm7cuF8lse5Ro0ZF7969DRAA2KP69OkTI0eOTGTtjz322K9MEACAXUEADACQxcaOHTu7qqrqb0mrO5VKxfnnnx+pVMoQAYA9tv/4/Oc/n8j9R2Vl5d+uueaav5kiAAC7ggAYACDLTZ069bdJrLtv374xZMgQAwQA9ojDDjsssTeQTJ48+TcmCADAriIABgDIcpdeeumLVVVVryax9s9//vNRXFxsiADAblVaWhrnn39+Imuvqqr66+WXX/6SKQIAsKsIgAEAEuChhx76WRLrLisri9NPP90AAYDd6qyzzoqSkpIklp753e9+91MTBABgVxIAAwAkwA033DB3w4YNs5JY+3HHHRd9+vQxRABgt+jbt28cddRRiay9oqJi1te//vU3TBEAgF1JAAwAkBA///nPfxoR6aTVnUql4vOf/3zk5dl6AgC7Vn5+flx00UWRSqWSWH76F7/4xX+bIgAAu5q3cAAACXHHHXe8tW7duulJrL13795xzDHHGCIAsEudcMIJ0b1790TWXl5e/pc77rjjLVMEAGBXEwADACTI3XfffW8mk2lKYu1nnXVWtG3b1hAB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onv37vEv//IvccABBzSrdWcymaYnnnji9s997nPPeAoAAODDEQADAJBYDz/88NJjjjlmY+/evY+KiGZzFKq0tDSGDx8eq1evjvXr13sQAHLcwIED45prrol27do1t6VnZsyY8YOzzjprqqcAAAA+PAEwAACJdv/99795zDHHVO6zzz5HRDMKgVu0aBGHHXZYtGzZMhYuXBjpdNrDAJBjCgoK4pxzzonzzz8/WrRo0dyWn37uuefuOuWUUyZ4EgAA4KMRAAMAkHi///3v5w8bNmxF3759j2lO10GnUqno27dvDB06NBYvXhxbtmzxMADkiJ49e8YNN9wQgwcPblbf+434x7XPU6ZM+fbpp58+2ZMAAAAfnQAYAICc8OCDDy4ZNmzYin79+jWrEDgionXr1nHEEUdEfX19LF261MMAkGCpVCpOOOGEuOKKK6JNmzbNbv07wt9vnXPOOX/xNAAAwMcjAAYAIGc89NBDS4YNG7a8X79+xza3EDg/Pz8OPvjg6NWrV8yfPz8aGho8EAAJU1JSEpdffnmccMIJkZ+f3+zWn8lkGp944olvffazn53maQAAgI9PAAwAQE556KGHlo4cOXJdnz59RqWa252ZEdG1a9cYNmxYLFu2LCorKz0QAAnRt2/fuO6662K//fZrluvPZDLpp59++rvnnHPO054GAAD4ZATAAADknD/96U+LDj300KX7779/s7sOOiKiuLg4jjzyyCgpKYk333wz0um0hwIgSxUUFMRnP/vZuPDCC6OkpKRZ9iCdTjc88sgjt5x//vnTPREAAPDJCYABAMhJDz/88NId3wQelUqlmt09mqlUKvr06RMHH3xwLFy4MLZt2+ahAMgynTt3jrFjx8bQoUOjGV5aERH/CH+feOKJ2y+88MLnPBEAALBrCIABAMhZDz300JIePXq8NmjQoGPz8vJaNMcetG3bNkaNGhVNTU2xZMkSDwVAFkilUjF69Oi48soro0OHDs22D01NTdt++9vf/stll132oqcCAAB2HQEwAAA5bdKkSeXdu3efM3jw4GYbAufn58eAAQOiV69esWDBgti+fbsHA2Avad26dVx66aVx/PHHR35+frPtQ2NjY/WvfvWrf7nuuute81QAAMCuJQAGACDnTZ48eW1jY+OMI4444uiCgoKS5tqHrl27xqhRo2Lbtm2xcuVKDwbAHpRKpWLUqFExduzY6NWrV7PuRX19/fo77rjjK9/61rcWejIAAGDXEwADANAsPP/881UbNmx45rjjjjuqsLCwrLn2obCwMAYNGhT77bdfLF68OGpraz0cALtZ+/bt44orrogTTzwxCgub9/uU2tralTfffPPVP/nJT1Z7MgAAYPcQAAMA0Gz87W9/27p27doZJ5xwwsjCwsK2zbkXnTp1ipEjR0Z1dbXTwAC70ciRI+Pqq6+OHj16NPte1NTULL/hhhuu/e1vf7vOkwEAALuPABgAgGbltdde2zpv3rynTznllKFFRUWdmnMvCgsL49BDD4399tsvFi1a5DQwwC709qnfk08+udmf+o2I2Lx587yLL774unHjxm30dAAAwO71fgFwat9zYsTOftC4LmLjq610DwCAxOrVq1fhs88++69du3Y9QTciGhoaYurUqTF58uRobGzUEICPqaCgIE499dQYPXq04HeH8vLyp4499tjvrly5skE3AABg9+swrDYKuuz8ZwJgAAByWuvWrfNeeumlm/fdd9+zdeMfVq9eHffff38sWbJEMwA+ov322y8uuugi1z2/w8KFC38/fPjwnzY0NGR0AwAA9gwBMAAAzd7zzz9/8aGHHnp1RKR0IyKTycTMmTPjz3/+c9TV1WkIwAcoKSmJ8847L0aMGBGplL9Kdki//PLL9xx77LEPagUAAOxZ7xcA+wYwAADNwn333Tfn+OOP39yrV6/DQwgcqVQqevfuHcOHD49169ZFRUWFhwTgPRxyyCExduzY6N+/v/B3h0wm0/jMM8/828knnzxONwAAYM97v28AC4ABAGg2fve7370xePDgJf369Ts6lUrl60hEcXFxjBgxInr06BFLly6N2tpaTQHYoUOHDvGFL3whzjzzzCguLtaQHZqammoeeOCBWz73uc9N1w0AANg7BMAAALDDww8/vKygoOC54cOHH1FQUFCqI//QrVu3OO6446K0tDQWL14cTU1NmgI0Wy1btoxzzjknLr300ujevbuGvENtbe2K22677arbbrvtDd0AAIC9RwAMAADv8Oyzz25avHjx0yeddNKQoqKiTjryD3l5edGnT58YOXJkbN26NVatWqUpQLNz+OGHx1e+8pUYMGBA5OXlacg7VFVV/e3CCy+8/oEHHvDdAAAA2MsEwAAA8C7z58+vefbZZ58+44wz+hcX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OigOOOCAKCoq0pQs0djYuGXmzJk/PvPMMyc2NDS4XgAAAPjQBMAAAJADjjzyyNY/+9nPrujbt++5EZGnI9mluro6Fi5cGPPnz4958+ZFZWWlprBXtGvXLg455JAYMGBA9O/fP1q39nsjWSj91ltv/fmqq676xaxZs6q1AwAA+KgEwAAAkEN++ctfjhgzZsyNrVq16q0b2SmdTsfKlStj0aJFsXDhwli8eHFs27ZNY9gtSkpKol+/ftG/f//Yf//9o1evXpGX53dEslVNTc3yRx999EdXXnnlK7oBAAB8XAJgAADIMd26dSt8+OGHPzd48ODL8vPzbdyzXCaTiTVr1sTChQtj0aJFsWjRotiyZYvG8LGUlZVF//79/xn6du/ePVKplMZkuaampprXXnvtV2PGjHmgoqKiUUcAAIBPQgAMAAA56rjjjiv7r//6r8tdC508mzdvjuXLl8eKFSti+fLlsXjx4qipqdEY/pfi4uLo169f9O7dO/bZZ5/Yd999o6ysTGMSJJPJpJcsWfLn66677pfTp0/3mx8AAMAuIQAGAIAc99Of/nTIueeee3NpaWlf3UimxsbGWLlyZSxdujSWLVsWy5cvj3Xr1kUmk9GcZiKVSkWXLl1in332iT59+kSfPn2iV69eUVBQoDkJtXXr1sUPPvjgj6699tq/6wYAALArCYABAKAZaNeuXf64cePOGTp06BUFBQWtdST56uvrY+XKlf88KbxixYpYu3ZtpNNpzUm4vLy86Nq1a+yzzz7//KdXr17RsmVLzckBjY2NW/7617/+4pxzznm0srKySUcAAIBdTQAMAADNyIknntjmnnvuuXzfffcdk0qlHB3MMdu3b481a9bEmjVrYu3atbF27dooLy+PDRs2CIazUF5eXnTs2DG6desWXbt2jW7dukW3bt2iR48eUVhYqEE5JpPJNC5ZsuRR1z0DAAC7mwAYAACaoa9+9av7Xnfdddd16NDhCN3IfY2Njf8MhNetWxfr1q2LioqKWLduXWzbtk2DdrPS0tLo3LnzP//p0qVLdO3aNbp27eoK52Ziw4YNM//rv/7rxz/60Y+W6wYAALC7CYABAKAZ++UvfznirLPOuq64uNj3gZupmpqaWL9+/T//qaioiMrKyqisrIxNmzZFY2OjJn2AgoKCaN++fbRr1y7at28fHTt2jC5dukSnTp2ic+fOUVxcrEnN1NatW98aP378PVdcccXLugEAAOwpAmAAAGjm2rVrl//ggw+eOWLEiCsLCwvb6gjvtHnz5n+GwZs2bYrKysqorq6OLVu2xJYtW6K6ujqqq6sjk8nk3NpTqVS0bt06WrduHWVlZdGmTZsoLS39X2Fvu3btok2bNh4U/peGhobKl1566efnnHPO+OrqavevAwAAe5QAGAAAiIiIoUOHFt97770XHHjggRfk5+c7ssiHlk6n/xkEV1dXR01Nzfv+k8lkora2NtLpdNTX10dTU1PU1dXt0u8U5+XlRcuWLSM/Pz+KiooiLy8vWrVqFalUKoqLi3f6T0lJSbRq1eqfgW9paWnk5eUZMB9aU1NTzYIFC/745S9/+Y+zZ8+u0REAAGBvEAADAAD/y2mnndb2rrvuurRPnz5n5+XlFeoIe9LbgfDbtm/f/r7XUBcUFESLFi3++b/fDnxhT8pkMg1LliwZd8stt/xq0qRJVToCAADsTQJgAABgp0477bS2d95554X777//5wTBAP9XJpNpWLhw4QO33nrrHwS/AABAtni/ADi/7UHRc2c/SG+LqC33/gcAAHLZokWL6u69995X0un0swcddFCnkpKS3roC8A8VFRUz/7//7/+77aKLLpq6aNGiOh0BAACyRXH3xsgr3fnPBMAAAEDMnDmz8u67736qqalpWr9+/Ypbt27dN5VKpXQGaG4ymUx6zZo1U+65555/Peeccx6cOXNmpa4AAADZRgAMAAB8KDNnzqz88Y9//Gw6nZ4uCAaak7eD37vvvvtfzz///McEvwAAQDYTAAMAAB+JIBhoLgS/AABAEgmAAQCAj+XtILisrOyFvn37diwuLu4VEYJgIBdkKioqnrv33nu/PWbMmEcEvwAAQJK8XwCc2vecGLGzHzSui9j4aivdAwAA/unqq6/u8ZWvfOX8Pn36nJWXl9dCR4CkSafT9UuXLh3/X//1Xw/84he/WKMjAABAEnUYVhsFXXb+MwEwAADwkZ1xxhntb7/99rMPPPDA8/Pz81vrCJDtmpqaqhcsWPDgd77znUcmTpzotC8AAJBoAmAAAGC3GD58eMkPf/jDzwwePPjioqKijjoCZJv6+voNr7322u9vvPHGx2fPnl2jIwAAQC4QAAMAALvV0KFDi++5556zDjnkkPOKioq66giwt9XV1a19/fXXH7z++uvHC34BAIBcIwAGAAD2iFatWuXdc889w0455ZTzO3bseJSOAHtYZsOGDbOmTJny4PXXX/9qbW1tWksAAIBcJAAGAAD2uH/913/tf/7555/dq1ev0/Ly8lroCLC7pNPp+pUrV05+4IEHHvnOd76zSEcAAIBcJwAGAAD2mjPOOKP97bfffvYBBxzw2YKCgjY6AuwqjY2NVW+++eafv/e97z06YcKETToCAAA0FwJgAABgrxs+fHjJ97///dGDBg0aU1paur+OAB9XdXX1wtdee+3Rr371q1Nfe+21Wh0BAACaGwEwAACQVb761a/ue8EFF3y6b9++ZxUUFLTWEeCDNDY2bnnrrbfG/+EPf5j4ox/9aLmOAAAAzZkAGAAAyEpDhw4t/sEPfnDy4MGDz27dunV/HQHerbq6+s2XX375weuuu+7ppUuXbtcRAAAAATAAAJDlCgsLU3ffffeQ0aNHn9G1a9fj8vLyinQFmq90Ol1XXl4+bcqUKROuvfbav+sIAADA/yYABgAAEqNPnz4t/v3f/33UyJEjz2rfvv2nIiKlK9AsZDZt2vTXF1544bGvfe1rzzntCwAA8N4EwAAAQCJddNFFXa6++uqTDzzwwLNbtmzZTUcg99TV1a1ZsGDBuJ/+9KdP3n///et0BAAA4IMJgAEAgETr1q1b4d13333k4YcffmqHDh2OyMvLK9QVSK50Ot2wcePGWbNmzZp8/fXXz6qoqGjUFQAAgA9PAAwAAOSMo48+uvWtt956/CGHHHJKu3btBkdEnq5AIqQrKytfmzdv3uQ777xz+owZM6q1BAAA4OMRAAMAADnpuOOOK/vGN75x/CGHHHJa27ZtB4bvBUO2yVRVVc2dN2/epO9///vTpk+fvkVLAAAAPjkBMAAAkPNuu+22vmedddZJffr0Oa5Vq1a9dQT2ntra2uXLly+f/uijjz51xx13vKUjAAAAu5YAGAAAaFa+9KUvdbv44ouP7t+//wlOBsMekamqqpq7cOHCv/z+97+fcd9995VrCQAAwO4jAAYAAJqtSy65pOtll112jDAYdrl0VVXVvIULF/7lV7/61bO/+93v1moJAADAniEABgAAiIirr766x/nnnz9q//33P7JNmzZDUqlUga7Ah5fJZBoqKyv/vnjx4uf+9Kc/zbr33ntX6woAAMCeJwAGAAB4l379+hV97WtfGzRy5MhRPXv2PLaoqKizrsD/VV9fv37VqlXPvPDCC8/9+7//+5zFixfX6woAAMDeJQAGAAB4H61bt8678847Bx599NFHde/efURpaen+4apomq/M1q1bF69Zs+bF5557btY3v/nNOdXV1WltAQAAyB4CYAAAgI9g8ODBrcaOHXvI8OHDD+vevfvw1q1bHxACYXJXprq6+s01a9a88sorr7z8k5/8ZN5rr71Wqy0AAADZSwAMAADwCVx//fX7nHHGGYf169dvePv27Yfm5+e31hWSrLGxsXrjxo2vvvXWWy+PHz/+lR//+McrdQUAACA5BMAAAAC70Je//OUe55xzzvA+ffoM7tix45CioqKuukI2q6+vX7t27doXFy9ePGfixImv3Xvvvat1BQAAILkEwAAAALvRl7/85R6f+cxnBvfr129Qly5dDm/ZsqVAmL2qrq5u7bp16wS+AAAAOUoADAAAsIe0atUq75prrtnn2GOPPXi//fY7uH379oeUlpb2TaVS+brDbpKuqalZtnHjxnlvvfXW3GeffXbef/3Xfy2vra1Naw0AAEBuEgADAADsRQceeGDLq6+++oAhQ4Yc3LNnz4Pbtm17sGuj+biampqqq6qqXi8vL583Z86ceb/85S/nvfjii1t1BgAAoPkQAAMAAGSZoUOHFn/xi1/cf9CgQQf26NHjwHbt2h3YqlWr3qlUKk932CFdU1OzvLKycsHq1asXzJkzZ8Gf//znJTNmzKjWGgAAgOZNAAwAAJAAxx13XNkFF1xw4MEHH3xA165dDywtLd23pKRkn1QqVag7uS2TyTRs27ZtRXV19dJ169YtfOONNxZOmDBh4YQJEzbpDgAAAO8mAAYAAEiw8847r+OJJ57Yp3///vt16dKlT5s2bfZr3bp1v/z8/GLdSZampqaa6urqxZs3b16ybt26pQsXLlzy9NNPL33ooYc26A4AAAAflgAYAAAgx7Rr1y7/kksu6TFkyJCe++67b89OnTr1Kisr61VcXNyzZcuW3VKpVL4u7R2ZTKaprq6uvKamZtWWLVtWVlRUrFy6dOnK2bNnr7r//vvXVFZWNukSAAAAn4QAGAAAoBnp1KlTwec+97luQ4cO7bnPPvv0aNeuXafWrVt3Li4u7tqyZcvORUVFnfLy8lro1MeTTqe319fXr6+rq6uoqalZW11dvb6y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AACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoIQADAAAAAAAAlBCAAQAAAAAAAEoIwAAAAAAAAAAlBGAAAAAAAACAEgIwAAAAAAAAQAkBGAAAAAAAAKCEAAwAAAAAAABQQgAGAAAAAAAAKCEAAwAAAAAAAJQQgAEAAAAAAABKCMAAAAAAAAAAJQRgAAAAAAAAgBICMAAAAAAAAEAJARgAAAAAAACghAAMAAAAAAAAUEIABgAAAAAAACghAAMAAAAAAACUEIABAAAAAAAASgjAAAAAAAAAACUEYAAAAAAAAIASAjAAAAAAAABACQEYAAAAAAAAoIQADAAAAAAAAFBCAAYAAAAAAAAoMY3JP//9K8My551lzpAk293a7QAAAAAAAAD8iIw3r+SL7TpPxuSt4/ibJJuz20QDBgAAAAAAAHhzrJPp6NvHYcyyjLl7dJTPbl/Jp6sPLufSsM+5ec7q5YOrF0OeP/SVaAAAAAAAAIA3weH7u6zfm79dWDIMSw6225w785vsx3XyzasOby5ssz69c4sAAAAAAAAAr9n69C6bC9sT93a7rKdnORin5Otxynzi1JQcfiwCAwAAAAAAALxO69O7HH68TaaT98cp85R8vbp3Nfszv8q0LHn7xMF1sjk/ZzUPmZ/MmWefhAYAAAAAAAD4oayPdjn7223Gn7x6ZrXPnetX8mBKkpv3cufDd/Pufn5FL56SzcVtNheT3dNt8tQlAwAAAAAAAHyv1sm0ySv/9XtsNWZ3I/lHkgzHi7/4XY7WYz5yiwAAAAAAAAA/Ivtcv/3nPEyS1fHa42t5+vNLyX7JoRsCAAAAAAAAePPt1/nbV3/KvePn1Xc371/NYxEYAAAAAAAA4M0yTHk2rvNo2WdzvHZqzN9v/SF3vju3evng/at5fPDLPDu1yuGyZHSVAAAAAAAAAK/XOGe4ueSvZ4e8M8xZbVe5ceuPufvy3Oqkw4+v5emDX+fuuTlLhhwsEYIBAAAAAAAAXpclGR8OuXP0TR4cPM/9z/+SRyfNDf/1TZezOp/87KdjzizJZkhO7edMy/w/nAUAAAAAAADg/zaMWcZkP8/ZLsmLacr2/MV8+cnvs/tP5/4FmLjAq1ifcioAAAAASUVORK5CYII=";
|
|
3509
3545
|
function ie(e, n, t) {
|
|
3510
3546
|
return typeof e == "string" && !isNaN(Number(e)) && (e = Number(e)), typeof e == "number" && e < 100 ? le(e) : typeof e == "number" && e >= 100 ? e : typeof e == "string" && e.includes("%") ? Math.round(n && n === "X" ? parseFloat(e) / 100 * t.width : n && n === "Y" ? parseFloat(e) / 100 * t.height : parseFloat(e) / 100 * t.width) : 0;
|
|
3511
3547
|
}
|
|
@@ -3525,7 +3561,7 @@ function te(e) {
|
|
|
3525
3561
|
const n = Number(e) || 0;
|
|
3526
3562
|
return isNaN(n) ? 0 : Math.round(n * gt);
|
|
3527
3563
|
}
|
|
3528
|
-
function
|
|
3564
|
+
function Ke(e) {
|
|
3529
3565
|
return e = e || 0, Math.round((e > 360 ? e - 360 : e) * 6e4);
|
|
3530
3566
|
}
|
|
3531
3567
|
function Mt(e) {
|
|
@@ -3537,11 +3573,11 @@ function zt(e, n, t) {
|
|
|
3537
3573
|
}
|
|
3538
3574
|
function he(e, n) {
|
|
3539
3575
|
let t = (e || "").replace("#", "");
|
|
3540
|
-
!Et.test(t) && t !== ke.background1 && t !== ke.background2 && t !== ke.text1 && t !== ke.text2 && t !== ke.accent1 && t !== ke.accent2 && t !== ke.accent3 && t !== ke.accent4 && t !== ke.accent5 && t !== ke.accent6 && (console.warn(`"${t}" is not a valid scheme color or hex RGB! "${
|
|
3576
|
+
!Et.test(t) && t !== ke.background1 && t !== ke.background2 && t !== ke.text1 && t !== ke.text2 && t !== ke.accent1 && t !== ke.accent2 && t !== ke.accent3 && t !== ke.accent4 && t !== ke.accent5 && t !== ke.accent6 && (console.warn(`"${t}" is not a valid scheme color or hex RGB! "${De}" used instead. Only provide 6-digit RGB or 'pptx.SchemeColor' values!`), t = De);
|
|
3541
3577
|
const A = Et.test(t) ? "srgbClr" : "schemeClr", a = 'val="' + (Et.test(t) ? t.toUpperCase() : t) + '"';
|
|
3542
3578
|
return n ? `<a:${A} ${a}>${n}</a:${A}>` : `<a:${A} ${a}/>`;
|
|
3543
3579
|
}
|
|
3544
|
-
function
|
|
3580
|
+
function Fr(e, n) {
|
|
3545
3581
|
let t = "";
|
|
3546
3582
|
const A = Object.assign(Object.assign({}, n), e), a = Math.round(A.size * gt), i = A.color, s = Math.round(A.opacity * 1e5);
|
|
3547
3583
|
return t += `<a:glow rad="${a}">`, t += he(i, `<a:alpha val="${s}"/>`), t += "</a:glow>", t;
|
|
@@ -3559,16 +3595,16 @@ function Ne(e) {
|
|
|
3559
3595
|
}
|
|
3560
3596
|
return a;
|
|
3561
3597
|
}
|
|
3562
|
-
function
|
|
3598
|
+
function Xe(e) {
|
|
3563
3599
|
return e._rels.length + e._relsChart.length + e._relsMedia.length + 1;
|
|
3564
3600
|
}
|
|
3565
|
-
function
|
|
3601
|
+
function ra(e) {
|
|
3566
3602
|
if (!(!e || typeof e != "object"))
|
|
3567
3603
|
return e.type !== "outer" && e.type !== "inner" && e.type !== "none" && (console.warn("Warning: shadow.type options are `outer`, `inner` or `none`."), e.type = "outer"), e.angle && ((isNaN(Number(e.angle)) || e.angle < 0 || e.angle > 359) && (console.warn("Warning: shadow.angle can only be 0-359"), e.angle = 270), e.angle = Math.round(Number(e.angle))), e.opacity && ((isNaN(Number(e.opacity)) || e.opacity < 0 || e.opacity > 1) && (console.warn("Warning: shadow.opacity can only be 0-1"), e.opacity = 0.75), e.opacity = Number(e.opacity)), e.color && e.color.startsWith("#") && (console.warn('Warning: shadow.color should not include hash (#) character, , e.g. "FF0000"'), e.color = e.color.replace("#", "")), e;
|
|
3568
3604
|
}
|
|
3569
|
-
function
|
|
3605
|
+
function Tr(e, n, t) {
|
|
3570
3606
|
var A, a;
|
|
3571
|
-
const i = 2.3 + (!((A = e.options) === null || A === void 0) && A.autoPageCharWeight ? e.options.autoPageCharWeight : 0), s = Math.floor(n / gt * oe) / ((!((a = e.options) === null || a === void 0) && a.fontSize ? e.options.fontSize :
|
|
3607
|
+
const i = 2.3 + (!((A = e.options) === null || A === void 0) && A.autoPageCharWeight ? e.options.autoPageCharWeight : 0), s = Math.floor(n / gt * oe) / ((!((a = e.options) === null || a === void 0) && a.fontSize ? e.options.fontSize : Se) / i), c = [];
|
|
3572
3608
|
let l = [];
|
|
3573
3609
|
const r = [], o = [];
|
|
3574
3610
|
e.text && e.text.toString().trim().length === 0 ? l.push({ _type: ne.tablecell, text: " " }) : typeof e.text == "number" || typeof e.text == "string" ? l.push({ _type: ne.tablecell, text: (e.text || "").toString().trim() }) : Array.isArray(e.text) && (l = e.text);
|
|
@@ -3603,7 +3639,7 @@ function Rr(e, n, t) {
|
|
|
3603
3639
|
}), d.length > 0 && c.push(d);
|
|
3604
3640
|
}), c;
|
|
3605
3641
|
}
|
|
3606
|
-
function
|
|
3642
|
+
function Ma(e = [], n = {}, t, A) {
|
|
3607
3643
|
let a = pt, i = oe * 1, s = oe * 1, c = 0, l = 0;
|
|
3608
3644
|
const r = [], o = ie(n.x, "X", t), f = ie(n.y, "Y", t), m = ie(n.w, "X", t), d = ie(n.h, "Y", t);
|
|
3609
3645
|
let g = m;
|
|
@@ -3642,13 +3678,13 @@ function Ea(e = [], n = {}, t, A) {
|
|
|
3642
3678
|
const _ = {
|
|
3643
3679
|
_type: ne.tablecell,
|
|
3644
3680
|
_lines: null,
|
|
3645
|
-
_lineHeight: le((!((L = M.options) === null || L === void 0) && L.fontSize ? M.options.fontSize : n.fontSize ? n.fontSize :
|
|
3681
|
+
_lineHeight: le((!((L = M.options) === null || L === void 0) && L.fontSize ? M.options.fontSize : n.fontSize ? n.fontSize : Se) * (Br + (n.autoPageLineWeight ? n.autoPageLineWeight : 0)) / 100),
|
|
3646
3682
|
text: [],
|
|
3647
3683
|
options: M.options
|
|
3648
3684
|
};
|
|
3649
3685
|
_.options.rowspan && (_._lineHeight = 0), _.options.autoPageCharWeight = n.autoPageCharWeight ? n.autoPageCharWeight : null;
|
|
3650
3686
|
let p = n.colW[J];
|
|
3651
|
-
M.options.colspan && Array.isArray(n.colW) && (p = n.colW.filter((I, K) => K >= J && K < K + M.options.colspan).reduce((I, K) => I + K)), _._lines =
|
|
3687
|
+
M.options.colspan && Array.isArray(n.colW) && (p = n.colW.filter((I, K) => K >= J && K < K + M.options.colspan).reduce((I, K) => I + K)), _._lines = Tr(M, p), x.push(_);
|
|
3652
3688
|
}), n.verbose && console.log(`
|
|
3653
3689
|
| SLIDE [${r.length}]: ROW [${b}]: START...`);
|
|
3654
3690
|
let S = 0, U = 0, k = !1;
|
|
@@ -3676,7 +3712,7 @@ function Ea(e = [], n = {}, t, A) {
|
|
|
3676
3712
|
|
|
3677
3713
|
`)), r;
|
|
3678
3714
|
}
|
|
3679
|
-
function
|
|
3715
|
+
function Sr(e, n, t = {}, A) {
|
|
3680
3716
|
const a = t || {};
|
|
3681
3717
|
a.slideMargin = a.slideMargin || a.slideMargin === 0 ? a.slideMargin : 0.5;
|
|
3682
3718
|
let i = a.w || e.presLayout.width;
|
|
@@ -3760,7 +3796,7 @@ function Nr(e, n, t = {}, A) {
|
|
|
3760
3796
|
break;
|
|
3761
3797
|
}
|
|
3762
3798
|
});
|
|
3763
|
-
}), a._arrObjTabHeadRows = s || null, a.colW = r,
|
|
3799
|
+
}), a._arrObjTabHeadRows = s || null, a.colW = r, Ma([...s, ...c, ...l], a, e.presLayout, A).forEach((u, y) => {
|
|
3764
3800
|
const v = e.addSlide({ masterName: a.masterSlideName || null });
|
|
3765
3801
|
y === 0 && (a.y = a.y || f[0]), y > 0 && (a.y = a.autoPageSlideStartY || a.newSlideStartY || f[0]), a.verbose && console.log(`| opts.autoPageSlideStartY: ${a.autoPageSlideStartY} / arrInchMargins[0]: ${f[0]} => opts.y = ${a.y}`), v.addTable(u.rows, { x: a.x || f[3], y: a.y, w: Number(i) / oe, colW: r, autoPage: !1 }), a.addImage && (a.addImage.options = a.addImage.options || {}, !a.addImage.image || !a.addImage.image.path && !a.addImage.image.data ? console.warn("Warning: tableToSlides.addImage requires either `path` or `data`") : v.addImage({
|
|
3766
3802
|
path: a.addImage.image.path,
|
|
@@ -3772,19 +3808,19 @@ function Nr(e, n, t = {}, A) {
|
|
|
3772
3808
|
})), a.addShape && v.addShape(a.addShape.shapeName, a.addShape.options || {}), a.addTable && v.addTable(a.addTable.rows, a.addTable.options || {}), a.addText && v.addText(a.addText.text, a.addText.options || {});
|
|
3773
3809
|
});
|
|
3774
3810
|
}
|
|
3775
|
-
let
|
|
3776
|
-
function
|
|
3811
|
+
let Ir = 0;
|
|
3812
|
+
function _r(e, n) {
|
|
3777
3813
|
e.bkgd && (n.bkgd = e.bkgd), e.objects && Array.isArray(e.objects) && e.objects.length > 0 && e.objects.forEach((t, A) => {
|
|
3778
3814
|
const a = Object.keys(t)[0], i = n;
|
|
3779
|
-
|
|
3815
|
+
Qe[a] && a === "chart" ? za(i, t[a].type, t[a].data, t[a].opts) : Qe[a] && a === "image" ? Ua(i, t[a]) : Qe[a] && a === "line" ? jt(i, Ve.LINE, t[a]) : Qe[a] && a === "rect" ? jt(i, Ve.RECTANGLE, t[a]) : Qe[a] && a === "text" ? Pt(i, [{ text: t[a].text }], t[a].options, !1) : Qe[a] && a === "placeholder" && (t[a].options.placeholder = t[a].options.name, delete t[a].options.name, t[a].options._placeholderType = t[a].options.type, delete t[a].options.type, t[a].options._placeholderIdx = 100 + A, Pt(i, [{ text: t[a].text }], t[a].options, !0));
|
|
3780
3816
|
}), e.slideNumber && typeof e.slideNumber == "object" && (n._slideNumberProps = e.slideNumber);
|
|
3781
3817
|
}
|
|
3782
|
-
function
|
|
3818
|
+
function za(e, n, t, A) {
|
|
3783
3819
|
var a;
|
|
3784
3820
|
function i(f) {
|
|
3785
3821
|
!f || f.style === "none" || (f.size !== void 0 && (isNaN(Number(f.size)) || f.size <= 0) && (console.warn("Warning: chart.gridLine.size must be greater than 0."), delete f.size), f.style && !["solid", "dash", "dot"].includes(f.style) && (console.warn("Warning: chart.gridLine.style options: `solid`, `dash`, `dot`."), delete f.style), f.cap && !["flat", "square", "round"].includes(f.cap) && (console.warn("Warning: chart.gridLine.cap options: `flat`, `square`, `round`."), delete f.cap));
|
|
3786
3822
|
}
|
|
3787
|
-
const s = ++
|
|
3823
|
+
const s = ++Ir, c = {
|
|
3788
3824
|
_type: null,
|
|
3789
3825
|
text: null,
|
|
3790
3826
|
options: null,
|
|
@@ -3797,18 +3833,18 @@ function Ma(e, n, t, A) {
|
|
|
3797
3833
|
f._dataIndex = m, f.labels !== void 0 && !Array.isArray(f.labels[0]) && (f.labels = [f.labels]);
|
|
3798
3834
|
});
|
|
3799
3835
|
const o = l && typeof l == "object" ? l : {};
|
|
3800
|
-
if (o._type = n, o.x = typeof o.x < "u" && o.x != null && !isNaN(Number(o.x)) ? o.x : 1, o.y = typeof o.y < "u" && o.y != null && !isNaN(Number(o.y)) ? o.y : 1, o.w = o.w || "50%", o.h = o.h || "50%", o.objectName = o.objectName ? re(o.objectName) : `Chart ${e._slideObjects.filter((f) => f._type === ne.chart).length}`, ["bar", "col"].includes(o.barDir || "") || (o.barDir = "col"), o._type ===
|
|
3836
|
+
if (o._type = n, o.x = typeof o.x < "u" && o.x != null && !isNaN(Number(o.x)) ? o.x : 1, o.y = typeof o.y < "u" && o.y != null && !isNaN(Number(o.y)) ? o.y : 1, o.w = o.w || "50%", o.h = o.h || "50%", o.objectName = o.objectName ? re(o.objectName) : `Chart ${e._slideObjects.filter((f) => f._type === ne.chart).length}`, ["bar", "col"].includes(o.barDir || "") || (o.barDir = "col"), o._type === Q.AREA && (["stacked", "standard", "percentStacked"].includes(o.barGrouping || "") || (o.barGrouping = "standard")), o._type === Q.BAR && (["clustered", "stacked", "percentStacked"].includes(o.barGrouping || "") || (o.barGrouping = "clustered")), o._type === Q.BAR3D && (["clustered", "stacked", "standard", "percentStacked"].includes(o.barGrouping || "") || (o.barGrouping = "standard")), !((a = o.barGrouping) === null || a === void 0) && a.includes("tacked") && (o.barGapWidthPct || (o.barGapWidthPct = 50)), o.dataLabelPosition && ((o._type === Q.AREA || o._type === Q.BAR3D || o._type === Q.DOUGHNUT || o._type === Q.RADAR) && delete o.dataLabelPosition, o._type === Q.PIE && (["bestFit", "ctr", "inEnd", "outEnd"].includes(o.dataLabelPosition) || delete o.dataLabelPosition), (o._type === Q.BUBBLE || o._type === Q.BUBBLE3D || o._type === Q.LINE || o._type === Q.SCATTER) && (["b", "ctr", "l", "r", "t"].includes(o.dataLabelPosition) || delete o.dataLabelPosition), o._type === Q.BAR && (["stacked", "percentStacked"].includes(o.barGrouping || "") || ["ctr", "inBase", "inEnd"].includes(o.dataLabelPosition) || delete o.dataLabelPosition, ["clustered"].includes(o.barGrouping || "") || ["ctr", "inBase", "inEnd", "outEnd"].includes(o.dataLabelPosition) || delete o.dataLabelPosition)), o.dataLabelBkgrdColors = o.dataLabelBkgrdColors || !o.dataLabelBkgrdColors ? o.dataLabelBkgrdColors : !1, ["b", "l", "r", "t", "tr"].includes(o.legendPos || "") || (o.legendPos = "r"), ["cone", "coneToMax", "box", "cylinder", "pyramid", "pyramidToMax"].includes(o.bar3DShape || "") || (o.bar3DShape = "box"), ["circle", "dash", "diamond", "dot", "none", "square", "triangle"].includes(o.lineDataSymbol || "") || (o.lineDataSymbol = "circle"), ["gap", "span"].includes(o.displayBlanksAs || "") || (o.displayBlanksAs = "span"), ["standard", "marker", "filled"].includes(o.radarStyle || "") || (o.radarStyle = "standard"), o.lineDataSymbolSize = o.lineDataSymbolSize && !isNaN(o.lineDataSymbolSize) ? o.lineDataSymbolSize : 6, o.lineDataSymbolLineSize = o.lineDataSymbolLineSize && !isNaN(o.lineDataSymbolLineSize) ? te(o.lineDataSymbolLineSize) : te(0.75), o.layout && ["x", "y", "w", "h"].forEach((f) => {
|
|
3801
3837
|
const m = o.layout[f];
|
|
3802
3838
|
(isNaN(Number(m)) || m < 0 || m > 1) && (console.warn("Warning: chart.layout." + f + " can only be 0-1"), delete o.layout[f]);
|
|
3803
|
-
}), o.catGridLine = o.catGridLine || (o._type ===
|
|
3839
|
+
}), o.catGridLine = o.catGridLine || (o._type === Q.SCATTER ? { color: "D9D9D9", size: 1 } : { style: "none" }), o.valGridLine = o.valGridLine || (o._type === Q.SCATTER ? { color: "D9D9D9", size: 1 } : {}), o.serGridLine = o.serGridLine || (o._type === Q.SCATTER ? { color: "D9D9D9", size: 1 } : { style: "none" }), i(o.catGridLine), i(o.valGridLine), i(o.serGridLine), ra(o.shadow), o.showDataTable = o.showDataTable || !o.showDataTable ? o.showDataTable : !1, o.showDataTableHorzBorder = o.showDataTableHorzBorder || !o.showDataTableHorzBorder ? o.showDataTableHorzBorder : !0, o.showDataTableVertBorder = o.showDataTableVertBorder || !o.showDataTableVertBorder ? o.showDataTableVertBorder : !0, o.showDataTableOutline = o.showDataTableOutline || !o.showDataTableOutline ? o.showDataTableOutline : !0, o.showDataTableKeys = o.showDataTableKeys || !o.showDataTableKeys ? o.showDataTableKeys : !0, o.showLabel = o.showLabel || !o.showLabel ? o.showLabel : !1, o.showLegend = o.showLegend || !o.showLegend ? o.showLegend : !1, o.showPercent = o.showPercent || !o.showPercent ? o.showPercent : !0, o.showTitle = o.showTitle || !o.showTitle ? o.showTitle : !1, o.showValue = o.showValue || !o.showValue ? o.showValue : !1, o.showLeaderLines = o.showLeaderLines || !o.showLeaderLines ? o.showLeaderLines : !1, o.catAxisLineShow = typeof o.catAxisLineShow < "u" ? o.catAxisLineShow : !0, o.valAxisLineShow = typeof o.valAxisLineShow < "u" ? o.valAxisLineShow : !0, o.serAxisLineShow = typeof o.serAxisLineShow < "u" ? o.serAxisLineShow : !0, o.v3DRotX = !isNaN(o.v3DRotX) && o.v3DRotX >= -90 && o.v3DRotX <= 90 ? o.v3DRotX : 30, o.v3DRotY = !isNaN(o.v3DRotY) && o.v3DRotY >= 0 && o.v3DRotY <= 360 ? o.v3DRotY : 30, o.v3DRAngAx = o.v3DRAngAx || !o.v3DRAngAx ? o.v3DRAngAx : !0, o.v3DPerspective = !isNaN(o.v3DPerspective) && o.v3DPerspective >= 0 && o.v3DPerspective <= 240 ? o.v3DPerspective : 30, o.barGapWidthPct = !isNaN(o.barGapWidthPct) && o.barGapWidthPct >= 0 && o.barGapWidthPct <= 1e3 ? o.barGapWidthPct : 150, o.barGapDepthPct = !isNaN(o.barGapDepthPct) && o.barGapDepthPct >= 0 && o.barGapDepthPct <= 1e3 ? o.barGapDepthPct : 150, o.chartColors = Array.isArray(o.chartColors) ? o.chartColors : o._type === Q.PIE || o._type === Q.DOUGHNUT ? Rr : ft, o.chartColorsOpacity = o.chartColorsOpacity && !isNaN(o.chartColorsOpacity) ? o.chartColorsOpacity : null, o.border = o.border && typeof o.border == "object" ? o.border : null, o.border && (!o.border.pt || isNaN(o.border.pt)) && (o.border.pt = $e.pt), o.border && (!o.border.color || typeof o.border.color != "string") && (o.border.color = $e.color), o.plotArea = o.plotArea || {}, o.plotArea.border = o.plotArea.border && typeof o.plotArea.border == "object" ? o.plotArea.border : null, o.plotArea.border && (!o.plotArea.border.pt || isNaN(o.plotArea.border.pt)) && (o.plotArea.border.pt = $e.pt), o.plotArea.border && (!o.plotArea.border.color || typeof o.plotArea.border.color != "string") && (o.plotArea.border.color = $e.color), o.border && (o.plotArea.border = o.border), o.plotArea.fill = o.plotArea.fill || { color: null, transparency: null }, o.fill && (o.plotArea.fill.color = o.fill), o.chartArea = o.chartArea || {}, o.chartArea.border = o.chartArea.border && typeof o.chartArea.border == "object" ? o.chartArea.border : null, o.chartArea.border && (o.chartArea.border = {
|
|
3804
3840
|
color: o.chartArea.border.color || $e.color,
|
|
3805
3841
|
pt: o.chartArea.border.pt || $e.pt
|
|
3806
3842
|
}), o.chartArea.roundedCorners = typeof o.chartArea.roundedCorners == "boolean" ? o.chartArea.roundedCorners : !0, o.dataBorder = o.dataBorder && typeof o.dataBorder == "object" ? o.dataBorder : null, o.dataBorder && (!o.dataBorder.pt || isNaN(o.dataBorder.pt)) && (o.dataBorder.pt = 0.75), o.dataBorder && o.dataBorder.color) {
|
|
3807
3843
|
const f = typeof o.dataBorder.color == "string" && o.dataBorder.color.length === 6 && /^[0-9A-Fa-f]{6}$/.test(o.dataBorder.color), m = Object.values(Dt).includes(o.dataBorder.color);
|
|
3808
3844
|
!f && !m && (o.dataBorder.color = "F9F9F9");
|
|
3809
3845
|
}
|
|
3810
|
-
return !o.dataLabelFormatCode && o._type ===
|
|
3811
|
-
rId:
|
|
3846
|
+
return !o.dataLabelFormatCode && o._type === Q.SCATTER && (o.dataLabelFormatCode = "General"), !o.dataLabelFormatCode && (o._type === Q.PIE || o._type === Q.DOUGHNUT) && (o.dataLabelFormatCode = o.showPercent ? "0%" : "General"), o.dataLabelFormatCode = o.dataLabelFormatCode && typeof o.dataLabelFormatCode == "string" ? o.dataLabelFormatCode : "#,##0", !o.dataLabelFormatScatter && o._type === Q.SCATTER && (o.dataLabelFormatScatter = "custom"), o.lineSize = typeof o.lineSize == "number" ? o.lineSize : 2, o.valAxisMajorUnit = typeof o.valAxisMajorUnit == "number" ? o.valAxisMajorUnit : null, o._type === Q.AREA || o._type === Q.BAR || o._type === Q.BAR3D || o._type === Q.LINE ? o.catAxisMultiLevelLabels = !!o.catAxisMultiLevelLabels : delete o.catAxisMultiLevelLabels, c._type = "chart", c.options = o, c.chartRid = Xe(e), e._relsChart.push({
|
|
3847
|
+
rId: Xe(e),
|
|
3812
3848
|
data: r,
|
|
3813
3849
|
opts: o,
|
|
3814
3850
|
type: o._type,
|
|
@@ -3817,7 +3853,7 @@ function Ma(e, n, t, A) {
|
|
|
3817
3853
|
Target: `/ppt/charts/chart${s}.xml`
|
|
3818
3854
|
}), e._slideObjects.push(c), c;
|
|
3819
3855
|
}
|
|
3820
|
-
function
|
|
3856
|
+
function Ua(e, n) {
|
|
3821
3857
|
const t = {
|
|
3822
3858
|
_type: null,
|
|
3823
3859
|
text: null,
|
|
@@ -3826,7 +3862,7 @@ function za(e, n) {
|
|
|
3826
3862
|
imageRid: null,
|
|
3827
3863
|
hyperlink: null
|
|
3828
3864
|
}, A = n.x || 0, a = n.y || 0, i = n.w || 0, s = n.h || 0, c = n.sizing || null, l = n.hyperlink || "", r = n.data || "", o = n.path || "";
|
|
3829
|
-
let f =
|
|
3865
|
+
let f = Xe(e);
|
|
3830
3866
|
const m = n.objectName ? re(n.objectName) : `Image ${e._slideObjects.filter((g) => g._type === ne.image).length}`;
|
|
3831
3867
|
if (!o && !r)
|
|
3832
3868
|
return console.error("ERROR: addImage() requires either 'data' or 'path' parameter!"), null;
|
|
@@ -3851,7 +3887,7 @@ function za(e, n) {
|
|
|
3851
3887
|
flipH: n.flipH || !1,
|
|
3852
3888
|
transparency: n.transparency || 0,
|
|
3853
3889
|
objectName: m,
|
|
3854
|
-
shadow:
|
|
3890
|
+
shadow: ra(n.shadow)
|
|
3855
3891
|
}, d === "svg")
|
|
3856
3892
|
e._relsMedia.push({
|
|
3857
3893
|
path: o || r + "png",
|
|
@@ -3894,10 +3930,10 @@ function za(e, n) {
|
|
|
3894
3930
|
}
|
|
3895
3931
|
e._slideObjects.push(t);
|
|
3896
3932
|
}
|
|
3897
|
-
function
|
|
3933
|
+
function Er(e, n) {
|
|
3898
3934
|
const t = n.x || 0, A = n.y || 0, a = n.w || 2, i = n.h || 2, s = n.data || "", c = n.link || "", l = n.path || "", r = n.type || "audio";
|
|
3899
3935
|
let o = "";
|
|
3900
|
-
const f = n.cover ||
|
|
3936
|
+
const f = n.cover || Nr, m = n.objectName ? re(n.objectName) : `Media ${e._slideObjects.filter((g) => g._type === ne.media).length}`, d = { _type: ne.media };
|
|
3901
3937
|
if (!l && !s && r !== "online")
|
|
3902
3938
|
throw new Error("addMedia() error: either `data` or `path` are required!");
|
|
3903
3939
|
if (s && !s.toLowerCase().includes("base64,"))
|
|
@@ -3907,7 +3943,7 @@ function Sr(e, n) {
|
|
|
3907
3943
|
if (r === "online" && !c)
|
|
3908
3944
|
throw new Error("addMedia() error: online videos require `link` value");
|
|
3909
3945
|
if (o = n.extn || (s ? s.split(";")[0].split("/")[1] : l.split(".").pop()) || "mp3", d.mtype = r, d.media = l || "preencoded.mov", d.options = {}, d.options.x = t, d.options.y = A, d.options.w = a, d.options.h = i, d.options.objectName = m, r === "online") {
|
|
3910
|
-
const g =
|
|
3946
|
+
const g = Xe(e);
|
|
3911
3947
|
e._relsMedia.push({
|
|
3912
3948
|
path: l || "preencoded" + o,
|
|
3913
3949
|
data: "dummy",
|
|
@@ -3920,11 +3956,11 @@ function Sr(e, n) {
|
|
|
3920
3956
|
data: f,
|
|
3921
3957
|
type: "image/png",
|
|
3922
3958
|
extn: "png",
|
|
3923
|
-
rId:
|
|
3959
|
+
rId: Xe(e),
|
|
3924
3960
|
Target: `../media/image-${e._slideNum}-${e._relsMedia.length + 1}.png`
|
|
3925
3961
|
});
|
|
3926
3962
|
} else {
|
|
3927
|
-
const g = e._relsMedia.filter((y) => y.path && y.path === l && y.type === r + "/" + o && !y.isDuplicate)[0], u =
|
|
3963
|
+
const g = e._relsMedia.filter((y) => y.path && y.path === l && y.type === r + "/" + o && !y.isDuplicate)[0], u = Xe(e);
|
|
3928
3964
|
e._relsMedia.push({
|
|
3929
3965
|
path: l || "preencoded" + o,
|
|
3930
3966
|
type: r + "/" + o,
|
|
@@ -3938,7 +3974,7 @@ function Sr(e, n) {
|
|
|
3938
3974
|
type: r + "/" + o,
|
|
3939
3975
|
extn: o,
|
|
3940
3976
|
data: s || "",
|
|
3941
|
-
rId:
|
|
3977
|
+
rId: Xe(e),
|
|
3942
3978
|
isDuplicate: !!g?.Target,
|
|
3943
3979
|
Target: g?.Target ? g.Target : `../media/media-${e._slideNum}-${e._relsMedia.length + 0}.${o}`
|
|
3944
3980
|
}), e._relsMedia.push({
|
|
@@ -3946,13 +3982,13 @@ function Sr(e, n) {
|
|
|
3946
3982
|
type: "image/png",
|
|
3947
3983
|
extn: "png",
|
|
3948
3984
|
data: f,
|
|
3949
|
-
rId:
|
|
3985
|
+
rId: Xe(e),
|
|
3950
3986
|
Target: `../media/image-${e._slideNum}-${e._relsMedia.length + 1}.png`
|
|
3951
3987
|
});
|
|
3952
3988
|
}
|
|
3953
3989
|
e._slideObjects.push(d);
|
|
3954
3990
|
}
|
|
3955
|
-
function
|
|
3991
|
+
function Mr(e, n) {
|
|
3956
3992
|
e._slideObjects.push({
|
|
3957
3993
|
_type: ne.notes,
|
|
3958
3994
|
text: [{ text: n }]
|
|
@@ -3963,7 +3999,7 @@ function jt(e, n, t) {
|
|
|
3963
3999
|
A.line = A.line || { type: "none" };
|
|
3964
4000
|
const a = {
|
|
3965
4001
|
_type: ne.text,
|
|
3966
|
-
shape: n ||
|
|
4002
|
+
shape: n || Ve.RECTANGLE,
|
|
3967
4003
|
options: A,
|
|
3968
4004
|
text: null
|
|
3969
4005
|
};
|
|
@@ -3971,7 +4007,7 @@ function jt(e, n, t) {
|
|
|
3971
4007
|
throw new Error("Missing/Invalid shape parameter! Example: `addShape(pptxgen.shapes.LINE, {x:1, y:1, w:1, h:1});`");
|
|
3972
4008
|
const i = {
|
|
3973
4009
|
type: A.line.type || "solid",
|
|
3974
|
-
color: A.line.color ||
|
|
4010
|
+
color: A.line.color || Ia,
|
|
3975
4011
|
transparency: A.line.transparency || 0,
|
|
3976
4012
|
width: A.line.width || 1,
|
|
3977
4013
|
dashType: A.line.dashType || "solid",
|
|
@@ -3984,7 +4020,7 @@ function jt(e, n, t) {
|
|
|
3984
4020
|
}
|
|
3985
4021
|
typeof A.lineSize == "number" && (A.line.width = A.lineSize), typeof A.lineDash == "string" && (A.line.dashType = A.lineDash), typeof A.lineHead == "string" && (A.line.beginArrowType = A.lineHead), typeof A.lineTail == "string" && (A.line.endArrowType = A.lineTail), it(e, a), e._slideObjects.push(a);
|
|
3986
4022
|
}
|
|
3987
|
-
function
|
|
4023
|
+
function zr(e, n, t, A, a, i, s) {
|
|
3988
4024
|
const c = [e], l = t && typeof t == "object" ? t : {};
|
|
3989
4025
|
l.objectName = l.objectName ? re(l.objectName) : `Table ${e._slideObjects.filter((m) => m._type === ne.table).length}`;
|
|
3990
4026
|
{
|
|
@@ -4012,7 +4048,7 @@ function _r(e, n, t, A, a, i, s) {
|
|
|
4012
4048
|
};
|
|
4013
4049
|
}), d.push(u);
|
|
4014
4050
|
}) : (console.log("addTable: tableRows has a bad row. A row should be an array of cells. You provided:"), console.log(m)), r.push(d);
|
|
4015
|
-
}), l.x = ie(l.x || (l.x === 0 ? 0 : oe / 2), "X", a), l.y = ie(l.y || (l.y === 0 ? 0 : oe / 2), "Y", a), l.h && (l.h = ie(l.h, "Y", a)), l.fontSize = l.fontSize ||
|
|
4051
|
+
}), l.x = ie(l.x || (l.x === 0 ? 0 : oe / 2), "X", a), l.y = ie(l.y || (l.y === 0 ? 0 : oe / 2), "Y", a), l.h && (l.h = ie(l.h, "Y", a)), l.fontSize = l.fontSize || Se, l.margin = l.margin === 0 || l.margin ? l.margin : Sa, typeof l.margin == "number" && (l.margin = [Number(l.margin), Number(l.margin), Number(l.margin), Number(l.margin)]), JSON.stringify({ arrRows: r }).indexOf("hyperlink") === -1 && (l.color || (l.color = l.color || De)), typeof l.border == "string" ? (console.warn("addTable `border` option must be an object. Ex: `{border: {type:'none'}}`"), l.border = null) : Array.isArray(l.border) && [0, 1, 2, 3].forEach((m) => {
|
|
4016
4052
|
l.border[m] = l.border[m] ? { type: l.border[m].type || Ze.type, color: l.border[m].color || Ze.color, pt: l.border[m].pt || Ze.pt } : { type: "none" };
|
|
4017
4053
|
}), l.autoPage = typeof l.autoPage == "boolean" ? l.autoPage : !1, l.autoPageRepeatHeader = typeof l.autoPageRepeatHeader == "boolean" ? l.autoPageRepeatHeader : !1, l.autoPageHeaderRows = typeof l.autoPageHeaderRows < "u" && !isNaN(Number(l.autoPageHeaderRows)) ? Number(l.autoPageHeaderRows) : 1, l.autoPageLineWeight = typeof l.autoPageLineWeight < "u" && !isNaN(Number(l.autoPageLineWeight)) ? Number(l.autoPageLineWeight) : 0, l.autoPageLineWeight && (l.autoPageLineWeight > 1 ? l.autoPageLineWeight = 1 : l.autoPageLineWeight < -1 && (l.autoPageLineWeight = -1));
|
|
4018
4054
|
let o = pt;
|
|
@@ -4033,7 +4069,7 @@ function _r(e, n, t, A, a, i, s) {
|
|
|
4033
4069
|
_type: ne.table,
|
|
4034
4070
|
arrTabRows: r,
|
|
4035
4071
|
options: Object.assign({}, l)
|
|
4036
|
-
})) : (l.autoPageRepeatHeader && (l._arrObjTabHeadRows = r.filter((m, d) => d < l.autoPageHeaderRows)),
|
|
4072
|
+
})) : (l.autoPageRepeatHeader && (l._arrObjTabHeadRows = r.filter((m, d) => d < l.autoPageHeaderRows)), Ma(r, l, a, A).forEach((m, d) => {
|
|
4037
4073
|
s(e._slideNum + d) || c.push(i({ masterName: A?._name || null })), d > 0 && (l.y = le(l.autoPageSlideStartY || l.newSlideStartY || o[0]));
|
|
4038
4074
|
{
|
|
4039
4075
|
const g = s(e._slideNum + d);
|
|
@@ -4044,20 +4080,20 @@ function _r(e, n, t, A, a, i, s) {
|
|
|
4044
4080
|
function Pt(e, n, t, A) {
|
|
4045
4081
|
const a = {
|
|
4046
4082
|
_type: A ? ne.placeholder : ne.text,
|
|
4047
|
-
shape: t?.shape ||
|
|
4083
|
+
shape: t?.shape || Ve.RECTANGLE,
|
|
4048
4084
|
text: !n || n.length === 0 ? [{ text: "", options: null }] : n,
|
|
4049
4085
|
options: t || {}
|
|
4050
4086
|
};
|
|
4051
4087
|
function i(s) {
|
|
4052
4088
|
{
|
|
4053
|
-
if (s.placeholder || (s.color = s.color || a.options.color || e.color ||
|
|
4089
|
+
if (s.placeholder || (s.color = s.color || a.options.color || e.color || De), (s.placeholder || A) && (s.bullet = s.bullet || !1), s.placeholder && e._slideLayout && e._slideLayout._slideObjects) {
|
|
4054
4090
|
const c = e._slideLayout._slideObjects.filter((l) => l._type === "placeholder" && l.options && l.options.placeholder && l.options.placeholder === s.placeholder)[0];
|
|
4055
4091
|
c?.options && (s = Object.assign(Object.assign({}, s), c.options));
|
|
4056
4092
|
}
|
|
4057
|
-
if (s.objectName = s.objectName ? re(s.objectName) : `Text ${e._slideObjects.filter((c) => c._type === ne.text).length}`, s.shape ===
|
|
4093
|
+
if (s.objectName = s.objectName ? re(s.objectName) : `Text ${e._slideObjects.filter((c) => c._type === ne.text).length}`, s.shape === Ve.LINE) {
|
|
4058
4094
|
const c = {
|
|
4059
4095
|
type: s.line.type || "solid",
|
|
4060
|
-
color: s.line.color ||
|
|
4096
|
+
color: s.line.color || Ia,
|
|
4061
4097
|
transparency: s.line.transparency || 0,
|
|
4062
4098
|
width: s.line.width || 1,
|
|
4063
4099
|
dashType: s.line.dashType || "solid",
|
|
@@ -4072,16 +4108,16 @@ function Pt(e, n, t, A) {
|
|
|
4072
4108
|
}
|
|
4073
4109
|
s.line = s.line || {}, s.lineSpacing = s.lineSpacing && !isNaN(s.lineSpacing) ? s.lineSpacing : null, s.lineSpacingMultiple = s.lineSpacingMultiple && !isNaN(s.lineSpacingMultiple) ? s.lineSpacingMultiple : null, s._bodyProp = s._bodyProp || {}, s._bodyProp.autoFit = s.autoFit || !1, s._bodyProp.anchor = s.placeholder ? null : at.ctr, s._bodyProp.vert = s.vert || null, s._bodyProp.wrap = typeof s.wrap == "boolean" ? s.wrap : !0, (s.inset && !isNaN(Number(s.inset)) || s.inset === 0) && (s._bodyProp.lIns = le(s.inset), s._bodyProp.rIns = le(s.inset), s._bodyProp.tIns = le(s.inset), s._bodyProp.bIns = le(s.inset)), typeof s.underline == "boolean" && s.underline === !0 && (s.underline = { style: "sng" });
|
|
4074
4110
|
}
|
|
4075
|
-
return (s.align || "").toLowerCase().indexOf("c") === 0 ? s._bodyProp.align = tt.center : (s.align || "").toLowerCase().indexOf("l") === 0 ? s._bodyProp.align = tt.left : (s.align || "").toLowerCase().indexOf("r") === 0 ? s._bodyProp.align = tt.right : (s.align || "").toLowerCase().indexOf("j") === 0 && (s._bodyProp.align = tt.justify), (s.valign || "").toLowerCase().indexOf("b") === 0 ? s._bodyProp.anchor = at.b : (s.valign || "").toLowerCase().indexOf("m") === 0 ? s._bodyProp.anchor = at.ctr : (s.valign || "").toLowerCase().indexOf("t") === 0 && (s._bodyProp.anchor = at.t),
|
|
4111
|
+
return (s.align || "").toLowerCase().indexOf("c") === 0 ? s._bodyProp.align = tt.center : (s.align || "").toLowerCase().indexOf("l") === 0 ? s._bodyProp.align = tt.left : (s.align || "").toLowerCase().indexOf("r") === 0 ? s._bodyProp.align = tt.right : (s.align || "").toLowerCase().indexOf("j") === 0 && (s._bodyProp.align = tt.justify), (s.valign || "").toLowerCase().indexOf("b") === 0 ? s._bodyProp.anchor = at.b : (s.valign || "").toLowerCase().indexOf("m") === 0 ? s._bodyProp.anchor = at.ctr : (s.valign || "").toLowerCase().indexOf("t") === 0 && (s._bodyProp.anchor = at.t), ra(s.shadow), s;
|
|
4076
4112
|
}
|
|
4077
4113
|
a.options = i(a.options), a.text.forEach((s) => s.options = i(s.options || {})), it(e, a.text || ""), e._slideObjects.push(a);
|
|
4078
4114
|
}
|
|
4079
|
-
function
|
|
4115
|
+
function Ur(e) {
|
|
4080
4116
|
(e._slideLayout._slideObjects || []).forEach((n) => {
|
|
4081
4117
|
n._type === ne.placeholder && e._slideObjects.filter((t) => t.options && t.options.placeholder === n.options.placeholder).length === 0 && Pt(e, [{ text: "" }], n.options, !1);
|
|
4082
4118
|
});
|
|
4083
4119
|
}
|
|
4084
|
-
function
|
|
4120
|
+
function Oa(e, n) {
|
|
4085
4121
|
var t;
|
|
4086
4122
|
if (n.bkgd && (n.background || (n.background = {}), typeof n.bkgd == "string" ? n.background.color = n.bkgd : (n.bkgd.data && (n.background.data = n.bkgd.data), n.bkgd.path && (n.background.path = n.bkgd.path), n.bkgd.src && (n.background.path = n.bkgd.src))), !((t = n.background) === null || t === void 0) && t.fill && (n.background.color = n.background.fill), e && (e.path || e.data)) {
|
|
4087
4123
|
e.path = e.path || "preencoded.png";
|
|
@@ -4114,7 +4150,7 @@ function it(e, n, t) {
|
|
|
4114
4150
|
else if (!a.options.hyperlink.url && !a.options.hyperlink.slide)
|
|
4115
4151
|
console.log("ERROR: 'hyperlink requires either: `url` or `slide`'");
|
|
4116
4152
|
else {
|
|
4117
|
-
const s =
|
|
4153
|
+
const s = Xe(e);
|
|
4118
4154
|
e._rels.push({
|
|
4119
4155
|
type: ne.hyperlink,
|
|
4120
4156
|
data: a.options.hyperlink.slide ? "slide" : "dummy",
|
|
@@ -4130,7 +4166,7 @@ function it(e, n, t) {
|
|
|
4130
4166
|
});
|
|
4131
4167
|
}));
|
|
4132
4168
|
}
|
|
4133
|
-
class
|
|
4169
|
+
class Or {
|
|
4134
4170
|
constructor(n) {
|
|
4135
4171
|
var t;
|
|
4136
4172
|
this.addSlide = n.addSlide, this.getSlide = n.getSlide, this._name = `Slide ${n.slideNumber}`, this._presLayout = n.presLayout, this._rId = n.slideRId, this._rels = [], this._relsChart = [], this._relsMedia = [], this._setSlideNum = n.setSlideNum, this._slideId = n.slideId, this._slideLayout = n.slideLayout || null, this._slideNum = n.slideNumber, this._slideObjects = [], this._slideNumberProps = !((t = this._slideLayout) === null || t === void 0) && t._slideNumberProps ? this._slideLayout._slideNumberProps : null;
|
|
@@ -4142,7 +4178,7 @@ class Mr {
|
|
|
4142
4178
|
return this._bkgd;
|
|
4143
4179
|
}
|
|
4144
4180
|
set background(n) {
|
|
4145
|
-
this._background = n, n &&
|
|
4181
|
+
this._background = n, n && Oa(n, this);
|
|
4146
4182
|
}
|
|
4147
4183
|
get background() {
|
|
4148
4184
|
return this._background;
|
|
@@ -4180,7 +4216,7 @@ class Mr {
|
|
|
4180
4216
|
*/
|
|
4181
4217
|
addChart(n, t, A) {
|
|
4182
4218
|
const a = A || {};
|
|
4183
|
-
return a._type = n,
|
|
4219
|
+
return a._type = n, za(this, n, t, A), this;
|
|
4184
4220
|
}
|
|
4185
4221
|
/**
|
|
4186
4222
|
* Add image to Slide
|
|
@@ -4188,7 +4224,7 @@ class Mr {
|
|
|
4188
4224
|
* @return {Slide} this Slide
|
|
4189
4225
|
*/
|
|
4190
4226
|
addImage(n) {
|
|
4191
|
-
return
|
|
4227
|
+
return Ua(this, n), this;
|
|
4192
4228
|
}
|
|
4193
4229
|
/**
|
|
4194
4230
|
* Add media (audio/video) to Slide
|
|
@@ -4196,7 +4232,7 @@ class Mr {
|
|
|
4196
4232
|
* @return {Slide} this Slide
|
|
4197
4233
|
*/
|
|
4198
4234
|
addMedia(n) {
|
|
4199
|
-
return
|
|
4235
|
+
return Er(this, n), this;
|
|
4200
4236
|
}
|
|
4201
4237
|
/**
|
|
4202
4238
|
* Add speaker notes to Slide
|
|
@@ -4205,7 +4241,7 @@ class Mr {
|
|
|
4205
4241
|
* @return {Slide} this Slide
|
|
4206
4242
|
*/
|
|
4207
4243
|
addNotes(n) {
|
|
4208
|
-
return
|
|
4244
|
+
return Mr(this, n), this;
|
|
4209
4245
|
}
|
|
4210
4246
|
/**
|
|
4211
4247
|
* Add shape to Slide
|
|
@@ -4223,7 +4259,7 @@ class Mr {
|
|
|
4223
4259
|
* @return {Slide} this Slide
|
|
4224
4260
|
*/
|
|
4225
4261
|
addTable(n, t) {
|
|
4226
|
-
return this._newAutoPagedSlides =
|
|
4262
|
+
return this._newAutoPagedSlides = zr(this, n, t, this._slideLayout, this._presLayout, this.addSlide, this.getSlide), this;
|
|
4227
4263
|
}
|
|
4228
4264
|
/**
|
|
4229
4265
|
* Add text to Slide
|
|
@@ -4235,12 +4271,12 @@ class Mr {
|
|
|
4235
4271
|
return Pt(this, typeof n == "string" || typeof n == "number" ? [{ text: n, options: t }] : n, t, !1), this;
|
|
4236
4272
|
}
|
|
4237
4273
|
}
|
|
4238
|
-
function
|
|
4274
|
+
function Xr(e, n) {
|
|
4239
4275
|
return Re(this, void 0, void 0, function* () {
|
|
4240
4276
|
const t = e.data;
|
|
4241
4277
|
return yield new Promise((A, a) => {
|
|
4242
4278
|
var i, s;
|
|
4243
|
-
const c = new
|
|
4279
|
+
const c = new Ta(), l = (t.length - 1) * 2 + 1, r = ((s = (i = t[0]) === null || i === void 0 ? void 0 : i.labels) === null || s === void 0 ? void 0 : s.length) > 1;
|
|
4244
4280
|
c.folder("_rels"), c.folder("docProps"), c.folder("xl/_rels"), c.folder("xl/tables"), c.folder("xl/theme"), c.folder("xl/worksheets"), c.folder("xl/worksheets/_rels"), c.file("[Content_Types].xml", `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"> <Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/> <Default Extension="xml" ContentType="application/xml"/> <Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/> <Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/> <Override PartName="/xl/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/> <Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/> <Override PartName="/xl/sharedStrings.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"/> <Override PartName="/xl/tables/table1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml"/> <Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/> <Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/></Types>
|
|
4245
4281
|
`), c.file("_rels/.rels", `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>
|
|
4246
4282
|
`), c.file("docProps/app.xml", `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"><Application>Microsoft Macintosh Excel</Application><DocSecurity>0</DocSecurity><ScaleCrop>false</ScaleCrop><HeadingPairs><vt:vector size="2" baseType="variant"><vt:variant><vt:lpstr>Worksheets</vt:lpstr></vt:variant><vt:variant><vt:i4>1</vt:i4></vt:variant></vt:vector></HeadingPairs><TitlesOfParts><vt:vector size="1" baseType="lpstr"><vt:lpstr>Sheet1</vt:lpstr></vt:vector></TitlesOfParts><Company></Company><LinksUpToDate>false</LinksUpToDate><SharedDoc>false</SharedDoc><HyperlinksChanged>false</HyperlinksChanged><AppVersion>16.0300</AppVersion></Properties>
|
|
@@ -4250,9 +4286,9 @@ function zr(e, n) {
|
|
|
4250
4286
|
`);
|
|
4251
4287
|
{
|
|
4252
4288
|
let o = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
|
4253
|
-
if (e.opts._type ===
|
|
4289
|
+
if (e.opts._type === Q.BUBBLE || e.opts._type === Q.BUBBLE3D)
|
|
4254
4290
|
o += `<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="${l}" uniqueCount="${l}">`;
|
|
4255
|
-
else if (e.opts._type ===
|
|
4291
|
+
else if (e.opts._type === Q.SCATTER)
|
|
4256
4292
|
o += `<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="${t.length}" uniqueCount="${t.length}">`;
|
|
4257
4293
|
else if (r) {
|
|
4258
4294
|
let f = t.length;
|
|
@@ -4261,11 +4297,11 @@ function zr(e, n) {
|
|
|
4261
4297
|
const f = t.length + t[0].labels.length * t[0].labels[0].length + t[0].labels.length, m = t.length + t[0].labels.length * t[0].labels[0].length + 1;
|
|
4262
4298
|
o += `<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="${f}" uniqueCount="${m}">`, o += '<si><t xml:space="preserve"></t></si>';
|
|
4263
4299
|
}
|
|
4264
|
-
e.opts._type ===
|
|
4300
|
+
e.opts._type === Q.BUBBLE || e.opts._type === Q.BUBBLE3D ? t.forEach((f, m) => {
|
|
4265
4301
|
m === 0 ? o += "<si><t>X-Axis</t></si>" : (o += `<si><t>${re(f.name || `Y-Axis${m}`)}</t></si>`, o += `<si><t>${re(`Size${m}`)}</t></si>`);
|
|
4266
4302
|
}) : t.forEach((f) => {
|
|
4267
4303
|
o += `<si><t>${re((f.name || " ").replace("X-Axis", "X-Values"))}</t></si>`;
|
|
4268
|
-
}), e.opts._type !==
|
|
4304
|
+
}), e.opts._type !== Q.BUBBLE && e.opts._type !== Q.BUBBLE3D && e.opts._type !== Q.SCATTER && t[0].labels.slice().reverse().forEach((f) => {
|
|
4269
4305
|
f.filter((m) => m && m !== "").forEach((m) => {
|
|
4270
4306
|
o += `<si><t>${re(m)}</t></si>`;
|
|
4271
4307
|
});
|
|
@@ -4274,13 +4310,13 @@ function zr(e, n) {
|
|
|
4274
4310
|
}
|
|
4275
4311
|
{
|
|
4276
4312
|
let o = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
|
4277
|
-
if (e.opts._type ===
|
|
4313
|
+
if (e.opts._type === Q.BUBBLE || e.opts._type === Q.BUBBLE3D) {
|
|
4278
4314
|
o += `<table xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" id="1" name="Table1" displayName="Table1" ref="A1:${ge(l)}${l}" totalsRowShown="0">`, o += `<tableColumns count="${l}">`;
|
|
4279
4315
|
let f = 1;
|
|
4280
4316
|
t.forEach((m, d) => {
|
|
4281
4317
|
d === 0 ? o += `<tableColumn id="${d + 1}" name="X-Values"/>` : (o += `<tableColumn id="${d + f}" name="${m.name}"/>`, f++, o += `<tableColumn id="${d + f}" name="Size${d}"/>`);
|
|
4282
4318
|
});
|
|
4283
|
-
} else e.opts._type ===
|
|
4319
|
+
} else e.opts._type === Q.SCATTER ? (o += `<table xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" id="1" name="Table1" displayName="Table1" ref="A1:${ge(t.length)}${t[0].values.length + 1}" totalsRowShown="0">`, o += `<tableColumns count="${t.length}">`, t.forEach((f, m) => {
|
|
4284
4320
|
o += `<tableColumn id="${m + 1}" name="${m === 0 ? "X-Values" : "Y-Value "}${m}"/>`;
|
|
4285
4321
|
})) : (o += `<table xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" id="1" name="Table1" displayName="Table1" ref="A1:${ge(t.length + t[0].labels.length)}${t[0].labels[0].length + 1}'" totalsRowShown="0">`, o += `<tableColumns count="${t.length + t[0].labels.length}">`, t[0].labels.forEach((f, m) => {
|
|
4286
4322
|
o += `<tableColumn id="${m + 1}" name="Column${m + 1}"/>`;
|
|
@@ -4291,7 +4327,7 @@ function zr(e, n) {
|
|
|
4291
4327
|
}
|
|
4292
4328
|
{
|
|
4293
4329
|
let o = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
|
4294
|
-
if (o += '<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">', e.opts._type ===
|
|
4330
|
+
if (o += '<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">', e.opts._type === Q.BUBBLE || e.opts._type === Q.BUBBLE3D ? o += `<dimension ref="A1:${ge(l)}${t[0].values.length + 1}"/>` : e.opts._type === Q.SCATTER ? o += `<dimension ref="A1:${ge(t.length)}${t[0].values.length + 1}"/>` : o += `<dimension ref="A1:${ge(t.length + 1)}${t[0].values.length + 1}"/>`, o += '<sheetViews><sheetView tabSelected="1" workbookViewId="0"><selection activeCell="B1" sqref="B1"/></sheetView></sheetViews>', o += '<sheetFormatPr baseColWidth="10" defaultRowHeight="16"/>', e.opts._type === Q.BUBBLE || e.opts._type === Q.BUBBLE3D) {
|
|
4295
4331
|
o += "<sheetData>", o += `<row r="1" spans="1:${l}">`, o += '<c r="A1" t="s"><v>0</v></c>';
|
|
4296
4332
|
for (let f = 1; f < l; f++)
|
|
4297
4333
|
o += `<c r="${ge(f + 1)}1" t="s"><v>${f}</v></c>`;
|
|
@@ -4302,7 +4338,7 @@ function zr(e, n) {
|
|
|
4302
4338
|
o += `<c r="${ge(d)}${m + 2}"><v>${t[g].values[m] || ""}</v></c>`, d++, o += `<c r="${ge(d)}${m + 2}"><v>${t[g].sizes[m] || ""}</v></c>`, d++;
|
|
4303
4339
|
o += "</row>";
|
|
4304
4340
|
});
|
|
4305
|
-
} else if (e.opts._type ===
|
|
4341
|
+
} else if (e.opts._type === Q.SCATTER) {
|
|
4306
4342
|
o += "<sheetData>", o += `<row r="1" spans="1:${t.length}">`;
|
|
4307
4343
|
for (let f = 0; f < t.length; f++)
|
|
4308
4344
|
o += `<c r="${ge(f + 1)}1" t="s"><v>${f}</v></c>`;
|
|
@@ -4353,67 +4389,67 @@ function zr(e, n) {
|
|
|
4353
4389
|
`, c.file("xl/worksheets/sheet1.xml", o);
|
|
4354
4390
|
}
|
|
4355
4391
|
c.generateAsync({ type: "base64" }).then((o) => {
|
|
4356
|
-
n.file(`ppt/embeddings/Microsoft_Excel_Worksheet${e.globalId}.xlsx`, o, { base64: !0 }), n.file("ppt/charts/_rels/" + e.fileName + ".rels", `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/package" Target="../embeddings/Microsoft_Excel_Worksheet${e.globalId}.xlsx"/></Relationships>`), n.file(`ppt/charts/${e.fileName}`,
|
|
4392
|
+
n.file(`ppt/embeddings/Microsoft_Excel_Worksheet${e.globalId}.xlsx`, o, { base64: !0 }), n.file("ppt/charts/_rels/" + e.fileName + ".rels", `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/package" Target="../embeddings/Microsoft_Excel_Worksheet${e.globalId}.xlsx"/></Relationships>`), n.file(`ppt/charts/${e.fileName}`, Gr(e)), A("");
|
|
4357
4393
|
}).catch((o) => {
|
|
4358
4394
|
a(o);
|
|
4359
4395
|
});
|
|
4360
4396
|
});
|
|
4361
4397
|
});
|
|
4362
4398
|
}
|
|
4363
|
-
function
|
|
4399
|
+
function Gr(e) {
|
|
4364
4400
|
var n, t, A, a;
|
|
4365
4401
|
let i = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>', s = !1;
|
|
4366
4402
|
if (i += '<c:chartSpace xmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">', i += '<c:date1904 val="0"/>', i += `<c:roundedCorners val="${e.opts.chartArea.roundedCorners ? "1" : "0"}"/>`, i += "<c:chart>", e.opts.showTitle ? (i += Nt({
|
|
4367
4403
|
title: e.opts.title || "Chart Title",
|
|
4368
4404
|
color: e.opts.titleColor,
|
|
4369
4405
|
fontFace: e.opts.titleFontFace,
|
|
4370
|
-
fontSize: e.opts.titleFontSize ||
|
|
4406
|
+
fontSize: e.opts.titleFontSize || Pr,
|
|
4371
4407
|
titleAlign: e.opts.titleAlign,
|
|
4372
4408
|
titleBold: e.opts.titleBold,
|
|
4373
4409
|
titlePos: e.opts.titlePos,
|
|
4374
4410
|
titleRotate: e.opts.titleRotate
|
|
4375
|
-
}, e.opts.x, e.opts.y), i += '<c:autoTitleDeleted val="0"/>') : i += '<c:autoTitleDeleted val="1"/>', e.opts._type ===
|
|
4376
|
-
const l = Object.assign(Object.assign({}, e.opts), c.options), r = l.secondaryValAxis ? Ct :
|
|
4377
|
-
s = s || l.secondaryValAxis, i +=
|
|
4378
|
-
}) : i +=
|
|
4411
|
+
}, e.opts.x, e.opts.y), i += '<c:autoTitleDeleted val="0"/>') : i += '<c:autoTitleDeleted val="1"/>', e.opts._type === Q.BAR3D && (i += `<c:view3D><c:rotX val="${e.opts.v3DRotX}"/><c:rotY val="${e.opts.v3DRotY}"/><c:rAngAx val="${e.opts.v3DRAngAx ? 1 : 0}"/><c:perspective val="${e.opts.v3DPerspective}"/></c:view3D>`), i += "<c:plotArea>", e.opts.layout ? (i += "<c:layout>", i += " <c:manualLayout>", i += ' <c:layoutTarget val="inner" />', i += ' <c:xMode val="edge" />', i += ' <c:yMode val="edge" />', i += ' <c:x val="' + (e.opts.layout.x || 0) + '" />', i += ' <c:y val="' + (e.opts.layout.y || 0) + '" />', i += ' <c:w val="' + (e.opts.layout.w || 1) + '" />', i += ' <c:h val="' + (e.opts.layout.h || 1) + '" />', i += " </c:manualLayout>", i += "</c:layout>") : i += "<c:layout/>", Array.isArray(e.opts._type) ? e.opts._type.forEach((c) => {
|
|
4412
|
+
const l = Object.assign(Object.assign({}, e.opts), c.options), r = l.secondaryValAxis ? Ct : Oe, o = l.secondaryCatAxis ? Qt : dt;
|
|
4413
|
+
s = s || l.secondaryValAxis, i += ga(c.type, c.data, l, r, o);
|
|
4414
|
+
}) : i += ga(e.opts._type, e.data, e.opts, Oe, dt), e.opts._type !== Q.PIE && e.opts._type !== Q.DOUGHNUT) {
|
|
4379
4415
|
if (e.opts.valAxes && e.opts.valAxes.length > 1 && !s)
|
|
4380
4416
|
throw new Error("Secondary axis must be used by one of the multiple charts");
|
|
4381
4417
|
if (e.opts.catAxes) {
|
|
4382
4418
|
if (!e.opts.valAxes || e.opts.valAxes.length !== e.opts.catAxes.length)
|
|
4383
4419
|
throw new Error("There must be the same number of value and category axes.");
|
|
4384
|
-
i += Ut(Object.assign(Object.assign({}, e.opts), e.opts.catAxes[0]), dt,
|
|
4420
|
+
i += Ut(Object.assign(Object.assign({}, e.opts), e.opts.catAxes[0]), dt, Oe);
|
|
4385
4421
|
} else
|
|
4386
|
-
i += Ut(e.opts, dt,
|
|
4387
|
-
e.opts.valAxes ? (i += Ot(Object.assign(Object.assign({}, e.opts), e.opts.valAxes[0]),
|
|
4422
|
+
i += Ut(e.opts, dt, Oe);
|
|
4423
|
+
e.opts.valAxes ? (i += Ot(Object.assign(Object.assign({}, e.opts), e.opts.valAxes[0]), Oe), e.opts.valAxes[1] && (i += Ot(Object.assign(Object.assign({}, e.opts), e.opts.valAxes[1]), Ct))) : (i += Ot(e.opts, Oe), e.opts._type === Q.BAR3D && (i += Wr(e.opts, _a, Oe))), !((n = e.opts) === null || n === void 0) && n.catAxes && (!((t = e.opts) === null || t === void 0) && t.catAxes[1]) && (i += Ut(Object.assign(Object.assign({}, e.opts), e.opts.catAxes[1]), Qt, Ct));
|
|
4388
4424
|
}
|
|
4389
|
-
return e.opts.showDataTable && (i += "<c:dTable>", i += ` <c:showHorzBorder val="${e.opts.showDataTableHorzBorder ? 1 : 0}"/>`, i += ` <c:showVertBorder val="${e.opts.showDataTableVertBorder ? 1 : 0}"/>`, i += ` <c:showOutline val="${e.opts.showDataTableOutline ? 1 : 0}"/>`, i += ` <c:showKeys val="${e.opts.showDataTableKeys ? 1 : 0}"/>`, i += " <c:spPr>", i += " <a:noFill/>", i += ' <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="tx1"><a:lumMod val="15000"/><a:lumOff val="85000"/></a:schemeClr></a:solidFill><a:round/></a:ln>', i += " <a:effectLst/>", i += " </c:spPr>", i += " <c:txPr>", i += ' <a:bodyPr rot="0" spcFirstLastPara="1" vertOverflow="ellipsis" vert="horz" wrap="square" anchor="ctr" anchorCtr="1"/>', i += " <a:lstStyle/>", i += " <a:p>", i += ' <a:pPr rtl="0">', i += ` <a:defRPr sz="${Math.round((e.opts.dataTableFontSize ||
|
|
4425
|
+
return e.opts.showDataTable && (i += "<c:dTable>", i += ` <c:showHorzBorder val="${e.opts.showDataTableHorzBorder ? 1 : 0}"/>`, i += ` <c:showVertBorder val="${e.opts.showDataTableVertBorder ? 1 : 0}"/>`, i += ` <c:showOutline val="${e.opts.showDataTableOutline ? 1 : 0}"/>`, i += ` <c:showKeys val="${e.opts.showDataTableKeys ? 1 : 0}"/>`, i += " <c:spPr>", i += " <a:noFill/>", i += ' <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="tx1"><a:lumMod val="15000"/><a:lumOff val="85000"/></a:schemeClr></a:solidFill><a:round/></a:ln>', i += " <a:effectLst/>", i += " </c:spPr>", i += " <c:txPr>", i += ' <a:bodyPr rot="0" spcFirstLastPara="1" vertOverflow="ellipsis" vert="horz" wrap="square" anchor="ctr" anchorCtr="1"/>', i += " <a:lstStyle/>", i += " <a:p>", i += ' <a:pPr rtl="0">', i += ` <a:defRPr sz="${Math.round((e.opts.dataTableFontSize || Se) * 100)}" b="0" i="0" u="none" strike="noStrike" kern="1200" baseline="0">`, i += ' <a:solidFill><a:schemeClr val="tx1"><a:lumMod val="65000"/><a:lumOff val="35000"/></a:schemeClr></a:solidFill>', i += ' <a:latin typeface="+mn-lt"/>', i += ' <a:ea typeface="+mn-ea"/>', i += ' <a:cs typeface="+mn-cs"/>', i += " </a:defRPr>", i += " </a:pPr>", i += ' <a:endParaRPr lang="en-US"/>', i += " </a:p>", i += " </c:txPr>", i += "</c:dTable>"), i += " <c:spPr>", i += !((A = e.opts.plotArea.fill) === null || A === void 0) && A.color ? Ne(e.opts.plotArea.fill) : "<a:noFill/>", i += e.opts.plotArea.border ? `<a:ln w="${te(e.opts.plotArea.border.pt)}" cap="flat">${Ne(e.opts.plotArea.border.color)}</a:ln>` : "<a:ln><a:noFill/></a:ln>", i += " <a:effectLst/>", i += " </c:spPr>", i += "</c:plotArea>", e.opts.showLegend && (i += "<c:legend>", i += '<c:legendPos val="' + e.opts.legendPos + '"/>', i += '<c:overlay val="0"/>', (e.opts.legendFontFace || e.opts.legendFontSize || e.opts.legendColor) && (i += "<c:txPr>", i += " <a:bodyPr/>", i += " <a:lstStyle/>", i += " <a:p>", i += " <a:pPr>", i += e.opts.legendFontSize ? `<a:defRPr sz="${Math.round(Number(e.opts.legendFontSize) * 100)}">` : "<a:defRPr>", e.opts.legendColor && (i += Ne(e.opts.legendColor)), e.opts.legendFontFace && (i += '<a:latin typeface="' + e.opts.legendFontFace + '"/>'), e.opts.legendFontFace && (i += '<a:cs typeface="' + e.opts.legendFontFace + '"/>'), i += " </a:defRPr>", i += " </a:pPr>", i += ' <a:endParaRPr lang="en-US"/>', i += " </a:p>", i += "</c:txPr>"), i += "</c:legend>"), i += ' <c:plotVisOnly val="1"/>', i += ' <c:dispBlanksAs val="' + e.opts.displayBlanksAs + '"/>', e.opts._type === Q.SCATTER && (i += '<c:showDLblsOverMax val="1"/>'), i += "</c:chart>", i += "<c:spPr>", i += !((a = e.opts.chartArea.fill) === null || a === void 0) && a.color ? Ne(e.opts.chartArea.fill) : "<a:noFill/>", i += e.opts.chartArea.border ? `<a:ln w="${te(e.opts.chartArea.border.pt)}" cap="flat">${Ne(e.opts.chartArea.border.color)}</a:ln>` : "<a:ln><a:noFill/></a:ln>", i += " <a:effectLst/>", i += "</c:spPr>", i += '<c:externalData r:id="rId1"><c:autoUpdate val="0"/></c:externalData>', i += "</c:chartSpace>", i;
|
|
4390
4426
|
}
|
|
4391
|
-
function
|
|
4427
|
+
function ga(e, n, t, A, a, i) {
|
|
4392
4428
|
let s = -1, c = 1, l = null, r = "";
|
|
4393
4429
|
switch (e) {
|
|
4394
|
-
case
|
|
4395
|
-
case
|
|
4396
|
-
case
|
|
4397
|
-
case
|
|
4398
|
-
case
|
|
4399
|
-
r += `<c:${e}Chart>`, e ===
|
|
4430
|
+
case Q.AREA:
|
|
4431
|
+
case Q.BAR:
|
|
4432
|
+
case Q.BAR3D:
|
|
4433
|
+
case Q.LINE:
|
|
4434
|
+
case Q.RADAR:
|
|
4435
|
+
r += `<c:${e}Chart>`, e === Q.AREA && t.barGrouping === "stacked" && (r += '<c:grouping val="' + t.barGrouping + '"/>'), (e === Q.BAR || e === Q.BAR3D) && (r += '<c:barDir val="' + t.barDir + '"/>', r += '<c:grouping val="' + (t.barGrouping || "clustered") + '"/>'), e === Q.RADAR && (r += '<c:radarStyle val="' + t.radarStyle + '"/>'), r += '<c:varyColors val="0"/>', n.forEach((o) => {
|
|
4400
4436
|
var f;
|
|
4401
4437
|
s++, r += "<c:ser>", r += ` <c:idx val="${o._dataIndex}"/><c:order val="${o._dataIndex}"/>`, r += " <c:tx>", r += " <c:strRef>", r += " <c:f>Sheet1!$" + ge(o._dataIndex + o.labels.length + 1) + "$1</c:f>", r += ' <c:strCache><c:ptCount val="1"/><c:pt idx="0"><c:v>' + re(o.name) + "</c:v></c:pt></c:strCache>", r += " </c:strRef>", r += " </c:tx>";
|
|
4402
4438
|
const m = t.chartColors ? t.chartColors[s % t.chartColors.length] : null;
|
|
4403
|
-
r += " <c:spPr>", m === "transparent" ? r += "<a:noFill/>" : t.chartColorsOpacity ? r += "<a:solidFill>" + he(m, `<a:alpha val="${Math.round(t.chartColorsOpacity * 1e3)}"/>`) + "</a:solidFill>" : r += "<a:solidFill>" + he(m) + "</a:solidFill>", e ===
|
|
4439
|
+
r += " <c:spPr>", m === "transparent" ? r += "<a:noFill/>" : t.chartColorsOpacity ? r += "<a:solidFill>" + he(m, `<a:alpha val="${Math.round(t.chartColorsOpacity * 1e3)}"/>`) + "</a:solidFill>" : r += "<a:solidFill>" + he(m) + "</a:solidFill>", e === Q.LINE || e === Q.RADAR ? t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : (r += `<a:ln w="${te(t.lineSize)}" cap="${Bt(t.lineCap)}"><a:solidFill>${he(m)}</a:solidFill>`, r += '<a:prstDash val="' + (t.lineDash || "solid") + '"/><a:round/></a:ln>') : t.dataBorder && (r += `<a:ln w="${te(t.dataBorder.pt)}" cap="${Bt(t.lineCap)}"><a:solidFill>${he(t.dataBorder.color)}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>`), r += He(t.shadow, Je), r += " </c:spPr>", r += ' <c:invertIfNegative val="0"/>', e !== Q.RADAR && (r += "<c:dLbls>", r += `<c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, t.dataLabelBkgrdColors && (r += `<c:spPr><a:solidFill>${he(m)}</a:solidFill></c:spPr>`), r += "<c:txPr><a:bodyPr/><a:lstStyle/><a:p><a:pPr>", r += `<a:defRPr b="${t.dataLabelFontBold ? 1 : 0}" i="${t.dataLabelFontItalic ? 1 : 0}" strike="noStrike" sz="${Math.round((t.dataLabelFontSize || Se) * 100)}" u="none">`, r += `<a:solidFill>${he(t.dataLabelColor || De)}</a:solidFill>`, r += `<a:latin typeface="${t.dataLabelFontFace || "Arial"}"/>`, r += "</a:defRPr></a:pPr></a:p></c:txPr>", t.dataLabelPosition && (r += `<c:dLblPos val="${t.dataLabelPosition}"/>`), r += '<c:showLegendKey val="0"/>', r += `<c:showVal val="${t.showValue ? "1" : "0"}"/>`, r += `<c:showCatName val="0"/><c:showSerName val="${t.showSerName ? "1" : "0"}"/><c:showPercent val="0"/><c:showBubbleSize val="0"/>`, r += `<c:showLeaderLines val="${t.showLeaderLines ? "1" : "0"}"/>`, r += "</c:dLbls>"), (e === Q.LINE || e === Q.RADAR) && (r += "<c:marker>", r += ' <c:symbol val="' + t.lineDataSymbol + '"/>', t.lineDataSymbolSize && (r += `<c:size val="${t.lineDataSymbolSize}"/>`), r += " <c:spPr>", r += ` <a:solidFill>${he(t.chartColors[o._dataIndex + 1 > t.chartColors.length ? Math.floor(Math.random() * t.chartColors.length) : o._dataIndex])}</a:solidFill>`, r += ` <a:ln w="${t.lineDataSymbolLineSize}" cap="flat"><a:solidFill>${he(t.lineDataSymbolLineColor || m)}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>`, r += " <a:effectLst/>", r += " </c:spPr>", r += "</c:marker>"), (e === Q.BAR || e === Q.BAR3D) && n.length === 1 && (t.chartColors && t.chartColors !== ft && t.chartColors.length > 1 || !((f = t.invertedColors) === null || f === void 0) && f.length) && o.values.forEach((d, g) => {
|
|
4404
4440
|
const u = d < 0 ? t.invertedColors || t.chartColors || ft : t.chartColors || [];
|
|
4405
|
-
r += " <c:dPt>", r += ` <c:idx val="${g}"/>`, r += ' <c:invertIfNegative val="0"/>', r += ' <c:bubble3D val="0"/>', r += " <c:spPr>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : e ===
|
|
4441
|
+
r += " <c:dPt>", r += ` <c:idx val="${g}"/>`, r += ' <c:invertIfNegative val="0"/>', r += ' <c:bubble3D val="0"/>', r += " <c:spPr>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : e === Q.BAR ? (r += "<a:solidFill>", r += ' <a:srgbClr val="' + u[g % u.length] + '"/>', r += "</a:solidFill>") : (r += "<a:ln>", r += " <a:solidFill>", r += ' <a:srgbClr val="' + u[g % u.length] + '"/>', r += " </a:solidFill>", r += "</a:ln>"), r += He(t.shadow, Je), r += " </c:spPr>", r += " </c:dPt>";
|
|
4406
4442
|
}), r += "<c:cat>", t.catLabelFormatCode ? (r += " <c:numRef>", r += ` <c:f>Sheet1!$A$2:$A$${o.labels[0].length + 1}</c:f>`, r += " <c:numCache>", r += " <c:formatCode>" + (t.catLabelFormatCode || "General") + "</c:formatCode>", r += ` <c:ptCount val="${o.labels[0].length}"/>`, o.labels[0].forEach((d, g) => r += `<c:pt idx="${g}"><c:v>${re(d)}</c:v></c:pt>`), r += " </c:numCache>", r += " </c:numRef>") : (r += " <c:multiLvlStrRef>", r += ` <c:f>Sheet1!$A$2:$${ge(o.labels.length)}$${o.labels[0].length + 1}</c:f>`, r += " <c:multiLvlStrCache>", r += ` <c:ptCount val="${o.labels[0].length}"/>`, o.labels.forEach((d) => {
|
|
4407
4443
|
r += "<c:lvl>", d.forEach((g, u) => r += `<c:pt idx="${u}"><c:v>${re(g)}</c:v></c:pt>`), r += "</c:lvl>";
|
|
4408
|
-
}), r += " </c:multiLvlStrCache>", r += " </c:multiLvlStrRef>"), r += "</c:cat>", r += "<c:val>", r += " <c:numRef>", r += `<c:f>Sheet1!$${ge(o._dataIndex + o.labels.length + 1)}$2:$${ge(o._dataIndex + o.labels.length + 1)}$${o.labels[0].length + 1}</c:f>`, r += " <c:numCache>", r += " <c:formatCode>" + (t.valLabelFormatCode || t.dataTableFormatCode || "General") + "</c:formatCode>", r += ` <c:ptCount val="${o.labels[0].length}"/>`, o.values.forEach((d, g) => r += `<c:pt idx="${g}"><c:v>${d || d === 0 ? d : ""}</c:v></c:pt>`), r += " </c:numCache>", r += " </c:numRef>", r += "</c:val>", e ===
|
|
4409
|
-
}), r += " <c:dLbls>", r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:txPr>", r += " <a:bodyPr/>", r += " <a:lstStyle/>", r += " <a:p><a:pPr>", r += ` <a:defRPr b="${t.dataLabelFontBold ? 1 : 0}" i="${t.dataLabelFontItalic ? 1 : 0}" strike="noStrike" sz="${Math.round((t.dataLabelFontSize ||
|
|
4444
|
+
}), r += " </c:multiLvlStrCache>", r += " </c:multiLvlStrRef>"), r += "</c:cat>", r += "<c:val>", r += " <c:numRef>", r += `<c:f>Sheet1!$${ge(o._dataIndex + o.labels.length + 1)}$2:$${ge(o._dataIndex + o.labels.length + 1)}$${o.labels[0].length + 1}</c:f>`, r += " <c:numCache>", r += " <c:formatCode>" + (t.valLabelFormatCode || t.dataTableFormatCode || "General") + "</c:formatCode>", r += ` <c:ptCount val="${o.labels[0].length}"/>`, o.values.forEach((d, g) => r += `<c:pt idx="${g}"><c:v>${d || d === 0 ? d : ""}</c:v></c:pt>`), r += " </c:numCache>", r += " </c:numRef>", r += "</c:val>", e === Q.LINE && (r += '<c:smooth val="' + (t.lineSmooth ? "1" : "0") + '"/>'), r += "</c:ser>";
|
|
4445
|
+
}), r += " <c:dLbls>", r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:txPr>", r += " <a:bodyPr/>", r += " <a:lstStyle/>", r += " <a:p><a:pPr>", r += ` <a:defRPr b="${t.dataLabelFontBold ? 1 : 0}" i="${t.dataLabelFontItalic ? 1 : 0}" strike="noStrike" sz="${Math.round((t.dataLabelFontSize || Se) * 100)}" u="none">`, r += " <a:solidFill>" + he(t.dataLabelColor || De) + "</a:solidFill>", r += ' <a:latin typeface="' + (t.dataLabelFontFace || "Arial") + '"/>', r += " </a:defRPr>", r += " </a:pPr></a:p>", r += " </c:txPr>", t.dataLabelPosition && (r += ' <c:dLblPos val="' + t.dataLabelPosition + '"/>'), r += ' <c:showLegendKey val="0"/>', r += ' <c:showVal val="' + (t.showValue ? "1" : "0") + '"/>', r += ' <c:showCatName val="0"/>', r += ' <c:showSerName val="' + (t.showSerName ? "1" : "0") + '"/>', r += ' <c:showPercent val="0"/>', r += ' <c:showBubbleSize val="0"/>', r += ` <c:showLeaderLines val="${t.showLeaderLines ? "1" : "0"}"/>`, r += " </c:dLbls>", e === Q.BAR ? (r += ` <c:gapWidth val="${t.barGapWidthPct}"/>`, r += ` <c:overlap val="${(t.barGrouping || "").includes("tacked") ? 100 : t.barOverlapPct ? t.barOverlapPct : 0}"/>`) : e === Q.BAR3D ? (r += ` <c:gapWidth val="${t.barGapWidthPct}"/>`, r += ` <c:gapDepth val="${t.barGapDepthPct}"/>`, r += ' <c:shape val="' + t.bar3DShape + '"/>') : e === Q.LINE && (r += ' <c:marker val="1"/>'), r += `<c:axId val="${a}"/><c:axId val="${A}"/><c:axId val="${_a}"/>`, r += `</c:${e}Chart>`;
|
|
4410
4446
|
break;
|
|
4411
|
-
case
|
|
4447
|
+
case Q.SCATTER:
|
|
4412
4448
|
r += "<c:" + e + "Chart>", r += '<c:scatterStyle val="lineMarker"/>', r += '<c:varyColors val="0"/>', s = -1, n.filter((o, f) => f > 0).forEach((o, f) => {
|
|
4413
4449
|
s++, r += "<c:ser>", r += ` <c:idx val="${f}"/>`, r += ` <c:order val="${f}"/>`, r += " <c:tx>", r += " <c:strRef>", r += ` <c:f>Sheet1!$${ge(f + 2)}$1</c:f>`, r += ' <c:strCache><c:ptCount val="1"/><c:pt idx="0"><c:v>' + re(o.name) + "</c:v></c:pt></c:strCache>", r += " </c:strRef>", r += " </c:tx>", r += " <c:spPr>";
|
|
4414
4450
|
{
|
|
4415
4451
|
const m = t.chartColors[s % t.chartColors.length];
|
|
4416
|
-
m === "transparent" ? r += "<a:noFill/>" : t.chartColorsOpacity ? r += "<a:solidFill>" + he(m, '<a:alpha val="' + Math.round(t.chartColorsOpacity * 1e3).toString() + '"/>') + "</a:solidFill>" : r += "<a:solidFill>" + he(m) + "</a:solidFill>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : (r += `<a:ln w="${te(t.lineSize)}" cap="${Bt(t.lineCap)}"><a:solidFill>${he(m)}</a:solidFill>`, r += `<a:prstDash val="${t.lineDash || "solid"}"/><a:round/></a:ln>`), r +=
|
|
4452
|
+
m === "transparent" ? r += "<a:noFill/>" : t.chartColorsOpacity ? r += "<a:solidFill>" + he(m, '<a:alpha val="' + Math.round(t.chartColorsOpacity * 1e3).toString() + '"/>') + "</a:solidFill>" : r += "<a:solidFill>" + he(m) + "</a:solidFill>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : (r += `<a:ln w="${te(t.lineSize)}" cap="${Bt(t.lineCap)}"><a:solidFill>${he(m)}</a:solidFill>`, r += `<a:prstDash val="${t.lineDash || "solid"}"/><a:round/></a:ln>`), r += He(t.shadow, Je);
|
|
4417
4453
|
}
|
|
4418
4454
|
if (r += " </c:spPr>", r += "<c:marker>", r += ' <c:symbol val="' + t.lineDataSymbol + '"/>', t.lineDataSymbolSize && (r += `<c:size val="${t.lineDataSymbolSize}"/>`), r += "<c:spPr>", r += `<a:solidFill>${he(t.chartColors[f + 1 > t.chartColors.length ? Math.floor(Math.random() * t.chartColors.length) : f])}</a:solidFill>`, r += `<a:ln w="${t.lineDataSymbolLineSize}" cap="flat"><a:solidFill>${he(t.lineDataSymbolLineColor || t.chartColors[s % t.chartColors.length])}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>`, r += "<a:effectLst/>", r += "</c:spPr>", r += "</c:marker>", t.showLabel) {
|
|
4419
4455
|
const m = Lt("-xxxx-xxxx-xxxx-xxxxxxxxxxxx");
|
|
@@ -4423,22 +4459,22 @@ function ua(e, n, t, A, a, i) {
|
|
|
4423
4459
|
}
|
|
4424
4460
|
n.length === 1 && t.chartColors !== ft && o.values.forEach((m, d) => {
|
|
4425
4461
|
const g = m < 0 ? t.invertedColors || t.chartColors || ft : t.chartColors || [];
|
|
4426
|
-
r += " <c:dPt>", r += ` <c:idx val="${d}"/>`, r += ' <c:invertIfNegative val="0"/>', r += ' <c:bubble3D val="0"/>', r += " <c:spPr>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : (r += "<a:solidFill>", r += ' <a:srgbClr val="' + g[d % g.length] + '"/>', r += "</a:solidFill>"), r +=
|
|
4462
|
+
r += " <c:dPt>", r += ` <c:idx val="${d}"/>`, r += ' <c:invertIfNegative val="0"/>', r += ' <c:bubble3D val="0"/>', r += " <c:spPr>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : (r += "<a:solidFill>", r += ' <a:srgbClr val="' + g[d % g.length] + '"/>', r += "</a:solidFill>"), r += He(t.shadow, Je), r += " </c:spPr>", r += " </c:dPt>";
|
|
4427
4463
|
}), r += "<c:xVal>", r += " <c:numRef>", r += ` <c:f>Sheet1!$A$2:$A$${n[0].values.length + 1}</c:f>`, r += " <c:numCache>", r += " <c:formatCode>General</c:formatCode>", r += ` <c:ptCount val="${n[0].values.length}"/>`, n[0].values.forEach((m, d) => {
|
|
4428
4464
|
r += `<c:pt idx="${d}"><c:v>${m || m === 0 ? m : ""}</c:v></c:pt>`;
|
|
4429
4465
|
}), r += " </c:numCache>", r += " </c:numRef>", r += "</c:xVal>", r += "<c:yVal>", r += " <c:numRef>", r += ` <c:f>Sheet1!$${ge(f + 2)}$2:$${ge(f + 2)}$${n[0].values.length + 1}</c:f>`, r += " <c:numCache>", r += " <c:formatCode>General</c:formatCode>", r += ` <c:ptCount val="${n[0].values.length}"/>`, n[0].values.forEach((m, d) => {
|
|
4430
4466
|
r += `<c:pt idx="${d}"><c:v>${o.values[d] || o.values[d] === 0 ? o.values[d] : ""}</c:v></c:pt>`;
|
|
4431
4467
|
}), r += " </c:numCache>", r += " </c:numRef>", r += "</c:yVal>", r += '<c:smooth val="' + (t.lineSmooth ? "1" : "0") + '"/>', r += "</c:ser>";
|
|
4432
|
-
}), r += " <c:dLbls>", r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:txPr>", r += " <a:bodyPr/>", r += " <a:lstStyle/>", r += " <a:p><a:pPr>", r += ` <a:defRPr b="${t.dataLabelFontBold ? "1" : "0"}" i="${t.dataLabelFontItalic ? "1" : "0"}" strike="noStrike" sz="${Math.round((t.dataLabelFontSize ||
|
|
4468
|
+
}), r += " <c:dLbls>", r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:txPr>", r += " <a:bodyPr/>", r += " <a:lstStyle/>", r += " <a:p><a:pPr>", r += ` <a:defRPr b="${t.dataLabelFontBold ? "1" : "0"}" i="${t.dataLabelFontItalic ? "1" : "0"}" strike="noStrike" sz="${Math.round((t.dataLabelFontSize || Se) * 100)}" u="none">`, r += " <a:solidFill>" + he(t.dataLabelColor || De) + "</a:solidFill>", r += ' <a:latin typeface="' + (t.dataLabelFontFace || "Arial") + '"/>', r += " </a:defRPr>", r += " </a:pPr></a:p>", r += " </c:txPr>", t.dataLabelPosition && (r += ' <c:dLblPos val="' + t.dataLabelPosition + '"/>'), r += ' <c:showLegendKey val="0"/>', r += ' <c:showVal val="' + (t.showValue ? "1" : "0") + '"/>', r += ' <c:showCatName val="0"/>', r += ' <c:showSerName val="' + (t.showSerName ? "1" : "0") + '"/>', r += ' <c:showPercent val="0"/>', r += ' <c:showBubbleSize val="0"/>', r += " </c:dLbls>", r += `<c:axId val="${a}"/><c:axId val="${A}"/>`, r += "</c:" + e + "Chart>";
|
|
4433
4469
|
break;
|
|
4434
|
-
case
|
|
4435
|
-
case
|
|
4470
|
+
case Q.BUBBLE:
|
|
4471
|
+
case Q.BUBBLE3D:
|
|
4436
4472
|
r += "<c:bubbleChart>", r += '<c:varyColors val="0"/>', s = -1, n.filter((o, f) => f > 0).forEach((o, f) => {
|
|
4437
4473
|
s++, r += "<c:ser>", r += ` <c:idx val="${f}"/>`, r += ` <c:order val="${f}"/>`, r += " <c:tx>", r += " <c:strRef>", r += " <c:f>Sheet1!$" + ge(c + 1) + "$1</c:f>", r += ' <c:strCache><c:ptCount val="1"/><c:pt idx="0"><c:v>' + re(o.name) + "</c:v></c:pt></c:strCache>", r += " </c:strRef>", r += " </c:tx>";
|
|
4438
4474
|
{
|
|
4439
4475
|
r += "<c:spPr>";
|
|
4440
4476
|
const m = t.chartColors[s % t.chartColors.length];
|
|
4441
|
-
m === "transparent" ? r += "<a:noFill/>" : t.chartColorsOpacity ? r += `<a:solidFill>${he(m, '<a:alpha val="' + Math.round(t.chartColorsOpacity * 1e3).toString() + '"/>')}</a:solidFill>` : r += "<a:solidFill>" + he(m) + "</a:solidFill>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : t.dataBorder ? r += `<a:ln w="${te(t.dataBorder.pt)}" cap="flat"><a:solidFill>${he(t.dataBorder.color)}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>` : (r += `<a:ln w="${te(t.lineSize)}" cap="flat"><a:solidFill>${he(m)}</a:solidFill>`, r += `<a:prstDash val="${t.lineDash || "solid"}"/><a:round/></a:ln>`), r +=
|
|
4477
|
+
m === "transparent" ? r += "<a:noFill/>" : t.chartColorsOpacity ? r += `<a:solidFill>${he(m, '<a:alpha val="' + Math.round(t.chartColorsOpacity * 1e3).toString() + '"/>')}</a:solidFill>` : r += "<a:solidFill>" + he(m) + "</a:solidFill>", t.lineSize === 0 ? r += "<a:ln><a:noFill/></a:ln>" : t.dataBorder ? r += `<a:ln w="${te(t.dataBorder.pt)}" cap="flat"><a:solidFill>${he(t.dataBorder.color)}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>` : (r += `<a:ln w="${te(t.lineSize)}" cap="flat"><a:solidFill>${he(m)}</a:solidFill>`, r += `<a:prstDash val="${t.lineDash || "solid"}"/><a:round/></a:ln>`), r += He(t.shadow, Je), r += "</c:spPr>";
|
|
4442
4478
|
}
|
|
4443
4479
|
r += "<c:xVal>", r += " <c:numRef>", r += ` <c:f>Sheet1!$A$2:$A$${n[0].values.length + 1}</c:f>`, r += " <c:numCache>", r += " <c:formatCode>General</c:formatCode>", r += ` <c:ptCount val="${n[0].values.length}"/>`, n[0].values.forEach((m, d) => {
|
|
4444
4480
|
r += `<c:pt idx="${d}"><c:v>${m || m === 0 ? m : ""}</c:v></c:pt>`;
|
|
@@ -4446,20 +4482,20 @@ function ua(e, n, t, A, a, i) {
|
|
|
4446
4482
|
r += `<c:pt idx="${d}"><c:v>${o.values[d] || o.values[d] === 0 ? o.values[d] : ""}</c:v></c:pt>`;
|
|
4447
4483
|
}), r += " </c:numCache>", r += " </c:numRef>", r += "</c:yVal>", r += " <c:bubbleSize>", r += " <c:numRef>", r += `<c:f>Sheet1!$${ge(c + 1)}$2:$${ge(c + 1)}$${o.sizes.length + 1}</c:f>`, c++, r += " <c:numCache>", r += " <c:formatCode>General</c:formatCode>", r += ` <c:ptCount val="${o.sizes.length}"/>`, o.sizes.forEach((m, d) => {
|
|
4448
4484
|
r += `<c:pt idx="${d}"><c:v>${m || ""}</c:v></c:pt>`;
|
|
4449
|
-
}), r += " </c:numCache>", r += " </c:numRef>", r += " </c:bubbleSize>", r += ' <c:bubble3D val="' + (e ===
|
|
4450
|
-
}), r += "<c:dLbls>", r += `<c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += "<c:txPr><a:bodyPr/><a:lstStyle/><a:p><a:pPr>", r += `<a:defRPr b="${t.dataLabelFontBold ? 1 : 0}" i="${t.dataLabelFontItalic ? 1 : 0}" strike="noStrike" sz="${Math.round(Math.round(t.dataLabelFontSize ||
|
|
4485
|
+
}), r += " </c:numCache>", r += " </c:numRef>", r += " </c:bubbleSize>", r += ' <c:bubble3D val="' + (e === Q.BUBBLE3D ? "1" : "0") + '"/>', r += "</c:ser>";
|
|
4486
|
+
}), r += "<c:dLbls>", r += `<c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += "<c:txPr><a:bodyPr/><a:lstStyle/><a:p><a:pPr>", r += `<a:defRPr b="${t.dataLabelFontBold ? 1 : 0}" i="${t.dataLabelFontItalic ? 1 : 0}" strike="noStrike" sz="${Math.round(Math.round(t.dataLabelFontSize || Se) * 100)}" u="none">`, r += `<a:solidFill>${he(t.dataLabelColor || De)}</a:solidFill>`, r += `<a:latin typeface="${t.dataLabelFontFace || "Arial"}"/>`, r += "</a:defRPr></a:pPr></a:p></c:txPr>", t.dataLabelPosition && (r += `<c:dLblPos val="${t.dataLabelPosition}"/>`), r += '<c:showLegendKey val="0"/>', r += `<c:showVal val="${t.showValue ? "1" : "0"}"/>`, r += `<c:showCatName val="0"/><c:showSerName val="${t.showSerName ? "1" : "0"}"/><c:showPercent val="0"/><c:showBubbleSize val="0"/>`, r += "<c:extLst>", r += ' <c:ext uri="{CE6537A1-D6FC-4f65-9D91-7224C49458BB}" xmlns:c15="http://schemas.microsoft.com/office/drawing/2012/chart">', r += ' <c15:showLeaderLines val="' + (t.showLeaderLines ? "1" : "0") + '"/>', r += " </c:ext>", r += "</c:extLst>", r += "</c:dLbls>", r += `<c:axId val="${a}"/><c:axId val="${A}"/>`, r += "</c:bubbleChart>";
|
|
4451
4487
|
break;
|
|
4452
|
-
case
|
|
4453
|
-
case
|
|
4454
|
-
l = n[0], r += "<c:" + e + "Chart>", r += ' <c:varyColors val="1"/>', r += "<c:ser>", r += ' <c:idx val="0"/>', r += ' <c:order val="0"/>', r += " <c:tx>", r += " <c:strRef>", r += " <c:f>Sheet1!$B$1</c:f>", r += " <c:strCache>", r += ' <c:ptCount val="1"/>', r += ' <c:pt idx="0"><c:v>' + re(l.name) + "</c:v></c:pt>", r += " </c:strCache>", r += " </c:strRef>", r += " </c:tx>", r += " <c:spPr>", r += ' <a:solidFill><a:schemeClr val="accent1"/></a:solidFill>', r += ' <a:ln w="9525" cap="flat"><a:solidFill><a:srgbClr val="F9F9F9"/></a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>', t.dataNoEffects ? r += "<a:effectLst/>" : r +=
|
|
4455
|
-
r += "<c:dPt>", r += ` <c:idx val="${f}"/>`, r += ' <c:bubble3D val="0"/>', r += " <c:spPr>", r += `<a:solidFill>${he(t.chartColors[f + 1 > t.chartColors.length ? Math.floor(Math.random() * t.chartColors.length) : f])}</a:solidFill>`, t.dataBorder && (r += `<a:ln w="${te(t.dataBorder.pt)}" cap="flat"><a:solidFill>${he(t.dataBorder.color)}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>`), r +=
|
|
4488
|
+
case Q.DOUGHNUT:
|
|
4489
|
+
case Q.PIE:
|
|
4490
|
+
l = n[0], r += "<c:" + e + "Chart>", r += ' <c:varyColors val="1"/>', r += "<c:ser>", r += ' <c:idx val="0"/>', r += ' <c:order val="0"/>', r += " <c:tx>", r += " <c:strRef>", r += " <c:f>Sheet1!$B$1</c:f>", r += " <c:strCache>", r += ' <c:ptCount val="1"/>', r += ' <c:pt idx="0"><c:v>' + re(l.name) + "</c:v></c:pt>", r += " </c:strCache>", r += " </c:strRef>", r += " </c:tx>", r += " <c:spPr>", r += ' <a:solidFill><a:schemeClr val="accent1"/></a:solidFill>', r += ' <a:ln w="9525" cap="flat"><a:solidFill><a:srgbClr val="F9F9F9"/></a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>', t.dataNoEffects ? r += "<a:effectLst/>" : r += He(t.shadow, Je), r += " </c:spPr>", l.labels[0].forEach((o, f) => {
|
|
4491
|
+
r += "<c:dPt>", r += ` <c:idx val="${f}"/>`, r += ' <c:bubble3D val="0"/>', r += " <c:spPr>", r += `<a:solidFill>${he(t.chartColors[f + 1 > t.chartColors.length ? Math.floor(Math.random() * t.chartColors.length) : f])}</a:solidFill>`, t.dataBorder && (r += `<a:ln w="${te(t.dataBorder.pt)}" cap="flat"><a:solidFill>${he(t.dataBorder.color)}</a:solidFill><a:prstDash val="solid"/><a:round/></a:ln>`), r += He(t.shadow, Je), r += " </c:spPr>", r += "</c:dPt>";
|
|
4456
4492
|
}), r += "<c:dLbls>", l.labels[0].forEach((o, f) => {
|
|
4457
|
-
r += "<c:dLbl>", r += ` <c:idx val="${f}"/>`, r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:spPr/><c:txPr>", r += " <a:bodyPr/><a:lstStyle/>", r += " <a:p><a:pPr>", r += ` <a:defRPr sz="${Math.round((t.dataLabelFontSize ||
|
|
4458
|
-
}), r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:txPr>", r += " <a:bodyPr/>", r += " <a:lstStyle/>", r += " <a:p>", r += " <a:pPr>", r += ` <a:defRPr sz="1800" b="${t.dataLabelFontBold ? "1" : "0"}" i="${t.dataLabelFontItalic ? "1" : "0"}" u="none" strike="noStrike">`, r += ' <a:solidFill><a:srgbClr val="000000"/></a:solidFill><a:latin typeface="Arial"/>', r += " </a:defRPr>", r += " </a:pPr>", r += " </a:p>", r += " </c:txPr>", r += e ===
|
|
4493
|
+
r += "<c:dLbl>", r += ` <c:idx val="${f}"/>`, r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:spPr/><c:txPr>", r += " <a:bodyPr/><a:lstStyle/>", r += " <a:p><a:pPr>", r += ` <a:defRPr sz="${Math.round((t.dataLabelFontSize || Se) * 100)}" b="${t.dataLabelFontBold ? 1 : 0}" i="${t.dataLabelFontItalic ? 1 : 0}" u="none" strike="noStrike">`, r += " <a:solidFill>" + he(t.dataLabelColor || De) + "</a:solidFill>", r += ` <a:latin typeface="${t.dataLabelFontFace || "Arial"}"/>`, r += " </a:defRPr>", r += " </a:pPr></a:p>", r += " </c:txPr>", e === Q.PIE && t.dataLabelPosition && (r += `<c:dLblPos val="${t.dataLabelPosition}"/>`), r += ' <c:showLegendKey val="0"/>', r += ' <c:showVal val="' + (t.showValue ? "1" : "0") + '"/>', r += ' <c:showCatName val="' + (t.showLabel ? "1" : "0") + '"/>', r += ' <c:showSerName val="' + (t.showSerName ? "1" : "0") + '"/>', r += ' <c:showPercent val="' + (t.showPercent ? "1" : "0") + '"/>', r += ' <c:showBubbleSize val="0"/>', r += " </c:dLbl>";
|
|
4494
|
+
}), r += ` <c:numFmt formatCode="${re(t.dataLabelFormatCode) || "General"}" sourceLinked="0"/>`, r += " <c:txPr>", r += " <a:bodyPr/>", r += " <a:lstStyle/>", r += " <a:p>", r += " <a:pPr>", r += ` <a:defRPr sz="1800" b="${t.dataLabelFontBold ? "1" : "0"}" i="${t.dataLabelFontItalic ? "1" : "0"}" u="none" strike="noStrike">`, r += ' <a:solidFill><a:srgbClr val="000000"/></a:solidFill><a:latin typeface="Arial"/>', r += " </a:defRPr>", r += " </a:pPr>", r += " </a:p>", r += " </c:txPr>", r += e === Q.PIE ? '<c:dLblPos val="ctr"/>' : "", r += ' <c:showLegendKey val="0"/>', r += ' <c:showVal val="0"/>', r += ' <c:showCatName val="1"/>', r += ' <c:showSerName val="0"/>', r += ' <c:showPercent val="1"/>', r += ' <c:showBubbleSize val="0"/>', r += ` <c:showLeaderLines val="${t.showLeaderLines ? "1" : "0"}"/>`, r += "</c:dLbls>", r += "<c:cat>", r += " <c:strRef>", r += ` <c:f>Sheet1!$A$2:$A$${l.labels[0].length + 1}</c:f>`, r += " <c:strCache>", r += ` <c:ptCount val="${l.labels[0].length}"/>`, l.labels[0].forEach((o, f) => {
|
|
4459
4495
|
r += `<c:pt idx="${f}"><c:v>${re(o)}</c:v></c:pt>`;
|
|
4460
4496
|
}), r += " </c:strCache>", r += " </c:strRef>", r += "</c:cat>", r += " <c:val>", r += " <c:numRef>", r += ` <c:f>Sheet1!$B$2:$B$${l.labels[0].length + 1}</c:f>`, r += " <c:numCache>", r += ` <c:ptCount val="${l.labels[0].length}"/>`, l.values.forEach((o, f) => {
|
|
4461
4497
|
r += `<c:pt idx="${f}"><c:v>${o || o === 0 ? o : ""}</c:v></c:pt>`;
|
|
4462
|
-
}), r += " </c:numCache>", r += " </c:numRef>", r += " </c:val>", r += " </c:ser>", r += ` <c:firstSliceAng val="${t.firstSliceAng ? Math.round(t.firstSliceAng) : 0}"/>`, e ===
|
|
4498
|
+
}), r += " </c:numCache>", r += " </c:numRef>", r += " </c:val>", r += " </c:ser>", r += ` <c:firstSliceAng val="${t.firstSliceAng ? Math.round(t.firstSliceAng) : 0}"/>`, e === Q.DOUGHNUT && (r += `<c:holeSize val="${typeof t.holeSize == "number" ? t.holeSize : "50"}"/>`), r += "</c:" + e + "Chart>";
|
|
4463
4499
|
break;
|
|
4464
4500
|
default:
|
|
4465
4501
|
r += "";
|
|
@@ -4469,43 +4505,43 @@ function ua(e, n, t, A, a, i) {
|
|
|
4469
4505
|
}
|
|
4470
4506
|
function Ut(e, n, t) {
|
|
4471
4507
|
let A = "";
|
|
4472
|
-
return e._type ===
|
|
4508
|
+
return e._type === Q.SCATTER || e._type === Q.BUBBLE || e._type === Q.BUBBLE3D ? A += "<c:valAx>" : A += "<c:" + (e.catLabelFormatCode ? "dateAx" : "catAx") + ">", A += ' <c:axId val="' + n + '"/>', A += " <c:scaling>", A += '<c:orientation val="' + (e.catAxisOrientation || (e.barDir === "col", "minMax")) + '"/>', (e.catAxisMaxVal || e.catAxisMaxVal === 0) && (A += `<c:max val="${e.catAxisMaxVal}"/>`), (e.catAxisMinVal || e.catAxisMinVal === 0) && (A += `<c:min val="${e.catAxisMinVal}"/>`), A += "</c:scaling>", A += ' <c:delete val="' + (e.catAxisHidden ? "1" : "0") + '"/>', A += ' <c:axPos val="' + (e.barDir === "col" ? "b" : "l") + '"/>', A += e.catGridLine.style !== "none" ? na(e.catGridLine) : "", e.showCatAxisTitle && (A += Nt({
|
|
4473
4509
|
color: e.catAxisTitleColor,
|
|
4474
4510
|
fontFace: e.catAxisTitleFontFace,
|
|
4475
4511
|
fontSize: e.catAxisTitleFontSize,
|
|
4476
4512
|
titleRotate: e.catAxisTitleRotate,
|
|
4477
4513
|
title: e.catAxisTitle || "Axis Title"
|
|
4478
|
-
})), e._type ===
|
|
4514
|
+
})), e._type === Q.SCATTER || e._type === Q.BUBBLE || e._type === Q.BUBBLE3D ? A += ' <c:numFmt formatCode="' + (e.valAxisLabelFormatCode ? re(e.valAxisLabelFormatCode) : "General") + '" sourceLinked="1"/>' : A += ' <c:numFmt formatCode="' + (re(e.catLabelFormatCode) || "General") + '" sourceLinked="1"/>', e._type === Q.SCATTER ? (A += ' <c:majorTickMark val="none"/>', A += ' <c:minorTickMark val="none"/>', A += ' <c:tickLblPos val="nextTo"/>') : (A += ' <c:majorTickMark val="' + (e.catAxisMajorTickMark || "out") + '"/>', A += ' <c:minorTickMark val="' + (e.catAxisMinorTickMark || "none") + '"/>', A += ' <c:tickLblPos val="' + (e.catAxisLabelPos || (e.barDir === "col" ? "low" : "nextTo")) + '"/>'), A += " <c:spPr>", A += ` <a:ln w="${e.catAxisLineSize ? te(e.catAxisLineSize) : gt}" cap="flat">`, A += e.catAxisLineShow ? "<a:solidFill>" + he(e.catAxisLineColor || je.color) + "</a:solidFill>" : "<a:noFill/>", A += ' <a:prstDash val="' + (e.catAxisLineStyle || "solid") + '"/>', A += " <a:round/>", A += " </a:ln>", A += " </c:spPr>", A += " <c:txPr>", e.catAxisLabelRotate ? A += `<a:bodyPr rot="${Ke(e.catAxisLabelRotate)}"/>` : A += "<a:bodyPr/>", A += " <a:lstStyle/>", A += " <a:p>", A += " <a:pPr>", A += ` <a:defRPr sz="${Math.round((e.catAxisLabelFontSize || Se) * 100)}" b="${e.catAxisLabelFontBold ? 1 : 0}" i="${e.catAxisLabelFontItalic ? 1 : 0}" u="none" strike="noStrike">`, A += " <a:solidFill>" + he(e.catAxisLabelColor || De) + "</a:solidFill>", A += ' <a:latin typeface="' + (e.catAxisLabelFontFace || "Arial") + '"/>', A += " </a:defRPr>", A += " </a:pPr>", A += ' <a:endParaRPr lang="' + (e.lang || "en-US") + '"/>', A += " </a:p>", A += " </c:txPr>", A += ' <c:crossAx val="' + t + '"/>', A += ` <c:${typeof e.valAxisCrossesAt == "number" ? "crossesAt" : "crosses"} val="${e.valAxisCrossesAt || "autoZero"}"/>`, A += ' <c:auto val="1"/>', A += ' <c:lblAlgn val="ctr"/>', A += ` <c:noMultiLvlLbl val="${e.catAxisMultiLevelLabels ? 0 : 1}"/>`, e.catAxisLabelFrequency && (A += ' <c:tickLblSkip val="' + e.catAxisLabelFrequency + '"/>'), (e.catLabelFormatCode || e._type === Q.SCATTER || e._type === Q.BUBBLE || e._type === Q.BUBBLE3D) && (e.catLabelFormatCode && (["catAxisBaseTimeUnit", "catAxisMajorTimeUnit", "catAxisMinorTimeUnit"].forEach((a) => {
|
|
4479
4515
|
e[a] && (typeof e[a] != "string" || !["days", "months", "years"].includes(e[a].toLowerCase())) && (console.warn(`"${a}" must be one of: 'days','months','years' !`), e[a] = null);
|
|
4480
|
-
}), e.catAxisBaseTimeUnit && (A += '<c:baseTimeUnit val="' + e.catAxisBaseTimeUnit.toLowerCase() + '"/>'), e.catAxisMajorTimeUnit && (A += '<c:majorTimeUnit val="' + e.catAxisMajorTimeUnit.toLowerCase() + '"/>'), e.catAxisMinorTimeUnit && (A += '<c:minorTimeUnit val="' + e.catAxisMinorTimeUnit.toLowerCase() + '"/>')), e.catAxisMajorUnit && (A += `<c:majorUnit val="${e.catAxisMajorUnit}"/>`), e.catAxisMinorUnit && (A += `<c:minorUnit val="${e.catAxisMinorUnit}"/>`)), e._type ===
|
|
4516
|
+
}), e.catAxisBaseTimeUnit && (A += '<c:baseTimeUnit val="' + e.catAxisBaseTimeUnit.toLowerCase() + '"/>'), e.catAxisMajorTimeUnit && (A += '<c:majorTimeUnit val="' + e.catAxisMajorTimeUnit.toLowerCase() + '"/>'), e.catAxisMinorTimeUnit && (A += '<c:minorTimeUnit val="' + e.catAxisMinorTimeUnit.toLowerCase() + '"/>')), e.catAxisMajorUnit && (A += `<c:majorUnit val="${e.catAxisMajorUnit}"/>`), e.catAxisMinorUnit && (A += `<c:minorUnit val="${e.catAxisMinorUnit}"/>`)), e._type === Q.SCATTER || e._type === Q.BUBBLE || e._type === Q.BUBBLE3D ? A += "</c:valAx>" : A += "</c:" + (e.catLabelFormatCode ? "dateAx" : "catAx") + ">", A;
|
|
4481
4517
|
}
|
|
4482
4518
|
function Ot(e, n) {
|
|
4483
|
-
let t = n ===
|
|
4519
|
+
let t = n === Oe ? e.barDir === "col" ? "l" : "b" : e.barDir !== "col" ? "r" : "t";
|
|
4484
4520
|
n === Ct && (t = "r");
|
|
4485
|
-
const A = n ===
|
|
4521
|
+
const A = n === Oe ? dt : Qt;
|
|
4486
4522
|
let a = "";
|
|
4487
|
-
return a += "<c:valAx>", a += ' <c:axId val="' + n + '"/>', a += " <c:scaling>", e.valAxisLogScaleBase && (a += `<c:logBase val="${e.valAxisLogScaleBase}"/>`), a += '<c:orientation val="' + (e.valAxisOrientation || (e.barDir === "col", "minMax")) + '"/>', (e.valAxisMaxVal || e.valAxisMaxVal === 0) && (a += `<c:max val="${e.valAxisMaxVal}"/>`), (e.valAxisMinVal || e.valAxisMinVal === 0) && (a += `<c:min val="${e.valAxisMinVal}"/>`), a += " </c:scaling>", a += ` <c:delete val="${e.valAxisHidden ? 1 : 0}"/>`, a += ' <c:axPos val="' + t + '"/>', e.valGridLine.style !== "none" && (a +=
|
|
4523
|
+
return a += "<c:valAx>", a += ' <c:axId val="' + n + '"/>', a += " <c:scaling>", e.valAxisLogScaleBase && (a += `<c:logBase val="${e.valAxisLogScaleBase}"/>`), a += '<c:orientation val="' + (e.valAxisOrientation || (e.barDir === "col", "minMax")) + '"/>', (e.valAxisMaxVal || e.valAxisMaxVal === 0) && (a += `<c:max val="${e.valAxisMaxVal}"/>`), (e.valAxisMinVal || e.valAxisMinVal === 0) && (a += `<c:min val="${e.valAxisMinVal}"/>`), a += " </c:scaling>", a += ` <c:delete val="${e.valAxisHidden ? 1 : 0}"/>`, a += ' <c:axPos val="' + t + '"/>', e.valGridLine.style !== "none" && (a += na(e.valGridLine)), e.showValAxisTitle && (a += Nt({
|
|
4488
4524
|
color: e.valAxisTitleColor,
|
|
4489
4525
|
fontFace: e.valAxisTitleFontFace,
|
|
4490
4526
|
fontSize: e.valAxisTitleFontSize,
|
|
4491
4527
|
titleRotate: e.valAxisTitleRotate,
|
|
4492
4528
|
title: e.valAxisTitle || "Axis Title"
|
|
4493
|
-
})), a += `<c:numFmt formatCode="${e.valAxisLabelFormatCode ? re(e.valAxisLabelFormatCode) : "General"}" sourceLinked="0"/>`, e._type ===
|
|
4529
|
+
})), a += `<c:numFmt formatCode="${e.valAxisLabelFormatCode ? re(e.valAxisLabelFormatCode) : "General"}" sourceLinked="0"/>`, e._type === Q.SCATTER ? (a += ' <c:majorTickMark val="none"/>', a += ' <c:minorTickMark val="none"/>', a += ' <c:tickLblPos val="nextTo"/>') : (a += ' <c:majorTickMark val="' + (e.valAxisMajorTickMark || "out") + '"/>', a += ' <c:minorTickMark val="' + (e.valAxisMinorTickMark || "none") + '"/>', a += ' <c:tickLblPos val="' + (e.valAxisLabelPos || (e.barDir === "col" ? "nextTo" : "low")) + '"/>'), a += " <c:spPr>", a += ` <a:ln w="${e.valAxisLineSize ? te(e.valAxisLineSize) : gt}" cap="flat">`, a += e.valAxisLineShow ? "<a:solidFill>" + he(e.valAxisLineColor || je.color) + "</a:solidFill>" : "<a:noFill/>", a += ' <a:prstDash val="' + (e.valAxisLineStyle || "solid") + '"/>', a += " <a:round/>", a += " </a:ln>", a += " </c:spPr>", a += " <c:txPr>", a += ` <a:bodyPr${e.valAxisLabelRotate ? ' rot="' + Ke(e.valAxisLabelRotate).toString() + '"' : ""}/>`, a += " <a:lstStyle/>", a += " <a:p>", a += " <a:pPr>", a += ` <a:defRPr sz="${Math.round((e.valAxisLabelFontSize || Se) * 100)}" b="${e.valAxisLabelFontBold ? 1 : 0}" i="${e.valAxisLabelFontItalic ? 1 : 0}" u="none" strike="noStrike">`, a += " <a:solidFill>" + he(e.valAxisLabelColor || De) + "</a:solidFill>", a += ' <a:latin typeface="' + (e.valAxisLabelFontFace || "Arial") + '"/>', a += " </a:defRPr>", a += " </a:pPr>", a += ' <a:endParaRPr lang="' + (e.lang || "en-US") + '"/>', a += " </a:p>", a += " </c:txPr>", a += ' <c:crossAx val="' + A + '"/>', typeof e.catAxisCrossesAt == "number" ? a += ` <c:crossesAt val="${e.catAxisCrossesAt}"/>` : typeof e.catAxisCrossesAt == "string" ? a += ' <c:crosses val="' + e.catAxisCrossesAt + '"/>' : a += ' <c:crosses val="' + (t === "r" || t === "t" ? "max" : "autoZero") + '"/>', a += ' <c:crossBetween val="' + (e._type === Q.SCATTER || Array.isArray(e._type) && e._type.filter((i) => i.type === Q.AREA).length > 0 ? "midCat" : "between") + '"/>', e.valAxisMajorUnit && (a += ` <c:majorUnit val="${e.valAxisMajorUnit}"/>`), e.valAxisDisplayUnit && (a += `<c:dispUnits><c:builtInUnit val="${e.valAxisDisplayUnit}"/>${e.valAxisDisplayUnitLabel ? "<c:dispUnitsLbl/>" : ""}</c:dispUnits>`), a += "</c:valAx>", a;
|
|
4494
4530
|
}
|
|
4495
|
-
function
|
|
4531
|
+
function Wr(e, n, t) {
|
|
4496
4532
|
let A = "";
|
|
4497
|
-
return A += "<c:serAx>", A += ' <c:axId val="' + n + '"/>', A += ' <c:scaling><c:orientation val="' + (e.serAxisOrientation || (e.barDir === "col", "minMax")) + '"/></c:scaling>', A += ' <c:delete val="' + (e.serAxisHidden ? "1" : "0") + '"/>', A += ' <c:axPos val="' + (e.barDir === "col" ? "b" : "l") + '"/>', A += e.serGridLine.style !== "none" ?
|
|
4533
|
+
return A += "<c:serAx>", A += ' <c:axId val="' + n + '"/>', A += ' <c:scaling><c:orientation val="' + (e.serAxisOrientation || (e.barDir === "col", "minMax")) + '"/></c:scaling>', A += ' <c:delete val="' + (e.serAxisHidden ? "1" : "0") + '"/>', A += ' <c:axPos val="' + (e.barDir === "col" ? "b" : "l") + '"/>', A += e.serGridLine.style !== "none" ? na(e.serGridLine) : "", e.showSerAxisTitle && (A += Nt({
|
|
4498
4534
|
color: e.serAxisTitleColor,
|
|
4499
4535
|
fontFace: e.serAxisTitleFontFace,
|
|
4500
4536
|
fontSize: e.serAxisTitleFontSize,
|
|
4501
4537
|
titleRotate: e.serAxisTitleRotate,
|
|
4502
4538
|
title: e.serAxisTitle || "Axis Title"
|
|
4503
|
-
})), A += ` <c:numFmt formatCode="${re(e.serLabelFormatCode) || "General"}" sourceLinked="0"/>`, A += ' <c:majorTickMark val="out"/>', A += ' <c:minorTickMark val="none"/>', A += ` <c:tickLblPos val="${e.serAxisLabelPos || e.barDir === "col" ? "low" : "nextTo"}"/>`, A += " <c:spPr>", A += ' <a:ln w="12700" cap="flat">', A += e.serAxisLineShow ? `<a:solidFill>${he(e.serAxisLineColor ||
|
|
4539
|
+
})), A += ` <c:numFmt formatCode="${re(e.serLabelFormatCode) || "General"}" sourceLinked="0"/>`, A += ' <c:majorTickMark val="out"/>', A += ' <c:minorTickMark val="none"/>', A += ` <c:tickLblPos val="${e.serAxisLabelPos || e.barDir === "col" ? "low" : "nextTo"}"/>`, A += " <c:spPr>", A += ' <a:ln w="12700" cap="flat">', A += e.serAxisLineShow ? `<a:solidFill>${he(e.serAxisLineColor || je.color)}</a:solidFill>` : "<a:noFill/>", A += ' <a:prstDash val="solid"/>', A += " <a:round/>", A += " </a:ln>", A += " </c:spPr>", A += " <c:txPr>", A += " <a:bodyPr/>", A += " <a:lstStyle/>", A += " <a:p>", A += " <a:pPr>", A += ` <a:defRPr sz="${Math.round((e.serAxisLabelFontSize || Se) * 100)}" b="${e.serAxisLabelFontBold ? "1" : "0"}" i="${e.serAxisLabelFontItalic ? "1" : "0"}" u="none" strike="noStrike">`, A += ` <a:solidFill>${he(e.serAxisLabelColor || De)}</a:solidFill>`, A += ` <a:latin typeface="${e.serAxisLabelFontFace || "Arial"}"/>`, A += " </a:defRPr>", A += " </a:pPr>", A += ' <a:endParaRPr lang="' + (e.lang || "en-US") + '"/>', A += " </a:p>", A += " </c:txPr>", A += ' <c:crossAx val="' + t + '"/>', A += ' <c:crosses val="autoZero"/>', e.serAxisLabelFrequency && (A += ' <c:tickLblSkip val="' + e.serAxisLabelFrequency + '"/>'), e.serLabelFormatCode && (["serAxisBaseTimeUnit", "serAxisMajorTimeUnit", "serAxisMinorTimeUnit"].forEach((a) => {
|
|
4504
4540
|
e[a] && (typeof e[a] != "string" || !["days", "months", "years"].includes(a.toLowerCase())) && (console.warn(`"${a}" must be one of: 'days','months','years' !`), e[a] = null);
|
|
4505
4541
|
}), e.serAxisBaseTimeUnit && (A += ` <c:baseTimeUnit val="${e.serAxisBaseTimeUnit.toLowerCase()}"/>`), e.serAxisMajorTimeUnit && (A += ` <c:majorTimeUnit val="${e.serAxisMajorTimeUnit.toLowerCase()}"/>`), e.serAxisMinorTimeUnit && (A += ` <c:minorTimeUnit val="${e.serAxisMinorTimeUnit.toLowerCase()}"/>`), e.serAxisMajorUnit && (A += ` <c:majorUnit val="${e.serAxisMajorUnit}"/>`), e.serAxisMinorUnit && (A += ` <c:minorUnit val="${e.serAxisMinorUnit}"/>`)), A += "</c:serAx>", A;
|
|
4506
4542
|
}
|
|
4507
4543
|
function Nt(e, n, t) {
|
|
4508
|
-
const A = e.titleAlign === "left" || e.titleAlign === "right" ? `<a:pPr algn="${e.titleAlign.substring(0, 1)}">` : "<a:pPr>", a = e.titleRotate ? `<a:bodyPr rot="${
|
|
4544
|
+
const A = e.titleAlign === "left" || e.titleAlign === "right" ? `<a:pPr algn="${e.titleAlign.substring(0, 1)}">` : "<a:pPr>", a = e.titleRotate ? `<a:bodyPr rot="${Ke(e.titleRotate)}"/>` : "<a:bodyPr/>", i = e.fontSize ? `sz="${Math.round(e.fontSize * 100)}"` : "", s = e.titleBold ? 1 : 0;
|
|
4509
4545
|
let c = "<c:layout/>";
|
|
4510
4546
|
if (e.titlePos && typeof e.titlePos.x == "number" && typeof e.titlePos.y == "number") {
|
|
4511
4547
|
const l = e.titlePos.x + n, r = e.titlePos.y + t;
|
|
@@ -4522,13 +4558,13 @@ function Nt(e, n, t) {
|
|
|
4522
4558
|
<a:p>
|
|
4523
4559
|
${A}
|
|
4524
4560
|
<a:defRPr ${i} b="${s}" i="0" u="none" strike="noStrike">
|
|
4525
|
-
<a:solidFill>${he(e.color ||
|
|
4561
|
+
<a:solidFill>${he(e.color || De)}</a:solidFill>
|
|
4526
4562
|
<a:latin typeface="${e.fontFace || "Arial"}"/>
|
|
4527
4563
|
</a:defRPr>
|
|
4528
4564
|
</a:pPr>
|
|
4529
4565
|
<a:r>
|
|
4530
4566
|
<a:rPr ${i} b="${s}" i="0" u="none" strike="noStrike">
|
|
4531
|
-
<a:solidFill>${he(e.color ||
|
|
4567
|
+
<a:solidFill>${he(e.color || De)}</a:solidFill>
|
|
4532
4568
|
<a:latin typeface="${e.fontFace || "Arial"}"/>
|
|
4533
4569
|
</a:rPr>
|
|
4534
4570
|
<a:t>${re(e.title) || ""}</a:t>
|
|
@@ -4545,7 +4581,7 @@ function ge(e) {
|
|
|
4545
4581
|
const t = e - 1;
|
|
4546
4582
|
return t <= 25 ? n = ct[t] : n = `${ct[Math.floor(t / ct.length - 1)]}${ct[t % ct.length]}`, n;
|
|
4547
4583
|
}
|
|
4548
|
-
function
|
|
4584
|
+
function He(e, n) {
|
|
4549
4585
|
if (e) {
|
|
4550
4586
|
if (typeof e != "object")
|
|
4551
4587
|
return console.warn("`shadow` options must be an object. Ex: `{shadow: {type:'none'}}`"), "<a:effectLst/>";
|
|
@@ -4554,9 +4590,9 @@ function qe(e, n) {
|
|
|
4554
4590
|
const A = Object.assign(Object.assign({}, n), e), a = A.type || "outer", i = te(A.blur), s = te(A.offset), c = Math.round(A.angle * 6e4), l = A.color, r = Math.round(A.opacity * 1e5), o = A.rotateWithShape ? 1 : 0;
|
|
4555
4591
|
return t += `<a:${a}Shdw sx="100000" sy="100000" kx="0" ky="0" algn="bl" blurRad="${i}" rotWithShape="${o}" dist="${s}" dir="${c}">`, t += `<a:srgbClr val="${l}">`, t += `<a:alpha val="${r}"/></a:srgbClr>`, t += `</a:${a}Shdw>`, t += "</a:effectLst>", t;
|
|
4556
4592
|
}
|
|
4557
|
-
function
|
|
4593
|
+
function na(e) {
|
|
4558
4594
|
let n = "<c:majorGridlines>";
|
|
4559
|
-
return n += " <c:spPr>", n += ` <a:ln w="${te(e.size ||
|
|
4595
|
+
return n += " <c:spPr>", n += ` <a:ln w="${te(e.size || je.size)}" cap="${Bt(e.cap || je.cap)}">`, n += ' <a:solidFill><a:srgbClr val="' + (e.color || je.color) + '"/></a:solidFill>', n += ' <a:prstDash val="' + (e.style || je.style) + '"/><a:round/>', n += " </a:ln>", n += " </c:spPr>", n += "</c:majorGridlines>", n;
|
|
4560
4596
|
}
|
|
4561
4597
|
function Bt(e) {
|
|
4562
4598
|
if (!e || e === "flat")
|
|
@@ -4606,7 +4642,7 @@ ${String(f)}`);
|
|
|
4606
4642
|
d.onload = () => {
|
|
4607
4643
|
const g = new FileReader();
|
|
4608
4644
|
g.onloadend = () => {
|
|
4609
|
-
o.data = g.result, l.filter((u) => u.isDuplicate && u.path === o.path).forEach((u) => u.data = o.data), o.isSvgPng ?
|
|
4645
|
+
o.data = g.result, l.filter((u) => u.isDuplicate && u.path === o.path).forEach((u) => u.data = o.data), o.isSvgPng ? ma(o).then(() => f("done")).catch(m) : f("done");
|
|
4610
4646
|
}, g.readAsDataURL(d.response);
|
|
4611
4647
|
}, d.onerror = () => {
|
|
4612
4648
|
o.data = nt, l.filter((g) => g.isDuplicate && g.path === o.path).forEach((g) => g.data = o.data), m(new Error(`ERROR! Unable to load image (xhr.onerror): ${o.path}`));
|
|
@@ -4615,11 +4651,11 @@ ${String(f)}`);
|
|
|
4615
4651
|
}));
|
|
4616
4652
|
}), e._relsMedia.filter((o) => o.isSvgPng && o.data).forEach((o) => {
|
|
4617
4653
|
Re(this, void 0, void 0, function* () {
|
|
4618
|
-
A && !a && (yield s()), A && a ? (o.data = nt, c.push(Promise.resolve("done"))) : c.push(
|
|
4654
|
+
A && !a && (yield s()), A && a ? (o.data = nt, c.push(Promise.resolve("done"))) : c.push(ma(o));
|
|
4619
4655
|
});
|
|
4620
4656
|
}), c;
|
|
4621
4657
|
}
|
|
4622
|
-
function
|
|
4658
|
+
function ma(e) {
|
|
4623
4659
|
return Re(this, void 0, void 0, function* () {
|
|
4624
4660
|
return yield new Promise((n, t) => {
|
|
4625
4661
|
const A = new Image();
|
|
@@ -4640,7 +4676,7 @@ function ga(e) {
|
|
|
4640
4676
|
});
|
|
4641
4677
|
});
|
|
4642
4678
|
}
|
|
4643
|
-
const
|
|
4679
|
+
const Qr = {
|
|
4644
4680
|
cover: function(e, n) {
|
|
4645
4681
|
const t = e.h / e.w, a = n.h / n.w > t, i = a ? n.h / t : n.w, s = a ? n.h : n.w * t, c = Math.round(1e5 * 0.5 * (1 - n.w / i)), l = Math.round(1e5 * 0.5 * (1 - n.h / s));
|
|
4646
4682
|
return `<a:srcRect l="${c}" r="${c}" t="${l}" b="${l}"/><a:stretch/>`;
|
|
@@ -4654,16 +4690,16 @@ const Xr = {
|
|
|
4654
4690
|
return `<a:srcRect l="${s}" r="${c}" t="${l}" b="${r}"/><a:stretch/>`;
|
|
4655
4691
|
}
|
|
4656
4692
|
};
|
|
4657
|
-
function
|
|
4693
|
+
function oa(e) {
|
|
4658
4694
|
var n;
|
|
4659
4695
|
let t = e._name ? '<p:cSld name="' + e._name + '">' : "<p:cSld>", A = 1;
|
|
4660
|
-
return e._bkgdImgRid ? t += `<p:bg><p:bgPr><a:blipFill dpi="0" rotWithShape="1"><a:blip r:embed="rId${e._bkgdImgRid}"><a:lum/></a:blip><a:srcRect/><a:stretch><a:fillRect/></a:stretch></a:blipFill><a:effectLst/></p:bgPr></p:bg>` : !((n = e.background) === null || n === void 0) && n.color ? t += `<p:bg><p:bgPr>${Ne(e.background)}</p:bgPr></p:bg>` : !e.bkgd && e._name && e._name ===
|
|
4696
|
+
return e._bkgdImgRid ? t += `<p:bg><p:bgPr><a:blipFill dpi="0" rotWithShape="1"><a:blip r:embed="rId${e._bkgdImgRid}"><a:lum/></a:blip><a:srcRect/><a:stretch><a:fillRect/></a:stretch></a:blipFill><a:effectLst/></p:bgPr></p:bg>` : !((n = e.background) === null || n === void 0) && n.color ? t += `<p:bg><p:bgPr>${Ne(e.background)}</p:bgPr></p:bg>` : !e.bkgd && e._name && e._name === Wt && (t += '<p:bg><p:bgRef idx="1001"><a:schemeClr val="bg1"/></p:bgRef></p:bg>'), t += "<p:spTree>", t += '<p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr>', t += '<p:grpSpPr><a:xfrm><a:off x="0" y="0"/><a:ext cx="0" cy="0"/>', t += '<a:chOff x="0" y="0"/><a:chExt cx="0" cy="0"/></a:xfrm></p:grpSpPr>', e._slideObjects.forEach((a, i) => {
|
|
4661
4697
|
var s, c, l, r, o, f, m, d;
|
|
4662
4698
|
let g = 0, u = 0, y = ie("75%", "X", e._presLayout), v = 0, b, x = "", D = null, B = null, T = 0, S = 0, U = null, k = null;
|
|
4663
4699
|
const M = (s = a.options) === null || s === void 0 ? void 0 : s.sizing, J = (c = a.options) === null || c === void 0 ? void 0 : c.rounding;
|
|
4664
4700
|
e._slideLayout !== void 0 && e._slideLayout._slideObjects !== void 0 && a.options && a.options.placeholder && (b = e._slideLayout._slideObjects.filter((p) => p.options.placeholder === a.options.placeholder)[0]), a.options = a.options || {}, typeof a.options.x < "u" && (g = ie(a.options.x, "X", e._presLayout)), typeof a.options.y < "u" && (u = ie(a.options.y, "Y", e._presLayout)), typeof a.options.w < "u" && (y = ie(a.options.w, "X", e._presLayout)), typeof a.options.h < "u" && (v = ie(a.options.h, "Y", e._presLayout));
|
|
4665
4701
|
let L = y, _ = v;
|
|
4666
|
-
switch (b && ((b.options.x || b.options.x === 0) && (g = ie(b.options.x, "X", e._presLayout)), (b.options.y || b.options.y === 0) && (u = ie(b.options.y, "Y", e._presLayout)), (b.options.w || b.options.w === 0) && (y = ie(b.options.w, "X", e._presLayout)), (b.options.h || b.options.h === 0) && (v = ie(b.options.h, "Y", e._presLayout))), a.options.flipH && (x += ' flipH="1"'), a.options.flipV && (x += ' flipV="1"'), a.options.rotate && (x += ` rot="${
|
|
4702
|
+
switch (b && ((b.options.x || b.options.x === 0) && (g = ie(b.options.x, "X", e._presLayout)), (b.options.y || b.options.y === 0) && (u = ie(b.options.y, "Y", e._presLayout)), (b.options.w || b.options.w === 0) && (y = ie(b.options.w, "X", e._presLayout)), (b.options.h || b.options.h === 0) && (v = ie(b.options.h, "Y", e._presLayout))), a.options.flipH && (x += ' flipH="1"'), a.options.flipV && (x += ' flipV="1"'), a.options.rotate && (x += ` rot="${Ke(a.options.rotate)}"`), a._type) {
|
|
4667
4703
|
case ne.table:
|
|
4668
4704
|
if (D = a.arrTabRows, B = a.options, T = 0, S = 0, D[0].forEach((p) => {
|
|
4669
4705
|
U = p.options || null, T += U?.colspan ? Number(U.colspan) : 1;
|
|
@@ -4723,10 +4759,10 @@ function na(e) {
|
|
|
4723
4759
|
let fe = !((F = ($ = j._optImp) === null || $ === void 0 ? void 0 : $.fill) === null || F === void 0) && F.color ? j._optImp.fill.color : !((N = j._optImp) === null || N === void 0) && N.fill && typeof j._optImp.fill == "string" ? j._optImp.fill : "";
|
|
4724
4760
|
fe = fe || Ae.fill ? Ae.fill : "";
|
|
4725
4761
|
const we = fe ? Ne(fe) : "";
|
|
4726
|
-
let se = Ae.margin === 0 || Ae.margin ? Ae.margin :
|
|
4762
|
+
let se = Ae.margin === 0 || Ae.margin ? Ae.margin : Sa;
|
|
4727
4763
|
!Array.isArray(se) && typeof se == "number" && (se = [se, se, se, se]);
|
|
4728
|
-
let
|
|
4729
|
-
se[0] >= 1 ?
|
|
4764
|
+
let Be = "";
|
|
4765
|
+
se[0] >= 1 ? Be = ` marL="${te(se[3])}" marR="${te(se[1])}" marT="${te(se[0])}" marB="${te(se[2])}"` : Be = ` marL="${le(se[3])}" marR="${le(se[1])}" marT="${le(se[0])}" marB="${le(se[2])}"`, k += `<a:tc${Y}>${ya(j)}<a:tcPr${Be}${xe}${ce}>`, Ae.border && Array.isArray(Ae.border) && [
|
|
4730
4766
|
{ idx: 3, name: "lnL" },
|
|
4731
4767
|
{ idx: 1, name: "lnR" },
|
|
4732
4768
|
{ idx: 0, name: "lnT" },
|
|
@@ -4744,7 +4780,7 @@ function na(e) {
|
|
|
4744
4780
|
if ("curve" in p)
|
|
4745
4781
|
switch (p.curve.type) {
|
|
4746
4782
|
case "arc":
|
|
4747
|
-
t += `<a:arcTo hR="${ie(p.curve.hR, "Y", e._presLayout)}" wR="${ie(p.curve.wR, "X", e._presLayout)}" stAng="${
|
|
4783
|
+
t += `<a:arcTo hR="${ie(p.curve.hR, "Y", e._presLayout)}" wR="${ie(p.curve.wR, "X", e._presLayout)}" stAng="${Ke(p.curve.stAng)}" swAng="${Ke(p.curve.swAng)}" />`;
|
|
4748
4784
|
break;
|
|
4749
4785
|
case "cubic":
|
|
4750
4786
|
t += `<a:cubicBezTo>
|
|
@@ -4768,21 +4804,21 @@ function na(e) {
|
|
|
4768
4804
|
else if (a.options.angleRange) {
|
|
4769
4805
|
for (let p = 0; p < 2; p++) {
|
|
4770
4806
|
const I = a.options.angleRange[p];
|
|
4771
|
-
t += `<a:gd name="adj${p + 1}" fmla="val ${
|
|
4807
|
+
t += `<a:gd name="adj${p + 1}" fmla="val ${Ke(I)}" />`;
|
|
4772
4808
|
}
|
|
4773
4809
|
a.options.arcThicknessRatio && (t += `<a:gd name="adj3" fmla="val ${Math.round(a.options.arcThicknessRatio * 5e4)}" />`);
|
|
4774
4810
|
}
|
|
4775
4811
|
t += "</a:avLst></a:prstGeom>";
|
|
4776
4812
|
}
|
|
4777
|
-
t += a.options.fill ? Ne(a.options.fill) : "<a:noFill/>", a.options.line && (t += a.options.line.width ? `<a:ln w="${te(a.options.line.width)}">` : "<a:ln>", a.options.line.color && (t += Ne(a.options.line)), a.options.line.dashType && (t += `<a:prstDash val="${a.options.line.dashType}"/>`), a.options.line.beginArrowType && (t += `<a:headEnd type="${a.options.line.beginArrowType}"/>`), a.options.line.endArrowType && (t += `<a:tailEnd type="${a.options.line.endArrowType}"/>`), t += "</a:ln>"), a.options.shadow && a.options.shadow.type !== "none" && (a.options.shadow.type = a.options.shadow.type || "outer", a.options.shadow.blur = te(a.options.shadow.blur || 8), a.options.shadow.offset = te(a.options.shadow.offset || 4), a.options.shadow.angle = Math.round((a.options.shadow.angle || 270) * 6e4), a.options.shadow.opacity = Math.round((a.options.shadow.opacity || 0.75) * 1e5), a.options.shadow.color = a.options.shadow.color ||
|
|
4813
|
+
t += a.options.fill ? Ne(a.options.fill) : "<a:noFill/>", a.options.line && (t += a.options.line.width ? `<a:ln w="${te(a.options.line.width)}">` : "<a:ln>", a.options.line.color && (t += Ne(a.options.line)), a.options.line.dashType && (t += `<a:prstDash val="${a.options.line.dashType}"/>`), a.options.line.beginArrowType && (t += `<a:headEnd type="${a.options.line.beginArrowType}"/>`), a.options.line.endArrowType && (t += `<a:tailEnd type="${a.options.line.endArrowType}"/>`), t += "</a:ln>"), a.options.shadow && a.options.shadow.type !== "none" && (a.options.shadow.type = a.options.shadow.type || "outer", a.options.shadow.blur = te(a.options.shadow.blur || 8), a.options.shadow.offset = te(a.options.shadow.offset || 4), a.options.shadow.angle = Math.round((a.options.shadow.angle || 270) * 6e4), a.options.shadow.opacity = Math.round((a.options.shadow.opacity || 0.75) * 1e5), a.options.shadow.color = a.options.shadow.color || ua.color, t += "<a:effectLst>", t += ` <a:${a.options.shadow.type}Shdw ${a.options.shadow.type === "outer" ? 'sx="100000" sy="100000" kx="0" ky="0" algn="bl" rotWithShape="0"' : ""} blurRad="${a.options.shadow.blur}" dist="${a.options.shadow.offset}" dir="${a.options.shadow.angle}">`, t += ` <a:srgbClr val="${a.options.shadow.color}">`, t += ` <a:alpha val="${a.options.shadow.opacity}"/></a:srgbClr>`, t += " </a:outerShdw>", t += "</a:effectLst>"), t += "</p:spPr>", t += ya(a), t += "</p:sp>";
|
|
4778
4814
|
break;
|
|
4779
4815
|
case ne.image:
|
|
4780
4816
|
if (t += "<p:pic>", t += " <p:nvPicPr>", t += `<p:cNvPr id="${i + 2}" name="${a.options.objectName}" descr="${re(a.options.altText || a.image)}">`, !((m = a.hyperlink) === null || m === void 0) && m.url && (t += `<a:hlinkClick r:id="rId${a.hyperlink._rId}" tooltip="${a.hyperlink.tooltip ? re(a.hyperlink.tooltip) : ""}"/>`), !((d = a.hyperlink) === null || d === void 0) && d.slide && (t += `<a:hlinkClick r:id="rId${a.hyperlink._rId}" tooltip="${a.hyperlink.tooltip ? re(a.hyperlink.tooltip) : ""}" action="ppaction://hlinksldjump"/>`), t += " </p:cNvPr>", t += ' <p:cNvPicPr><a:picLocks noChangeAspect="1"/></p:cNvPicPr>', t += " <p:nvPr>" + xt(b) + "</p:nvPr>", t += " </p:nvPicPr>", t += "<p:blipFill>", (e._relsMedia || []).filter((p) => p.rId === a.imageRid)[0] && (e._relsMedia || []).filter((p) => p.rId === a.imageRid)[0].extn === "svg" ? (t += `<a:blip r:embed="rId${a.imageRid - 1}">`, t += a.options.transparency ? ` <a:alphaModFix amt="${Math.round((100 - a.options.transparency) * 1e3)}"/>` : "", t += " <a:extLst>", t += ' <a:ext uri="{96DAC541-7B7A-43D3-8B79-37D633B846F1}">', t += ` <asvg:svgBlip xmlns:asvg="http://schemas.microsoft.com/office/drawing/2016/SVG/main" r:embed="rId${a.imageRid}"/>`, t += " </a:ext>", t += " </a:extLst>", t += "</a:blip>") : (t += `<a:blip r:embed="rId${a.imageRid}">`, t += a.options.transparency ? `<a:alphaModFix amt="${Math.round((100 - a.options.transparency) * 1e3)}"/>` : "", t += "</a:blip>"), M?.type) {
|
|
4781
4817
|
const p = M.w ? ie(M.w, "X", e._presLayout) : y, I = M.h ? ie(M.h, "Y", e._presLayout) : v, K = ie(M.x || 0, "X", e._presLayout), O = ie(M.y || 0, "Y", e._presLayout);
|
|
4782
|
-
t +=
|
|
4818
|
+
t += Qr[M.type]({ w: L, h: _ }, { w: p, h: I, x: K, y: O }), L = p, _ = I;
|
|
4783
4819
|
} else
|
|
4784
4820
|
t += " <a:stretch><a:fillRect/></a:stretch>";
|
|
4785
|
-
t += "</p:blipFill>", t += "<p:spPr>", t += " <a:xfrm" + x + ">", t += ` <a:off x="${g}" y="${u}"/>`, t += ` <a:ext cx="${L}" cy="${_}"/>`, t += " </a:xfrm>", t += ` <a:prstGeom prst="${J ? "ellipse" : "rect"}"><a:avLst/></a:prstGeom>`, a.options.shadow && a.options.shadow.type !== "none" && (a.options.shadow.type = a.options.shadow.type || "outer", a.options.shadow.blur = te(a.options.shadow.blur || 8), a.options.shadow.offset = te(a.options.shadow.offset || 4), a.options.shadow.angle = Math.round((a.options.shadow.angle || 270) * 6e4), a.options.shadow.opacity = Math.round((a.options.shadow.opacity || 0.75) * 1e5), a.options.shadow.color = a.options.shadow.color ||
|
|
4821
|
+
t += "</p:blipFill>", t += "<p:spPr>", t += " <a:xfrm" + x + ">", t += ` <a:off x="${g}" y="${u}"/>`, t += ` <a:ext cx="${L}" cy="${_}"/>`, t += " </a:xfrm>", t += ` <a:prstGeom prst="${J ? "ellipse" : "rect"}"><a:avLst/></a:prstGeom>`, a.options.shadow && a.options.shadow.type !== "none" && (a.options.shadow.type = a.options.shadow.type || "outer", a.options.shadow.blur = te(a.options.shadow.blur || 8), a.options.shadow.offset = te(a.options.shadow.offset || 4), a.options.shadow.angle = Math.round((a.options.shadow.angle || 270) * 6e4), a.options.shadow.opacity = Math.round((a.options.shadow.opacity || 0.75) * 1e5), a.options.shadow.color = a.options.shadow.color || ua.color, t += "<a:effectLst>", t += `<a:${a.options.shadow.type}Shdw ${a.options.shadow.type === "outer" ? 'sx="100000" sy="100000" kx="0" ky="0" algn="bl" rotWithShape="0"' : ""} blurRad="${a.options.shadow.blur}" dist="${a.options.shadow.offset}" dir="${a.options.shadow.angle}">`, t += `<a:srgbClr val="${a.options.shadow.color}">`, t += `<a:alpha val="${a.options.shadow.opacity}"/></a:srgbClr>`, t += `</a:${a.options.shadow.type}Shdw>`, t += "</a:effectLst>"), t += "</p:spPr>", t += "</p:pic>";
|
|
4786
4822
|
break;
|
|
4787
4823
|
case ne.media:
|
|
4788
4824
|
a.mtype === "online" ? (t += "<p:pic>", t += " <p:nvPicPr>", t += `<p:cNvPr id="${a.mediaRid + 2}" name="${a.options.objectName}"/>`, t += " <p:cNvPicPr/>", t += " <p:nvPr>", t += ` <a:videoFile r:link="rId${a.mediaRid}"/>`, t += " </p:nvPr>", t += " </p:nvPicPr>", t += ` <p:blipFill><a:blip r:embed="rId${a.mediaRid + 1}"/><a:stretch><a:fillRect/></a:stretch></p:blipFill>`, t += " <p:spPr>", t += ` <a:xfrm${x}><a:off x="${g}" y="${u}"/><a:ext cx="${y}" cy="${v}"/></a:xfrm>`, t += ' <a:prstGeom prst="rect"><a:avLst/></a:prstGeom>', t += " </p:spPr>", t += "</p:pic>") : (t += "<p:pic>", t += " <p:nvPicPr>", t += `<p:cNvPr id="${a.mediaRid + 2}" name="${a.options.objectName}"><a:hlinkClick r:id="" action="ppaction://media"/></p:cNvPr>`, t += ' <p:cNvPicPr><a:picLocks noChangeAspect="1"/></p:cNvPicPr>', t += " <p:nvPr>", t += ` <a:videoFile r:link="rId${a.mediaRid}"/>`, t += " <p:extLst>", t += ' <p:ext uri="{DAA4B4D4-6D71-4841-9C94-3DE7FCFB9230}">', t += ` <p14:media xmlns:p14="http://schemas.microsoft.com/office/powerpoint/2010/main" r:embed="rId${a.mediaRid + 1}"/>`, t += " </p:ext>", t += " </p:extLst>", t += " </p:nvPr>", t += " </p:nvPicPr>", t += ` <p:blipFill><a:blip r:embed="rId${a.mediaRid + 2}"/><a:stretch><a:fillRect/></a:stretch></p:blipFill>`, t += " <p:spPr>", t += ` <a:xfrm${x}><a:off x="${g}" y="${u}"/><a:ext cx="${y}" cy="${v}"/></a:xfrm>`, t += ' <a:prstGeom prst="rect"><a:avLst/></a:prstGeom>', t += " </p:spPr>", t += "</p:pic>");
|
|
@@ -4794,9 +4830,9 @@ function na(e) {
|
|
|
4794
4830
|
t += "";
|
|
4795
4831
|
break;
|
|
4796
4832
|
}
|
|
4797
|
-
}), e._slideNumberProps && (e._slideNumberProps.align || (e._slideNumberProps.align = "left"), t += "<p:sp>", t += " <p:nvSpPr>", t += ' <p:cNvPr id="25" name="Slide Number Placeholder 0"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr>', t += ' <p:nvPr><p:ph type="sldNum" sz="quarter" idx="4294967295"/></p:nvPr>', t += " </p:nvSpPr>", t += " <p:spPr>", t += `<a:xfrm><a:off x="${ie(e._slideNumberProps.x, "X", e._presLayout)}" y="${ie(e._slideNumberProps.y, "Y", e._presLayout)}"/><a:ext cx="${e._slideNumberProps.w ? ie(e._slideNumberProps.w, "X", e._presLayout) : "800000"}" cy="${e._slideNumberProps.h ? ie(e._slideNumberProps.h, "Y", e._presLayout) : "300000"}"/></a:xfrm> <a:prstGeom prst="rect"><a:avLst/></a:prstGeom> <a:extLst><a:ext uri="{C572A759-6A51-4108-AA02-DFA0A04FC94B}"><ma14:wrappingTextBoxFlag val="0" xmlns:ma14="http://schemas.microsoft.com/office/mac/drawingml/2011/main"/></a:ext></a:extLst></p:spPr>`, t += "<p:txBody>", t += "<a:bodyPr", e._slideNumberProps.margin && Array.isArray(e._slideNumberProps.margin) ? (t += ` lIns="${te(e._slideNumberProps.margin[3] || 0)}"`, t += ` tIns="${te(e._slideNumberProps.margin[0] || 0)}"`, t += ` rIns="${te(e._slideNumberProps.margin[1] || 0)}"`, t += ` bIns="${te(e._slideNumberProps.margin[2] || 0)}"`) : typeof e._slideNumberProps.margin == "number" && (t += ` lIns="${te(e._slideNumberProps.margin || 0)}"`, t += ` tIns="${te(e._slideNumberProps.margin || 0)}"`, t += ` rIns="${te(e._slideNumberProps.margin || 0)}"`, t += ` bIns="${te(e._slideNumberProps.margin || 0)}"`), e._slideNumberProps.valign && (t += ` anchor="${e._slideNumberProps.valign.replace("top", "t").replace("middle", "ctr").replace("bottom", "b")}"`), t += "/>", t += " <a:lstStyle><a:lvl1pPr>", (e._slideNumberProps.fontFace || e._slideNumberProps.fontSize || e._slideNumberProps.color) && (t += `<a:defRPr sz="${Math.round((e._slideNumberProps.fontSize || 12) * 100)}">`, e._slideNumberProps.color && (t += Ne(e._slideNumberProps.color)), e._slideNumberProps.fontFace && (t += `<a:latin typeface="${e._slideNumberProps.fontFace}"/><a:ea typeface="${e._slideNumberProps.fontFace}"/><a:cs typeface="${e._slideNumberProps.fontFace}"/>`), t += "</a:defRPr>"), t += "</a:lvl1pPr></a:lstStyle>", t += "<a:p>", e._slideNumberProps.align.startsWith("l") ? t += '<a:pPr algn="l"/>' : e._slideNumberProps.align.startsWith("c") ? t += '<a:pPr algn="ctr"/>' : e._slideNumberProps.align.startsWith("r") ? t += '<a:pPr algn="r"/>' : t += '<a:pPr algn="l"/>', t += `<a:fld id="${
|
|
4833
|
+
}), e._slideNumberProps && (e._slideNumberProps.align || (e._slideNumberProps.align = "left"), t += "<p:sp>", t += " <p:nvSpPr>", t += ' <p:cNvPr id="25" name="Slide Number Placeholder 0"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr>', t += ' <p:nvPr><p:ph type="sldNum" sz="quarter" idx="4294967295"/></p:nvPr>', t += " </p:nvSpPr>", t += " <p:spPr>", t += `<a:xfrm><a:off x="${ie(e._slideNumberProps.x, "X", e._presLayout)}" y="${ie(e._slideNumberProps.y, "Y", e._presLayout)}"/><a:ext cx="${e._slideNumberProps.w ? ie(e._slideNumberProps.w, "X", e._presLayout) : "800000"}" cy="${e._slideNumberProps.h ? ie(e._slideNumberProps.h, "Y", e._presLayout) : "300000"}"/></a:xfrm> <a:prstGeom prst="rect"><a:avLst/></a:prstGeom> <a:extLst><a:ext uri="{C572A759-6A51-4108-AA02-DFA0A04FC94B}"><ma14:wrappingTextBoxFlag val="0" xmlns:ma14="http://schemas.microsoft.com/office/mac/drawingml/2011/main"/></a:ext></a:extLst></p:spPr>`, t += "<p:txBody>", t += "<a:bodyPr", e._slideNumberProps.margin && Array.isArray(e._slideNumberProps.margin) ? (t += ` lIns="${te(e._slideNumberProps.margin[3] || 0)}"`, t += ` tIns="${te(e._slideNumberProps.margin[0] || 0)}"`, t += ` rIns="${te(e._slideNumberProps.margin[1] || 0)}"`, t += ` bIns="${te(e._slideNumberProps.margin[2] || 0)}"`) : typeof e._slideNumberProps.margin == "number" && (t += ` lIns="${te(e._slideNumberProps.margin || 0)}"`, t += ` tIns="${te(e._slideNumberProps.margin || 0)}"`, t += ` rIns="${te(e._slideNumberProps.margin || 0)}"`, t += ` bIns="${te(e._slideNumberProps.margin || 0)}"`), e._slideNumberProps.valign && (t += ` anchor="${e._slideNumberProps.valign.replace("top", "t").replace("middle", "ctr").replace("bottom", "b")}"`), t += "/>", t += " <a:lstStyle><a:lvl1pPr>", (e._slideNumberProps.fontFace || e._slideNumberProps.fontSize || e._slideNumberProps.color) && (t += `<a:defRPr sz="${Math.round((e._slideNumberProps.fontSize || 12) * 100)}">`, e._slideNumberProps.color && (t += Ne(e._slideNumberProps.color)), e._slideNumberProps.fontFace && (t += `<a:latin typeface="${e._slideNumberProps.fontFace}"/><a:ea typeface="${e._slideNumberProps.fontFace}"/><a:cs typeface="${e._slideNumberProps.fontFace}"/>`), t += "</a:defRPr>"), t += "</a:lvl1pPr></a:lstStyle>", t += "<a:p>", e._slideNumberProps.align.startsWith("l") ? t += '<a:pPr algn="l"/>' : e._slideNumberProps.align.startsWith("c") ? t += '<a:pPr algn="ctr"/>' : e._slideNumberProps.align.startsWith("r") ? t += '<a:pPr algn="r"/>' : t += '<a:pPr algn="l"/>', t += `<a:fld id="${Ea}" type="slidenum"><a:rPr b="${e._slideNumberProps.bold ? 1 : 0}" lang="en-US"/>`, t += `<a:t>${e._slideNum}</a:t></a:fld><a:endParaRPr lang="en-US"/></a:p>`, t += "</p:txBody></p:sp>"), t += "</p:spTree>", t += "</p:cSld>", t;
|
|
4798
4834
|
}
|
|
4799
|
-
function
|
|
4835
|
+
function ia(e, n) {
|
|
4800
4836
|
let t = 0, A = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' + Ce + '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">';
|
|
4801
4837
|
return e._rels.forEach((a) => {
|
|
4802
4838
|
t = Math.max(t, a.rId), a.type.toLowerCase().includes("hyperlink") ? a.data === "slide" ? A += `<Relationship Id="rId${a.rId}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide" Target="slide${a.Target}.xml"/>` : A += `<Relationship Id="rId${a.rId}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink" Target="${a.Target}" TargetMode="External"/>` : a.type.toLowerCase().includes("notesSlide") && (A += `<Relationship Id="rId${a.rId}" Target="${a.Target}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesSlide"/>`);
|
|
@@ -4809,11 +4845,11 @@ function oa(e, n) {
|
|
|
4809
4845
|
A += `<Relationship Id="rId${t + i + 1}" Type="${a.type}" Target="${a.target}"/>`;
|
|
4810
4846
|
}), A += "</Relationships>", A;
|
|
4811
4847
|
}
|
|
4812
|
-
function
|
|
4848
|
+
function va(e, n) {
|
|
4813
4849
|
var t, A;
|
|
4814
4850
|
let a = "", i = "", s = "", c = "";
|
|
4815
4851
|
const l = n ? "a:lvl1pPr" : "a:pPr";
|
|
4816
|
-
let r = te(
|
|
4852
|
+
let r = te(Dr), o = `<${l}${e.options.rtlMode ? ' rtl="1" ' : ""}`;
|
|
4817
4853
|
{
|
|
4818
4854
|
if (e.options.align)
|
|
4819
4855
|
switch (e.options.align) {
|
|
@@ -4845,15 +4881,15 @@ function ma(e, n) {
|
|
|
4845
4881
|
} else
|
|
4846
4882
|
o += ` marL="${e.options.indentLevel && e.options.indentLevel > 0 ? r + r * e.options.indentLevel : r}" indent="-${r}"`, a = `<a:buSzPct val="100000"/><a:buChar char="${rt.DEFAULT}"/>`;
|
|
4847
4883
|
else e.options.bullet ? (o += ` marL="${e.options.indentLevel && e.options.indentLevel > 0 ? r + r * e.options.indentLevel : r}" indent="-${r}"`, a = `<a:buSzPct val="100000"/><a:buChar char="${rt.DEFAULT}"/>`) : e.options.bullet || (o += ' indent="0" marL="0"', a = "<a:buNone/>");
|
|
4848
|
-
e.options.tabStops && Array.isArray(e.options.tabStops) && (c = `<a:tabLst>${e.options.tabStops.map((m) => `<a:tab pos="${le(m.position || 1)}" algn="${m.alignment || "l"}"/>`).join("")}</a:tabLst>`), o += ">" + i + s + a + c, n && (o +=
|
|
4884
|
+
e.options.tabStops && Array.isArray(e.options.tabStops) && (c = `<a:tabLst>${e.options.tabStops.map((m) => `<a:tab pos="${le(m.position || 1)}" algn="${m.alignment || "l"}"/>`).join("")}</a:tabLst>`), o += ">" + i + s + a + c, n && (o += Xa(e.options, !0)), o += "</" + l + ">";
|
|
4849
4885
|
}
|
|
4850
4886
|
return o;
|
|
4851
4887
|
}
|
|
4852
|
-
function
|
|
4888
|
+
function Xa(e, n) {
|
|
4853
4889
|
var t;
|
|
4854
4890
|
let A = "";
|
|
4855
4891
|
const a = n ? "a:defRPr" : "a:rPr";
|
|
4856
|
-
if (A += "<" + a + ' lang="' + (e.lang ? e.lang : "en-US") + '"' + (e.lang ? ' altLang="en-US"' : ""), A += e.fontSize ? ` sz="${Math.round(e.fontSize * 100)}"` : "", A += e?.bold ? ` b="${e.bold ? "1" : "0"}"` : "", A += e?.italic ? ` i="${e.italic ? "1" : "0"}"` : "", A += e?.strike ? ` strike="${typeof e.strike == "string" ? e.strike : "sngStrike"}"` : "", typeof e.underline == "object" && (!((t = e.underline) === null || t === void 0) && t.style) ? A += ` u="${e.underline.style}"` : typeof e.underline == "string" ? A += ` u="${String(e.underline)}"` : e.hyperlink && (A += ' u="sng"'), e.baseline ? A += ` baseline="${Math.round(e.baseline * 50)}"` : e.subscript ? A += ' baseline="-40000"' : e.superscript && (A += ' baseline="30000"'), A += e.charSpacing ? ` spc="${Math.round(e.charSpacing * 100)}" kern="0"` : "", A += ' dirty="0">', (e.color || e.fontFace || e.outline || typeof e.underline == "object" && e.underline.color) && (e.outline && typeof e.outline == "object" && (A += `<a:ln w="${te(e.outline.size || 0.75)}">${Ne(e.outline.color || "FFFFFF")}</a:ln>`), e.color && (A += Ne({ color: e.color, transparency: e.transparency })), e.highlight && (A += `<a:highlight>${he(e.highlight)}</a:highlight>`), typeof e.underline == "object" && e.underline.color && (A += `<a:uFill>${Ne(e.underline.color)}</a:uFill>`), e.glow && (A += `<a:effectLst>${
|
|
4892
|
+
if (A += "<" + a + ' lang="' + (e.lang ? e.lang : "en-US") + '"' + (e.lang ? ' altLang="en-US"' : ""), A += e.fontSize ? ` sz="${Math.round(e.fontSize * 100)}"` : "", A += e?.bold ? ` b="${e.bold ? "1" : "0"}"` : "", A += e?.italic ? ` i="${e.italic ? "1" : "0"}"` : "", A += e?.strike ? ` strike="${typeof e.strike == "string" ? e.strike : "sngStrike"}"` : "", typeof e.underline == "object" && (!((t = e.underline) === null || t === void 0) && t.style) ? A += ` u="${e.underline.style}"` : typeof e.underline == "string" ? A += ` u="${String(e.underline)}"` : e.hyperlink && (A += ' u="sng"'), e.baseline ? A += ` baseline="${Math.round(e.baseline * 50)}"` : e.subscript ? A += ' baseline="-40000"' : e.superscript && (A += ' baseline="30000"'), A += e.charSpacing ? ` spc="${Math.round(e.charSpacing * 100)}" kern="0"` : "", A += ' dirty="0">', (e.color || e.fontFace || e.outline || typeof e.underline == "object" && e.underline.color) && (e.outline && typeof e.outline == "object" && (A += `<a:ln w="${te(e.outline.size || 0.75)}">${Ne(e.outline.color || "FFFFFF")}</a:ln>`), e.color && (A += Ne({ color: e.color, transparency: e.transparency })), e.highlight && (A += `<a:highlight>${he(e.highlight)}</a:highlight>`), typeof e.underline == "object" && e.underline.color && (A += `<a:uFill>${Ne(e.underline.color)}</a:uFill>`), e.glow && (A += `<a:effectLst>${Fr(e.glow, kr)}</a:effectLst>`), e.fontFace && (A += `<a:latin typeface="${e.fontFace}" pitchFamily="34" charset="0"/><a:ea typeface="${e.fontFace}" pitchFamily="34" charset="-122"/><a:cs typeface="${e.fontFace}" pitchFamily="34" charset="-120"/>`)), e.hyperlink) {
|
|
4857
4893
|
if (typeof e.hyperlink != "object")
|
|
4858
4894
|
throw new Error("ERROR: text `hyperlink` option should be an object. Ex: `hyperlink:{url:'https://github.com'}` ");
|
|
4859
4895
|
if (!e.hyperlink.url && !e.hyperlink.slide)
|
|
@@ -4862,21 +4898,21 @@ function Oa(e, n) {
|
|
|
4862
4898
|
}
|
|
4863
4899
|
return A += `</${a}>`, A;
|
|
4864
4900
|
}
|
|
4865
|
-
function
|
|
4866
|
-
return e.text ? `<a:r>${
|
|
4901
|
+
function Vr(e) {
|
|
4902
|
+
return e.text ? `<a:r>${Xa(e.options, !1)}<a:t>${re(e.text)}</a:t></a:r>` : "";
|
|
4867
4903
|
}
|
|
4868
|
-
function
|
|
4904
|
+
function Yr(e) {
|
|
4869
4905
|
let n = "<a:bodyPr";
|
|
4870
4906
|
return e && e._type === ne.text && e.options._bodyProp ? (n += e.options._bodyProp.wrap ? ' wrap="square"' : ' wrap="none"', (e.options._bodyProp.lIns || e.options._bodyProp.lIns === 0) && (n += ` lIns="${e.options._bodyProp.lIns}"`), (e.options._bodyProp.tIns || e.options._bodyProp.tIns === 0) && (n += ` tIns="${e.options._bodyProp.tIns}"`), (e.options._bodyProp.rIns || e.options._bodyProp.rIns === 0) && (n += ` rIns="${e.options._bodyProp.rIns}"`), (e.options._bodyProp.bIns || e.options._bodyProp.bIns === 0) && (n += ` bIns="${e.options._bodyProp.bIns}"`), n += ' rtlCol="0"', e.options._bodyProp.anchor && (n += ' anchor="' + e.options._bodyProp.anchor + '"'), e.options._bodyProp.vert && (n += ' vert="' + e.options._bodyProp.vert + '"'), n += ">", e.options.fit && (e.options.fit === "none" ? n += "" : e.options.fit === "shrink" ? n += "<a:normAutofit/>" : e.options.fit === "resize" && (n += "<a:spAutoFit/>")), e.options.shrinkText && (n += "<a:normAutofit/>"), n += e.options._bodyProp.autoFit ? "<a:spAutoFit/>" : "", n += "</a:bodyPr>") : (n += ' wrap="square" rtlCol="0">', n += "</a:bodyPr>"), e._type === ne.tablecell ? "<a:bodyPr/>" : n;
|
|
4871
4907
|
}
|
|
4872
|
-
function
|
|
4908
|
+
function ya(e) {
|
|
4873
4909
|
const n = e.options || {};
|
|
4874
4910
|
let t = [];
|
|
4875
4911
|
const A = [];
|
|
4876
4912
|
if (n && e._type !== ne.tablecell && (typeof e.text > "u" || e.text === null))
|
|
4877
4913
|
return "";
|
|
4878
4914
|
let a = e._type === ne.tablecell ? "<a:txBody>" : "<p:txBody>";
|
|
4879
|
-
a +=
|
|
4915
|
+
a += Yr(e), n.h === 0 && n.line && n.align ? a += '<a:lstStyle><a:lvl1pPr algn="l"/></a:lstStyle>' : e._type === "placeholder" ? a += `<a:lstStyle>${va(e, !0)}</a:lstStyle>` : a += "<a:lstStyle/>", typeof e.text == "string" || typeof e.text == "number" ? t.push({ text: e.text.toString(), options: n || {} }) : e.text && !Array.isArray(e.text) && typeof e.text == "object" && Object.keys(e.text).includes("text") ? t.push({ text: e.text || "", options: e.options || {} }) : Array.isArray(e.text) && (t = e.text.map((c) => ({ text: c.text, options: c.options }))), t.forEach((c, l) => {
|
|
4880
4916
|
c.text || (c.text = ""), c.options = c.options || n || {}, l === 0 && c.options && !c.options.bullet && n.bullet && (c.options.bullet = n.bullet), (typeof c.text == "string" || typeof c.text == "number") && (c.text = c.text.toString().replace(/\r*\n/g, Ce)), c.text.includes(Ce) && c.text.match(/\n$/g) === null ? c.text.split(Ce).forEach((r) => {
|
|
4881
4917
|
c.options.breakLine = !0, A.push({ text: r, options: c.options });
|
|
4882
4918
|
}) : A.push(c);
|
|
@@ -4891,9 +4927,9 @@ function va(e) {
|
|
|
4891
4927
|
a += "<a:p>";
|
|
4892
4928
|
let o = `<a:pPr ${!((l = c[0].options) === null || l === void 0) && l.rtlMode ? ' rtl="1" ' : ""}`;
|
|
4893
4929
|
c.forEach((f, m) => {
|
|
4894
|
-
f.options._lineIdx = m, m > 0 && f.options.softBreakBefore && (a += "<a:br/>"), f.options.align = f.options.align || n.align, f.options.lineSpacing = f.options.lineSpacing || n.lineSpacing, f.options.lineSpacingMultiple = f.options.lineSpacingMultiple || n.lineSpacingMultiple, f.options.indentLevel = f.options.indentLevel || n.indentLevel, f.options.paraSpaceBefore = f.options.paraSpaceBefore || n.paraSpaceBefore, f.options.paraSpaceAfter = f.options.paraSpaceAfter || n.paraSpaceAfter, o =
|
|
4930
|
+
f.options._lineIdx = m, m > 0 && f.options.softBreakBefore && (a += "<a:br/>"), f.options.align = f.options.align || n.align, f.options.lineSpacing = f.options.lineSpacing || n.lineSpacing, f.options.lineSpacingMultiple = f.options.lineSpacingMultiple || n.lineSpacingMultiple, f.options.indentLevel = f.options.indentLevel || n.indentLevel, f.options.paraSpaceBefore = f.options.paraSpaceBefore || n.paraSpaceBefore, f.options.paraSpaceAfter = f.options.paraSpaceAfter || n.paraSpaceAfter, o = va(f, !1), a += o.replace("<a:pPr></a:pPr>", ""), Object.entries(n).filter(([d]) => !(f.options.hyperlink && d === "color")).forEach(([d, g]) => {
|
|
4895
4931
|
d !== "bullet" && !f.options[d] && (f.options[d] = g);
|
|
4896
|
-
}), a +=
|
|
4932
|
+
}), a += Vr(f), (!f.text && n.fontSize || f.options.fontSize) && (r = !0, n.fontSize = n.fontSize || f.options.fontSize);
|
|
4897
4933
|
}), e._type === ne.tablecell && (n.fontSize || n.fontFace) ? n.fontFace ? (a += `<a:endParaRPr lang="${n.lang || "en-US"}"` + (n.fontSize ? ` sz="${Math.round(n.fontSize * 100)}"` : "") + ' dirty="0">', a += `<a:latin typeface="${n.fontFace}" charset="0"/>`, a += `<a:ea typeface="${n.fontFace}" charset="0"/>`, a += `<a:cs typeface="${n.fontFace}" charset="0"/>`, a += "</a:endParaRPr>") : a += `<a:endParaRPr lang="${n.lang || "en-US"}"` + (n.fontSize ? ` sz="${Math.round(n.fontSize * 100)}"` : "") + ' dirty="0"/>' : r ? a += `<a:endParaRPr lang="${n.lang || "en-US"}"` + (n.fontSize ? ` sz="${Math.round(n.fontSize * 100)}"` : "") + ' dirty="0"/>' : a += `<a:endParaRPr lang="${n.lang || "en-US"}" dirty="0"/>`, a += "</a:p>";
|
|
4898
4934
|
}), a.indexOf("<a:p>") === -1 && (a += "<a:p><a:endParaRPr/></a:p>"), a += e._type === ne.tablecell ? "</a:txBody>" : "</p:txBody>", a;
|
|
4899
4935
|
}
|
|
@@ -4908,7 +4944,7 @@ function xt(e) {
|
|
|
4908
4944
|
${e.text && e.text.length > 0 ? ' hasCustomPrompt="1"' : ""}
|
|
4909
4945
|
/>`;
|
|
4910
4946
|
}
|
|
4911
|
-
function
|
|
4947
|
+
function qr(e, n, t) {
|
|
4912
4948
|
let A = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' + Ce;
|
|
4913
4949
|
return A += '<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">', A += '<Default Extension="xml" ContentType="application/xml"/>', A += '<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>', A += '<Default Extension="jpeg" ContentType="image/jpeg"/>', A += '<Default Extension="jpg" ContentType="image/jpg"/>', A += '<Default Extension="svg" ContentType="image/svg+xml"/>', A += '<Default Extension="png" ContentType="image/png"/>', A += '<Default Extension="gif" ContentType="image/gif"/>', A += '<Default Extension="m4v" ContentType="video/mp4"/>', A += '<Default Extension="mp4" ContentType="video/mp4"/>', e.forEach((a) => {
|
|
4914
4950
|
(a._relsMedia || []).forEach((i) => {
|
|
@@ -4930,14 +4966,14 @@ function Wr(e, n, t) {
|
|
|
4930
4966
|
a.type !== "image" && a.type !== "online" && a.type !== "chart" && a.extn !== "m4v" && !A.includes(a.type) && (A += ' <Default Extension="' + a.extn + '" ContentType="' + a.type + '"/>');
|
|
4931
4967
|
}), A += ' <Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>', A += ' <Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>', A += "</Types>", A;
|
|
4932
4968
|
}
|
|
4933
|
-
function
|
|
4969
|
+
function Jr() {
|
|
4934
4970
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
|
|
4935
4971
|
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
|
|
4936
4972
|
<Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
|
|
4937
4973
|
<Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="ppt/presentation.xml"/>
|
|
4938
4974
|
</Relationships>`;
|
|
4939
4975
|
}
|
|
4940
|
-
function
|
|
4976
|
+
function Hr(e, n) {
|
|
4941
4977
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
|
|
4942
4978
|
<TotalTime>0</TotalTime>
|
|
4943
4979
|
<Words>0</Words>
|
|
@@ -4974,7 +5010,7 @@ function Yr(e, n) {
|
|
|
4974
5010
|
<AppVersion>16.0000</AppVersion>
|
|
4975
5011
|
</Properties>`;
|
|
4976
5012
|
}
|
|
4977
|
-
function
|
|
5013
|
+
function jr(e, n, t, A) {
|
|
4978
5014
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
4979
5015
|
<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
4980
5016
|
<dc:title>${re(e)}</dc:title>
|
|
@@ -4986,51 +5022,51 @@ function qr(e, n, t, A) {
|
|
|
4986
5022
|
<dcterms:modified xsi:type="dcterms:W3CDTF">${(/* @__PURE__ */ new Date()).toISOString().replace(/\.\d\d\dZ/, "Z")}</dcterms:modified>
|
|
4987
5023
|
</cp:coreProperties>`;
|
|
4988
5024
|
}
|
|
4989
|
-
function
|
|
5025
|
+
function Kr(e) {
|
|
4990
5026
|
let n = 1, t = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' + Ce;
|
|
4991
5027
|
t += '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">', t += '<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster" Target="slideMasters/slideMaster1.xml"/>';
|
|
4992
5028
|
for (let A = 1; A <= e.length; A++)
|
|
4993
5029
|
t += `<Relationship Id="rId${++n}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide" Target="slides/slide${A}.xml"/>`;
|
|
4994
5030
|
return n++, t += `<Relationship Id="rId${n + 0}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesMaster" Target="notesMasters/notesMaster1.xml"/><Relationship Id="rId${n + 1}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/presProps" Target="presProps.xml"/><Relationship Id="rId${n + 2}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/viewProps" Target="viewProps.xml"/><Relationship Id="rId${n + 3}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml"/><Relationship Id="rId${n + 4}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles" Target="tableStyles.xml"/></Relationships>`, t;
|
|
4995
5031
|
}
|
|
4996
|
-
function
|
|
4997
|
-
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:sld xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"${e?.hidden ? ' show="0"' : ""}>${
|
|
5032
|
+
function Zr(e) {
|
|
5033
|
+
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:sld xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"${e?.hidden ? ' show="0"' : ""}>${oa(e)}<p:clrMapOvr><a:masterClrMapping/></p:clrMapOvr></p:sld>`;
|
|
4998
5034
|
}
|
|
4999
|
-
function
|
|
5035
|
+
function $r(e) {
|
|
5000
5036
|
let n = "";
|
|
5001
5037
|
return e._slideObjects.forEach((t) => {
|
|
5002
5038
|
t._type === ne.notes && (n += t?.text && t.text[0] ? t.text[0].text : "");
|
|
5003
5039
|
}), n.replace(/\r*\n/g, Ce);
|
|
5004
5040
|
}
|
|
5005
|
-
function
|
|
5041
|
+
function en() {
|
|
5006
5042
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:notesMaster xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"><p:cSld><p:bg><p:bgRef idx="1001"><a:schemeClr val="bg1"/></p:bgRef></p:bg><p:spTree><p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr><p:grpSpPr><a:xfrm><a:off x="0" y="0"/><a:ext cx="0" cy="0"/><a:chOff x="0" y="0"/><a:chExt cx="0" cy="0"/></a:xfrm></p:grpSpPr><p:sp><p:nvSpPr><p:cNvPr id="2" name="Header Placeholder 1"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="hdr" sz="quarter"/></p:nvPr></p:nvSpPr><p:spPr><a:xfrm><a:off x="0" y="0"/><a:ext cx="2971800" cy="458788"/></a:xfrm><a:prstGeom prst="rect"><a:avLst/></a:prstGeom></p:spPr><p:txBody><a:bodyPr vert="horz" lIns="91440" tIns="45720" rIns="91440" bIns="45720" rtlCol="0"/><a:lstStyle><a:lvl1pPr algn="l"><a:defRPr sz="1200"/></a:lvl1pPr></a:lstStyle><a:p><a:endParaRPr lang="en-US"/></a:p></p:txBody></p:sp><p:sp><p:nvSpPr><p:cNvPr id="3" name="Date Placeholder 2"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="dt" idx="1"/></p:nvPr></p:nvSpPr><p:spPr><a:xfrm><a:off x="3884613" y="0"/><a:ext cx="2971800" cy="458788"/></a:xfrm><a:prstGeom prst="rect"><a:avLst/></a:prstGeom></p:spPr><p:txBody><a:bodyPr vert="horz" lIns="91440" tIns="45720" rIns="91440" bIns="45720" rtlCol="0"/><a:lstStyle><a:lvl1pPr algn="r"><a:defRPr sz="1200"/></a:lvl1pPr></a:lstStyle><a:p><a:fld id="{5282F153-3F37-0F45-9E97-73ACFA13230C}" type="datetimeFigureOut"><a:rPr lang="en-US"/><a:t>7/23/19</a:t></a:fld><a:endParaRPr lang="en-US"/></a:p></p:txBody></p:sp><p:sp><p:nvSpPr><p:cNvPr id="4" name="Slide Image Placeholder 3"/><p:cNvSpPr><a:spLocks noGrp="1" noRot="1" noChangeAspect="1"/></p:cNvSpPr><p:nvPr><p:ph type="sldImg" idx="2"/></p:nvPr></p:nvSpPr><p:spPr><a:xfrm><a:off x="685800" y="1143000"/><a:ext cx="5486400" cy="3086100"/></a:xfrm><a:prstGeom prst="rect"><a:avLst/></a:prstGeom><a:noFill/><a:ln w="12700"><a:solidFill><a:prstClr val="black"/></a:solidFill></a:ln></p:spPr><p:txBody><a:bodyPr vert="horz" lIns="91440" tIns="45720" rIns="91440" bIns="45720" rtlCol="0" anchor="ctr"/><a:lstStyle/><a:p><a:endParaRPr lang="en-US"/></a:p></p:txBody></p:sp><p:sp><p:nvSpPr><p:cNvPr id="5" name="Notes Placeholder 4"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="body" sz="quarter" idx="3"/></p:nvPr></p:nvSpPr><p:spPr><a:xfrm><a:off x="685800" y="4400550"/><a:ext cx="5486400" cy="3600450"/></a:xfrm><a:prstGeom prst="rect"><a:avLst/></a:prstGeom></p:spPr><p:txBody><a:bodyPr vert="horz" lIns="91440" tIns="45720" rIns="91440" bIns="45720" rtlCol="0"/><a:lstStyle/><a:p><a:pPr lvl="0"/><a:r><a:rPr lang="en-US"/><a:t>Click to edit Master text styles</a:t></a:r></a:p><a:p><a:pPr lvl="1"/><a:r><a:rPr lang="en-US"/><a:t>Second level</a:t></a:r></a:p><a:p><a:pPr lvl="2"/><a:r><a:rPr lang="en-US"/><a:t>Third level</a:t></a:r></a:p><a:p><a:pPr lvl="3"/><a:r><a:rPr lang="en-US"/><a:t>Fourth level</a:t></a:r></a:p><a:p><a:pPr lvl="4"/><a:r><a:rPr lang="en-US"/><a:t>Fifth level</a:t></a:r></a:p></p:txBody></p:sp><p:sp><p:nvSpPr><p:cNvPr id="6" name="Footer Placeholder 5"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="ftr" sz="quarter" idx="4"/></p:nvPr></p:nvSpPr><p:spPr><a:xfrm><a:off x="0" y="8685213"/><a:ext cx="2971800" cy="458787"/></a:xfrm><a:prstGeom prst="rect"><a:avLst/></a:prstGeom></p:spPr><p:txBody><a:bodyPr vert="horz" lIns="91440" tIns="45720" rIns="91440" bIns="45720" rtlCol="0" anchor="b"/><a:lstStyle><a:lvl1pPr algn="l"><a:defRPr sz="1200"/></a:lvl1pPr></a:lstStyle><a:p><a:endParaRPr lang="en-US"/></a:p></p:txBody></p:sp><p:sp><p:nvSpPr><p:cNvPr id="7" name="Slide Number Placeholder 6"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="sldNum" sz="quarter" idx="5"/></p:nvPr></p:nvSpPr><p:spPr><a:xfrm><a:off x="3884613" y="8685213"/><a:ext cx="2971800" cy="458787"/></a:xfrm><a:prstGeom prst="rect"><a:avLst/></a:prstGeom></p:spPr><p:txBody><a:bodyPr vert="horz" lIns="91440" tIns="45720" rIns="91440" bIns="45720" rtlCol="0" anchor="b"/><a:lstStyle><a:lvl1pPr algn="r"><a:defRPr sz="1200"/></a:lvl1pPr></a:lstStyle><a:p><a:fld id="{CE5E9CC1-C706-0F49-92D6-E571CC5EEA8F}" type="slidenum"><a:rPr lang="en-US"/><a:t>‹#›</a:t></a:fld><a:endParaRPr lang="en-US"/></a:p></p:txBody></p:sp></p:spTree><p:extLst><p:ext uri="{BB962C8B-B14F-4D97-AF65-F5344CB8AC3E}"><p14:creationId xmlns:p14="http://schemas.microsoft.com/office/powerpoint/2010/main" val="1024086991"/></p:ext></p:extLst></p:cSld><p:clrMap bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2" accent1="accent1" accent2="accent2" accent3="accent3" accent4="accent4" accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/><p:notesStyle><a:lvl1pPr marL="0" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl1pPr><a:lvl2pPr marL="457200" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl2pPr><a:lvl3pPr marL="914400" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl3pPr><a:lvl4pPr marL="1371600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl4pPr><a:lvl5pPr marL="1828800" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl5pPr><a:lvl6pPr marL="2286000" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl6pPr><a:lvl7pPr marL="2743200" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl7pPr><a:lvl8pPr marL="3200400" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl8pPr><a:lvl9pPr marL="3657600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl9pPr></p:notesStyle></p:notesMaster>`;
|
|
5007
5043
|
}
|
|
5008
|
-
function
|
|
5009
|
-
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:notes xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"><p:cSld><p:spTree><p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr><p:grpSpPr><a:xfrm><a:off x="0" y="0"/><a:ext cx="0" cy="0"/><a:chOff x="0" y="0"/><a:chExt cx="0" cy="0"/></a:xfrm></p:grpSpPr><p:sp><p:nvSpPr><p:cNvPr id="2" name="Slide Image Placeholder 1"/><p:cNvSpPr><a:spLocks noGrp="1" noRot="1" noChangeAspect="1"/></p:cNvSpPr><p:nvPr><p:ph type="sldImg"/></p:nvPr></p:nvSpPr><p:spPr/></p:sp><p:sp><p:nvSpPr><p:cNvPr id="3" name="Notes Placeholder 2"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="body" idx="1"/></p:nvPr></p:nvSpPr><p:spPr/><p:txBody><a:bodyPr/><a:lstStyle/><a:p><a:r><a:rPr lang="en-US" dirty="0"/><a:t>${re(
|
|
5044
|
+
function tn(e) {
|
|
5045
|
+
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:notes xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"><p:cSld><p:spTree><p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr><p:grpSpPr><a:xfrm><a:off x="0" y="0"/><a:ext cx="0" cy="0"/><a:chOff x="0" y="0"/><a:chExt cx="0" cy="0"/></a:xfrm></p:grpSpPr><p:sp><p:nvSpPr><p:cNvPr id="2" name="Slide Image Placeholder 1"/><p:cNvSpPr><a:spLocks noGrp="1" noRot="1" noChangeAspect="1"/></p:cNvSpPr><p:nvPr><p:ph type="sldImg"/></p:nvPr></p:nvSpPr><p:spPr/></p:sp><p:sp><p:nvSpPr><p:cNvPr id="3" name="Notes Placeholder 2"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="body" idx="1"/></p:nvPr></p:nvSpPr><p:spPr/><p:txBody><a:bodyPr/><a:lstStyle/><a:p><a:r><a:rPr lang="en-US" dirty="0"/><a:t>${re($r(e))}</a:t></a:r><a:endParaRPr lang="en-US" dirty="0"/></a:p></p:txBody></p:sp><p:sp><p:nvSpPr><p:cNvPr id="4" name="Slide Number Placeholder 3"/><p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr><p:nvPr><p:ph type="sldNum" sz="quarter" idx="10"/></p:nvPr></p:nvSpPr><p:spPr/><p:txBody><a:bodyPr/><a:lstStyle/><a:p><a:fld id="${Ea}" type="slidenum"><a:rPr lang="en-US"/><a:t>${e._slideNum}</a:t></a:fld><a:endParaRPr lang="en-US"/></a:p></p:txBody></p:sp></p:spTree><p:extLst><p:ext uri="{BB962C8B-B14F-4D97-AF65-F5344CB8AC3E}"><p14:creationId xmlns:p14="http://schemas.microsoft.com/office/powerpoint/2010/main" val="1024086991"/></p:ext></p:extLst></p:cSld><p:clrMapOvr><a:masterClrMapping/></p:clrMapOvr></p:notes>`;
|
|
5010
5046
|
}
|
|
5011
|
-
function
|
|
5047
|
+
function an(e) {
|
|
5012
5048
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5013
5049
|
<p:sldLayout xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main" preserve="1">
|
|
5014
|
-
${
|
|
5050
|
+
${oa(e)}
|
|
5015
5051
|
<p:clrMapOvr><a:masterClrMapping/></p:clrMapOvr></p:sldLayout>`;
|
|
5016
5052
|
}
|
|
5017
|
-
function
|
|
5018
|
-
const t = n.map((a, i) => `<p:sldLayoutId id="${
|
|
5053
|
+
function rn(e, n) {
|
|
5054
|
+
const t = n.map((a, i) => `<p:sldLayoutId id="${Lr + i}" r:id="rId${e._rels.length + i + 1}"/>`);
|
|
5019
5055
|
let A = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' + Ce;
|
|
5020
|
-
return A += '<p:sldMaster xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main">', A +=
|
|
5056
|
+
return A += '<p:sldMaster xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main">', A += oa(e), A += '<p:clrMap bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2" accent1="accent1" accent2="accent2" accent3="accent3" accent4="accent4" accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/>', A += "<p:sldLayoutIdLst>" + t.join("") + "</p:sldLayoutIdLst>", A += '<p:hf sldNum="0" hdr="0" ftr="0" dt="0"/>', A += '<p:txStyles> <p:titleStyle> <a:lvl1pPr algn="ctr" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="0"/></a:spcBef><a:buNone/><a:defRPr sz="4400" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mj-lt"/><a:ea typeface="+mj-ea"/><a:cs typeface="+mj-cs"/></a:defRPr></a:lvl1pPr> </p:titleStyle> <p:bodyStyle> <a:lvl1pPr marL="342900" indent="-342900" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="•"/><a:defRPr sz="3200" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl1pPr> <a:lvl2pPr marL="742950" indent="-285750" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="–"/><a:defRPr sz="2800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl2pPr> <a:lvl3pPr marL="1143000" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="•"/><a:defRPr sz="2400" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl3pPr> <a:lvl4pPr marL="1600200" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="–"/><a:defRPr sz="2000" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl4pPr> <a:lvl5pPr marL="2057400" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="»"/><a:defRPr sz="2000" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl5pPr> <a:lvl6pPr marL="2514600" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="•"/><a:defRPr sz="2000" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl6pPr> <a:lvl7pPr marL="2971800" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="•"/><a:defRPr sz="2000" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl7pPr> <a:lvl8pPr marL="3429000" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="•"/><a:defRPr sz="2000" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl8pPr> <a:lvl9pPr marL="3886200" indent="-228600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:spcBef><a:spcPct val="20000"/></a:spcBef><a:buFont typeface="Arial" pitchFamily="34" charset="0"/><a:buChar char="•"/><a:defRPr sz="2000" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl9pPr> </p:bodyStyle> <p:otherStyle> <a:defPPr><a:defRPr lang="en-US"/></a:defPPr> <a:lvl1pPr marL="0" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl1pPr> <a:lvl2pPr marL="457200" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl2pPr> <a:lvl3pPr marL="914400" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl3pPr> <a:lvl4pPr marL="1371600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl4pPr> <a:lvl5pPr marL="1828800" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl5pPr> <a:lvl6pPr marL="2286000" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl6pPr> <a:lvl7pPr marL="2743200" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl7pPr> <a:lvl8pPr marL="3200400" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl8pPr> <a:lvl9pPr marL="3657600" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1"><a:defRPr sz="1800" kern="1200"><a:solidFill><a:schemeClr val="tx1"/></a:solidFill><a:latin typeface="+mn-lt"/><a:ea typeface="+mn-ea"/><a:cs typeface="+mn-cs"/></a:defRPr></a:lvl9pPr> </p:otherStyle></p:txStyles>', A += "</p:sldMaster>", A;
|
|
5021
5057
|
}
|
|
5022
|
-
function
|
|
5023
|
-
return
|
|
5058
|
+
function nn(e, n) {
|
|
5059
|
+
return ia(n[e - 1], [
|
|
5024
5060
|
{
|
|
5025
5061
|
target: "../slideMasters/slideMaster1.xml",
|
|
5026
5062
|
type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster"
|
|
5027
5063
|
}
|
|
5028
5064
|
]);
|
|
5029
5065
|
}
|
|
5030
|
-
function
|
|
5031
|
-
return
|
|
5066
|
+
function on(e, n, t) {
|
|
5067
|
+
return ia(e[t - 1], [
|
|
5032
5068
|
{
|
|
5033
|
-
target: `../slideLayouts/slideLayout${
|
|
5069
|
+
target: `../slideLayouts/slideLayout${cn(e, n, t)}.xml`,
|
|
5034
5070
|
type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout"
|
|
5035
5071
|
},
|
|
5036
5072
|
{
|
|
@@ -5039,37 +5075,37 @@ function an(e, n, t) {
|
|
|
5039
5075
|
}
|
|
5040
5076
|
]);
|
|
5041
5077
|
}
|
|
5042
|
-
function
|
|
5078
|
+
function An(e) {
|
|
5043
5079
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
5044
5080
|
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
|
|
5045
5081
|
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesMaster" Target="../notesMasters/notesMaster1.xml"/>
|
|
5046
5082
|
<Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide" Target="../slides/slide${e}.xml"/>
|
|
5047
5083
|
</Relationships>`;
|
|
5048
5084
|
}
|
|
5049
|
-
function
|
|
5085
|
+
function sn(e, n) {
|
|
5050
5086
|
const t = n.map((A, a) => ({
|
|
5051
5087
|
target: `../slideLayouts/slideLayout${a + 1}.xml`,
|
|
5052
5088
|
type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout"
|
|
5053
5089
|
}));
|
|
5054
|
-
return t.push({ target: "../theme/theme1.xml", type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" }),
|
|
5090
|
+
return t.push({ target: "../theme/theme1.xml", type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" }), ia(e, t);
|
|
5055
5091
|
}
|
|
5056
|
-
function
|
|
5092
|
+
function ln() {
|
|
5057
5093
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
|
|
5058
5094
|
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="../theme/theme1.xml"/>
|
|
5059
5095
|
</Relationships>`;
|
|
5060
5096
|
}
|
|
5061
|
-
function
|
|
5097
|
+
function cn(e, n, t) {
|
|
5062
5098
|
for (let A = 0; A < n.length; A++)
|
|
5063
5099
|
if (n[A]._name === e[t - 1]._slideLayout._name)
|
|
5064
5100
|
return A + 1;
|
|
5065
5101
|
return 1;
|
|
5066
5102
|
}
|
|
5067
|
-
function
|
|
5103
|
+
function dn(e) {
|
|
5068
5104
|
var n, t, A, a;
|
|
5069
5105
|
const i = !((n = e.theme) === null || n === void 0) && n.headFontFace ? `<a:latin typeface="${(t = e.theme) === null || t === void 0 ? void 0 : t.headFontFace}"/>` : '<a:latin typeface="Calibri Light" panose="020F0302020204030204"/>', s = !((A = e.theme) === null || A === void 0) && A.bodyFontFace ? `<a:latin typeface="${(a = e.theme) === null || a === void 0 ? void 0 : a.bodyFontFace}"/>` : '<a:latin typeface="Calibri" panose="020F0502020204030204"/>';
|
|
5070
5106
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?><a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="44546A"/></a:dk2><a:lt2><a:srgbClr val="E7E6E6"/></a:lt2><a:accent1><a:srgbClr val="4472C4"/></a:accent1><a:accent2><a:srgbClr val="ED7D31"/></a:accent2><a:accent3><a:srgbClr val="A5A5A5"/></a:accent3><a:accent4><a:srgbClr val="FFC000"/></a:accent4><a:accent5><a:srgbClr val="5B9BD5"/></a:accent5><a:accent6><a:srgbClr val="70AD47"/></a:accent6><a:hlink><a:srgbClr val="0563C1"/></a:hlink><a:folHlink><a:srgbClr val="954F72"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont>${i}<a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="游ゴシック Light"/><a:font script="Hang" typeface="맑은 고딕"/><a:font script="Hans" typeface="等线 Light"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Angsana New"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/><a:font script="Armn" typeface="Arial"/><a:font script="Bugi" typeface="Leelawadee UI"/><a:font script="Bopo" typeface="Microsoft JhengHei"/><a:font script="Java" typeface="Javanese Text"/><a:font script="Lisu" typeface="Segoe UI"/><a:font script="Mymr" typeface="Myanmar Text"/><a:font script="Nkoo" typeface="Ebrima"/><a:font script="Olck" typeface="Nirmala UI"/><a:font script="Osma" typeface="Ebrima"/><a:font script="Phag" typeface="Phagspa"/><a:font script="Syrn" typeface="Estrangelo Edessa"/><a:font script="Syrj" typeface="Estrangelo Edessa"/><a:font script="Syre" typeface="Estrangelo Edessa"/><a:font script="Sora" typeface="Nirmala UI"/><a:font script="Tale" typeface="Microsoft Tai Le"/><a:font script="Talu" typeface="Microsoft New Tai Lue"/><a:font script="Tfng" typeface="Ebrima"/></a:majorFont><a:minorFont>${s}<a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="游ゴシック"/><a:font script="Hang" typeface="맑은 고딕"/><a:font script="Hans" typeface="等线"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Cordia New"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/><a:font script="Armn" typeface="Arial"/><a:font script="Bugi" typeface="Leelawadee UI"/><a:font script="Bopo" typeface="Microsoft JhengHei"/><a:font script="Java" typeface="Javanese Text"/><a:font script="Lisu" typeface="Segoe UI"/><a:font script="Mymr" typeface="Myanmar Text"/><a:font script="Nkoo" typeface="Ebrima"/><a:font script="Olck" typeface="Nirmala UI"/><a:font script="Osma" typeface="Ebrima"/><a:font script="Phag" typeface="Phagspa"/><a:font script="Syrn" typeface="Estrangelo Edessa"/><a:font script="Syrj" typeface="Estrangelo Edessa"/><a:font script="Syre" typeface="Estrangelo Edessa"/><a:font script="Sora" typeface="Nirmala UI"/><a:font script="Tale" typeface="Microsoft Tai Le"/><a:font script="Talu" typeface="Microsoft New Tai Lue"/><a:font script="Tfng" typeface="Ebrima"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:lumMod val="110000"/><a:satMod val="105000"/><a:tint val="67000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="103000"/><a:tint val="73000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="105000"/><a:satMod val="109000"/><a:tint val="81000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:satMod val="103000"/><a:lumMod val="102000"/><a:tint val="94000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:satMod val="110000"/><a:lumMod val="100000"/><a:shade val="100000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:lumMod val="99000"/><a:satMod val="120000"/><a:shade val="78000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="6350" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="12700" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln><a:ln w="19050" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/><a:miter lim="800000"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="57150" dist="19050" dir="5400000" algn="ctr" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="63000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"><a:tint val="95000"/><a:satMod val="170000"/></a:schemeClr></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="93000"/><a:satMod val="150000"/><a:shade val="98000"/><a:lumMod val="102000"/></a:schemeClr></a:gs><a:gs pos="50000"><a:schemeClr val="phClr"><a:tint val="98000"/><a:satMod val="130000"/><a:shade val="90000"/><a:lumMod val="103000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="63000"/><a:satMod val="120000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="5400000" scaled="0"/></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults/><a:extraClrSchemeLst/><a:extLst><a:ext uri="{05A4C25C-085E-4340-85A3-A5531E510DB2}"><thm15:themeFamily xmlns:thm15="http://schemas.microsoft.com/office/thememl/2012/main" name="Office Theme" id="{62F939B6-93AF-4DB8-9C6B-D6C7DFDC589F}" vid="{4A3C46E8-61CC-4603-A589-7422A47A8E4A}"/></a:ext></a:extLst></a:theme>`;
|
|
5071
5107
|
}
|
|
5072
|
-
function
|
|
5108
|
+
function fn(e) {
|
|
5073
5109
|
let n = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:presentation xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main" ${e.rtlMode ? 'rtl="1"' : ""} saveSubsetFonts="1" autoCompressPictures="0">`;
|
|
5074
5110
|
n += '<p:sldMasterIdLst><p:sldMasterId id="2147483648" r:id="rId1"/></p:sldMasterIdLst>', n += "<p:sldIdLst>", e.slides.forEach((t) => n += `<p:sldId id="${t._slideId}" r:id="rId${t._rId}"/>`), n += "</p:sldIdLst>", n += `<p:notesMasterIdLst><p:notesMasterId r:id="rId${e.slides.length + 2}"/></p:notesMasterIdLst>`, n += `<p:sldSz cx="${e.presLayout.width}" cy="${e.presLayout.height}"/>`, n += `<p:notesSz cx="${e.presLayout.height}" cy="${e.presLayout.width}"/>`, n += "<p:defaultTextStyle>";
|
|
5075
5111
|
for (let t = 1; t < 10; t++)
|
|
@@ -5078,17 +5114,17 @@ function ln(e) {
|
|
|
5078
5114
|
n += `<p14:section name="${re(t.title)}" id="{${Lt("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")}}"><p14:sldIdLst>`, t._slides.forEach((A) => n += `<p14:sldId id="${A._slideId}"/>`), n += "</p14:sldIdLst></p14:section>";
|
|
5079
5115
|
}), n += "</p14:sectionLst></p:ext>", n += '<p:ext uri="{EFAFB233-063F-42B5-8137-9DF3F51BA10A}"><p15:sldGuideLst xmlns:p15="http://schemas.microsoft.com/office/powerpoint/2012/main"/></p:ext>', n += "</p:extLst>"), n += "</p:presentation>", n;
|
|
5080
5116
|
}
|
|
5081
|
-
function
|
|
5117
|
+
function hn() {
|
|
5082
5118
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:presentationPr xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"/>`;
|
|
5083
5119
|
}
|
|
5084
|
-
function
|
|
5120
|
+
function pn() {
|
|
5085
5121
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<a:tblStyleLst xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" def="{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}"/>`;
|
|
5086
5122
|
}
|
|
5087
|
-
function
|
|
5123
|
+
function un() {
|
|
5088
5124
|
return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>${Ce}<p:viewPr xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main"><p:normalViewPr horzBarState="maximized"><p:restoredLeft sz="15611"/><p:restoredTop sz="94610"/></p:normalViewPr><p:slideViewPr><p:cSldViewPr snapToGrid="0" snapToObjects="1"><p:cViewPr varScale="1"><p:scale><a:sx n="136" d="100"/><a:sy n="136" d="100"/></p:scale><p:origin x="216" y="312"/></p:cViewPr><p:guideLst/></p:cSldViewPr></p:slideViewPr><p:notesTextViewPr><p:cViewPr><p:scale><a:sx n="1" d="1"/><a:sy n="1" d="1"/></p:scale><p:origin x="0" y="0"/></p:cViewPr></p:notesTextViewPr><p:gridSpacing cx="76200" cy="76200"/></p:viewPr>`;
|
|
5089
5125
|
}
|
|
5090
|
-
const
|
|
5091
|
-
class
|
|
5126
|
+
const gn = "4.0.1";
|
|
5127
|
+
class mn {
|
|
5092
5128
|
set layout(n) {
|
|
5093
5129
|
const t = this.LAYOUTS[n];
|
|
5094
5130
|
if (t)
|
|
@@ -5187,13 +5223,13 @@ class pn {
|
|
|
5187
5223
|
return this._shapes;
|
|
5188
5224
|
}
|
|
5189
5225
|
constructor() {
|
|
5190
|
-
this._version =
|
|
5226
|
+
this._version = gn, this._alignH = Jt, this._alignV = Ht, this._chartType = Yt, this._outputType = Vt, this._schemeColor = ke, this._shapeType = qt, this._charts = Q, this._colors = Dt, this._shapes = Ve, this.addNewSlide = (i) => {
|
|
5191
5227
|
const s = this.sections.length > 0 && this.sections[this.sections.length - 1]._slides.filter((c) => c._slideNum === this.slides[this.slides.length - 1]._slideNum).length > 0;
|
|
5192
5228
|
return i.sectionTitle = s ? this.sections[this.sections.length - 1].title : null, this.addSlide(i);
|
|
5193
5229
|
}, this.getSlide = (i) => this.slides.filter((s) => s._slideNum === i)[0], this.setSlideNumber = (i) => {
|
|
5194
|
-
this.masterSlide._slideNumberProps = i, this.slideLayouts.filter((s) => s._name ===
|
|
5230
|
+
this.masterSlide._slideNumberProps = i, this.slideLayouts.filter((s) => s._name === Wt)[0]._slideNumberProps = i;
|
|
5195
5231
|
}, this.createChartMediaRels = (i, s, c) => {
|
|
5196
|
-
i._relsChart.forEach((l) => c.push(
|
|
5232
|
+
i._relsChart.forEach((l) => c.push(Xr(l, s))), i._relsMedia.forEach((l) => {
|
|
5197
5233
|
if (l.type !== "online" && l.type !== "hyperlink") {
|
|
5198
5234
|
let r = l.data && typeof l.data == "string" ? l.data : "";
|
|
5199
5235
|
!r.includes(",") && !r.includes(";") ? r = "image/png;base64," + r : r.includes(",") ? r.includes(";") || (r = "image/png;" + r) : r = "image/png;base64," + r, s.file(l.Target.replace("..", "ppt"), r.split(",").pop(), { base64: !0 });
|
|
@@ -5210,19 +5246,19 @@ class pn {
|
|
|
5210
5246
|
}), this.exportPresentation = (i) => Re(this, void 0, void 0, function* () {
|
|
5211
5247
|
const s = [];
|
|
5212
5248
|
let c = [];
|
|
5213
|
-
const l = new
|
|
5249
|
+
const l = new Ta();
|
|
5214
5250
|
return this.slides.forEach((r) => {
|
|
5215
5251
|
c = c.concat(Xt(r));
|
|
5216
5252
|
}), this.slideLayouts.forEach((r) => {
|
|
5217
5253
|
c = c.concat(Xt(r));
|
|
5218
5254
|
}), c = c.concat(Xt(this.masterSlide)), yield Promise.all(c).then(() => Re(this, void 0, void 0, function* () {
|
|
5219
5255
|
return this.slides.forEach((r) => {
|
|
5220
|
-
r._slideLayout &&
|
|
5221
|
-
}), l.folder("_rels"), l.folder("docProps"), l.folder("ppt").folder("_rels"), l.folder("ppt/charts").folder("_rels"), l.folder("ppt/embeddings"), l.folder("ppt/media"), l.folder("ppt/slideLayouts").folder("_rels"), l.folder("ppt/slideMasters").folder("_rels"), l.folder("ppt/slides").folder("_rels"), l.folder("ppt/theme"), l.folder("ppt/notesMasters").folder("_rels"), l.folder("ppt/notesSlides").folder("_rels"), l.file("[Content_Types].xml",
|
|
5222
|
-
l.file(`ppt/slideLayouts/slideLayout${o + 1}.xml`,
|
|
5256
|
+
r._slideLayout && Ur(r);
|
|
5257
|
+
}), l.folder("_rels"), l.folder("docProps"), l.folder("ppt").folder("_rels"), l.folder("ppt/charts").folder("_rels"), l.folder("ppt/embeddings"), l.folder("ppt/media"), l.folder("ppt/slideLayouts").folder("_rels"), l.folder("ppt/slideMasters").folder("_rels"), l.folder("ppt/slides").folder("_rels"), l.folder("ppt/theme"), l.folder("ppt/notesMasters").folder("_rels"), l.folder("ppt/notesSlides").folder("_rels"), l.file("[Content_Types].xml", qr(this.slides, this.slideLayouts, this.masterSlide)), l.file("_rels/.rels", Jr()), l.file("docProps/app.xml", Hr(this.slides, this.company)), l.file("docProps/core.xml", jr(this.title, this.subject, this.author, this.revision)), l.file("ppt/_rels/presentation.xml.rels", Kr(this.slides)), l.file("ppt/theme/theme1.xml", dn(this)), l.file("ppt/presentation.xml", fn(this)), l.file("ppt/presProps.xml", hn()), l.file("ppt/tableStyles.xml", pn()), l.file("ppt/viewProps.xml", un()), this.slideLayouts.forEach((r, o) => {
|
|
5258
|
+
l.file(`ppt/slideLayouts/slideLayout${o + 1}.xml`, an(r)), l.file(`ppt/slideLayouts/_rels/slideLayout${o + 1}.xml.rels`, nn(o + 1, this.slideLayouts));
|
|
5223
5259
|
}), this.slides.forEach((r, o) => {
|
|
5224
|
-
l.file(`ppt/slides/slide${o + 1}.xml`,
|
|
5225
|
-
}), l.file("ppt/slideMasters/slideMaster1.xml",
|
|
5260
|
+
l.file(`ppt/slides/slide${o + 1}.xml`, Zr(r)), l.file(`ppt/slides/_rels/slide${o + 1}.xml.rels`, on(this.slides, this.slideLayouts, o + 1)), l.file(`ppt/notesSlides/notesSlide${o + 1}.xml`, tn(r)), l.file(`ppt/notesSlides/_rels/notesSlide${o + 1}.xml.rels`, An(o + 1));
|
|
5261
|
+
}), l.file("ppt/slideMasters/slideMaster1.xml", rn(this.masterSlide, this.slideLayouts)), l.file("ppt/slideMasters/_rels/slideMaster1.xml.rels", sn(this.masterSlide, this.slideLayouts)), l.file("ppt/notesMasters/notesMaster1.xml", en()), l.file("ppt/notesMasters/_rels/notesMaster1.xml.rels", ln()), this.slideLayouts.forEach((r) => {
|
|
5226
5262
|
this.createChartMediaRels(r, l, s);
|
|
5227
5263
|
}), this.slides.forEach((r) => {
|
|
5228
5264
|
this.createChartMediaRels(r, l, s);
|
|
@@ -5246,7 +5282,7 @@ class pn {
|
|
|
5246
5282
|
}, this._rtlMode = !1, this._slideLayouts = [
|
|
5247
5283
|
{
|
|
5248
5284
|
_margin: pt,
|
|
5249
|
-
_name:
|
|
5285
|
+
_name: Wt,
|
|
5250
5286
|
_presLayout: this._presLayout,
|
|
5251
5287
|
_rels: [],
|
|
5252
5288
|
_relsChart: [],
|
|
@@ -5359,7 +5395,7 @@ class pn {
|
|
|
5359
5395
|
const i = this.slideLayouts.filter((s) => s._name === t)[0];
|
|
5360
5396
|
i && (A = i);
|
|
5361
5397
|
}
|
|
5362
|
-
const a = new
|
|
5398
|
+
const a = new Or({
|
|
5363
5399
|
addSlide: this.addNewSlide,
|
|
5364
5400
|
getSlide: this.getSlide,
|
|
5365
5401
|
presLayout: this.presLayout,
|
|
@@ -5418,7 +5454,7 @@ class pn {
|
|
|
5418
5454
|
background: t.background || null,
|
|
5419
5455
|
bkgd: t.bkgd || null
|
|
5420
5456
|
};
|
|
5421
|
-
|
|
5457
|
+
_r(t, A), this.slideLayouts.push(A), (t.background || t.bkgd) && Oa(t.background, A), A._slideNumberProps && !this.masterSlide._slideNumberProps && (this.masterSlide._slideNumberProps = A._slideNumberProps);
|
|
5422
5458
|
}
|
|
5423
5459
|
// HTML-TO-SLIDES METHODS
|
|
5424
5460
|
/**
|
|
@@ -5427,42 +5463,42 @@ class pn {
|
|
|
5427
5463
|
* @param {TableToSlidesProps} options - generation options
|
|
5428
5464
|
*/
|
|
5429
5465
|
tableToSlides(n, t = {}) {
|
|
5430
|
-
|
|
5466
|
+
Sr(this, n, t, t?.masterSlideName ? this.slideLayouts.filter((A) => A._name === t.masterSlideName)[0] : null);
|
|
5431
5467
|
}
|
|
5432
5468
|
}
|
|
5433
|
-
const
|
|
5469
|
+
const vn = {
|
|
5434
5470
|
translateX: 0,
|
|
5435
5471
|
translateY: 0,
|
|
5436
5472
|
scale: 1,
|
|
5437
5473
|
rotation: 0
|
|
5438
|
-
},
|
|
5474
|
+
}, ba = Object.freeze({
|
|
5439
5475
|
imagePathById: {}
|
|
5440
5476
|
});
|
|
5441
|
-
function
|
|
5477
|
+
function Ga(e, n, t, A) {
|
|
5442
5478
|
const a = Math.min(e, t), i = Math.min(n, A), s = Math.abs(t - e), c = Math.abs(A - n);
|
|
5443
|
-
return
|
|
5479
|
+
return Ie({
|
|
5444
5480
|
origin: { x: a, y: i },
|
|
5445
5481
|
size: { width: s, height: c }
|
|
5446
5482
|
});
|
|
5447
5483
|
}
|
|
5448
|
-
function
|
|
5484
|
+
function Ye(e, n = 1) {
|
|
5449
5485
|
const { red: t, green: A, blue: a } = e;
|
|
5450
5486
|
return {
|
|
5451
5487
|
color: `#${(t << 16 | A << 8 | a).toString(16).padStart(6, "0")}`,
|
|
5452
5488
|
transparency: 100 - n * e.alpha * 100
|
|
5453
5489
|
};
|
|
5454
5490
|
}
|
|
5455
|
-
const
|
|
5491
|
+
const yn = 96, bn = 69;
|
|
5456
5492
|
function de(e, n) {
|
|
5457
5493
|
return e / n;
|
|
5458
5494
|
}
|
|
5459
5495
|
function Ft(e, n) {
|
|
5460
|
-
return de(e, n) *
|
|
5496
|
+
return de(e, n) * yn;
|
|
5461
5497
|
}
|
|
5462
|
-
function
|
|
5463
|
-
return de(e, n) *
|
|
5498
|
+
function wn(e, n) {
|
|
5499
|
+
return de(e, n) * bn;
|
|
5464
5500
|
}
|
|
5465
|
-
const
|
|
5501
|
+
const xn = ({
|
|
5466
5502
|
powerpoint: e,
|
|
5467
5503
|
slide: n,
|
|
5468
5504
|
object: t,
|
|
@@ -5473,7 +5509,7 @@ const yn = ({
|
|
|
5473
5509
|
const s = t.opacity * A;
|
|
5474
5510
|
if (t.drawn === 0 || s === 0)
|
|
5475
5511
|
return;
|
|
5476
|
-
const { origin: c, size: l } =
|
|
5512
|
+
const { origin: c, size: l } = Ga(
|
|
5477
5513
|
t.startX + i.translateX,
|
|
5478
5514
|
t.startY + i.translateY,
|
|
5479
5515
|
t.endX + i.translateX + i.scale * (t.endX - t.startX),
|
|
@@ -5485,7 +5521,7 @@ const yn = ({
|
|
|
5485
5521
|
w: de(l.width, a),
|
|
5486
5522
|
h: de(l.height, a),
|
|
5487
5523
|
line: {
|
|
5488
|
-
...
|
|
5524
|
+
...Ye(t.color, s),
|
|
5489
5525
|
width: Ft(t.width, a),
|
|
5490
5526
|
beginArrowType: t.isArrowheadDoubled ? "triangle" : "none",
|
|
5491
5527
|
endArrowType: "triangle"
|
|
@@ -5495,7 +5531,7 @@ const yn = ({
|
|
|
5495
5531
|
});
|
|
5496
5532
|
};
|
|
5497
5533
|
function mt(e, n, t, A) {
|
|
5498
|
-
return
|
|
5534
|
+
return qe(
|
|
5499
5535
|
{
|
|
5500
5536
|
x: e.x * A.scale + A.translateX,
|
|
5501
5537
|
y: e.y * A.scale + A.translateY
|
|
@@ -5507,7 +5543,7 @@ function mt(e, n, t, A) {
|
|
|
5507
5543
|
}
|
|
5508
5544
|
);
|
|
5509
5545
|
}
|
|
5510
|
-
const
|
|
5546
|
+
const Cn = ({
|
|
5511
5547
|
powerpoint: e,
|
|
5512
5548
|
slide: n,
|
|
5513
5549
|
object: t,
|
|
@@ -5519,23 +5555,23 @@ const bn = ({
|
|
|
5519
5555
|
if (t.drawn === 0 || s === 0)
|
|
5520
5556
|
return;
|
|
5521
5557
|
const { origin: c, size: l } = mt(
|
|
5522
|
-
|
|
5558
|
+
ve({ x: t.x, y: t.y }),
|
|
5523
5559
|
t.anchor,
|
|
5524
|
-
|
|
5560
|
+
Fe({ width: t.radius * 2, height: t.radius * 2 }),
|
|
5525
5561
|
i
|
|
5526
5562
|
);
|
|
5527
5563
|
n.addShape(e.ShapeType.ellipse, {
|
|
5528
|
-
fill:
|
|
5564
|
+
fill: Ye(t.fill, s),
|
|
5529
5565
|
x: de(c.x, a),
|
|
5530
5566
|
y: de(c.y, a),
|
|
5531
5567
|
w: de(l.width, a),
|
|
5532
5568
|
h: de(l.height, a),
|
|
5533
5569
|
line: t.borderWidth > 0 ? {
|
|
5534
|
-
...
|
|
5570
|
+
...Ye(t.borderColor, s),
|
|
5535
5571
|
width: Ft(i.scale * t.borderWidth, a)
|
|
5536
5572
|
} : {}
|
|
5537
5573
|
});
|
|
5538
|
-
},
|
|
5574
|
+
}, Ln = ({
|
|
5539
5575
|
object: e,
|
|
5540
5576
|
opacity: n,
|
|
5541
5577
|
transform: t,
|
|
@@ -5545,9 +5581,9 @@ const bn = ({
|
|
|
5545
5581
|
if (a === 0)
|
|
5546
5582
|
return;
|
|
5547
5583
|
const i = mt(
|
|
5548
|
-
|
|
5584
|
+
ve({ x: e.x, y: e.y }),
|
|
5549
5585
|
e.anchor,
|
|
5550
|
-
|
|
5586
|
+
Fe({
|
|
5551
5587
|
width: e.width * e.scale,
|
|
5552
5588
|
height: e.height * e.scale
|
|
5553
5589
|
}),
|
|
@@ -5560,7 +5596,7 @@ const bn = ({
|
|
|
5560
5596
|
};
|
|
5561
5597
|
for (const c of e.objects)
|
|
5562
5598
|
A(c, s, a);
|
|
5563
|
-
},
|
|
5599
|
+
}, Bn = ({
|
|
5564
5600
|
imagePathById: e,
|
|
5565
5601
|
slide: n,
|
|
5566
5602
|
object: t,
|
|
@@ -5575,9 +5611,9 @@ const bn = ({
|
|
|
5575
5611
|
if (c === void 0)
|
|
5576
5612
|
return;
|
|
5577
5613
|
const { origin: l, size: r } = mt(
|
|
5578
|
-
|
|
5614
|
+
ve({ x: t.x, y: t.y }),
|
|
5579
5615
|
t.anchor,
|
|
5580
|
-
|
|
5616
|
+
Fe({ width: t.width, height: t.height }),
|
|
5581
5617
|
i
|
|
5582
5618
|
);
|
|
5583
5619
|
n.addImage({
|
|
@@ -5588,7 +5624,7 @@ const bn = ({
|
|
|
5588
5624
|
h: de(r.height, a),
|
|
5589
5625
|
transparency: (1 - s) * 100
|
|
5590
5626
|
});
|
|
5591
|
-
},
|
|
5627
|
+
}, Dn = ({
|
|
5592
5628
|
powerpoint: e,
|
|
5593
5629
|
slide: n,
|
|
5594
5630
|
object: t,
|
|
@@ -5599,7 +5635,7 @@ const bn = ({
|
|
|
5599
5635
|
const s = t.opacity * A;
|
|
5600
5636
|
if (t.drawn === 0 || s === 0)
|
|
5601
5637
|
return;
|
|
5602
|
-
const { origin: c, size: l } =
|
|
5638
|
+
const { origin: c, size: l } = Ga(
|
|
5603
5639
|
t.startX + i.translateX,
|
|
5604
5640
|
t.startY + i.translateY,
|
|
5605
5641
|
t.endX + i.translateX + i.scale * (t.endX - t.startX),
|
|
@@ -5611,13 +5647,13 @@ const bn = ({
|
|
|
5611
5647
|
w: de(l.width, a),
|
|
5612
5648
|
h: de(l.height, a),
|
|
5613
5649
|
line: {
|
|
5614
|
-
...
|
|
5650
|
+
...Ye(t.color, s),
|
|
5615
5651
|
width: i.scale * Ft(t.width, a)
|
|
5616
5652
|
},
|
|
5617
5653
|
flipH: t.startX > t.endX,
|
|
5618
5654
|
flipV: t.startY > t.endY
|
|
5619
5655
|
});
|
|
5620
|
-
},
|
|
5656
|
+
}, Pn = ({
|
|
5621
5657
|
slide: e,
|
|
5622
5658
|
object: n,
|
|
5623
5659
|
opacity: t,
|
|
@@ -5628,10 +5664,10 @@ const bn = ({
|
|
|
5628
5664
|
if (i === 0 || n.drawn === 0 && n.fill.alpha === 0)
|
|
5629
5665
|
return;
|
|
5630
5666
|
const s = ut({ width: n.width, height: n.height }), c = s.getContext("2d"), l = {
|
|
5631
|
-
type:
|
|
5667
|
+
type: Le.Node,
|
|
5632
5668
|
context: c
|
|
5633
5669
|
}, r = Rt(n.path);
|
|
5634
|
-
|
|
5670
|
+
Me({
|
|
5635
5671
|
ctx: l,
|
|
5636
5672
|
path: r,
|
|
5637
5673
|
color: n.fill,
|
|
@@ -5654,7 +5690,7 @@ const bn = ({
|
|
|
5654
5690
|
h: de(n.height * a.scale, A),
|
|
5655
5691
|
transparency: 100 * (1 - i)
|
|
5656
5692
|
});
|
|
5657
|
-
},
|
|
5693
|
+
}, kn = ({
|
|
5658
5694
|
slide: e,
|
|
5659
5695
|
object: n,
|
|
5660
5696
|
opacity: t,
|
|
@@ -5665,10 +5701,10 @@ const bn = ({
|
|
|
5665
5701
|
if (i === 0 || n.drawn === 0 && n.fill.alpha === 0 || n.points.length === 0)
|
|
5666
5702
|
return;
|
|
5667
5703
|
const s = Math.max(...n.points.map((g) => g.x)), c = Math.max(...n.points.map((g) => g.y)), l = ut({ width: s, height: c }), r = l.getContext("2d"), o = {
|
|
5668
|
-
type:
|
|
5704
|
+
type: Le.Node,
|
|
5669
5705
|
context: r
|
|
5670
|
-
}, { path: f, length: m } =
|
|
5671
|
-
|
|
5706
|
+
}, { path: f, length: m } = La(n, Rt);
|
|
5707
|
+
Me({
|
|
5672
5708
|
ctx: o,
|
|
5673
5709
|
path: f,
|
|
5674
5710
|
color: n.fill,
|
|
@@ -5691,7 +5727,7 @@ const bn = ({
|
|
|
5691
5727
|
h: de(c * a.scale, A),
|
|
5692
5728
|
transparency: 100 * (1 - i)
|
|
5693
5729
|
});
|
|
5694
|
-
},
|
|
5730
|
+
}, Rn = ({
|
|
5695
5731
|
powerpoint: e,
|
|
5696
5732
|
slide: n,
|
|
5697
5733
|
object: t,
|
|
@@ -5703,21 +5739,21 @@ const bn = ({
|
|
|
5703
5739
|
if (t.drawn === 0 || s === 0)
|
|
5704
5740
|
return;
|
|
5705
5741
|
const { origin: c, size: l } = mt(
|
|
5706
|
-
|
|
5742
|
+
ve({ x: t.x, y: t.y }),
|
|
5707
5743
|
t.anchor,
|
|
5708
|
-
|
|
5744
|
+
Fe({ width: t.width, height: t.height }),
|
|
5709
5745
|
i
|
|
5710
5746
|
);
|
|
5711
5747
|
n.addShape(
|
|
5712
5748
|
t.rounding > 0 ? e.ShapeType.roundRect : e.ShapeType.rect,
|
|
5713
5749
|
{
|
|
5714
|
-
fill:
|
|
5750
|
+
fill: Ye(t.fill, s),
|
|
5715
5751
|
x: de(c.x, a),
|
|
5716
5752
|
y: de(c.y, a),
|
|
5717
5753
|
w: de(l.width, a),
|
|
5718
5754
|
h: de(l.height, a),
|
|
5719
5755
|
line: t.borderWidth > 0 ? {
|
|
5720
|
-
...
|
|
5756
|
+
...Ye(t.borderColor, s),
|
|
5721
5757
|
width: Ft(
|
|
5722
5758
|
t.borderWidth * i.scale,
|
|
5723
5759
|
a
|
|
@@ -5726,13 +5762,13 @@ const bn = ({
|
|
|
5726
5762
|
rectRadius: t.rounding > 0 ? i.scale * t.rounding / t.height : 0
|
|
5727
5763
|
}
|
|
5728
5764
|
);
|
|
5729
|
-
},
|
|
5765
|
+
}, wa = {
|
|
5730
5766
|
ITALIC: "italic",
|
|
5731
5767
|
OBLIQUE: "oblique"
|
|
5732
|
-
},
|
|
5768
|
+
}, Nn = {
|
|
5733
5769
|
BOLD: 700
|
|
5734
5770
|
};
|
|
5735
|
-
function
|
|
5771
|
+
function Fn({
|
|
5736
5772
|
length: e,
|
|
5737
5773
|
opacity: n,
|
|
5738
5774
|
pixelsPerInch: t,
|
|
@@ -5759,18 +5795,18 @@ function kn({
|
|
|
5759
5795
|
s.push({
|
|
5760
5796
|
text: o,
|
|
5761
5797
|
options: {
|
|
5762
|
-
bold: g.fontWeight >=
|
|
5798
|
+
bold: g.fontWeight >= Nn.BOLD,
|
|
5763
5799
|
fontFace: g.fontFamily,
|
|
5764
|
-
fontSize: A *
|
|
5765
|
-
...
|
|
5766
|
-
italic: g.fontStyle ===
|
|
5800
|
+
fontSize: A * wn(g.fontSize, t),
|
|
5801
|
+
...Ye(g.color, n),
|
|
5802
|
+
italic: g.fontStyle === wa.ITALIC || g.fontStyle === wa.OBLIQUE
|
|
5767
5803
|
}
|
|
5768
5804
|
});
|
|
5769
5805
|
}
|
|
5770
5806
|
}
|
|
5771
5807
|
return s;
|
|
5772
5808
|
}
|
|
5773
|
-
const
|
|
5809
|
+
const Tn = ({
|
|
5774
5810
|
ctx: e,
|
|
5775
5811
|
slide: n,
|
|
5776
5812
|
object: t,
|
|
@@ -5781,12 +5817,12 @@ const Rn = ({
|
|
|
5781
5817
|
const s = t.opacity * A;
|
|
5782
5818
|
if (t.length === 0 || s === 0)
|
|
5783
5819
|
return;
|
|
5784
|
-
const { length: c } = t, l =
|
|
5785
|
-
|
|
5820
|
+
const { length: c } = t, l = Da(t.text), r = Ba(t), o = Ra(l, r, e), f = Pa(o, t.lineSpacing), { origin: m, size: d } = mt(
|
|
5821
|
+
ve({ x: t.x, y: t.y }),
|
|
5786
5822
|
t.anchor,
|
|
5787
5823
|
f,
|
|
5788
5824
|
i
|
|
5789
|
-
), g =
|
|
5825
|
+
), g = Fn({
|
|
5790
5826
|
length: c,
|
|
5791
5827
|
opacity: s,
|
|
5792
5828
|
pixelsPerInch: a,
|
|
@@ -5801,52 +5837,52 @@ const Rn = ({
|
|
|
5801
5837
|
h: de(d.height, a) * 1.1,
|
|
5802
5838
|
w: de(d.width, a) * 1.1
|
|
5803
5839
|
});
|
|
5804
|
-
},
|
|
5840
|
+
}, Sn = ({ object: e }) => {
|
|
5805
5841
|
console.warn("Object type is not supported by PowerPoint renderer", e);
|
|
5806
|
-
},
|
|
5807
|
-
[
|
|
5808
|
-
[
|
|
5809
|
-
[
|
|
5810
|
-
[
|
|
5811
|
-
[
|
|
5812
|
-
[
|
|
5813
|
-
[
|
|
5814
|
-
[
|
|
5815
|
-
[
|
|
5816
|
-
[
|
|
5842
|
+
}, In = {
|
|
5843
|
+
[ye.ARROW]: xn,
|
|
5844
|
+
[ye.CIRCLE]: Cn,
|
|
5845
|
+
[ye.GROUP]: Ln,
|
|
5846
|
+
[ye.IMAGE]: Bn,
|
|
5847
|
+
[ye.LINE]: Dn,
|
|
5848
|
+
[ye.MASK]: Sn,
|
|
5849
|
+
[ye.PATH]: Pn,
|
|
5850
|
+
[ye.POLYGON]: kn,
|
|
5851
|
+
[ye.RECTANGLE]: Rn,
|
|
5852
|
+
[ye.SLIDE_OBJECT]: () => {
|
|
5817
5853
|
},
|
|
5818
|
-
[
|
|
5854
|
+
[ye.TEXT]: Tn
|
|
5819
5855
|
};
|
|
5820
|
-
function
|
|
5856
|
+
function _n(e, n) {
|
|
5821
5857
|
const t = {};
|
|
5822
5858
|
for (const [A, a] of Object.entries(e))
|
|
5823
5859
|
t[A] = Kt.join(n, a);
|
|
5824
5860
|
return t;
|
|
5825
5861
|
}
|
|
5826
|
-
class
|
|
5862
|
+
class Xn {
|
|
5827
5863
|
constructor(n) {
|
|
5828
5864
|
const { objectRenderers: t, ...A } = n;
|
|
5829
5865
|
this.props = {
|
|
5830
|
-
presentation:
|
|
5866
|
+
presentation: ea(),
|
|
5831
5867
|
objectRenderers: {
|
|
5832
|
-
...
|
|
5868
|
+
...In,
|
|
5833
5869
|
...t
|
|
5834
5870
|
},
|
|
5835
5871
|
pixelsPerInch: 384,
|
|
5836
5872
|
resourcePathPrefix: "",
|
|
5837
5873
|
...A
|
|
5838
|
-
}, this.state = { ...
|
|
5874
|
+
}, this.state = { ...ba };
|
|
5839
5875
|
}
|
|
5840
5876
|
save(n) {
|
|
5841
5877
|
const { presentation: t, pixelsPerInch: A, resourcePathPrefix: a } = this.props;
|
|
5842
5878
|
this.state = {
|
|
5843
|
-
...
|
|
5844
|
-
imagePathById:
|
|
5879
|
+
...ba,
|
|
5880
|
+
imagePathById: _n(t.resources.images, a)
|
|
5845
5881
|
};
|
|
5846
5882
|
const i = ut(t.size), s = {
|
|
5847
|
-
type:
|
|
5883
|
+
type: Le.Node,
|
|
5848
5884
|
context: i.getContext("2d")
|
|
5849
|
-
}, c = new
|
|
5885
|
+
}, c = new mn();
|
|
5850
5886
|
c.defineLayout({
|
|
5851
5887
|
name: "CUSTOM",
|
|
5852
5888
|
width: de(t.size.width, A),
|
|
@@ -5856,7 +5892,7 @@ class zn {
|
|
|
5856
5892
|
const r = t.slides[l];
|
|
5857
5893
|
if (r === void 0)
|
|
5858
5894
|
continue;
|
|
5859
|
-
const o =
|
|
5895
|
+
const o = aa(r);
|
|
5860
5896
|
for (const f of o)
|
|
5861
5897
|
this.addSlide(c, s, l, f);
|
|
5862
5898
|
}
|
|
@@ -5866,12 +5902,12 @@ class zn {
|
|
|
5866
5902
|
const { objectRenderers: i, presentation: s, pixelsPerInch: c } = this.props, { imagePathById: l } = this.state, r = s.slides[A];
|
|
5867
5903
|
if (r === void 0)
|
|
5868
5904
|
return;
|
|
5869
|
-
const o =
|
|
5905
|
+
const o = ta({
|
|
5870
5906
|
slide: r,
|
|
5871
5907
|
buildIndex: a,
|
|
5872
5908
|
buildTime: null
|
|
5873
5909
|
}), f = n.addSlide();
|
|
5874
|
-
f.background =
|
|
5910
|
+
f.background = Ye(s.backgroundColor);
|
|
5875
5911
|
function m(d, g, u) {
|
|
5876
5912
|
const y = i[d.objectType], v = o.get(d);
|
|
5877
5913
|
y === void 0 || v === void 0 || y({
|
|
@@ -5887,11 +5923,11 @@ class zn {
|
|
|
5887
5923
|
});
|
|
5888
5924
|
}
|
|
5889
5925
|
for (const d of r.objects)
|
|
5890
|
-
m(d,
|
|
5926
|
+
m(d, vn, 1);
|
|
5891
5927
|
}
|
|
5892
5928
|
}
|
|
5893
5929
|
export {
|
|
5894
|
-
|
|
5895
|
-
|
|
5896
|
-
|
|
5930
|
+
Un as ImageRenderer,
|
|
5931
|
+
On as PDFRenderer,
|
|
5932
|
+
Xn as PowerPointRenderer
|
|
5897
5933
|
};
|