gitroots 0.6.2 → 0.6.3
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/package.json +1 -1
- package/src/runtime.js +1 -1
- package/src/session/logo.js +25 -78
- package/src/session/repl.js +13 -11
- package/src/session/logo-art.js +0 -56
package/package.json
CHANGED
package/src/runtime.js
CHANGED
|
@@ -5,7 +5,7 @@ import os from 'node:os';
|
|
|
5
5
|
import path from 'node:path';
|
|
6
6
|
import { fileURLToPath } from 'node:url';
|
|
7
7
|
|
|
8
|
-
export const VERSION = '0.6.
|
|
8
|
+
export const VERSION = '0.6.3';
|
|
9
9
|
|
|
10
10
|
// Default download location for install.sh / gitroots update. Override with GITROOTS_DOWNLOAD_BASE.
|
|
11
11
|
export const DOWNLOAD_BASE = process.env.GITROOTS_DOWNLOAD_BASE || 'https://gitroots.com/cli';
|
package/src/session/logo.js
CHANGED
|
@@ -1,88 +1,35 @@
|
|
|
1
|
-
// The
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
|
|
1
|
+
// The welcome header from the gitroots CLI design:
|
|
2
|
+
//
|
|
3
|
+
// [logo] │ v0.6.2 · code governance and agent sessions
|
|
4
|
+
// │ Secure it to the root, scale with confidence.
|
|
5
|
+
//
|
|
6
|
+
// Terminals that can show images (iTerm2, Ghostty, WezTerm, Kitty) get the real assets/logo.png.
|
|
7
|
+
// Others (Terminal.app, …) print a plain bold "gitroots" in its place, as the design specifies.
|
|
8
|
+
import { c, width, state as colorState } from '../ui/ansi.js';
|
|
5
9
|
import { imageProtocol, logoImage } from '../ui/term.js';
|
|
6
|
-
import { ART } from './logo-art.js';
|
|
7
10
|
|
|
8
|
-
const
|
|
11
|
+
const IMG_ROWS = 3;
|
|
12
|
+
const IMG_COLS = 22; // logo.png is 3.38:1; terminal cells are about 1:2
|
|
9
13
|
|
|
10
|
-
|
|
11
|
-
function x256([r, g, b]) {
|
|
12
|
-
const q = (v) => (v < 48 ? 0 : v < 115 ? 1 : Math.floor((v - 35) / 40));
|
|
13
|
-
const lv = [0, 95, 135, 175, 215, 255];
|
|
14
|
-
const [qr, qg, qb] = [q(r), q(g), q(b)];
|
|
15
|
-
const dc = (lv[qr] - r) ** 2 + (lv[qg] - g) ** 2 + (lv[qb] - b) ** 2;
|
|
16
|
-
const gray = Math.max(0, Math.min(23, Math.round(((r + g + b) / 3 - 8) / 10)));
|
|
17
|
-
const gv = 8 + gray * 10;
|
|
18
|
-
return (gv - r) ** 2 + (gv - g) ** 2 + (gv - b) ** 2 < dc ? 232 + gray : 16 + 36 * qr + 6 * qg + qb;
|
|
19
|
-
}
|
|
20
|
-
const fg = (h) => (colorState.truecolor ? `\x1b[38;2;${rgb(h).join(';')}m` : `\x1b[38;5;${x256(rgb(h))}m`);
|
|
21
|
-
const bg = (h) => (colorState.truecolor ? `\x1b[48;2;${rgb(h).join(';')}m` : `\x1b[48;5;${x256(rgb(h))}m`);
|
|
22
|
-
|
|
23
|
-
function pixelAt(art, x, y) {
|
|
24
|
-
const p = art.px[y].slice(x * 6, x * 6 + 6);
|
|
25
|
-
return p === '------' ? null : p;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/** The logo drawn with half blocks: `rows` terminal rows (12 or 8). */
|
|
29
|
-
export function logoLines(rows = 14) {
|
|
30
|
-
const art = ART[rows] || ART[14];
|
|
31
|
-
const lines = [];
|
|
32
|
-
for (let y = 0; y < art.px.length; y += 2) {
|
|
33
|
-
let s = '';
|
|
34
|
-
for (let x = 0; x < art.w; x++) {
|
|
35
|
-
const t = pixelAt(art, x, y);
|
|
36
|
-
const b = pixelAt(art, x, y + 1);
|
|
37
|
-
if (!colorState.color) { s += t && b ? '█' : t ? '▀' : b ? '▄' : ' '; continue; }
|
|
38
|
-
if (!t && !b) s += ' ';
|
|
39
|
-
else if (t && b && t === b) s += `${fg(t)}█\x1b[39m`;
|
|
40
|
-
else if (t && b) s += `${fg(t)}${bg(b)}▀\x1b[39;49m`;
|
|
41
|
-
else if (t) s += `${fg(t)}▀\x1b[39m`;
|
|
42
|
-
else s += `${fg(b)}▄\x1b[39m`;
|
|
43
|
-
}
|
|
44
|
-
lines.push(s);
|
|
45
|
-
}
|
|
46
|
-
return lines;
|
|
47
|
-
}
|
|
14
|
+
const word = (s) => (colorState.color ? `\x1b[1m${colorState.truecolor ? '\x1b[38;2;227;237;252m' : '\x1b[38;5;255m'}${s}\x1b[39;22m` : s);
|
|
48
15
|
|
|
49
16
|
/**
|
|
50
|
-
*
|
|
51
|
-
* Returns
|
|
52
|
-
* (rows up from the end of the box, column) and the logo area in `lines` is left blank for it.
|
|
17
|
+
* Print the header. `lines` are the text lines beside the divider (two in the design).
|
|
18
|
+
* Returns the number of rows printed.
|
|
53
19
|
*/
|
|
54
|
-
export function
|
|
55
|
-
const rows = cols >= 100 ? 14 : 10;
|
|
56
|
-
const art = ART[rows];
|
|
20
|
+
export function printWelcome(write, lines) {
|
|
57
21
|
const proto = colorState.color ? imageProtocol() : null;
|
|
58
|
-
const
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
const row = (s) => { const t = fit(s, inner - 4); return `${b('│')} ${t}${' '.repeat(Math.max(0, inner - 4 - width(t)))} ${b('│')}`; };
|
|
65
|
-
const lines = [b(`╭${'─'.repeat(inner)}╮`), row('')];
|
|
66
|
-
const logoTop = lines.length;
|
|
67
|
-
if (side) {
|
|
68
|
-
const off = Math.max(0, Math.floor((rows - info.length) / 2));
|
|
69
|
-
for (let i = 0; i < rows; i++) lines.push(row(`${logo[i]} ${info[i - off] ?? ''}`));
|
|
70
|
-
} else {
|
|
71
|
-
for (const l of logo) lines.push(row(l));
|
|
72
|
-
lines.push(row(''));
|
|
73
|
-
for (const l of info) lines.push(row(l));
|
|
22
|
+
const rows = proto ? IMG_ROWS : Math.max(2, lines.length);
|
|
23
|
+
const logoCol = proto ? IMG_COLS : width('gitroots');
|
|
24
|
+
const out = [];
|
|
25
|
+
for (let i = 0; i < rows; i++) {
|
|
26
|
+
const logo = proto ? ' '.repeat(logoCol) : i === 0 ? word('gitroots') : ' '.repeat(logoCol);
|
|
27
|
+
out.push(` ${logo} ${c.m('│')} ${lines[i] ?? ''}`);
|
|
74
28
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/** Print the welcome box; in image-capable terminals, draw logo.png into its space. */
|
|
81
|
-
export function printWelcome(write, info, cols) {
|
|
82
|
-
const { lines, image } = welcomeBox(info, cols);
|
|
83
|
-
write(`${lines.join('\n')}\n`);
|
|
84
|
-
if (image) {
|
|
85
|
-
const esc = logoImage(image.cols, image.rows);
|
|
86
|
-
if (esc) write(`\x1b7\x1b[${image.up}A\r\x1b[${image.col}C${esc}\x1b8`);
|
|
29
|
+
write(`${out.join('\n')}\n`);
|
|
30
|
+
if (proto) {
|
|
31
|
+
const esc = logoImage(IMG_COLS, IMG_ROWS);
|
|
32
|
+
if (esc) write(`\x1b7\x1b[${rows}A\r\x1b[2C${esc}\x1b8`);
|
|
87
33
|
}
|
|
34
|
+
return rows;
|
|
88
35
|
}
|
package/src/session/repl.js
CHANGED
|
@@ -33,21 +33,24 @@ export function words(text) {
|
|
|
33
33
|
return outw;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
+
// The design's welcome: logo │ version + tagline, then who you are and where you are.
|
|
36
37
|
function header(ctx) {
|
|
37
38
|
const cfg = readConfig();
|
|
38
|
-
const { cols } = size();
|
|
39
39
|
const top = tryGit(['rev-parse', '--show-toplevel']);
|
|
40
40
|
const branch = top ? tryGit(['rev-parse', '--abbrev-ref', 'HEAD']) : '';
|
|
41
41
|
const repo = top ? remoteFullName(tryGit(['remote', 'get-url', 'origin'])) || top.split('/').pop() : '';
|
|
42
|
-
|
|
43
|
-
? `${c.b(cfg.user?.name || cfg.username)} ${c.m('·')} ${cfg.org ? `${cfg.org.name} ${c.m(`(${cfg.org.role})`)}` : c.w('no workspace · /workspace')} ${c.m(`· ${ctx.api.host}`)}`
|
|
44
|
-
: `${c.w('Not signed in')} ${c.m('· /login to connect your gitroots account')}`;
|
|
42
|
+
write('\n');
|
|
45
43
|
printWelcome(write, [
|
|
46
|
-
`${c.s(`v${VERSION}`)}
|
|
47
|
-
'',
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
44
|
+
`${c.s(`v${VERSION}`)} ${c.m('·')} ${c.s('code governance and agent sessions')}`,
|
|
45
|
+
c.g('Secure it to the root, scale with confidence.'),
|
|
46
|
+
]);
|
|
47
|
+
write('\n');
|
|
48
|
+
if (ctx.api.signedIn) {
|
|
49
|
+
write(` ${c.g('✓')} Signed in as ${c.b(cfg.user?.name || cfg.username)} ${c.m(`${cfg.org ? `${cfg.org.name} · ${cfg.org.role}` : 'no workspace · /workspace'} · ${ctx.api.host}`)}\n`);
|
|
50
|
+
} else {
|
|
51
|
+
write(` ${c.w('◐')} Not signed in ${c.m('·')} ${c.g('/login')} ${c.m('connects your gitroots account')}\n`);
|
|
52
|
+
}
|
|
53
|
+
write(` ${c.m(`${shortPath(process.cwd())}${repo ? ` · ${repo}${branch ? ` @ ${branch}` : ''}` : ''}`)}\n`);
|
|
51
54
|
}
|
|
52
55
|
|
|
53
56
|
class Repl {
|
|
@@ -293,9 +296,8 @@ class Repl {
|
|
|
293
296
|
}
|
|
294
297
|
|
|
295
298
|
start() {
|
|
296
|
-
write('\n');
|
|
297
299
|
header(this.ctx);
|
|
298
|
-
write(
|
|
300
|
+
write(`\n ${c.m('Type')} ${c.g('/')} ${c.m('to pick a command, or')} ${c.g('/help')} ${c.m('for all of them.')}\n\n`);
|
|
299
301
|
process.stdin.setRawMode(true);
|
|
300
302
|
process.stdin.resume();
|
|
301
303
|
process.stdin.on('data', this.onData);
|
package/src/session/logo-art.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
// Generated by scripts/make-logo.py from assets/logo.png. Do not edit by hand.
|
|
2
|
-
// Pixel rows (two per terminal row), 6 hex digits per pixel, '------' = transparent.
|
|
3
|
-
export const ART = {
|
|
4
|
-
14: { w: 91, px: [
|
|
5
|
-
'586a26b3da44b3da44b3da44b3da44586a26------4c652197d03997d03997d03997d0394c6521------30582159b23859b23859b23859b238305821------164a2a20944d20944d20944d20944d164a2a------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
6
|
-
'b3da44b3da44b3da44b3da44b3da44b3da44------97d03997d03997d03997d03997d03997d039------59b23859b23859b23859b23859b23859b238------20944d20944d20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
7
|
-
'b3da44b3da44b3da44b3da44b3da44b3da44------97d03997d03997d03997d03997d03997d039------59b23859b23859b23859b23859b23859b238------20944d20944d20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
8
|
-
'b3da44b3da44b3da44b3da44b3da44b3da44------97d03997d03997d03997d03997d03997d039------59b23859b23859b23859b23859b23859b238------20944d20944d20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
9
|
-
'b3da44b3da44b3da44b3da44b3da44b3da44------97d03997d03997d03997d03997d03997d039------59b23859b23859b23859b23859b23859b238------20944d20944d20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
10
|
-
'586a26b3da44b3da44b3da44b3da44586a26------4c652197d03997d03997d03997d0394c6521------30582159b23859b23859b23859b238305821------164a2a20944d20944d20944d20944d164a2a------------------------------------------------------------------------------------------------36383b------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
11
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------8d949de3edfc979da6------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
12
|
-
'3f5f207ac1357ac1357ac1357ac1353f5f20------35591e64b53264b53264b53264b53235591e------17461e238b32238b32238b32238b3217461e------0b3c2407753e07753e07753e07753e0b3c24------------------------------------------------------------------------------------------898d97e3edfc9197a1------------acb4bfb3bac64d5054------------------------------------------------------------------------------------------------------------------------------------------------------------------------797d85b3bac67e848b------------------------------------------------------------',
|
|
13
|
-
'7ac1357ac1357ac1357ac1357ac1357ac135------64b53264b53264b53264b53264b53264b532------238b32238b32238b32238b32238b32238b32------07753e07753e07753e07753e07753e07753e------------------------------------------------------------------------------------------------------------------------dbe5f3e3edfc5f6269------------------------------------------------------------------------------------------------------------------------------------------------------------------------989ea7e3edfc9fa6b0------------------------------------------------------------',
|
|
14
|
-
'7ac1357ac1357ac1357ac1357ac1357ac135------64b53264b53264b53264b53264b53264b532------238b32238b32238b32238b32238b32238b32------07753e07753e07753e07753e07753e07753e------------------------------------3536399ba3adbec6d29fa6b0------969ca5a9b0bb4e5155------6e737aa9b0bb797e86------a9b0bbe0eaf9e3edfcbfc7d3a7adb9------60646aa9b0bb7e828a56595eb7bfcb80848d------------6c7077aeb5c0bec7d3a8b0b95e6167------------------------------848a92b7bfcbbcc4d1999fa93f4144------------9196a0ced7e5e3edfcd0dae7a9b0bb3e4043------------8d949db8c0ccbdc5d19ea5af484b4f------',
|
|
15
|
-
'7ac1357ac1357ac1357ac1357ac1357ac135------64b53264b53264b53264b53264b53264b532------238b32238b32238b32238b32238b32238b32------07753e07753e07753e07753e07753e07753e------------------------------313335d9e3f1e3edfce3edfce3edfcc7d0ddd0d9e6e3edfc65696f------9399a3e3edfca1a8b3------e3edfce3edfce3edfce3edfce0e9f8------7f858de3edfcc1c9d6dfe9f7e3edfc999fa9------aab2bde3edfce3edfce3edfce3edfce3edfc8f959e------------------cfd8e6e3edfce3edfce3edfce3edfce0e9f855585d------c2cad7e3edfce3edfce3edfce3edfc4f5356------d6dfede3edfcd6dfedc9d2dfe3edfce1ebfa53575c',
|
|
16
|
-
'7ac1357ac1357ac1357ac1357ac1357ac135------64b53264b53264b53264b53264b53264b532------238b32238b32238b32238b32238b32238b32------07753e07753e07753e07753e07753e07753e------------------------------999fa9e3edfcd4ddeb404246------8e949de3edfce3edfc65696f------9399a3e3edfca1a8b3------------dbe5f3e3edfc666a71------------7f858de3edfce3edfc8990983e404332333660646ae3edfce0e9f7515358------6a6e74e3edfce3edfc42454a------9ba1abe3edfcc7d0dd------------9ea4aee3edfcd4dcea------------9da3ade3edfca3aab5------------6f7379e3edfcd1dae7------------6f747aa1a8b25f6368',
|
|
17
|
-
'3f5f207ac1357ac1357ac1357ac1353f5f20------35591e64b53264b53264b53264b53235591e------17461e238b32238b32238b32238b3217461e------0b3c2407753e07753e07753e07753e0b3c24------------------------------cfd8e5e3edfc82878f------------------dee8f6e3edfc65696f------9399a3e3edfca1a8b3------------dbe5f3e3edfc5f6269------------7f858de3edfcc7cedb------------------a2a9b3e3edfca5acb8------------------c2cbd8e3edfc848992------dae3f2e3edfc6c7077------------------e3edfce3edfc4a4d51------989ea7e3edfc9fa6b0------------61646ae3edfce1ebfa848a924c4e53------------------',
|
|
18
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------dee8f6e3edfc65696f------------------cbd4e2e3edfc65696f------9399a3e3edfca1a8b3------------dbe5f3e3edfc5f6269------------7f858de3edfcb4bdc9------------------b8c0cbe3edfc898f97------------------a5acb8e3edfc999fa9------e3edfce3edfc4f5256------------------dfe9f7e3edfc5f6368------989ea7e3edfc9fa6b0------------------a3aab5e3edfce3edfce3edfce1ebfab3bcc836383b',
|
|
19
|
-
'15441d1d872f1d872f1d872f1d872f15441d------103c2312743d12743d12743d12743d103c23------0c36200967360967360967360967360c3620------0c2c1c09512e09512e09512e09512e0c2c1c------------------------------d2dbe9e3edfc7a8088------------------dbe5f4e3edfc65696f------9399a3e3edfca1a8b3------------dbe5f3e3edfc5f6269------------7f858de3edfcb4bdc9------------------abb2bde3edfc9aa0aa------------------b7bfcbe3edfc8c929b------e0e9f8e3edfc606369------------------e3edfce3edfc53565b------989ea7e3edfc9fa6b0------------------------31333564686e9399a2d7e2efe3edfcc0c8d4',
|
|
20
|
-
'1d872f1d872f1d872f1d872f1d872f1d872f------12743d12743d12743d12743d12743d12743d------096736096736096736096736096736096736------09512e09512e09512e09512e09512e09512e------------------------------a2a8b3e3edfccdd6e4333437------80858de3edfce3edfc65696f------9399a3e3edfca1a8b3------------dae4f2e3edfc666a71------------7f858de3edfcb4bdc9------------------767b82e3edfcd6e1ee------------3c3e42e0eaf9e3edfc585c61------b0b8c3e3edfcb1b9c4------------777b83e3edfcdfe9f6------------979da6e3edfca5acb8------------585b619aa0aa7c818a------------70757ce3edfcd7e2ef',
|
|
21
|
-
'1d872f1d872f1d872f1d872f1d872f1d872f------12743d12743d12743d12743d12743d12743d------096736096736096736096736096736096736------09512e09512e09512e09512e09512e09512e------------------------------383a3ddce6f4e3edfce3edfce1ebfac5cedad4ddeae3edfc65696f------9399a3e3edfca1a8b3------------bbc3d0e3edfcd9e3f0bfc7d4------7f858de3edfcb4bdc9------------------------cbd5e1e3edfcd7e1eeb3bac6dde6f4e3edfcb8c0cb------------434549e0e9f8e3edfcc9d2dfbac2cee3edfce3edfc7e848b------------7a7f86e3edfce1ebf9c2cad7484a4e585b60e3edfce3edfcabb3be999fa9d7e2efe3edfc939aa3',
|
|
22
|
-
'1d872f1d872f1d872f1d872f1d872f1d872f------12743d12743d12743d12743d12743d12743d------096736096736096736096736096736096736------09512e09512e09512e09512e09512e09512e------------------------------------37393c979da6b4bdc9999fa8------cad3e0e3edfc65696f------878d96cfd8e6949aa4------------3c3e41c0c8d4e3edfcdce6f4------757a82cfd8e6a5acb8------------------------------a0a7b1dee7f5e3edfcd9e3f19198a1------------------------47494eb8c0cce1ebfae3edfccdd6e470747b------------------------a3aab5dfe9f7e1ebfa686c72------61656bc5cedae3edfce3edfcd1dbe7828790------',
|
|
23
|
-
'1d872f1d872f1d872f1d872f1d872f1d872f------12743d12743d12743d12743d12743d12743d------096736096736096736096736096736096736------09512e09512e09512e09512e09512e09512e------------------------------------------------------------------d8e2f0e3edfc595d62------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
24
|
-
'15441d1d872f1d872f1d872f1d872f15441d------103c2312743d12743d12743d12743d103c23------0c36200967360967360967360967360c3620------0c2c1c09512e09512e09512e09512e0c2c1c------------------------------73787fe3edfcd1dae773777e64686eacb4bfe3edfcd6e1ee------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
25
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------969ca5e0e9f8e3edfce3edfce3edfcc5cdda404346------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
26
|
-
'0b2f1f0758330758330758330758330b2f1f------0c2d1a0a52290a52290a52290a52290c2d1a------0c241a0a3e280a3e280a3e280a3e280c241a------0c211a0a39290a39290a39290a39290c211a------------------------------------------------494c504f525635373a------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
27
|
-
'075833075833075833075833075833075833------0a52290a52290a52290a52290a52290a5229------0a3e280a3e280a3e280a3e280a3e280a3e28------0a39290a39290a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
28
|
-
'075833075833075833075833075833075833------0a52290a52290a52290a52290a52290a5229------0a3e280a3e280a3e280a3e280a3e280a3e28------0a39290a39290a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
29
|
-
'075833075833075833075833075833075833------0a52290a52290a52290a52290a52290a5229------0a3e280a3e280a3e280a3e280a3e280a3e28------0a39290a39290a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
30
|
-
'075833075833075833075833075833075833------0a52290a52290a52290a52290a52290a5229------0a3e280a3e280a3e280a3e280a3e280a3e28------0a39290a39290a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
31
|
-
'0b2f1f0758330758330758330758330b2f1f------0c2d1a0a52290a52290a52290a52290c2d1a------0c241a0a3e280a3e280a3e280a3e280c241a------0c211a0a39290a39290a39290a39290c211a------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
32
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
33
|
-
] },
|
|
34
|
-
10: { w: 65, px: [
|
|
35
|
-
'b3da44b3da44b3da44b3da44------97d03997d03997d03997d039------59b23859b23859b23859b238------20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
36
|
-
'b3da44b3da44b3da44b3da44------97d03997d03997d03997d039------59b23859b23859b23859b238------20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
37
|
-
'b3da44b3da44b3da44b3da44------97d03997d03997d03997d039------59b23859b23859b23859b238------20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
38
|
-
'b3da44b3da44b3da44b3da44------97d03997d03997d03997d039------59b23859b23859b23859b238------20944d20944d20944d20944d------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
39
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------7d818ac2ccd9------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
40
|
-
'7ac1357ac1357ac1357ac135------64b53264b53264b53264b532------238b32238b32238b32238b32------07753e07753e07753e07753e------------------------------------------------------------------5d6167969da5------434549d0d9e755585d------------------------------------------------------------------------------------------------------------------------d0d9e78f959e------------------------------------------',
|
|
41
|
-
'7ac1357ac1357ac1357ac135------64b53264b53264b53264b532------238b32238b32238b32238b32------07753e07753e07753e07753e------------------------------4c4f537e858d4a4d514e515671767d------4c4f5471767d------90969fe3edfc9ba1ab424448383a3d71767d36383b7b8188------------55585d7f858d6b7076------------------------5d606680858d676c72------------64686ee3edfcbcc5d15d6166------------72777e7f858d53575c------',
|
|
42
|
-
'7ac1357ac1357ac1357ac135------64b53264b53264b53264b532------238b32238b32238b32238b32------07753e07753e07753e07753e------------------------666a70e3edfccbd5e1c7cfdcc7d0dde3edfc------9399a3e3edfc------c1cad6e3edfcc6ceda65696f686d73e3edfcccd5e2cfd8e54243479aa0aae1ebfab4bdc9d7e2efcbd5e2------------adb4bfe0e9f8b3bac7dae4f3c1cad6------9da3ade3edfcd2dcea9298a1------d8e3f0c6ceda9ea5afe0e9f8838891',
|
|
43
|
-
'7ac1357ac1357ac1357ac135------64b53264b53264b53264b532------238b32238b32238b32238b32------07753e07753e07753e07753e------------------------c7cedbd1dae7------------c5cddae3edfc------9399a3e3edfc------484b4fe3edfc5c6065------686d73e3edfc6e7379------383a3de3edfc8b9199------434649e3edfc7e838c4b4e52e3edfc767a82------515559e3edfc696d74------e3edfc9ba3ad------515358e3edfc828890------3a3c3f------',
|
|
44
|
-
'------------------------------------------------------------------------------------------------------------------------------------------dfe9f7abb3be------------9aa0aae3edfc------9399a3e3edfc------484b4fe3edfc5c6065------686d73e3edfc404246------575b60e3edfc5b5f64------------e3edfc9da4af6a6e75e3edfc46484c------------e3edfc898d97------e3edfc9ba3ad------------a7adb9e1ebfae1ebfac2cad754585d',
|
|
45
|
-
'1d872f1d872f1d872f1d872f------12743d12743d12743d12743d------096736096736096736096736------09512e09512e09512e09512e------------------------cad3e0ccd5e3------------bfc8d4e3edfc------9399a3e3edfc------484b4fe3edfc5c6065------686d73e3edfc404246------434449e3edfc7a8088------333637e3edfc888d9755585de3edfc656a70------424447e3edfc73777f------e3edfc9ba3ad------------404246------4e5156cbd3e1d6deed',
|
|
46
|
-
'1d872f1d872f1d872f1d872f------12743d12743d12743d12743d------096736096736096736096736------09512e09512e09512e09512e------------------------6c7278e3edfcc5cedac0c8d5c8d1dee3edfc------9399a3e3edfc------35373ae3edfcb9c1cd575b60686d73e3edfc404246------------b4bdc9dce6f490969fc6cedbdae3f2323336------c3cdd9d6e1ee8e949dcbd3e1d2dbe9------------d1dbe7d1dbe87b80884a4d51e1ebfaa9b1bc7d828bd6dfedb0b8c3',
|
|
47
|
-
'1d872f1d872f1d872f1d872f------12743d12743d12743d12743d------096736096736096736096736------09512e09512e09512e09512e------------------------------4a4d52797e8547494d999fa9e1ebfa------5e61688d939c------------64686e9ea5af64686e44474a8d939c------------------------7a8088a5acb89197a0353639------------------838890a5aeb88d939c------------------40444699a0a88b9199------4d505599a1a9a4acb77b8088------',
|
|
48
|
-
'1d872f1d872f1d872f1d872f------12743d12743d12743d12743d------096736096736096736096736------09512e09512e09512e09512e------------------------62666dabb3be484b4f494b4fcdd6e4bbc3cf------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
49
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------abb3bedfe9f6dfe9f6adb5c0303134------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
50
|
-
'075833075833075833075833------0a52290a52290a52290a5229------0a3e280a3e280a3e280a3e28------0a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
51
|
-
'075833075833075833075833------0a52290a52290a52290a5229------0a3e280a3e280a3e280a3e28------0a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
52
|
-
'075833075833075833075833------0a52290a52290a52290a5229------0a3e280a3e280a3e280a3e28------0a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
53
|
-
'075833075833075833075833------0a52290a52290a52290a5229------0a3e280a3e280a3e280a3e28------0a39290a39290a39290a3929------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
54
|
-
'------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------',
|
|
55
|
-
] },
|
|
56
|
-
};
|