rip-lang 3.13.134 → 3.13.136

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/docs/dist/rip.js CHANGED
@@ -48,9 +48,12 @@
48
48
  getReactiveRuntime: () => getReactiveRuntime,
49
49
  getComponentRuntime: () => getComponentRuntime,
50
50
  formatSExpr: () => formatSExpr,
51
+ formatErrorHTML: () => formatErrorHTML,
52
+ formatError: () => formatError,
51
53
  compileToJS: () => compileToJS,
52
54
  compile: () => compile,
53
55
  VERSION: () => VERSION,
56
+ RipError: () => RipError,
54
57
  Lexer: () => Lexer,
55
58
  Compiler: () => Compiler,
56
59
  CodeEmitter: () => CodeEmitter,
@@ -58,10 +61,45 @@
58
61
  });
59
62
 
60
63
  // src/types.js
64
+ var INTRINSIC_TYPE_DECLS = [
65
+ "type __RipElementMap = HTMLElementTagNameMap & Omit<SVGElementTagNameMap, keyof HTMLElementTagNameMap>;",
66
+ "type __RipTag = keyof __RipElementMap;",
67
+ "type __RipBrowserElement = Omit<HTMLElement, 'querySelector' | 'querySelectorAll' | 'closest' | 'setAttribute' | 'hidden'> & { hidden: boolean | 'until-found'; setAttribute(qualifiedName: string, value: any): void; querySelector(selectors: string): __RipBrowserElement | null; querySelectorAll(selectors: string): NodeListOf<__RipBrowserElement>; closest(selectors: string): __RipBrowserElement | null; };",
68
+ "type __RipDomEl<K extends __RipTag> = Omit<__RipElementMap[K], 'querySelector' | 'querySelectorAll' | 'closest' | 'setAttribute' | 'hidden'> & __RipBrowserElement;",
69
+ "type __RipAttrKeys<T> = { [K in keyof T]-?: K extends 'style' | 'classList' | 'className' | 'nodeValue' | 'textContent' | 'innerHTML' | 'innerText' | 'outerHTML' | 'outerText' | 'scrollLeft' | 'scrollTop' ? never : K extends `on${string}` | `aria${string}Element` | `aria${string}Elements` ? never : T[K] extends (...args: any[]) => any ? never : (<V>() => V extends Pick<T, K> ? 1 : 2) extends (<V>() => V extends { -readonly [P in K]: T[P] } ? 1 : 2) ? K : never }[keyof T] & string;",
70
+ "type __RipEvents = { [K in keyof HTMLElementEventMap as `@${K}`]?: ((event: HTMLElementEventMap[K]) => void) | null };",
71
+ "type __RipClassValue = string | boolean | null | undefined | Record<string, boolean> | __RipClassValue[];",
72
+ "type __RipProps<K extends __RipTag> = { [P in __RipAttrKeys<__RipElementMap[K]>]?: __RipElementMap[K][P] } & __RipEvents & { ref?: string; class?: __RipClassValue | __RipClassValue[]; style?: string; [k: `data-${string}`]: any; [k: `aria-${string}`]: any };"
73
+ ];
74
+ var ARIA_TYPE_DECLS = [
75
+ "type __RipAriaNavHandlers = { next?: () => void; prev?: () => void; first?: () => void; last?: () => void; select?: () => void; dismiss?: () => void; tab?: () => void; char?: () => void; };",
76
+ "declare const ARIA: {",
77
+ " bindPopover(open: boolean, popover: () => Element | null | undefined, setOpen: (isOpen: boolean) => void, source?: (() => Element | null | undefined) | null): void;",
78
+ " bindDialog(open: boolean, dialog: () => Element | null | undefined, setOpen: (isOpen: boolean) => void, dismissable?: boolean): void;",
79
+ " popupDismiss(open: boolean, popup: () => Element | null | undefined, close: () => void, els?: Array<() => Element | null | undefined>, repos?: (() => void) | null): void;",
80
+ " popupGuard(delay?: number): any;",
81
+ " listNav(event: KeyboardEvent, handlers: __RipAriaNavHandlers): void;",
82
+ " rovingNav(event: KeyboardEvent, handlers: __RipAriaNavHandlers, orientation?: 'vertical' | 'horizontal' | 'both'): void;",
83
+ " positionBelow(trigger: Element | null | undefined, popup: Element | null | undefined, gap?: number, setVisible?: boolean): void;",
84
+ " position(trigger: Element | null | undefined, floating: Element | null | undefined, opts?: any): void;",
85
+ " trapFocus(panel: Element | null | undefined): void;",
86
+ " wireAria(panel: Element, id: string): void;",
87
+ " lockScroll(instance: any): void;",
88
+ " unlockScroll(instance: any): void;",
89
+ " hasAnchor: boolean;",
90
+ " [key: string]: any;",
91
+ "};"
92
+ ];
93
+ var SIGNAL_INTERFACE = "interface Signal<T> { value: T; read(): T; lock(): Signal<T>; free(): Signal<T>; kill(): T; }";
94
+ var SIGNAL_FN = "declare function __state<T>(value: T | Signal<T>): Signal<T>;";
95
+ var COMPUTED_INTERFACE = "interface Computed<T> { readonly value: T; read(): T; lock(): Computed<T>; free(): Computed<T>; kill(): T; }";
96
+ var COMPUTED_FN = "declare function __computed<T>(fn: () => T): Computed<T>;";
97
+ var EFFECT_FN = "declare function __effect(fn: () => void | (() => void)): () => void;";
61
98
  function installTypeSupport(Lexer) {
62
99
  let proto = Lexer.prototype;
63
100
  proto.rewriteTypes = function() {
64
101
  let tokens = this.tokens;
102
+ let typeRefNames = this.typeRefNames = new Set;
65
103
  let gen = (tag, val, origin) => {
66
104
  let t = [tag, val];
67
105
  t.pre = 0;
@@ -81,22 +119,26 @@
81
119
  if (next && next[0] === "COMPARE" && next[1] === "<" && !next.spaced) {
82
120
  let isDef = tokens2[i - 1]?.[0] === "DEF";
83
121
  let genTokens = collectBalancedAngles(tokens2, i + 1);
84
- if (genTokens && isDef) {
85
- if (!token.data)
86
- token.data = {};
87
- token.data.typeParams = buildTypeString(genTokens);
88
- tokens2.splice(i + 1, genTokens.length);
89
- if (tokens2[i + 1]?.[0] === "(") {
90
- tokens2[i + 1][0] = "CALL_START";
91
- let d = 1, m = i + 2;
92
- while (m < tokens2.length && d > 0) {
93
- if (tokens2[m][0] === "(" || tokens2[m][0] === "CALL_START")
94
- d++;
95
- if (tokens2[m][0] === ")" || tokens2[m][0] === "CALL_END")
96
- d--;
97
- if (d === 0)
98
- tokens2[m][0] = "CALL_END";
99
- m++;
122
+ if (genTokens) {
123
+ let afterAngles = i + 1 + genTokens.length;
124
+ let isComponent = !isDef && tokens2[afterAngles]?.[0] === "=" && tokens2[afterAngles + 1]?.[0] === "COMPONENT";
125
+ if (isDef || isComponent) {
126
+ if (!token.data)
127
+ token.data = {};
128
+ token.data.typeParams = buildTypeString(genTokens);
129
+ tokens2.splice(i + 1, genTokens.length);
130
+ if (isDef && tokens2[i + 1]?.[0] === "(") {
131
+ tokens2[i + 1][0] = "CALL_START";
132
+ let d = 1, m = i + 2;
133
+ while (m < tokens2.length && d > 0) {
134
+ if (tokens2[m][0] === "(" || tokens2[m][0] === "CALL_START")
135
+ d++;
136
+ if (tokens2[m][0] === ")" || tokens2[m][0] === "CALL_END")
137
+ d--;
138
+ if (d === 0)
139
+ tokens2[m][0] = "CALL_END";
140
+ m++;
141
+ }
100
142
  }
101
143
  }
102
144
  }
@@ -124,7 +166,7 @@
124
166
  target = tokens2[k];
125
167
  propName = "returnType";
126
168
  } else if (prevToken[0] === "PARAM_END") {
127
- let arrowIdx = i + 1 + typeTokens.length;
169
+ let arrowIdx = i + 1 + typeTokens.consumed;
128
170
  let arrowToken = tokens2[arrowIdx];
129
171
  if (arrowToken && (arrowToken[0] === "->" || arrowToken[0] === "=>")) {
130
172
  target = arrowToken;
@@ -136,7 +178,11 @@
136
178
  if (!target.data)
137
179
  target.data = {};
138
180
  target.data[propName] = typeStr;
139
- let removeCount = 1 + typeTokens.length;
181
+ for (let tt of typeTokens) {
182
+ if (tt[0] === "IDENTIFIER")
183
+ typeRefNames.add(tt[1]);
184
+ }
185
+ let removeCount = 1 + typeTokens.consumed;
140
186
  tokens2.splice(i, removeCount);
141
187
  return 0;
142
188
  }
@@ -186,7 +232,7 @@
186
232
  return 0;
187
233
  }
188
234
  let typeTokens = collectTypeExpression(tokens2, afterEq);
189
- tokens2.splice(removeFrom, afterEq + typeTokens.length - removeFrom, makeDecl(buildTypeString(typeTokens)));
235
+ tokens2.splice(removeFrom, afterEq + typeTokens.consumed - removeFrom, makeDecl(buildTypeString(typeTokens)));
190
236
  return 0;
191
237
  }
192
238
  if (tag === "INTERFACE") {
@@ -222,11 +268,60 @@
222
268
  }
223
269
  return 1;
224
270
  });
271
+ for (let i = tokens.length - 1;i >= 0; i--) {
272
+ if (tokens[i][0] !== "DEF")
273
+ continue;
274
+ let nameToken = tokens[i + 1];
275
+ if (!nameToken || nameToken[0] !== "IDENTIFIER")
276
+ continue;
277
+ let j = i + 2;
278
+ if (tokens[j]?.[0] !== "CALL_START")
279
+ continue;
280
+ let depth = 1;
281
+ j++;
282
+ while (j < tokens.length && depth > 0) {
283
+ if (tokens[j][0] === "CALL_START")
284
+ depth++;
285
+ if (tokens[j][0] === "CALL_END")
286
+ depth--;
287
+ j++;
288
+ }
289
+ let callEndIdx = j - 1;
290
+ let next = tokens[j];
291
+ if (next && next[0] !== "TERMINATOR")
292
+ continue;
293
+ let hasTypes = nameToken.data?.returnType;
294
+ if (!hasTypes) {
295
+ for (let k = i + 2;k <= callEndIdx; k++) {
296
+ if (tokens[k].data?.type) {
297
+ hasTypes = true;
298
+ break;
299
+ }
300
+ }
301
+ }
302
+ if (!hasTypes)
303
+ continue;
304
+ let overloadTokens = tokens.slice(i, j + 1);
305
+ let exported = i >= 1 && tokens[i - 1]?.[0] === "EXPORT";
306
+ let spliceFrom = exported ? i - 1 : i;
307
+ let spliceCount = j + 1 - spliceFrom;
308
+ let marker = gen("TYPE_DECL", nameToken[1], nameToken);
309
+ marker.data = {
310
+ name: nameToken[1],
311
+ kind: "overload",
312
+ overloadTokens,
313
+ exported
314
+ };
315
+ if (nameToken.data?.typeParams)
316
+ marker.data.typeParams = nameToken.data.typeParams;
317
+ tokens.splice(spliceFrom, spliceCount, marker);
318
+ }
225
319
  };
226
320
  }
227
321
  function collectTypeExpression(tokens, j) {
228
322
  let typeTokens = [];
229
323
  let depth = 0;
324
+ let startJ = j;
230
325
  while (j < tokens.length) {
231
326
  let t = tokens[j];
232
327
  let tTag = t[0];
@@ -254,6 +349,23 @@
254
349
  break;
255
350
  }
256
351
  if (depth === 0) {
352
+ if (tTag === "INDENT" && typeTokens.length > 0 && typeTokens[typeTokens.length - 1][0] === "=>") {
353
+ j++;
354
+ let nest = 1;
355
+ while (j < tokens.length && nest > 0) {
356
+ if (tokens[j][0] === "INDENT") {
357
+ nest++;
358
+ j++;
359
+ } else if (tokens[j][0] === "OUTDENT") {
360
+ nest--;
361
+ j++;
362
+ } else {
363
+ typeTokens.push(tokens[j]);
364
+ j++;
365
+ }
366
+ }
367
+ continue;
368
+ }
257
369
  if (tTag === "=" || tTag === "REACTIVE_ASSIGN" || tTag === "COMPUTED_ASSIGN" || tTag === "READONLY_ASSIGN" || tTag === "EFFECT" || tTag === "TERMINATOR" || tTag === "INDENT" || tTag === "OUTDENT" || tTag === "->" || tTag === ",") {
258
370
  break;
259
371
  }
@@ -261,6 +373,7 @@
261
373
  typeTokens.push(t);
262
374
  j++;
263
375
  }
376
+ typeTokens.consumed = j - startJ;
264
377
  return typeTokens;
265
378
  }
266
379
  function buildTypeString(typeTokens) {
@@ -269,7 +382,7 @@
269
382
  if (typeTokens[0]?.[0] === "=>")
270
383
  typeTokens.unshift(["", "()"]);
271
384
  let typeStr = typeTokens.map((t) => t[1]).join(" ").replace(/\s+/g, " ").trim();
272
- typeStr = typeStr.replace(/\s*<\s*/g, "<").replace(/\s*>\s*/g, ">").replace(/\s*\[\s*/g, "[").replace(/\s*\]\s*/g, "]").replace(/\s*\(\s*/g, "(").replace(/\s*\)\s*/g, ")").replace(/\s*,\s*/g, ", ").replace(/\s*=>\s*/g, " => ").replace(/ :: /g, ": ").replace(/:: /g, ": ");
385
+ typeStr = typeStr.replace(/\s*<\s*/g, "<").replace(/\s*>\s*/g, ">").replace(/\s*\[\s*/g, "[").replace(/\s*\]\s*/g, "]").replace(/\s*\(\s*/g, "(").replace(/\s*\)\s*/g, ")").replace(/\s*,\s*/g, ", ").replace(/\s*=>\s*/g, " => ").replace(/ :: /g, ": ").replace(/:: /g, ": ").replace(/ : /g, ": ");
273
386
  return typeStr;
274
387
  }
275
388
  function collectBalancedAngles(tokens, j) {
@@ -314,6 +427,29 @@
314
427
  j++;
315
428
  continue;
316
429
  }
430
+ if (depth === 1 && t[0] === "[") {
431
+ let sigTokens = [];
432
+ j++;
433
+ while (j < tokens.length && tokens[j][0] !== "]") {
434
+ sigTokens.push(tokens[j]);
435
+ j++;
436
+ }
437
+ j++;
438
+ if (tokens[j]?.[1] === ":" || tokens[j]?.[0] === "TYPE_ANNOTATION")
439
+ j++;
440
+ let valTypeTokens = [];
441
+ while (j < tokens.length) {
442
+ let pt = tokens[j];
443
+ if (pt[0] === "TERMINATOR" || pt[0] === "OUTDENT")
444
+ break;
445
+ valTypeTokens.push(pt);
446
+ j++;
447
+ }
448
+ let sigStr = buildTypeString(sigTokens);
449
+ let valStr = buildTypeString(valTypeTokens);
450
+ props.push(`[${sigStr}]: ${valStr}`);
451
+ continue;
452
+ }
317
453
  let isProperty = t[0] === "PROPERTY" || t[0] === "IDENTIFIER" || depth === 1 && /^[a-zA-Z_$]/.test(t[1]) && tokens[j + 1]?.[0] === "TYPE_ANNOTATION";
318
454
  if (depth === 1 && isProperty) {
319
455
  let propName = t[1];
@@ -339,6 +475,21 @@
339
475
  let typeDepth = 0;
340
476
  while (j < tokens.length) {
341
477
  let pt = tokens[j];
478
+ if (pt[0] === "IDENTIFIER" && pt[1] === "type" && tokens[j + 1]?.[0] === "INDENT") {
479
+ j++;
480
+ let nestedType = collectStructuralType(tokens, j);
481
+ propTypeTokens.push(["", nestedType]);
482
+ let nd = 1;
483
+ j++;
484
+ while (j < tokens.length && nd > 0) {
485
+ if (tokens[j][0] === "INDENT")
486
+ nd++;
487
+ if (tokens[j][0] === "OUTDENT")
488
+ nd--;
489
+ j++;
490
+ }
491
+ continue;
492
+ }
342
493
  if (pt[0] === "INDENT") {
343
494
  typeDepth++;
344
495
  j++;
@@ -469,7 +620,21 @@
469
620
  }
470
621
  }
471
622
  if (firstTopClose === body.length - 1) {
472
- let props = body.slice(2, -2).split("; ").filter((p) => p.trim());
623
+ let inner = body.slice(2, -2);
624
+ let props = [], start = 0, d = 0;
625
+ for (let c = 0;c < inner.length; c++) {
626
+ if (inner[c] === "{")
627
+ d++;
628
+ else if (inner[c] === "}")
629
+ d--;
630
+ else if (d === 0 && inner[c] === ";" && inner[c + 1] === " ") {
631
+ props.push(inner.slice(start, c));
632
+ start = c + 2;
633
+ }
634
+ }
635
+ if (start < inner.length)
636
+ props.push(inner.slice(start));
637
+ props = props.filter((p) => p.trim());
473
638
  if (props.length > 0) {
474
639
  lines.push(`${indent()}${prefix}{`);
475
640
  indentLevel++;
@@ -764,7 +929,20 @@
764
929
  continue;
765
930
  let exp = exported || data.exported ? "export " : "";
766
931
  let params = data.typeParams || "";
767
- if (data.kind === "interface") {
932
+ if (data.kind === "overload") {
933
+ let ot = data.overloadTokens;
934
+ let nameToken = ot[1];
935
+ let { params: paramList } = collectParams(ot, 2);
936
+ let returnType = nameToken.data?.returnType;
937
+ let ret = returnType ? `: ${expandSuffixes(returnType)}` : "";
938
+ let declare = inClass ? "" : exp ? "" : "declare ";
939
+ let typeParams = data.typeParams || "";
940
+ if (inClass) {
941
+ lines.push(`${indent()}${data.name}${typeParams}(${paramList.join(", ")})${ret};`);
942
+ } else {
943
+ lines.push(`${indent()}${exp}${declare}function ${data.name}${typeParams}(${paramList.join(", ")})${ret};`);
944
+ }
945
+ } else if (data.kind === "interface") {
768
946
  let ext = data.extends ? ` extends ${data.extends}` : "";
769
947
  emitBlock(`${exp}interface ${data.name}${params}${ext} `, data.typeText || "{}", "");
770
948
  } else {
@@ -1037,44 +1215,21 @@
1037
1215
  return null;
1038
1216
  let preamble = [];
1039
1217
  if (usesRipIntrinsicProps) {
1040
- preamble.push("type __RipElementMap = HTMLElementTagNameMap & Omit<SVGElementTagNameMap, keyof HTMLElementTagNameMap>;");
1041
- preamble.push("type __RipTag = keyof __RipElementMap;");
1042
- preamble.push("type __RipBrowserElement = Omit<HTMLElement, 'querySelector' | 'querySelectorAll' | 'closest' | 'setAttribute' | 'hidden'> & { hidden: boolean | 'until-found'; setAttribute(qualifiedName: string, value: any): void; querySelector(selectors: string): __RipBrowserElement | null; querySelectorAll(selectors: string): NodeListOf<__RipBrowserElement>; closest(selectors: string): __RipBrowserElement | null; };");
1043
- preamble.push("type __RipDomEl<K extends __RipTag> = Omit<__RipElementMap[K], 'querySelector' | 'querySelectorAll' | 'closest' | 'setAttribute' | 'hidden'> & __RipBrowserElement;");
1044
- preamble.push("type __RipAttrKeys<T> = { [K in keyof T]-?: K extends 'style' ? never : T[K] extends (...args: any[]) => any ? never : K }[keyof T] & string;");
1045
- preamble.push("type __RipEvents = { [K in keyof HTMLElementEventMap as `@${K}`]?: ((event: HTMLElementEventMap[K]) => void) | null };");
1046
- preamble.push("type __RipClassValue = string | boolean | null | undefined | Record<string, boolean> | __RipClassValue[]");
1047
- preamble.push("type __RipProps<K extends __RipTag> = { [P in __RipAttrKeys<__RipElementMap[K]>]?: __RipElementMap[K][P] } & __RipEvents & { ref?: string; class?: __RipClassValue | __RipClassValue[]; style?: string; [k: `data-${string}`]: any; [k: `aria-${string}`]: any };");
1218
+ preamble.push(...INTRINSIC_TYPE_DECLS);
1048
1219
  }
1049
1220
  if (/\bARIA\./.test(source)) {
1050
- preamble.push("type __RipAriaNavHandlers = { next?: () => void; prev?: () => void; first?: () => void; last?: () => void; select?: () => void; dismiss?: () => void; tab?: () => void; char?: () => void; };");
1051
- preamble.push("declare const ARIA: {");
1052
- preamble.push(" bindPopover(open: boolean, popover: () => Element | null | undefined, setOpen: (isOpen: boolean) => void, source?: (() => Element | null | undefined) | null): void;");
1053
- preamble.push(" bindDialog(open: boolean, dialog: () => Element | null | undefined, setOpen: (isOpen: boolean) => void, dismissable?: boolean): void;");
1054
- preamble.push(" popupDismiss(open: boolean, popup: () => Element | null | undefined, close: () => void, els?: Array<() => Element | null | undefined>, repos?: (() => void) | null): void;");
1055
- preamble.push(" popupGuard(delay?: number): any;");
1056
- preamble.push(" listNav(event: KeyboardEvent, handlers: __RipAriaNavHandlers): void;");
1057
- preamble.push(" rovingNav(event: KeyboardEvent, handlers: __RipAriaNavHandlers, orientation?: 'vertical' | 'horizontal' | 'both'): void;");
1058
- preamble.push(" positionBelow(trigger: Element | null | undefined, popup: Element | null | undefined, gap?: number, setVisible?: boolean): void;");
1059
- preamble.push(" position(trigger: Element | null | undefined, floating: Element | null | undefined, opts?: any): void;");
1060
- preamble.push(" trapFocus(panel: Element | null | undefined): void;");
1061
- preamble.push(" wireAria(panel: Element, id: string): void;");
1062
- preamble.push(" lockScroll(instance: any): void;");
1063
- preamble.push(" unlockScroll(instance: any): void;");
1064
- preamble.push(" hasAnchor: boolean;");
1065
- preamble.push(" [key: string]: any;");
1066
- preamble.push("};");
1221
+ preamble.push(...ARIA_TYPE_DECLS);
1067
1222
  }
1068
1223
  if (usesSignal) {
1069
- preamble.push("interface Signal<T> { value: T; read(): T; lock(): Signal<T>; free(): Signal<T>; kill(): T; }");
1070
- preamble.push("declare function __state<T>(value: T | Signal<T>): Signal<T>;");
1224
+ preamble.push(SIGNAL_INTERFACE);
1225
+ preamble.push(SIGNAL_FN);
1071
1226
  }
1072
1227
  if (usesComputed) {
1073
- preamble.push("interface Computed<T> { readonly value: T; read(): T; lock(): Computed<T>; free(): Computed<T>; kill(): T; }");
1074
- preamble.push("declare function __computed<T>(fn: () => T): Computed<T>;");
1228
+ preamble.push(COMPUTED_INTERFACE);
1229
+ preamble.push(COMPUTED_FN);
1075
1230
  }
1076
1231
  if (usesSignal || usesComputed) {
1077
- preamble.push("declare function __effect(fn: () => void | (() => void)): () => void;");
1232
+ preamble.push(EFFECT_FN);
1078
1233
  }
1079
1234
  if (preamble.length > 0) {
1080
1235
  preamble.push("");
@@ -1135,15 +1290,18 @@
1135
1290
  let exported = false;
1136
1291
  let name = null;
1137
1292
  let compNode = null;
1293
+ let typeParams = "";
1138
1294
  if (head === "export" && Array.isArray(sexpr[1])) {
1139
1295
  exported = true;
1140
1296
  let inner = sexpr[1];
1141
1297
  let innerHead = inner[0]?.valueOf?.() ?? inner[0];
1142
1298
  if (innerHead === "=" && Array.isArray(inner[2]) && (inner[2][0]?.valueOf?.() ?? inner[2][0]) === "component") {
1299
+ typeParams = inner[1]?.typeParams || "";
1143
1300
  name = inner[1]?.valueOf?.() ?? inner[1];
1144
1301
  compNode = inner[2];
1145
1302
  }
1146
1303
  } else if (head === "=" && Array.isArray(sexpr[2]) && (sexpr[2][0]?.valueOf?.() ?? sexpr[2][0]) === "component") {
1304
+ typeParams = sexpr[1]?.typeParams || "";
1147
1305
  name = sexpr[1]?.valueOf?.() ?? sexpr[1];
1148
1306
  compNode = sexpr[2];
1149
1307
  }
@@ -1240,7 +1398,7 @@
1240
1398
  publicProps.push(` __bind_${propName}__?: Signal<${typeStr}>;`);
1241
1399
  }
1242
1400
  }
1243
- lines.push(`${exp}declare class ${name} {`);
1401
+ lines.push(`${exp}declare class ${name}${typeParams} {`);
1244
1402
  if (publicProps.length > 0 || inheritedPropsType) {
1245
1403
  let propsOpt = hasRequired ? "" : "?";
1246
1404
  if (publicProps.length > 0) {
@@ -1566,9 +1724,9 @@
1566
1724
  var COMPARE = new Set(["==", "!=", "===", "!==", "<", ">", "<=", ">=", "=~"]);
1567
1725
  var SHIFT = new Set(["<<", ">>", ">>>"]);
1568
1726
  var UNARY_MATH = new Set(["!", "~"]);
1569
- var IDENTIFIER_RE = /^(?!\d)((?:(?!\s)[$\w\x7f-\uffff])+(?:!(?!\?)|[?](?![.?![(]))?)([^\n\S]*:(?![=:>]))?/;
1727
+ var IDENTIFIER_RE = /^(?!\d)((?:(?!\s)[$\w\x7f-\uffff])+(?:!|[?](?![.?![(]))?)([^\n\S]*:(?![=:]))?/;
1570
1728
  var NUMBER_RE = /^0b[01](?:_?[01])*n?|^0o[0-7](?:_?[0-7])*n?|^0x[\da-f](?:_?[\da-f])*n?|^\d+(?:_\d+)*n|^(?:\d+(?:_\d+)*)?\.?\d+(?:_\d+)*(?:e[+-]?\d+(?:_\d+)*)?/i;
1571
- var OPERATOR_RE = /^(?:<=>|::|\*>|[-=]>|~>|~=|:>|:=|=!|===|!==|!\?|\?\!|\?\?|=~|\|>|[-+*\/%<>&|^!?=]=|>>>=?|([-+:])\1|([&|<>*\/%])\2=?|\?\.?|\.{2,3})/;
1729
+ var OPERATOR_RE = /^(?:<=>|::|\*>|[-=]>|~>|~=|:=|=!|===|!==|\?\!|\?\?|=~|\|>|[-+*\/%<>&|^!?=]=|>>>=?|([-+:])\1|([&|<>*\/%])\2=?|\?\.?|\.{2,3})/;
1572
1730
  var WHITESPACE_RE = /^[^\n\S]+/;
1573
1731
  var NEWLINE_RE = /^(?:\n[^\n\S]*)+/;
1574
1732
  var COMMENT_RE = /^(\s*)###([^#][\s\S]*?)(?:###([^\n\S]*)|###$)|^((?:\s*#(?!##[^#]).*)+)/;
@@ -1787,8 +1945,10 @@
1787
1945
  }
1788
1946
  tag = this.classifyKeyword(id, tag, data);
1789
1947
  }
1790
- if (tag === "IDENTIFIER" && RESERVED.has(baseId) && !(baseId === "void" && this.inTypeAnnotation)) {
1791
- syntaxError(`reserved word '${baseId}'`, { row: this.row, col: this.col, len: idLen });
1948
+ if (tag === "IDENTIFIER" && RESERVED.has(baseId)) {
1949
+ if (baseId === "void" && (this.inTypeAnnotation || this.prevTag() === "=>")) {} else {
1950
+ syntaxError(`reserved word '${baseId}'`, { row: this.row, col: this.col, len: idLen });
1951
+ }
1792
1952
  }
1793
1953
  if (tag === "PROPERTY" && prev) {
1794
1954
  if (prev[0] === "." && this.tokens.length > 1) {
@@ -1991,16 +2151,23 @@
1991
2151
  }
1992
2152
  }
1993
2153
  let prev = this.tokens[this.tokens.length - 1];
1994
- if (prev?.[0] === "COMPARE" && prev[1] === ">") {
2154
+ let isGenericClose = prev?.[0] === "COMPARE" && prev[1] === ">" || prev?.[0] === "SHIFT" && (prev[1] === ">>" || prev[1] === ">>>");
2155
+ if (isGenericClose) {
1995
2156
  let depth = 0;
1996
2157
  for (let k = this.tokens.length - 1;k >= 0; k--) {
1997
2158
  let tk = this.tokens[k];
1998
2159
  if (tk[0] === "COMPARE" && tk[1] === ">")
1999
2160
  depth++;
2161
+ else if (tk[0] === "SHIFT" && tk[1] === ">>")
2162
+ depth += 2;
2163
+ else if (tk[0] === "SHIFT" && tk[1] === ">>>")
2164
+ depth += 3;
2000
2165
  else if (tk[0] === "COMPARE" && tk[1] === "<")
2001
2166
  depth--;
2002
2167
  if (depth === 0 && tk[0] === "TYPE_ANNOTATION")
2003
2168
  return false;
2169
+ if (depth === 0 && tk[0] === "IDENTIFIER" && tk[1] === "type")
2170
+ return false;
2004
2171
  if (tk[0] === "TERMINATOR" || tk[0] === "INDENT" || tk[0] === "OUTDENT")
2005
2172
  break;
2006
2173
  }
@@ -2355,8 +2522,6 @@
2355
2522
  tag = "COMPUTED_ASSIGN";
2356
2523
  else if (val === ":=")
2357
2524
  tag = "REACTIVE_ASSIGN";
2358
- else if (val === ":>")
2359
- tag = "RIGHTWARD_ASSIGN";
2360
2525
  else if (val === "<=>")
2361
2526
  tag = "BIND";
2362
2527
  else if (val === "~>") {
@@ -2426,8 +2591,6 @@
2426
2591
  tag = "SHIFT";
2427
2592
  else if (val === "?" && prev?.spaced)
2428
2593
  tag = "TERNARY";
2429
- else if (val === "!?" && prev && !prev.spaced)
2430
- tag = "DEFINED";
2431
2594
  else if (val === "?!" && prev && !prev.spaced)
2432
2595
  tag = "PRESENCE";
2433
2596
  else if (val === "?" && (this.chunk[1] === "[" || this.chunk[1] === "("))
@@ -3021,10 +3184,10 @@
3021
3184
  installTypeSupport(Lexer);
3022
3185
  // src/parser.js
3023
3186
  var parserInstance = {
3024
- symbolIds: { $accept: 0, $end: 1, error: 2, Root: 3, Body: 4, Line: 5, TERMINATOR: 6, Expression: 7, ExpressionLine: 8, Statement: 9, Return: 10, STATEMENT: 11, Import: 12, Export: 13, Value: 14, Code: 15, Operation: 16, Assign: 17, RightwardAssign: 18, ReactiveAssign: 19, ComputedAssign: 20, ReadonlyAssign: 21, Effect: 22, If: 23, Try: 24, While: 25, For: 26, Switch: 27, Class: 28, Component: 29, Render: 30, Throw: 31, Yield: 32, Def: 33, Enum: 34, CodeLine: 35, OperationLine: 36, Assignable: 37, Literal: 38, Parenthetical: 39, Range: 40, Invocation: 41, DoIife: 42, This: 43, Super: 44, MetaProperty: 45, MapLiteral: 46, AlphaNumeric: 47, JS: 48, Regex: 49, UNDEFINED: 50, NULL: 51, BOOL: 52, INFINITY: 53, NAN: 54, NUMBER: 55, String: 56, Identifier: 57, IDENTIFIER: 58, Property: 59, PROPERTY: 60, STRING: 61, STRING_START: 62, Interpolations: 63, STRING_END: 64, InterpolationChunk: 65, INTERPOLATION_START: 66, INTERPOLATION_END: 67, INDENT: 68, OUTDENT: 69, REGEX: 70, REGEX_START: 71, REGEX_END: 72, RegexWithIndex: 73, ",": 74, "=": 75, RIGHTWARD_ASSIGN: 76, REACTIVE_ASSIGN: 77, COMPUTED_ASSIGN: 78, Block: 79, READONLY_ASSIGN: 80, EFFECT: 81, SimpleAssignable: 82, Array: 83, Object: 84, ThisProperty: 85, ".": 86, "?.": 87, INDEX_START: 88, INDEX_END: 89, Slice: 90, ES6_OPTIONAL_INDEX: 91, "{": 92, ObjAssignable: 93, ":": 94, FOR: 95, ForVariables: 96, FOROF: 97, OptComma: 98, "}": 99, WHEN: 100, OWN: 101, AssignList: 102, AssignObj: 103, ObjRestValue: 104, SimpleObjAssignable: 105, "[": 106, "]": 107, "@": 108, "...": 109, ObjSpreadExpr: 110, SUPER: 111, Arguments: 112, DYNAMIC_IMPORT: 113, MAP_START: 114, MAP_END: 115, MapAssignList: 116, MapAssignObj: 117, MapAssignable: 118, Elisions: 119, ArgElisionList: 120, OptElisions: 121, ArgElision: 122, Arg: 123, Elision: 124, RangeDots: 125, "..": 126, DEF: 127, CALL_START: 128, ParamList: 129, CALL_END: 130, PARAM_START: 131, PARAM_END: 132, FuncGlyph: 133, "->": 134, "=>": 135, Param: 136, ParamVar: 137, Splat: 138, ES6_OPTIONAL_CALL: 139, ArgList: 140, SimpleArgs: 141, THIS: 142, NEW_TARGET: 143, IMPORT_META: 144, "(": 145, ")": 146, RETURN: 147, THROW: 148, YIELD: 149, FROM: 150, IfBlock: 151, IF: 152, ELSE: 153, UnlessBlock: 154, UNLESS: 155, POST_IF: 156, POST_UNLESS: 157, TRY: 158, Catch: 159, FINALLY: 160, CATCH: 161, SWITCH: 162, Whens: 163, When: 164, LEADING_WHEN: 165, WhileSource: 166, WHILE: 167, UNTIL: 168, Loop: 169, LOOP: 170, FORIN: 171, BY: 172, FORAS: 173, AWAIT: 174, FORASAWAIT: 175, ForValue: 176, CLASS: 177, EXTENDS: 178, ENUM: 179, COMPONENT: 180, ComponentBody: 181, ComponentLine: 182, OFFER: 183, ACCEPT: 184, RENDER: 185, IMPORT: 186, ImportDefaultSpecifier: 187, ImportNamespaceSpecifier: 188, ImportSpecifierList: 189, ImportSpecifier: 190, AS: 191, DEFAULT: 192, IMPORT_ALL: 193, EXPORT: 194, ExportSpecifierList: 195, EXPORT_ALL: 196, ExportSpecifier: 197, UNARY: 198, DO: 199, DO_IIFE: 200, UNARY_MATH: 201, "-": 202, "+": 203, "?": 204, DEFINED: 205, PRESENCE: 206, "--": 207, "++": 208, MATH: 209, "**": 210, SHIFT: 211, COMPARE: 212, "&": 213, "^": 214, "|": 215, "||": 216, "??": 217, "&&": 218, "!?": 219, PIPE: 220, RELATION: 221, TERNARY: 222, COMPOUND_ASSIGN: 223 },
3025
- tokenNames: { 2: "error", 6: "TERMINATOR", 11: "STATEMENT", 48: "JS", 50: "UNDEFINED", 51: "NULL", 52: "BOOL", 53: "INFINITY", 54: "NAN", 55: "NUMBER", 58: "IDENTIFIER", 60: "PROPERTY", 61: "STRING", 62: "STRING_START", 64: "STRING_END", 66: "INTERPOLATION_START", 67: "INTERPOLATION_END", 68: "INDENT", 69: "OUTDENT", 70: "REGEX", 71: "REGEX_START", 72: "REGEX_END", 74: ",", 75: "=", 76: "RIGHTWARD_ASSIGN", 77: "REACTIVE_ASSIGN", 78: "COMPUTED_ASSIGN", 80: "READONLY_ASSIGN", 81: "EFFECT", 86: ".", 87: "?.", 88: "INDEX_START", 89: "INDEX_END", 91: "ES6_OPTIONAL_INDEX", 92: "{", 94: ":", 95: "FOR", 97: "FOROF", 99: "}", 100: "WHEN", 101: "OWN", 106: "[", 107: "]", 108: "@", 109: "...", 111: "SUPER", 113: "DYNAMIC_IMPORT", 114: "MAP_START", 115: "MAP_END", 126: "..", 127: "DEF", 128: "CALL_START", 130: "CALL_END", 131: "PARAM_START", 132: "PARAM_END", 134: "->", 135: "=>", 139: "ES6_OPTIONAL_CALL", 142: "THIS", 143: "NEW_TARGET", 144: "IMPORT_META", 145: "(", 146: ")", 147: "RETURN", 148: "THROW", 149: "YIELD", 150: "FROM", 152: "IF", 153: "ELSE", 155: "UNLESS", 156: "POST_IF", 157: "POST_UNLESS", 158: "TRY", 160: "FINALLY", 161: "CATCH", 162: "SWITCH", 165: "LEADING_WHEN", 167: "WHILE", 168: "UNTIL", 170: "LOOP", 171: "FORIN", 172: "BY", 173: "FORAS", 174: "AWAIT", 175: "FORASAWAIT", 177: "CLASS", 178: "EXTENDS", 179: "ENUM", 180: "COMPONENT", 183: "OFFER", 184: "ACCEPT", 185: "RENDER", 186: "IMPORT", 191: "AS", 192: "DEFAULT", 193: "IMPORT_ALL", 194: "EXPORT", 196: "EXPORT_ALL", 198: "UNARY", 199: "DO", 200: "DO_IIFE", 201: "UNARY_MATH", 202: "-", 203: "+", 204: "?", 205: "DEFINED", 206: "PRESENCE", 207: "--", 208: "++", 209: "MATH", 210: "**", 211: "SHIFT", 212: "COMPARE", 213: "&", 214: "^", 215: "|", 216: "||", 217: "??", 218: "&&", 219: "!?", 220: "PIPE", 221: "RELATION", 222: "TERNARY", 223: "COMPOUND_ASSIGN" },
3187
+ symbolIds: { $accept: 0, $end: 1, error: 2, Root: 3, Body: 4, Line: 5, TERMINATOR: 6, Expression: 7, ExpressionLine: 8, Statement: 9, Return: 10, STATEMENT: 11, Import: 12, Export: 13, Value: 14, Code: 15, Operation: 16, Assign: 17, ReactiveAssign: 18, ComputedAssign: 19, ReadonlyAssign: 20, Effect: 21, If: 22, Try: 23, While: 24, For: 25, Switch: 26, Class: 27, Component: 28, Render: 29, Throw: 30, Yield: 31, Def: 32, Enum: 33, CodeLine: 34, OperationLine: 35, Assignable: 36, Literal: 37, Parenthetical: 38, Range: 39, Invocation: 40, DoIife: 41, This: 42, Super: 43, MetaProperty: 44, MapLiteral: 45, AlphaNumeric: 46, JS: 47, Regex: 48, UNDEFINED: 49, NULL: 50, BOOL: 51, INFINITY: 52, NAN: 53, NUMBER: 54, String: 55, Identifier: 56, IDENTIFIER: 57, Property: 58, PROPERTY: 59, STRING: 60, STRING_START: 61, Interpolations: 62, STRING_END: 63, InterpolationChunk: 64, INTERPOLATION_START: 65, INTERPOLATION_END: 66, INDENT: 67, OUTDENT: 68, REGEX: 69, REGEX_START: 70, REGEX_END: 71, RegexWithIndex: 72, ",": 73, "=": 74, REACTIVE_ASSIGN: 75, COMPUTED_ASSIGN: 76, Block: 77, READONLY_ASSIGN: 78, EFFECT: 79, SimpleAssignable: 80, Array: 81, Object: 82, ThisProperty: 83, ".": 84, "?.": 85, INDEX_START: 86, INDEX_END: 87, Slice: 88, ES6_OPTIONAL_INDEX: 89, "{": 90, ObjAssignable: 91, ":": 92, FOR: 93, ForVariables: 94, FOROF: 95, OptComma: 96, "}": 97, WHEN: 98, OWN: 99, AssignList: 100, AssignObj: 101, ObjRestValue: 102, SimpleObjAssignable: 103, "[": 104, "]": 105, "@": 106, "...": 107, ObjSpreadExpr: 108, SUPER: 109, Arguments: 110, DYNAMIC_IMPORT: 111, MAP_START: 112, MAP_END: 113, MapAssignList: 114, MapAssignObj: 115, MapAssignable: 116, Elisions: 117, ArgElisionList: 118, OptElisions: 119, ArgElision: 120, Arg: 121, Elision: 122, RangeDots: 123, "..": 124, DEF: 125, CALL_START: 126, ParamList: 127, CALL_END: 128, PARAM_START: 129, PARAM_END: 130, FuncGlyph: 131, "->": 132, "=>": 133, Param: 134, ParamVar: 135, Splat: 136, ES6_OPTIONAL_CALL: 137, ArgList: 138, SimpleArgs: 139, THIS: 140, NEW_TARGET: 141, IMPORT_META: 142, "(": 143, ")": 144, RETURN: 145, THROW: 146, YIELD: 147, FROM: 148, IfBlock: 149, IF: 150, ELSE: 151, UnlessBlock: 152, UNLESS: 153, POST_IF: 154, POST_UNLESS: 155, TRY: 156, Catch: 157, FINALLY: 158, CATCH: 159, SWITCH: 160, Whens: 161, When: 162, LEADING_WHEN: 163, WhileSource: 164, WHILE: 165, UNTIL: 166, Loop: 167, LOOP: 168, FORIN: 169, BY: 170, FORAS: 171, AWAIT: 172, FORASAWAIT: 173, ForValue: 174, CLASS: 175, EXTENDS: 176, ENUM: 177, COMPONENT: 178, ComponentBody: 179, ComponentLine: 180, OFFER: 181, ACCEPT: 182, RENDER: 183, IMPORT: 184, ImportDefaultSpecifier: 185, ImportNamespaceSpecifier: 186, ImportSpecifierList: 187, ImportSpecifier: 188, AS: 189, DEFAULT: 190, IMPORT_ALL: 191, EXPORT: 192, ExportSpecifierList: 193, EXPORT_ALL: 194, ExportSpecifier: 195, UNARY: 196, DO: 197, DO_IIFE: 198, UNARY_MATH: 199, "-": 200, "+": 201, "?": 202, PRESENCE: 203, "--": 204, "++": 205, MATH: 206, "**": 207, SHIFT: 208, COMPARE: 209, "&": 210, "^": 211, "|": 212, "||": 213, "??": 214, "&&": 215, PIPE: 216, RELATION: 217, TERNARY: 218, COMPOUND_ASSIGN: 219 },
3188
+ tokenNames: { 2: "error", 6: "TERMINATOR", 11: "STATEMENT", 47: "JS", 49: "UNDEFINED", 50: "NULL", 51: "BOOL", 52: "INFINITY", 53: "NAN", 54: "NUMBER", 57: "IDENTIFIER", 59: "PROPERTY", 60: "STRING", 61: "STRING_START", 63: "STRING_END", 65: "INTERPOLATION_START", 66: "INTERPOLATION_END", 67: "INDENT", 68: "OUTDENT", 69: "REGEX", 70: "REGEX_START", 71: "REGEX_END", 73: ",", 74: "=", 75: "REACTIVE_ASSIGN", 76: "COMPUTED_ASSIGN", 78: "READONLY_ASSIGN", 79: "EFFECT", 84: ".", 85: "?.", 86: "INDEX_START", 87: "INDEX_END", 89: "ES6_OPTIONAL_INDEX", 90: "{", 92: ":", 93: "FOR", 95: "FOROF", 97: "}", 98: "WHEN", 99: "OWN", 104: "[", 105: "]", 106: "@", 107: "...", 109: "SUPER", 111: "DYNAMIC_IMPORT", 112: "MAP_START", 113: "MAP_END", 124: "..", 125: "DEF", 126: "CALL_START", 128: "CALL_END", 129: "PARAM_START", 130: "PARAM_END", 132: "->", 133: "=>", 137: "ES6_OPTIONAL_CALL", 140: "THIS", 141: "NEW_TARGET", 142: "IMPORT_META", 143: "(", 144: ")", 145: "RETURN", 146: "THROW", 147: "YIELD", 148: "FROM", 150: "IF", 151: "ELSE", 153: "UNLESS", 154: "POST_IF", 155: "POST_UNLESS", 156: "TRY", 158: "FINALLY", 159: "CATCH", 160: "SWITCH", 163: "LEADING_WHEN", 165: "WHILE", 166: "UNTIL", 168: "LOOP", 169: "FORIN", 170: "BY", 171: "FORAS", 172: "AWAIT", 173: "FORASAWAIT", 175: "CLASS", 176: "EXTENDS", 177: "ENUM", 178: "COMPONENT", 181: "OFFER", 182: "ACCEPT", 183: "RENDER", 184: "IMPORT", 189: "AS", 190: "DEFAULT", 191: "IMPORT_ALL", 192: "EXPORT", 194: "EXPORT_ALL", 196: "UNARY", 197: "DO", 198: "DO_IIFE", 199: "UNARY_MATH", 200: "-", 201: "+", 202: "?", 203: "PRESENCE", 204: "--", 205: "++", 206: "MATH", 207: "**", 208: "SHIFT", 209: "COMPARE", 210: "&", 211: "^", 212: "|", 213: "||", 214: "??", 215: "&&", 216: "PIPE", 217: "RELATION", 218: "TERNARY", 219: "COMPOUND_ASSIGN" },
3026
3189
  parseTable: (() => {
3027
- let d = [110, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -1, 1, 2, 3, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 1, 1, 0, 2, 1, 5, -2, 110, 5, 1, 5, 61, 2, 77, -3, -3, -3, -3, -3, 32, 1, 5, 61, 1, 1, 5, 2, 19, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -6, -6, -6, -6, -6, -6, 127, 131, -6, -6, -6, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -7, -7, -7, -7, -7, -7, -7, -7, -7, 14, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 9, 1, 1, -8, -8, -8, -8, -8, -8, -8, -8, -8, 132, 133, 134, 99, 100, 58, 1, 5, 50, 5, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 3, 3, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -13, -13, 138, 108, 109, -13, -13, -13, -13, -13, 141, 142, 143, -13, 144, -13, -13, -13, -13, -13, -13, -13, 139, -13, -13, 145, -13, -13, 140, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 135, 136, 137, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 48, 1, 5, 61, 1, 1, 5, 2, 10, 1, 1, 1, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -14, -14, -14, -14, -14, -14, -14, 146, 147, 148, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -34, -34, -34, -34, -34, -34, -34, -34, -34, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -35, -35, -35, -35, -35, -35, -35, -35, -35, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -36, -36, -36, -36, -36, -36, -36, -36, 149, -36, 150, 151, 152, 153, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 18, 6, 51, 1, 10, 1, 5, 9, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -199, 158, 107, -199, -199, -199, 160, 161, 159, 102, 163, 162, 157, 154, -199, -199, 155, 156, 109, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 8, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 165, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 166, 105, 106, 164, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 106, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 167, 168, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 106, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 170, 171, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 172, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 178, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 179, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 180, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 181, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 47, 14, 1, 22, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 11, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 183, 184, 185, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 182, 74, 75, 96, 102, 85, 89, 86, 87, 92, 173, 174, 93, 94, 88, 90, 91, 84, 177, 47, 14, 1, 22, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 11, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 183, 184, 185, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 186, 74, 75, 96, 102, 85, 89, 86, 87, 92, 173, 174, 93, 94, 88, 90, 91, 84, 177, 64, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 187, 188, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 189, 106, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 8, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 191, 190, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 166, 105, 106, 192, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 193, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 2, 68, 11, 166, 194, 2, 68, 11, 166, 195, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, 14, 40, 17, 1, 25, 1, 1, 7, 4, 5, 5, 2, 29, 37, 2, 199, 158, 107, 160, 161, 159, 102, 196, 197, 85, 162, 201, 198, 200, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 202, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 203, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 94, 1, 5, 8, 1, 22, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, 3, 2, 3, 3, 1, 1, 1, 4, 3, 2, 1, 2, 2, 1, 6, 1, 1, 1, 2, 2, 1, 1, 11, 4, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 22, 2, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -331, -331, 183, 184, 185, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -331, 166, -331, 105, 106, -331, -331, 204, 206, 74, 75, 96, -331, 102, -331, -331, -331, -331, -331, 85, -331, 89, -331, 86, 87, 92, -331, -331, -331, 173, -331, 174, 93, 94, 88, 90, 91, 84, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 205, 177, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 2, 68, 110, 207, 208, 2, 68, 11, 166, 209, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 210, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 211, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 144, 1, 5, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, 3, 2, 5, 1, 1, 1, 1, 4, 3, 2, 1, 2, 2, 1, 6, 1, 1, 1, 2, 2, 1, 1, 11, 1, 3, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -250, -250, 212, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -250, 213, -250, 105, 106, -250, -250, 55, 54, 74, 75, 96, -250, 102, -250, -250, -250, -250, -250, 85, -250, 89, -250, 86, 87, 92, -250, -250, 68, -250, 173, -250, 174, 93, 94, 88, 90, 91, 84, -250, 71, 66, 67, 214, 56, 97, -250, 57, 98, -250, -250, 58, 62, 59, -250, -250, 60, 101, -250, -250, -250, 51, -250, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 2, 57, 1, 215, 107, 2, 57, 1, 216, 107, 6, 15, 20, 96, 2, 1, 1, 218, 217, 44, 45, 93, 94, 143, 1, 5, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, 3, 2, 5, 1, 1, 1, 1, 4, 3, 2, 1, 2, 2, 1, 6, 1, 1, 1, 2, 2, 1, 1, 11, 1, 3, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -247, -247, 219, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -247, 220, -247, 105, 106, -247, -247, 55, 54, 74, 75, 96, -247, 102, -247, -247, -247, -247, -247, 85, -247, 89, -247, 86, 87, 92, -247, -247, 68, -247, 173, -247, 174, 93, 94, 88, 90, 91, 84, -247, 71, 66, 67, 56, 97, -247, 57, 98, -247, -247, 58, 62, 59, -247, -247, 60, 101, -247, -247, -247, 51, -247, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 9, 56, 1, 1, 3, 1, 30, 95, 1, 5, 221, 225, 107, 108, 109, 224, 222, 223, 226, 62, 14, 1, 4, 1, 1, 1, 6, 1, 4, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 14, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 32, 2, 1, 12, 4, 4, 183, 184, 233, 234, 235, 236, 228, 229, 230, 231, 239, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 232, 107, 108, 109, 105, 106, 55, 240, 74, 75, 96, 227, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 63, 69, 64, 237, 238, 177, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 109, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 241, 3, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 242, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 116, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 243, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 249, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 244, 89, 254, 86, 87, 92, 245, 246, 248, 251, 247, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 4, 86, 2, 24, 16, 256, 257, 255, 145, 2, 112, 16, 258, 145, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, 58, 1, 5, 53, 1, 1, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -232, -232, 259, 260, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, 1, 86, 261, 1, 86, 262, 34, 6, 33, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 3, 9, 1, 1, 7, 14, 2, 1, 6, 1, 1, 1, 27, -147, 280, 271, 272, 275, 274, 273, 276, 277, 103, 104, 268, 107, 269, 260, 108, 109, -147, -147, 105, 106, -147, 278, 279, 270, 102, 163, 162, 267, 263, 264, 265, 266, 84, 55, 11, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 2, 1, 10, 11, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, 55, 11, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 2, 1, 10, 11, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 281, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 282, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 283, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 284, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 105, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 8, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 286, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 166, 105, 106, 285, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 23, 6, 41, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 5, 11, 8, 6, 3, 1, 1, 1, 1, 2, 1, -112, 292, 103, 104, 294, 107, 295, 260, 108, 109, -112, -112, -112, 296, 287, -112, 288, 293, 297, 289, 290, 291, 298, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 47, 14, 1, 22, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 11, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 183, 184, 185, 35, 36, 37, 299, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 240, 74, 75, 96, 102, 85, 89, 86, 87, 92, 173, 174, 93, 94, 88, 90, 91, 84, 177, 67, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 4, 3, 3, 1, 10, 1, 3, 1, 1, 2, 3, 13, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 59, 1, 5, 55, 1, 2, 2, 1, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 6, 56, 5, 1, 1, 2, 1, 303, 108, 109, 300, 301, 302, 112, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 2, 1, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -5, 304, -5, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -5, -5, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, -5, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 305, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 306, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 307, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 308, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 309, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 310, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 311, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 312, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 313, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 316, 169, 314, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 315, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 319, 169, 317, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 318, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 322, 169, 320, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 321, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 323, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 324, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 325, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 326, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 47, 14, 1, 22, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 11, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 183, 184, 327, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 240, 74, 75, 96, 102, 85, 89, 86, 87, 92, 173, 174, 93, 94, 88, 90, 91, 84, 177, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 328, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 329, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, 14, 40, 17, 1, 25, 1, 1, 7, 4, 5, 5, 2, 29, 37, 2, 333, 158, 107, 160, 161, 159, 102, 330, 331, 85, 162, 201, 332, 200, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 334, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 335, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, 2, 112, 16, 336, 145, 2, 59, 1, 337, 260, 2, 59, 1, 338, 260, 109, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 2, 8, 1, 1, 1, 1, 5, 2, 3, 11, 2, 1, 2, 2, 1, 11, 1, 1, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 339, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 344, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 340, 105, 106, 342, 55, 54, 74, 75, 96, 341, 102, 61, 85, 89, 346, 86, 87, 92, 343, 345, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 88, 347, 112, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 3, 1, 2, 1, 1, 3, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 351, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 350, 68, 348, 44, 45, 93, 94, 253, 349, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 2, 59, 1, 353, 260, 2, 59, 1, 354, 260, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 355, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 356, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 358, 357, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 359, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 361, 360, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 362, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 106, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 8, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 364, 363, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 166, 105, 106, 365, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 367, 366, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 368, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 106, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 8, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 370, 369, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 166, 105, 106, 371, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 10, 6, 62, 1, 5, 24, 1, 8, 8, 15, 2, -243, -243, -243, 373, 374, -243, -243, -243, -243, 372, 6, 6, 62, 1, 5, 56, 2, -200, -200, -200, -200, -200, -200, 7, 6, 62, 1, 5, 1, 55, 2, -204, -204, -204, -204, 375, -204, -204, 15, 6, 51, 1, 10, 1, 5, 9, 1, 1, 7, 14, 2, 22, 2, 5, -207, 158, 107, -207, -207, -207, 160, 161, 159, 102, 163, 162, -207, -207, 376, 11, 6, 62, 1, 5, 1, 22, 33, 2, 39, 2, 2, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, 11, 6, 62, 1, 5, 1, 22, 33, 2, 39, 2, 2, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, 11, 6, 62, 1, 5, 1, 22, 33, 2, 39, 2, 2, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, 11, 6, 62, 1, 5, 1, 22, 33, 2, 39, 2, 2, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 2, 59, 1, 259, 260, 116, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 249, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 244, 89, 254, 86, 87, 92, 245, 246, 248, 251, 247, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, -194, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -196, -196, -196, -196, -196, -196, -196, -196, -196, 109, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 378, 3, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 377, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, 130, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, 121, -400, 123, -400, -400, -400, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -397, -397, -397, -397, -397, -397, -397, -397, -397, 5, 156, 1, 9, 1, 1, 132, 133, 134, 99, 100, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, 130, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, 121, -401, 123, -401, -401, -401, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -398, -398, -398, -398, -398, -398, -398, -398, -398, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, 130, -402, -402, -402, -402, -402, -402, -402, -402, -402, 114, -402, -402, -402, -402, -402, -402, 121, -402, 123, -402, -402, -402, 18, 6, 51, 1, 10, 1, 5, 9, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -199, 158, 107, -199, -199, -199, 160, 161, 159, 102, 163, 162, 157, 379, -199, -199, 155, 156, 2, 68, 11, 166, 164, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 167, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 170, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 5, 15, 116, 2, 1, 1, 218, 173, 174, 93, 94, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, 130, -403, -403, -403, -403, -403, -403, -403, -403, -403, 114, -403, -403, -403, -403, -403, -403, 121, -403, 123, -403, -403, -403, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, 130, -404, -404, -404, -404, -404, -404, -404, -404, -404, 114, -404, -404, -404, -404, -404, -404, 121, -404, 123, -404, -404, -404, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, 130, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, 121, -408, 123, -408, -408, -408, 2, 84, 8, 380, 102, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -410, -410, -89, -89, -410, -410, -410, -410, -89, -410, -89, -89, -89, -89, -89, -89, -89, -410, -89, -410, -410, -410, -410, -410, -410, -410, -410, -410, -89, -410, -410, -89, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -89, -89, -89, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, 10, 56, 5, 1, 24, 1, 1, 3, 21, 16, 11, 138, 108, 109, 141, 142, 143, 144, 139, 145, 140, 3, 86, 1, 1, 146, 147, 148, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -411, -411, -89, -89, -411, -411, -411, -411, -89, -411, -89, -89, -89, -89, -89, -89, -89, -411, -89, -411, -411, -411, -411, -411, -411, -411, -411, -411, -89, -411, -411, -89, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -89, -89, -89, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 383, 381, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 382, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -86, -86, -86, -86, -86, -86, 127, -86, -86, 131, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 128, 129, 130, 99, 100, -86, -86, -86, -86, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 384, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 3, 68, 11, 73, 166, 385, 386, 48, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 2, 1, 1, 6, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 387, 388, 389, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, 4, 97, 74, 2, 2, 391, 390, 392, 393, 11, 57, 1, 25, 1, 1, 7, 4, 10, 2, 29, 39, 158, 107, 160, 161, 159, 102, 394, 163, 162, 201, 200, 11, 57, 1, 25, 1, 1, 7, 4, 10, 2, 29, 39, 158, 107, 160, 161, 159, 102, 395, 163, 162, 201, 200, 3, 68, 11, 93, 166, 396, 397, 5, 74, 23, 74, 2, 2, 398, -329, -329, -329, -329, 6, 74, 1, 22, 74, 2, 2, -327, 399, -327, -327, -327, -327, 24, 68, 8, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 400, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 3, 163, 1, 1, 401, 402, 403, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 404, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 63, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 1, 1, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -335, -335, -89, -89, -335, 166, -335, -335, -89, -335, -89, -89, 405, -89, -89, -89, -89, -89, -335, -89, -335, -335, -335, -335, -335, -335, -335, -335, -335, -89, -335, -335, -89, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 406, -335, -335, -89, -89, -89, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 110, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 409, 410, 411, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 407, 408, 412, 413, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 414, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -248, -248, -248, -248, -248, -248, 127, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 130, -248, -248, -248, -248, -248, -248, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 84, 8, 415, 102, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 130, -251, -251, -251, -251, -251, -251, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 84, 8, 416, 102, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 417, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 3, 68, 11, 49, 166, 419, 418, 2, 68, 11, 166, 420, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -399, -399, -399, -399, -399, -399, -399, -399, -399, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, -439, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -245, -245, -245, -245, -245, -245, 127, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 130, -245, -245, -245, -245, -245, -245, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 84, 8, 421, 102, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, 2, 74, 76, 423, 422, 1, 150, 424, 7, 57, 1, 10, 31, 90, 1, 2, 429, 107, 428, 425, 426, 427, 430, 2, 74, 76, -367, -367, 1, 191, 431, 26, 6, 41, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 5, 11, 8, 6, 3, 1, 1, 1, 1, 2, 1, 83, 3, 2, -112, 292, 103, 104, 436, 107, 295, 260, 108, 109, 435, -112, -112, 296, 287, 432, 288, 293, 297, 289, 290, 291, 298, 437, 433, 434, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -373, -373, -373, -373, -373, -373, -373, -373, -373, -373, -373, -373, -373, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -92, -92, -92, -92, -92, -92, -92, -92, 438, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 439, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 440, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 150, 441, 60, 1, 5, 55, 1, 5, 1, 1, 5, 2, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -36, -36, -36, -36, -36, -36, -36, -36, -36, 150, 151, 152, 153, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 2, 6, 140, 110, 442, 108, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 443, 3, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 32, 6, 62, 1, 5, 2, 19, 12, 2, 16, 1, 4, 26, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -225, -225, -225, -225, 127, 131, -225, 346, 444, 345, -225, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, 112, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 9, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 445, 89, 254, 86, 87, 92, 447, 446, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 10, 6, 62, 1, 5, 24, 1, 8, 8, 6, 9, -243, -243, -243, 449, 450, -243, -243, -243, 448, -243, 60, 6, 5, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 7, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 451, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 5, 6, 62, 1, 5, 33, -171, -171, -171, -171, -171, 115, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 249, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 453, 452, 248, 251, 247, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 60, 6, 5, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 7, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, 5, 6, 62, 1, 5, 33, -176, -176, -176, -176, -176, 6, 6, 62, 1, 5, 33, 23, -226, -226, -226, -226, -226, -226, 6, 6, 62, 1, 5, 33, 23, -227, -227, -227, -227, -227, -227, 109, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 1, 1, 3, 2, 1, 13, 3, 1, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -228, 454, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -228, -228, 105, 106, -228, 55, 54, 74, 75, 96, 102, 61, 85, -228, 89, 86, 87, 92, 68, -228, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, 2, 59, 1, 455, 260, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 456, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 457, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 2, 59, 1, 458, 260, 2, 59, 1, 459, 260, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 461, 460, -243, -243, -243, -243, 5, 6, 62, 1, 5, 41, -148, -148, -148, -148, -148, 1, 94, 462, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 463, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 94, -155, 1, 94, -156, 1, 94, -157, 1, 94, -158, 1, 94, -159, 1, 94, -160, 1, 94, -161, 1, 94, -162, 1, 94, -163, 1, 94, -164, 1, 94, -165, 1, 94, -166, 1, 94, -167, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 464, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 465, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -282, -282, -282, -282, -282, -282, 127, -282, -282, 131, -282, -282, 466, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 130, 99, 100, -282, -282, -282, -282, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -284, -284, -284, -284, -284, -284, 127, -284, -284, 131, -284, -284, 467, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, 130, 99, 100, -284, -284, -284, -284, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, 47, 1, 5, 61, 1, 1, 5, 2, 3, 10, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -291, -291, -291, 166, -291, -291, 127, 468, -291, -291, 131, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, 130, 99, 100, -291, -291, -291, -291, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 6, 6, 62, 1, 5, 20, 5, -117, -117, -117, -117, 469, -117, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 471, 470, -243, -243, -243, -243, 7, 6, 62, 1, 5, 1, 19, 5, -126, -126, -126, -126, 472, -126, -126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 473, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 3, 59, 1, 46, 259, 260, 474, 6, 6, 62, 1, 5, 20, 5, -129, -129, -129, -129, -129, -129, 5, 6, 62, 1, 5, 25, -113, -113, -113, -113, -113, 11, 6, 62, 1, 5, 1, 11, 1, 1, 6, 5, 29, -123, -123, -123, -123, -123, -123, -123, -123, -123, -123, -123, 11, 6, 62, 1, 5, 1, 11, 1, 1, 6, 5, 29, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, 11, 6, 62, 1, 5, 1, 11, 1, 1, 6, 5, 29, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, 5, 6, 62, 1, 5, 25, -118, -118, -118, -118, -118, 17, 39, 4, 1, 13, 1, 1, 1, 24, 1, 7, 13, 3, 2, 1, 2, 29, 3, 478, 480, 479, 294, 107, 295, 260, 477, 296, 102, 475, 89, 476, 481, 482, 88, 84, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -40, -40, -40, -40, -40, -40, -40, 483, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 6, 56, 5, 1, 2, 1, 1, 303, 108, 109, 484, 485, 302, 4, 61, 1, 2, 2, -60, -60, -60, -60, 110, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 486, 3, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 488, 487, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 4, 61, 1, 2, 2, -65, -65, -65, -65, 5, 1, 5, 61, 2, 77, -4, -4, -4, -4, -4, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, 130, -414, -414, -414, -414, -414, -414, -414, -414, 113, 114, -414, -414, -414, -414, -414, -414, 121, -414, 123, -414, -414, -414, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, 130, -415, -415, -415, -415, -415, -415, -415, -415, 113, 114, -415, -415, -415, -415, -415, -415, 121, -415, 123, -415, -415, -415, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, 130, -416, -416, -416, -416, -416, -416, -416, -416, -416, 114, -416, -416, -416, -416, -416, -416, 121, -416, 123, -416, -416, -416, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, 130, -417, -417, -417, -417, -417, -417, -417, -417, -417, 114, -417, -417, -417, -417, -417, -417, 121, -417, 123, -417, -417, -417, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, 130, -418, -418, -418, -418, -418, -418, 112, 111, 113, 114, -418, -418, -418, -418, -418, -418, 121, -418, 123, -418, -418, -418, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, 130, -419, -419, -419, -419, -419, -419, 112, 111, 113, 114, 115, -419, -419, -419, -419, -419, 121, -419, 123, -419, 125, -419, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, 130, -420, -420, -420, -420, -420, -420, 112, 111, 113, 114, 115, 116, -420, -420, -420, -420, 121, -420, 123, -420, 125, -420, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, 130, -421, -421, -421, -421, -421, -421, 112, 111, 113, 114, 115, 116, 117, -421, -421, -421, 121, -421, 123, -421, 125, -421, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, 130, -422, -422, -422, -422, -422, -422, 112, 111, 113, 114, 115, 116, 117, 118, -422, -422, 121, -422, 123, -422, 125, -422, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, 130, -430, -430, -430, -430, -430, -430, 112, 111, 113, 114, 115, 116, 117, 118, 119, -430, 121, 122, 123, -430, 125, -430, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -431, -431, -431, -431, -431, -431, 127, -431, -431, 131, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, 128, 129, 130, 99, 100, -431, -431, -431, -431, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, 130, -429, -429, -429, -429, -429, -429, 112, 111, 113, 114, 115, 116, 117, 118, 119, -429, 121, -429, 123, -429, 125, -429, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -432, -432, -432, -432, -432, -432, 127, -432, -432, 131, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, 128, 129, 130, 99, 100, -432, -432, -432, -432, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, 130, -433, -433, -433, -433, -433, -433, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, -433, 125, -433, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, 130, -434, -434, -434, -434, -434, -434, 112, 111, 113, 114, 115, -434, -434, -434, -434, -434, 121, -434, 123, -434, -434, -434, 24, 76, 18, 1, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 489, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -73, -73, -36, -36, -73, -73, -73, -73, -73, -36, -36, -36, -73, -36, -73, -73, -73, -73, -73, -73, -73, -73, -73, -36, -73, -73, -36, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -36, -36, -36, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -262, -262, -262, -262, -262, -262, 127, -262, -262, 131, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 490, -262, -262, 130, 99, 100, -262, -262, -262, -262, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -266, -266, -266, -266, -266, -266, 127, -266, -266, 131, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 130, 99, 100, -266, -266, -266, -266, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 4, 97, 74, 2, 2, 492, 491, 493, 494, 11, 57, 1, 25, 1, 1, 7, 4, 10, 2, 29, 39, 158, 107, 160, 161, 159, 102, 495, 163, 162, 201, 200, 11, 57, 1, 25, 1, 1, 7, 4, 10, 2, 29, 39, 158, 107, 160, 161, 159, 102, 496, 163, 162, 201, 200, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, 497, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, -325, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -261, -261, -261, -261, -261, -261, 127, -261, -261, 131, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 130, 99, 100, -261, -261, -261, -261, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -265, -265, -265, -265, -265, -265, 127, -265, -265, 131, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 130, 99, 100, -265, -265, -265, -265, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, 27, 76, 13, 6, 14, 16, 1, 30, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 498, 131, 346, 499, 345, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 107, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 5, 2, 3, 11, 2, 1, 2, 2, 1, 11, 1, 1, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 500, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 501, 102, 61, 85, 89, 346, 86, 87, 92, 343, 345, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 89, 502, 1, 89, 503, 105, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 10, 1, 1, 1, 1, 4, 3, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 504, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -190, 105, 106, 55, 54, 74, 75, 96, -190, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -48, -48, -48, -48, -48, -48, -48, 505, -48, -48, -48, -48, -69, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 56, 11, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 7, 1, 1, 10, 8, 3, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, 56, 11, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 7, 1, 1, 10, 8, 3, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, -185, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 506, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 507, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, -218, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 509, 508, -243, -243, -243, -243, 5, 6, 62, 1, 5, 56, -220, -220, -220, -220, -220, 111, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 4, 2, 1, 1, 3, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 351, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 350, 68, 44, 45, 93, 94, 253, 510, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 29, 6, 62, 1, 5, 2, 19, 12, 23, 26, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -225, -225, -225, -225, 127, 131, -225, -225, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, 24, 76, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 511, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 512, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -70, -70, -70, -70, -70, -70, 127, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 130, -70, -70, -70, -70, -70, -70, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 513, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 514, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -74, -74, -74, -74, -74, -74, 127, -74, -74, 131, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 128, 129, 130, 99, 100, -74, -74, -74, -74, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 515, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 516, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -77, -77, -77, -77, -77, -77, 127, -77, -77, 131, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 128, 129, 130, 99, 100, -77, -77, -77, -77, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 517, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -80, -80, -80, -80, -80, -80, 127, -80, -80, 131, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 128, 129, 130, 99, 100, -80, -80, -80, -80, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 518, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 519, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -83, -83, -83, -83, -83, -83, 127, -83, -83, 131, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 128, 129, 130, 99, 100, -83, -83, -83, -83, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 520, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 3, 133, 1, 1, 521, 93, 94, 18, 6, 51, 1, 10, 1, 14, 1, 1, 7, 7, 7, 1, 1, 1, 6, 15, 6, 1, -244, 158, 107, -244, -244, 160, 161, 159, 102, -244, 163, -244, 162, 157, -244, -244, 522, 156, 2, 6, 62, 523, 524, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 525, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 6, 6, 62, 1, 5, 56, 2, -206, -206, -206, -206, -206, -206, 59, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 3, 1, 4, 2, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 2, 6, 63, 110, 526, 10, 6, 62, 1, 5, 24, 1, 8, 8, 15, 2, -243, -243, -243, 373, 374, -243, -243, -243, -243, 527, 1, 69, 528, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -436, -436, -436, -436, -436, -436, 127, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, -436, 130, -436, -436, -436, -436, -436, -436, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 529, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 530, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -87, -87, -87, -87, -87, -87, 127, -87, -87, 131, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 128, 129, 130, 99, 100, -87, -87, -87, -87, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 531, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 532, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 2, 68, 11, 166, 533, 6, 57, 1, 10, 11, 5, 8, 534, 107, 166, 536, 535, 102, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 537, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 538, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 539, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 540, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 97, 541, 1, 173, 542, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 543, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 10, 57, 1, 25, 1, 1, 7, 14, 2, 29, 39, 158, 107, 160, 161, 159, 102, 163, 162, 201, 544, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 545, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 3, 163, 1, 1, 546, 402, 403, 4, 69, 84, 11, 1, 547, 548, 549, 403, 3, 69, 84, 12, -278, -278, -278, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 6, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 551, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 550, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 47, 1, 5, 61, 1, 1, 5, 2, 3, 10, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -333, -333, -333, 166, -333, -333, 127, 552, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 130, -333, -333, -333, -333, -333, -333, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 553, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 2, 6, 63, 555, 554, 2, 6, 63, -342, -342, 25, 6, 63, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -345, -345, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 6, 63, -346, -346, 7, 6, 63, 87, 1, 9, 1, 1, -347, -347, 132, 133, 134, 99, 100, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 556, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 58, 557, 24, 68, 8, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 558, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 1, 69, 559, 1, 69, 560, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 130, -253, -253, -253, -253, -253, -253, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 18, 6, 51, 1, 10, 1, 5, 9, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -199, 158, 107, -199, -199, -199, 160, 161, 159, 102, 163, 162, 157, 561, -199, -199, 155, 156, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 1, 69, 562, 3, 56, 5, 1, 563, 108, 109, 3, 92, 96, 5, 565, 564, 226, 3, 56, 5, 1, 566, 108, 109, 1, 150, 567, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 569, 568, -243, -243, -243, -243, 5, 6, 62, 1, 5, 25, -358, -358, -358, -358, -358, 6, 57, 1, 10, 121, 1, 2, 429, 107, 428, 570, 427, 430, 6, 6, 62, 1, 5, 25, 92, -363, -363, -363, -363, -363, 571, 6, 6, 62, 1, 5, 25, 92, -365, -365, -365, -365, -365, 572, 2, 57, 1, 573, 107, 14, 1, 5, 61, 1, 1, 5, 33, 23, 16, 4, 6, 1, 10, 1, -369, -369, -369, -369, -369, -369, -369, -369, -369, 574, -369, -369, -369, -369, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 576, 575, -243, -243, -243, -243, 5, 6, 62, 1, 5, 25, -387, -387, -387, -387, -387, 6, 57, 1, 10, 124, 3, 2, 578, 107, 435, 437, 577, 434, 12, 6, 62, 1, 5, 1, 11, 1, 1, 6, 5, 29, 63, -392, -392, -392, -392, -123, -123, -123, -123, -123, -392, -123, 579, 6, 6, 62, 1, 5, 25, 92, -395, -395, -395, -395, -395, 580, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 582, 581, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 583, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 32, 1, 5, 61, 1, 1, 5, 2, 19, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -382, -382, -382, -382, -382, -382, 127, 131, -382, -382, -382, -382, -382, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 84, 8, 584, 102, 3, 56, 5, 1, 585, 108, 109, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, 2, 6, 63, 110, 586, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 587, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, 60, 6, 5, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 7, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 451, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, 5, 6, 62, 1, 5, 33, -177, -177, -177, -177, -177, 2, 68, 39, 589, 588, 120, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 3, 7, 1, 1, 1, 1, 7, 3, 4, 7, 1, 1, 1, 2, 2, 1, 1, 4, 3, 1, 1, 3, 3, 1, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -244, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -244, -244, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, -244, 85, -244, 89, 254, 86, 87, 92, -244, 591, 590, 251, 247, 68, -244, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 4, 6, 62, 1, 38, 592, -178, -178, -178, 60, 6, 5, 37, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 7, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, 10, 6, 62, 1, 5, 24, 1, 8, 8, 6, 9, -243, -243, -243, 449, 450, -243, -243, -243, 593, -243, 111, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 447, 446, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 29, 6, 62, 1, 5, 2, 19, 12, 23, 26, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -212, -212, -212, -212, 127, 131, -212, -212, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 24, 76, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 594, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 595, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 3, 6, 62, 47, 597, 598, 596, 35, 6, 33, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 12, 1, 1, 7, 7, 7, 1, 1, 1, 6, 2, 1, 12, 15, -244, 280, 271, 272, 275, 274, 273, 276, 277, 103, 104, 268, 107, 269, 260, 108, 109, -244, -244, 105, 106, 278, 279, 270, 102, -244, 163, -244, 162, 267, -244, 599, 266, -244, 84, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 600, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 601, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 28, 6, 62, 1, 5, 2, 19, 20, 41, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -154, -154, -154, -154, 127, 131, -154, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 602, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 603, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 604, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 605, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 606, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 3, 6, 62, 31, 608, 609, 607, 24, 6, 41, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 16, 8, 6, 4, 1, 1, 1, 1, 1, 1, 6, 15, -244, 292, 103, 104, 294, 107, 295, 260, 108, 109, -244, -244, 296, 611, -244, 610, 297, 289, 290, -244, 291, 298, -244, -244, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 612, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 613, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 24, 76, 19, 12, 49, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 131, 614, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 615, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 10, 6, 62, 1, 5, 12, 1, 1, 11, 13, 16, -130, -130, -130, -130, -132, -132, -132, -130, 616, 145, 10, 6, 62, 1, 5, 12, 1, 1, 11, 13, 16, -131, -131, -131, -131, 618, 619, 620, -131, 617, 145, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -133, -133, -133, -133, -133, -133, -133, -133, -133, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -134, -134, -134, -134, -134, -134, -134, -134, -134, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -135, -135, -135, -135, -135, -135, -135, -135, -135, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -136, -136, -136, -136, -136, -136, -136, -136, -136, 4, 86, 2, 24, 16, 256, 257, 621, 145, 2, 112, 16, 622, 145, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 59, 1, 5, 55, 1, 2, 2, 1, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 4, 61, 1, 2, 2, -61, -61, -61, -61, 2, 6, 61, 110, 623, 108, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 624, 3, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 4, 61, 1, 2, 2, -64, -64, -64, -64, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 625, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 627, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 626, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 628, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 629, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 630, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 631, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 97, 632, 1, 173, 633, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 634, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, 105, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 10, 1, 1, 1, 1, 4, 3, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 635, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -188, 105, 106, 55, 54, 74, 75, 96, -188, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 27, 69, 7, 19, 14, 16, 1, 30, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 636, 127, 131, 346, 499, 345, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 1, 69, 637, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, 25, 69, 7, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -189, 127, -189, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 638, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 24, 76, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 639, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 640, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 3, 6, 62, 62, 642, 643, 641, 116, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 10, 1, 1, 1, 1, 7, 3, 4, 7, 1, 1, 1, 2, 2, 1, 1, 8, 4, 3, 1, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -244, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -244, -244, 105, 106, 55, 54, 74, 75, 96, 102, 61, -244, 85, -244, 89, 254, 86, 87, 92, -244, 644, 68, -244, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 509, 645, -243, -243, -243, -243, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 646, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -71, -71, -71, -71, -71, -71, 127, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 130, -71, -71, -71, -71, -71, -71, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 647, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -75, -75, -75, -75, -75, -75, 127, -75, -75, 131, -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 128, 129, 130, 99, 100, -75, -75, -75, -75, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 648, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -78, -78, -78, -78, -78, -78, 127, -78, -78, 131, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 128, 129, 130, 99, 100, -78, -78, -78, -78, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -81, -81, -81, -81, -81, -81, 127, -81, -81, 131, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 128, 129, 130, 99, 100, -81, -81, -81, -81, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 649, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -84, -84, -84, -84, -84, -84, 127, -84, -84, 131, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 128, 129, 130, 99, 100, -84, -84, -84, -84, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 109, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 8, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 651, 4, 5, 6, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 166, 105, 106, 650, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 6, 6, 62, 1, 5, 56, 2, -201, -201, -201, -201, -201, -201, 11, 57, 1, 25, 1, 1, 7, 14, 2, 1, 27, 1, 158, 107, 160, 161, 159, 102, 163, 162, 157, 652, 156, 18, 6, 51, 1, 10, 1, 5, 9, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -199, 158, 107, -199, -199, -199, 160, 161, 159, 102, 163, 162, 157, 653, -199, -199, 155, 156, 29, 6, 62, 1, 5, 2, 19, 35, 2, 24, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -205, -205, -205, -205, 127, 131, -205, -205, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 59, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 3, 1, 4, 2, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 3, 133, 1, 1, 654, 93, 94, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 655, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -438, -438, -438, -438, -438, -438, 127, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, -438, 130, -438, -438, -438, -438, -438, -438, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 656, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 68, 11, 166, 657, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 2, 68, 11, 166, 658, 2, 68, 11, 166, 659, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 27, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 4, 30, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 660, 131, 661, 128, 129, 130, 99, 100, 662, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 26, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 663, 131, 664, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 26, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 665, 131, 666, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 26, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 667, 131, 668, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 669, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 670, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 671, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 4, 97, 74, 2, 2, -330, -330, -330, -330, 28, 74, 2, 19, 2, 59, 1, 9, 1, 1, 3, 2, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -328, 127, 131, -328, 128, 129, 130, 99, 100, -328, -328, -328, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 4, 69, 84, 11, 1, 672, 673, 549, 403, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, 2, 68, 11, 166, 674, 3, 69, 84, 12, -279, -279, -279, 3, 68, 6, 5, 166, 676, 675, 25, 68, 6, 2, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -229, -229, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 47, 1, 5, 61, 1, 1, 5, 2, 3, 10, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -337, -337, -337, 166, -337, -337, 127, 677, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 130, -337, -337, -337, -337, -337, -337, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, 111, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 2, 1, 1, 1, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, -344, 409, 410, 411, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -344, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 678, 412, 413, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 25, 6, 63, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -348, -348, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 2, 6, 63, -349, -349, 110, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 409, 410, 411, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 44, 45, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 679, 408, 412, 413, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 373, 374, -243, -243, -243, 680, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, 1, 150, 681, 6, 57, 1, 10, 121, 1, 2, 429, 107, 428, 682, 427, 430, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, 3, 56, 5, 1, 683, 108, 109, 3, 6, 62, 31, 685, 686, 684, 11, 6, 51, 1, 10, 1, 30, 8, 8, 15, 60, 2, -244, 429, 107, -244, -244, -244, -244, -244, -244, 687, 430, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 569, 688, -243, -243, -243, -243, 2, 57, 1, 689, 107, 2, 57, 1, 690, 107, 1, 150, -368, 3, 56, 5, 1, 691, 108, 109, 3, 6, 62, 31, 693, 694, 692, 11, 6, 51, 1, 10, 1, 30, 8, 8, 15, 62, 5, -244, 578, 107, -244, -244, -244, -244, -244, -244, 437, 695, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 576, 696, -243, -243, -243, -243, 6, 6, 62, 1, 5, 25, 92, -392, -392, -392, -392, -392, 579, 3, 57, 1, 134, 697, 107, 698, 2, 57, 1, 699, 107, 32, 1, 5, 61, 1, 1, 5, 2, 19, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -375, -375, -375, -375, -375, -375, 127, 131, -375, -375, -375, -375, -375, 130, -375, -375, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 700, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 701, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 69, 702, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, 1, 146, 703, 24, 76, 19, 12, 49, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 131, 704, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, 115, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 249, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 453, 705, 248, 251, 247, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 5, 6, 62, 1, 5, 33, -172, -172, -172, -172, -172, 114, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 9, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, -179, -179, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, -179, 89, 254, 86, 87, 92, 447, 446, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 113, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 3, 7, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 5, 3, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 250, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 453, 706, 251, 247, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 2, 68, 1, 589, 707, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 708, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, -146, 28, 39, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 1, 12, 1, 1, 7, 14, 2, 1, 8, 1, 27, 280, 271, 272, 275, 274, 273, 276, 277, 103, 104, 268, 107, 269, 260, 108, 109, 105, 106, 278, 279, 270, 102, 163, 162, 267, 709, 266, 84, 34, 6, 33, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 3, 9, 1, 1, 7, 14, 2, 1, 6, 1, 1, 1, 27, -147, 280, 271, 272, 275, 274, 273, 276, 277, 103, 104, 268, 107, 269, 260, 108, 109, -147, -147, 105, 106, -147, 278, 279, 270, 102, 163, 162, 267, -147, 710, 265, 266, 84, 5, 6, 62, 1, 5, 41, -149, -149, -149, -149, -149, 28, 6, 62, 1, 5, 2, 19, 20, 41, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -152, -152, -152, -152, 127, 131, -152, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 711, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 2, 68, 11, 166, 712, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -283, -283, -283, -283, -283, -283, 127, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 130, -283, -283, -283, -283, -283, -283, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -285, -285, -285, -285, -285, -285, 127, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, 130, -285, -285, -285, -285, -285, -285, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 28, 6, 62, 1, 5, 2, 19, 4, 57, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -119, -119, -119, -119, 127, 713, -119, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 714, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, -111, 17, 47, 8, 1, 1, 1, 1, 1, 1, 1, 23, 8, 10, 1, 1, 1, 2, 1, 292, 103, 104, 294, 107, 295, 260, 108, 109, 296, 611, 715, 297, 289, 290, 291, 298, 23, 6, 41, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 5, 11, 8, 6, 3, 1, 1, 1, 1, 2, 1, -112, 292, 103, 104, 294, 107, 295, 260, 108, 109, -112, -112, -112, 296, 611, -112, 716, 293, 297, 289, 290, 291, 298, 5, 6, 62, 1, 5, 25, -114, -114, -114, -114, -114, 6, 6, 62, 1, 5, 20, 5, -117, -117, -117, -117, 717, -117, 28, 6, 62, 1, 5, 2, 19, 4, 57, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -121, -121, -121, -121, 127, 131, -121, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 718, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 6, 6, 62, 1, 5, 20, 5, -127, -127, -127, -127, -127, -127, 24, 76, 19, 12, 49, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 131, 719, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -139, -139, -139, -139, -139, -139, -139, -139, -139, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -140, -140, -140, -140, -140, -140, -140, -140, -140, 2, 59, 1, 720, 260, 2, 59, 1, 721, 260, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 722, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 723, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -137, -137, -137, -137, -137, -137, -137, -137, -137, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -138, -138, -138, -138, -138, -138, -138, -138, -138, 4, 61, 1, 2, 2, -62, -62, -62, -62, 2, 6, 63, 110, 724, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -435, -435, -435, -435, -435, -435, 127, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, 130, -435, -435, -435, -435, -435, -435, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 725, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -264, -264, -264, -264, -264, -264, 127, -264, -264, 131, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 130, 99, 100, -264, -264, -264, -264, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -310, -310, -310, -310, -310, -310, 127, -310, -310, -310, -310, -310, 726, -310, -310, -310, -310, -310, -310, -310, -310, -310, -310, 130, -310, -310, -310, 727, -310, -310, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -315, -315, -315, -315, -315, -315, 127, -315, -315, -315, -315, -315, 728, -315, -315, -315, -315, -315, -315, -315, -315, -315, -315, 130, -315, -315, -315, -315, -315, -315, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -319, -319, -319, -319, -319, -319, 127, -319, -319, -319, -319, -319, 729, -319, -319, -319, -319, -319, -319, -319, -319, -319, -319, 130, -319, -319, -319, -319, -319, -319, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -323, -323, -323, -323, -323, -323, 127, -323, -323, -323, -323, -323, 730, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 130, -323, -323, -323, -323, -323, -323, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 731, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 732, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -326, -326, -326, -326, -326, -326, 127, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, -326, 130, -326, -326, -326, -326, -326, -326, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 69, 7, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -187, 127, -187, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 1, 89, 733, 1, 89, 734, 24, 76, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, -68, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 735, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 57, 1, 5, 55, 1, 5, 1, 1, 3, 2, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, -219, 109, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 736, 68, 44, 45, 93, 94, 253, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 111, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 4, 2, 1, 1, 3, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 352, 252, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 351, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 254, 86, 87, 92, 350, 68, 44, 45, 93, 94, 253, 737, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 46, 47, 70, 48, 49, 50, 52, 53, 5, 6, 62, 1, 5, 56, -221, -221, -221, -221, -221, 3, 6, 62, 1, 642, 643, 738, 1, 89, 739, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, -193, 9, 1, 5, 61, 1, 1, 5, 33, 23, 16, -195, -195, -195, -195, -195, -195, -195, -195, -195, 6, 6, 62, 1, 5, 56, 2, -202, -202, -202, -202, -202, -202, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 373, 740, -243, -243, -243, -243, 2, 68, 11, 166, 650, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, -437, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 741, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 742, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 743, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 744, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 745, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 26, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 746, 131, 747, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 26, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 748, 131, 749, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 2, 68, 11, 166, 750, 1, 69, 751, 4, 6, 63, 84, 12, 752, -280, -280, -280, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 753, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 2, 6, 63, -343, -343, 2, 6, 63, 555, 754, 2, 68, 11, 166, 755, 3, 56, 5, 1, 756, 108, 109, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 569, 757, -243, -243, -243, -243, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, 1, 150, 758, 4, 57, 1, 132, 2, 429, 107, 759, 430, 6, 57, 1, 10, 121, 1, 2, 429, 107, 428, 760, 427, 430, 5, 6, 62, 1, 5, 25, -359, -359, -359, -359, -359, 3, 6, 62, 1, 685, 686, 761, 5, 6, 62, 1, 5, 25, -364, -364, -364, -364, -364, 5, 6, 62, 1, 5, 25, -366, -366, -366, -366, -366, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -385, -385, -385, -385, -385, -385, -385, -385, -385, -385, -385, -385, -385, 14, 1, 5, 61, 1, 1, 5, 33, 23, 16, 4, 6, 1, 10, 1, -370, -370, -370, -370, -370, -370, -370, -370, -370, 762, -370, -370, -370, -370, 4, 57, 1, 134, 5, 578, 107, 437, 763, 6, 57, 1, 10, 124, 3, 2, 578, 107, 435, 437, 764, 434, 5, 6, 62, 1, 5, 25, -388, -388, -388, -388, -388, 3, 6, 62, 1, 693, 694, 765, 5, 6, 62, 1, 5, 25, -393, -393, -393, -393, -393, 5, 6, 62, 1, 5, 25, -394, -394, -394, -394, -394, 5, 6, 62, 1, 5, 25, -396, -396, -396, -396, -396, 32, 1, 5, 61, 1, 1, 5, 2, 19, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -376, -376, -376, -376, -376, -376, 127, 131, -376, -376, -376, -376, -376, 130, -376, -376, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 766, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, -186, 10, 6, 62, 1, 5, 24, 1, 8, 8, 6, 9, -243, -243, -243, 449, 450, -243, -243, -243, 767, -243, 5, 6, 62, 1, 5, 33, -173, -173, -173, -173, -173, 5, 6, 62, 1, 5, 33, -174, -174, -174, -174, -174, 1, 89, 768, 5, 6, 62, 1, 5, 41, -150, -150, -150, -150, -150, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 461, 769, -243, -243, -243, -243, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 770, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 14, 40, 17, 1, 25, 1, 1, 7, 4, 5, 5, 2, 29, 37, 2, 333, 158, 107, 160, 161, 159, 102, 771, 772, 85, 162, 201, 332, 200, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 773, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 5, 6, 62, 1, 5, 25, -115, -115, -115, -115, -115, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 471, 774, -243, -243, -243, -243, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 775, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 606, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 776, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 6, 6, 62, 1, 5, 20, 5, -128, -128, -128, -128, -128, -128, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -141, -141, -141, -141, -141, -141, -141, -141, -141, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -142, -142, -142, -142, -142, -142, -142, -142, -142, 24, 76, 13, 6, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 127, 777, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 778, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 67, 779, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 780, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 781, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 782, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 783, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 784, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 785, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -317, -317, -317, -317, -317, -317, 127, -317, -317, -317, -317, -317, 786, -317, -317, -317, -317, -317, -317, -317, -317, -317, -317, 130, -317, -317, -317, -317, -317, -317, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -321, -321, -321, -321, -321, -321, 127, -321, -321, -321, -321, -321, 787, -321, -321, -321, -321, -321, -321, -321, -321, -321, -321, 130, -321, -321, -321, -321, -321, -321, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, 1, 89, 788, 5, 6, 62, 1, 5, 56, -222, -222, -222, -222, -222, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 509, 789, -243, -243, -243, -243, 5, 6, 62, 1, 5, 56, -223, -223, -223, -223, -223, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, 3, 6, 62, 1, 523, 524, 790, 26, 68, 8, 3, 16, 61, 1, 9, 1, 1, 4, 30, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 791, 131, 128, 129, 130, 99, 100, 792, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 26, 68, 8, 3, 16, 5, 56, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 793, 131, 794, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 795, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 796, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 797, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 798, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 799, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 69, 800, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, 3, 69, 84, 12, -281, -281, -281, 25, 68, 6, 2, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -230, -230, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, 3, 6, 62, 31, 685, 686, 801, 3, 56, 5, 1, 802, 108, 109, 5, 6, 62, 1, 5, 25, -360, -360, -360, -360, -360, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 569, 803, -243, -243, -243, -243, 5, 6, 62, 1, 5, 25, -361, -361, -361, -361, -361, 3, 56, 5, 1, 804, 108, 109, 5, 6, 62, 1, 5, 25, -389, -389, -389, -389, -389, 9, 6, 62, 1, 5, 24, 1, 8, 8, 15, -243, -243, -243, 576, 805, -243, -243, -243, -243, 5, 6, 62, 1, 5, 25, -390, -390, -390, -390, -390, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 2, 68, 1, 589, 806, 56, 1, 5, 55, 1, 5, 1, 1, 5, 2, 10, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, 3, 6, 62, 1, 597, 598, 807, 5, 6, 62, 1, 5, 41, -153, -153, -153, -153, -153, 4, 97, 74, 2, 2, 808, 491, 493, 494, 11, 57, 1, 25, 1, 1, 7, 4, 10, 2, 29, 39, 158, 107, 160, 161, 159, 102, 809, 163, 162, 201, 200, 5, 6, 62, 1, 5, 25, -120, -120, -120, -120, -120, 3, 6, 62, 1, 608, 609, 810, 28, 6, 62, 1, 5, 2, 19, 4, 57, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -119, -119, -119, -119, 127, 131, -119, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 5, 6, 62, 1, 5, 25, -122, -122, -122, -122, -122, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -143, -143, -143, -143, -143, -143, -143, -143, -143, 24, 69, 7, 19, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 811, 127, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 4, 61, 1, 2, 2, -63, -63, -63, -63, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -311, -311, -311, -311, -311, -311, 127, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, 130, -311, -311, -311, 812, -311, -311, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -312, -312, -312, -312, -312, -312, 127, -312, -312, -312, -312, -312, 813, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, 130, -312, -312, -312, -312, -312, -312, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -316, -316, -316, -316, -316, -316, 127, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, 130, -316, -316, -316, -316, -316, -316, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -320, -320, -320, -320, -320, -320, 127, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, 130, -320, -320, -320, -320, -320, -320, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -324, -324, -324, -324, -324, -324, 127, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, 130, -324, -324, -324, -324, -324, -324, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 814, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 815, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 65, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, 3, 6, 62, 1, 642, 643, 816, 6, 6, 62, 1, 5, 56, 2, -203, -203, -203, -203, -203, -203, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 817, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 818, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 819, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 820, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 1, 150, 821, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, 3, 6, 62, 1, 685, 686, 822, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -386, -386, -386, -386, -386, -386, -386, -386, -386, -386, -386, -386, -386, 3, 6, 62, 1, 693, 694, 823, 5, 6, 62, 1, 5, 33, -175, -175, -175, -175, -175, 5, 6, 62, 1, 5, 41, -151, -151, -151, -151, -151, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 824, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 97, 825, 5, 6, 62, 1, 5, 25, -116, -116, -116, -116, -116, 1, 89, 826, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 827, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 828, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -318, -318, -318, -318, -318, -318, 127, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, 130, -318, -318, -318, -318, -318, -318, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -322, -322, -322, -322, -322, -322, 127, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, 130, -322, -322, -322, -322, -322, -322, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 5, 6, 62, 1, 5, 56, -224, -224, -224, -224, -224, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 829, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 25, 68, 8, 3, 16, 61, 1, 9, 1, 1, 34, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 166, 127, 830, 131, 128, 129, 130, 99, 100, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 3, 56, 5, 1, 831, 108, 109, 5, 6, 62, 1, 5, 25, -362, -362, -362, -362, -362, 5, 6, 62, 1, 5, 25, -391, -391, -391, -391, -391, 47, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -315, -315, -315, -315, -315, 834, 127, -315, -315, -315, -315, 832, -315, 833, -315, -315, -315, -315, -315, -315, -315, -315, -315, -315, 130, -315, -315, -315, -315, -315, -315, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 835, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 9, 6, 62, 1, 5, 12, 1, 1, 11, 29, -144, -144, -144, -144, -144, -144, -144, -144, -144, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -313, -313, -313, -313, -313, -313, 127, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, 130, -313, -313, -313, -313, -313, -313, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 46, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -314, -314, -314, -314, -314, -314, 127, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, 130, -314, -314, -314, -314, -314, -314, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, 45, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, 13, 1, 5, 61, 1, 1, 5, 33, 23, 16, 10, 1, 10, 1, -357, -357, -357, -357, -357, -357, -357, -357, -357, -357, -357, -357, -357, 1, 99, 836, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 837, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 7, 6, 62, 1, 30, 8, 8, 15, -244, -244, -244, -244, -244, -244, -244, 47, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -317, -317, -317, -317, -317, 834, 127, -317, -317, -317, -317, 838, -317, 839, -317, -317, -317, -317, -317, -317, -317, -317, -317, -317, 130, -317, -317, -317, -317, -317, -317, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, 47, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -316, -316, -316, -316, -316, 834, 127, -316, -316, -316, -316, 840, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, 130, -316, -316, -316, -316, -316, -316, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 1, 99, 841, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 4, 1, 842, 169, 30, 31, 32, 33, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 76, 77, 78, 79, 80, 81, 82, 83, 103, 104, 95, 107, 108, 109, 105, 106, 55, 54, 74, 75, 96, 102, 61, 85, 89, 86, 87, 92, 68, 173, 174, 93, 94, 88, 90, 91, 84, 71, 66, 67, 56, 97, 57, 98, 58, 62, 59, 99, 100, 60, 101, 51, 63, 69, 64, 65, 72, 73, 175, 176, 177, 48, 49, 50, 52, 53, 1, 99, 843, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, 47, 1, 5, 61, 1, 1, 5, 2, 13, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -318, -318, -318, -318, -318, 834, 127, -318, -318, -318, -318, 844, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, 130, -318, -318, -318, -318, -318, -318, 112, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, 1, 99, 845, 61, 1, 5, 55, 1, 5, 1, 1, 5, 1, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110, -110], t = [], p = 0, n, o, k, a;
3190
+ let d = [109, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -1, 1, 2, 3, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 1, 1, 0, 2, 1, 5, -2, 109, 5, 1, 5, 60, 2, 76, -3, -3, -3, -3, -3, 30, 1, 5, 60, 1, 1, 5, 20, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -6, -6, -6, -6, -6, -6, 128, -6, -6, -6, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -7, -7, -7, -7, -7, -7, -7, -7, -7, 14, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 9, 1, 1, -8, -8, -8, -8, -8, -8, -8, -8, -8, 129, 130, 131, 98, 99, 55, 1, 5, 49, 5, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 3, 3, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -13, -13, 134, 107, 108, -13, -13, -13, -13, 137, 138, 139, -13, 140, -13, -13, -13, -13, -13, -13, -13, 135, -13, -13, 141, -13, -13, 136, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 132, 133, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 46, 1, 5, 60, 1, 1, 5, 11, 1, 1, 1, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -14, -14, -14, -14, -14, -14, 142, 143, 144, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -33, -33, -33, -33, -33, -33, -33, -33, -33, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -34, -34, -34, -34, -34, -34, -34, -34, -34, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -35, -35, -35, -35, -35, -35, -35, -35, 145, 146, 147, 148, 149, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 18, 6, 50, 1, 10, 1, 5, 8, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -197, 154, 106, -197, -197, -197, 156, 157, 155, 101, 159, 158, 153, 150, -197, -197, 151, 152, 108, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 7, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 161, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 162, 104, 105, 160, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 105, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 163, 164, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 105, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 166, 167, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 168, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 174, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 175, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 176, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 177, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 47, 14, 1, 21, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 179, 180, 181, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 178, 73, 74, 95, 101, 84, 88, 85, 86, 91, 169, 170, 92, 93, 87, 89, 90, 83, 173, 47, 14, 1, 21, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 179, 180, 181, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 182, 73, 74, 95, 101, 84, 88, 85, 86, 91, 169, 170, 92, 93, 87, 89, 90, 83, 173, 61, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 183, 184, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 185, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 7, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 187, 186, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 162, 104, 105, 188, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 189, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 2, 67, 10, 162, 190, 2, 67, 10, 162, 191, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, 14, 39, 17, 1, 24, 1, 1, 7, 4, 5, 5, 2, 29, 37, 2, 195, 154, 106, 156, 157, 155, 101, 192, 193, 84, 158, 197, 194, 196, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 198, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 199, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 92, 1, 5, 8, 1, 21, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, 3, 4, 3, 1, 1, 1, 4, 3, 2, 1, 2, 2, 1, 6, 1, 1, 1, 2, 2, 1, 1, 11, 4, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 22, 2, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -329, -329, 179, 180, 181, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -329, 162, -329, 104, 105, -329, 200, 202, 73, 74, 95, -329, 101, -329, -329, -329, -329, -329, 84, -329, 88, -329, 85, 86, 91, -329, -329, -329, 169, -329, 170, 92, 93, 87, 89, 90, 83, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, 201, 173, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, -329, 2, 67, 109, 203, 204, 2, 67, 10, 162, 205, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 206, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 207, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 141, 1, 5, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, 3, 6, 1, 1, 1, 1, 4, 3, 2, 1, 2, 2, 1, 6, 1, 1, 1, 2, 2, 1, 1, 11, 1, 3, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -248, -248, 208, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -248, 209, -248, 104, 105, -248, 54, 53, 73, 74, 95, -248, 101, -248, -248, -248, -248, -248, 84, -248, 88, -248, 85, 86, 91, -248, -248, 67, -248, 169, -248, 170, 92, 93, 87, 89, 90, 83, -248, 70, 65, 66, 210, 55, 96, -248, 56, 97, -248, -248, 57, 61, 58, -248, -248, 59, 100, -248, -248, -248, 50, -248, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 2, 56, 1, 211, 106, 2, 56, 1, 212, 106, 6, 15, 19, 95, 2, 1, 1, 214, 213, 43, 44, 92, 93, 140, 1, 5, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, 3, 6, 1, 1, 1, 1, 4, 3, 2, 1, 2, 2, 1, 6, 1, 1, 1, 2, 2, 1, 1, 11, 1, 3, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -245, -245, 215, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -245, 216, -245, 104, 105, -245, 54, 53, 73, 74, 95, -245, 101, -245, -245, -245, -245, -245, 84, -245, 88, -245, 85, 86, 91, -245, -245, 67, -245, 169, -245, 170, 92, 93, 87, 89, 90, 83, -245, 70, 65, 66, 55, 96, -245, 56, 97, -245, -245, 57, 61, 58, -245, -245, 59, 100, -245, -245, -245, 50, -245, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 9, 55, 1, 1, 3, 1, 29, 95, 1, 5, 217, 221, 106, 107, 108, 220, 218, 219, 222, 62, 14, 1, 3, 1, 1, 1, 6, 1, 4, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 14, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 32, 2, 1, 12, 4, 4, 179, 180, 229, 230, 231, 232, 224, 225, 226, 227, 235, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 228, 106, 107, 108, 104, 105, 54, 236, 73, 74, 95, 223, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 62, 68, 63, 233, 234, 173, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, -89, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, -46, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 108, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 237, 3, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 238, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 115, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 239, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 245, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 240, 88, 250, 85, 86, 91, 241, 242, 244, 247, 243, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 4, 84, 2, 24, 16, 252, 253, 251, 141, 2, 110, 16, 254, 141, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, 55, 1, 5, 52, 1, 1, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -230, -230, 255, 256, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, 1, 84, 257, 1, 84, 258, 34, 6, 32, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 3, 8, 1, 1, 7, 14, 2, 1, 6, 1, 1, 1, 27, -145, 276, 267, 268, 271, 270, 269, 272, 273, 102, 103, 264, 106, 265, 256, 107, 108, -145, -145, 104, 105, -145, 274, 275, 266, 101, 159, 158, 263, 259, 260, 261, 262, 83, 55, 11, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 2, 1, 9, 11, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, 55, 11, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 2, 1, 9, 11, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, -91, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 277, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 278, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 279, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 280, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 7, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 282, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 162, 104, 105, 281, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 23, 6, 40, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 5, 10, 8, 6, 3, 1, 1, 1, 1, 2, 1, -110, 288, 102, 103, 290, 106, 291, 256, 107, 108, -110, -110, -110, 292, 283, -110, 284, 289, 293, 285, 286, 287, 294, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 47, 14, 1, 21, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 10, 1, 1, 1, 7, 14, 2, 3, 2, 1, 17, 2, 1, 1, 7, 1, 1, 1, 55, 179, 180, 181, 34, 35, 36, 295, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 236, 73, 74, 95, 101, 84, 88, 85, 86, 91, 169, 170, 92, 93, 87, 89, 90, 83, 173, 64, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 4, 3, 3, 1, 10, 1, 3, 1, 1, 2, 3, 13, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 56, 1, 5, 54, 1, 2, 2, 1, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 6, 55, 5, 1, 1, 2, 1, 299, 107, 108, 296, 297, 298, 111, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 2, 1, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -5, 300, -5, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -5, -5, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, -5, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 301, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 302, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 303, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 304, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 305, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 306, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 307, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 308, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 309, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 312, 165, 310, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 311, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 315, 165, 313, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 314, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 318, 165, 316, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 317, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 319, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 320, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 321, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 322, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 323, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, 14, 39, 17, 1, 24, 1, 1, 7, 4, 5, 5, 2, 29, 37, 2, 327, 154, 106, 156, 157, 155, 101, 324, 325, 84, 158, 197, 326, 196, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 328, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 329, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, -403, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, -404, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, -212, 2, 110, 16, 330, 141, 2, 58, 1, 331, 256, 2, 58, 1, 332, 256, 108, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 2, 7, 1, 1, 1, 1, 5, 2, 3, 11, 2, 1, 2, 2, 1, 11, 1, 1, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 333, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 338, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 334, 104, 105, 336, 54, 53, 73, 74, 95, 335, 101, 60, 84, 88, 340, 85, 86, 91, 337, 339, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 86, 341, 111, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 3, 1, 2, 1, 1, 3, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 345, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 344, 67, 342, 43, 44, 92, 93, 249, 343, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 2, 58, 1, 347, 256, 2, 58, 1, 348, 256, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 349, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 350, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 104, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 352, 351, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 353, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 104, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 355, 354, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 356, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 7, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 358, 357, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 162, 104, 105, 359, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 104, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 361, 360, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 362, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 105, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 7, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 364, 363, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 162, 104, 105, 365, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 10, 6, 61, 1, 5, 23, 1, 8, 8, 15, 2, -241, -241, -241, 367, 368, -241, -241, -241, -241, 366, 6, 6, 61, 1, 5, 55, 2, -198, -198, -198, -198, -198, -198, 7, 6, 61, 1, 5, 1, 54, 2, -202, -202, -202, -202, 369, -202, -202, 15, 6, 50, 1, 10, 1, 5, 8, 1, 1, 7, 14, 2, 22, 2, 5, -205, 154, 106, -205, -205, -205, 156, 157, 155, 101, 159, 158, -205, -205, 370, 11, 6, 61, 1, 5, 1, 21, 33, 2, 39, 2, 2, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, 11, 6, 61, 1, 5, 1, 21, 33, 2, 39, 2, 2, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, 11, 6, 61, 1, 5, 1, 21, 33, 2, 39, 2, 2, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, 11, 6, 61, 1, 5, 1, 21, 33, 2, 39, 2, 2, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, 2, 58, 1, 255, 256, 115, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 245, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 240, 88, 250, 85, 86, 91, 241, 242, 244, 247, 243, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -194, -194, -194, -194, -194, -194, -194, -194, -194, 108, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 372, 3, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 371, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, 127, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, -398, 120, -398, -398, -398, -398, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -395, -395, -395, -395, -395, -395, -395, -395, -395, 5, 154, 1, 9, 1, 1, 129, 130, 131, 98, 99, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, 127, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, 120, -399, -399, -399, -399, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -396, -396, -396, -396, -396, -396, -396, -396, -396, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, -400, 127, -400, -400, -400, -400, -400, -400, -400, -400, -400, 113, -400, -400, -400, -400, -400, -400, 120, -400, -400, -400, -400, 18, 6, 50, 1, 10, 1, 5, 8, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -197, 154, 106, -197, -197, -197, 156, 157, 155, 101, 159, 158, 153, 373, -197, -197, 151, 152, 2, 67, 10, 162, 160, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 163, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 166, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 5, 15, 114, 2, 1, 1, 214, 169, 170, 92, 93, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, -401, 127, -401, -401, -401, -401, -401, -401, -401, -401, -401, 113, -401, -401, -401, -401, -401, -401, 120, -401, -401, -401, -401, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, -402, 127, -402, -402, -402, -402, -402, -402, -402, -402, -402, 113, -402, -402, -402, -402, -402, -402, 120, -402, -402, -402, -402, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, 127, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, -405, 120, -405, -405, -405, -405, 2, 82, 8, 374, 101, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -407, -407, -87, -87, -407, -407, -407, -407, -87, -87, -87, -87, -87, -87, -87, -87, -407, -87, -407, -407, -407, -407, -407, -407, -407, -407, -407, -87, -407, -407, -87, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -87, -87, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, -407, 10, 55, 5, 1, 23, 1, 1, 3, 21, 16, 11, 134, 107, 108, 137, 138, 139, 140, 135, 141, 136, 3, 84, 1, 1, 142, 143, 144, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -408, -408, -87, -87, -408, -408, -408, -408, -87, -87, -87, -87, -87, -87, -87, -87, -408, -87, -408, -408, -408, -408, -408, -408, -408, -408, -408, -87, -408, -408, -87, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -87, -87, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, -409, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, -410, 104, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 377, 375, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 376, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -84, -84, -84, -84, -84, -84, -84, -84, 128, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 125, 126, 127, 98, 99, -84, -84, -84, -84, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 378, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 3, 67, 10, 73, 162, 379, 380, 46, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 2, 1, 1, 6, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 381, 382, 383, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, 4, 95, 74, 2, 2, 385, 384, 386, 387, 11, 56, 1, 24, 1, 1, 7, 4, 10, 2, 29, 39, 154, 106, 156, 157, 155, 101, 388, 159, 158, 197, 196, 11, 56, 1, 24, 1, 1, 7, 4, 10, 2, 29, 39, 154, 106, 156, 157, 155, 101, 389, 159, 158, 197, 196, 3, 67, 10, 93, 162, 390, 391, 5, 73, 22, 74, 2, 2, 392, -327, -327, -327, -327, 6, 73, 1, 21, 74, 2, 2, -325, 393, -325, -325, -325, -325, 22, 67, 26, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 394, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 3, 161, 1, 1, 395, 396, 397, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, -330, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 398, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 60, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 1, 1, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -333, -333, -87, -87, -333, 162, -333, -333, -87, -87, -87, 399, -87, -87, -87, -87, -87, -333, -87, -333, -333, -333, -333, -333, -333, -333, -333, -333, -87, -333, -333, -87, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 400, -333, -333, -87, -87, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 109, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 403, 404, 405, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 401, 402, 406, 407, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 408, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 127, -246, -246, -246, -246, -246, -246, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 82, 8, 409, 101, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 127, -249, -249, -249, -249, -249, -249, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 82, 8, 410, 101, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 411, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 3, 67, 10, 49, 162, 413, 412, 2, 67, 10, 162, 414, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -397, -397, -397, -397, -397, -397, -397, -397, -397, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, -435, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 127, -243, -243, -243, -243, -243, -243, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 82, 8, 415, 101, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, 2, 73, 75, 417, 416, 1, 148, 418, 7, 56, 1, 10, 30, 90, 1, 2, 423, 106, 422, 419, 420, 421, 424, 2, 73, 75, -365, -365, 1, 189, 425, 26, 6, 40, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 5, 10, 8, 6, 3, 1, 1, 1, 1, 2, 1, 83, 3, 2, -110, 288, 102, 103, 430, 106, 291, 256, 107, 108, 429, -110, -110, 292, 283, 426, 284, 289, 293, 285, 286, 287, 294, 431, 427, 428, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -369, -369, -369, -369, -369, -369, -369, -369, -369, -369, -369, -369, -369, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, -372, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -90, -90, -90, -90, -90, -90, -90, -90, 432, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, -90, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 433, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 434, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 148, 435, 57, 1, 5, 54, 1, 5, 1, 1, 5, 2, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -35, -35, -35, -35, -35, -35, -35, -35, 146, 147, 148, 149, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 2, 6, 138, 109, 436, 107, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 437, 3, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 30, 6, 61, 1, 5, 20, 12, 2, 16, 1, 4, 26, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -223, -223, -223, -223, 128, -223, 340, 438, 339, -223, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, -166, 111, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 9, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 439, 88, 250, 85, 86, 91, 441, 440, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 10, 6, 61, 1, 5, 23, 1, 8, 8, 6, 9, -241, -241, -241, 443, 444, -241, -241, -241, 442, -241, 60, 6, 5, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 6, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 445, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, -178, 5, 6, 61, 1, 5, 32, -169, -169, -169, -169, -169, 114, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 245, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 447, 446, 244, 247, 243, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 60, 6, 5, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 6, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 5, 6, 61, 1, 5, 32, -174, -174, -174, -174, -174, 6, 6, 61, 1, 5, 32, 23, -224, -224, -224, -224, -224, -224, 6, 6, 61, 1, 5, 32, 23, -225, -225, -225, -225, -225, -225, 108, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 1, 1, 3, 2, 1, 13, 3, 1, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -226, 448, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -226, -226, 104, 105, -226, 54, 53, 73, 74, 95, 101, 60, 84, -226, 88, 85, 86, 91, 67, -226, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, -214, 2, 58, 1, 449, 256, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 450, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 451, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 2, 58, 1, 452, 256, 2, 58, 1, 453, 256, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, -143, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 455, 454, -241, -241, -241, -241, 5, 6, 61, 1, 5, 40, -146, -146, -146, -146, -146, 1, 92, 456, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 457, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 92, -153, 1, 92, -154, 1, 92, -155, 1, 92, -156, 1, 92, -157, 1, 92, -158, 1, 92, -159, 1, 92, -160, 1, 92, -161, 1, 92, -162, 1, 92, -163, 1, 92, -164, 1, 92, -165, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 458, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 459, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -280, -280, -280, -280, -280, -280, -280, -280, 128, -280, -280, 460, -280, -280, -280, -280, -280, -280, -280, -280, -280, -280, 127, 98, 99, -280, -280, -280, -280, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -282, -282, -282, -282, -282, -282, -282, -282, 128, -282, -282, 461, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 127, 98, 99, -282, -282, -282, -282, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, 45, 1, 5, 60, 1, 1, 5, 4, 10, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -289, -289, -289, 162, -289, -289, 462, -289, -289, 128, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, 127, 98, 99, -289, -289, -289, -289, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 6, 6, 61, 1, 5, 19, 5, -115, -115, -115, -115, 463, -115, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 465, 464, -241, -241, -241, -241, 7, 6, 61, 1, 5, 1, 18, 5, -124, -124, -124, -124, 466, -124, -124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 467, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 3, 58, 1, 45, 255, 256, 468, 6, 6, 61, 1, 5, 19, 5, -127, -127, -127, -127, -127, -127, 5, 6, 61, 1, 5, 24, -111, -111, -111, -111, -111, 11, 6, 61, 1, 5, 1, 10, 1, 1, 6, 5, 29, -121, -121, -121, -121, -121, -121, -121, -121, -121, -121, -121, 11, 6, 61, 1, 5, 1, 10, 1, 1, 6, 5, 29, -122, -122, -122, -122, -122, -122, -122, -122, -122, -122, -122, 11, 6, 61, 1, 5, 1, 10, 1, 1, 6, 5, 29, -123, -123, -123, -123, -123, -123, -123, -123, -123, -123, -123, 5, 6, 61, 1, 5, 24, -116, -116, -116, -116, -116, 17, 38, 4, 1, 13, 1, 1, 1, 23, 1, 7, 13, 3, 2, 1, 2, 29, 3, 472, 474, 473, 290, 106, 291, 256, 471, 292, 101, 469, 88, 470, 475, 476, 87, 83, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -39, -39, -39, -39, -39, -39, -39, 477, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 6, 55, 5, 1, 2, 1, 1, 299, 107, 108, 478, 479, 298, 4, 60, 1, 2, 2, -59, -59, -59, -59, 109, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 5, 1, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 480, 3, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 482, 481, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 4, 60, 1, 2, 2, -64, -64, -64, -64, 5, 1, 5, 60, 2, 76, -4, -4, -4, -4, -4, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, -411, 127, -411, -411, -411, -411, -411, -411, -411, -411, 112, 113, -411, -411, -411, -411, -411, -411, 120, -411, -411, -411, -411, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, -412, 127, -412, -412, -412, -412, -412, -412, -412, -412, 112, 113, -412, -412, -412, -412, -412, -412, 120, -412, -412, -412, -412, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, -413, 127, -413, -413, -413, -413, -413, -413, -413, -413, -413, 113, -413, -413, -413, -413, -413, -413, 120, -413, -413, -413, -413, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, -414, 127, -414, -414, -414, -414, -414, -414, -414, -414, -414, 113, -414, -414, -414, -414, -414, -414, 120, -414, -414, -414, -414, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, -415, 127, -415, -415, -415, -415, -415, -415, 111, 110, 112, 113, -415, -415, -415, -415, -415, -415, 120, -415, -415, -415, -415, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, -416, 127, -416, -416, -416, -416, -416, -416, 111, 110, 112, 113, 114, -416, -416, -416, -416, -416, 120, -416, -416, 123, -416, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, -417, 127, -417, -417, -417, -417, -417, -417, 111, 110, 112, 113, 114, 115, -417, -417, -417, -417, 120, -417, -417, 123, -417, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, -418, 127, -418, -418, -418, -418, -418, -418, 111, 110, 112, 113, 114, 115, 116, -418, -418, -418, 120, -418, -418, 123, -418, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, -419, 127, -419, -419, -419, -419, -419, -419, 111, 110, 112, 113, 114, 115, 116, 117, -419, -419, 120, -419, -419, 123, -419, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, -420, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, -421, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, -427, 127, -427, -427, -427, -427, -427, -427, 111, 110, 112, 113, 114, 115, 116, 117, 118, -427, 120, 121, -427, 123, -427, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, -422, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, -423, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -428, -428, -428, -428, -428, -428, -428, -428, 128, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, -428, 125, 126, 127, 98, 99, -428, -428, -428, -428, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, -424, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, -425, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, -426, 127, -426, -426, -426, -426, -426, -426, 111, 110, 112, 113, 114, 115, 116, 117, 118, -426, 120, -426, -426, 123, -426, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, -429, 127, -429, -429, -429, -429, -429, -429, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, -429, 123, -429, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, -430, 127, -430, -430, -430, -430, -430, -430, 111, 110, 112, 113, 114, -430, -430, -430, -430, -430, 120, -430, -430, -430, -430, 22, 92, 1, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 483, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -260, -260, -260, -260, -260, -260, -260, -260, 128, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 484, -260, -260, 127, 98, 99, -260, -260, -260, -260, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -264, -264, -264, -264, -264, -264, -264, -264, 128, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 127, 98, 99, -264, -264, -264, -264, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 4, 95, 74, 2, 2, 486, 485, 487, 488, 11, 56, 1, 24, 1, 1, 7, 4, 10, 2, 29, 39, 154, 106, 156, 157, 155, 101, 489, 159, 158, 197, 196, 11, 56, 1, 24, 1, 1, 7, 4, 10, 2, 29, 39, 154, 106, 156, 157, 155, 101, 490, 159, 158, 197, 196, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 491, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -259, -259, -259, -259, -259, -259, -259, -259, 128, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 127, 98, 99, -259, -259, -259, -259, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -263, -263, -263, -263, -263, -263, -263, -263, 128, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 127, 98, 99, -263, -263, -263, -263, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, -213, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, 25, 87, 6, 14, 16, 1, 30, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 492, 128, 340, 493, 339, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 106, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 5, 2, 3, 11, 2, 1, 2, 2, 1, 11, 1, 1, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 494, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 495, 101, 60, 84, 88, 340, 85, 86, 91, 337, 339, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 87, 496, 1, 87, 497, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 9, 1, 1, 1, 1, 4, 3, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 498, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -188, 104, 105, 54, 53, 73, 74, 95, -188, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -47, -47, -47, -47, -47, -47, -47, 499, -47, -47, -47, -68, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 56, 11, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 7, 1, 1, 9, 8, 3, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, -182, 56, 11, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 7, 1, 1, 9, 8, 3, 3, 11, 2, 3, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, -183, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 500, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 501, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, -216, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 503, 502, -241, -241, -241, -241, 5, 6, 61, 1, 5, 55, -218, -218, -218, -218, -218, 110, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 4, 2, 1, 1, 3, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 345, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 344, 67, 43, 44, 92, 93, 249, 504, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 27, 6, 61, 1, 5, 20, 12, 23, 26, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -223, -223, -223, -223, 128, -223, -223, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, -101, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, 22, 87, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 505, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 506, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 127, -69, -69, -69, -69, -69, -69, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 507, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 508, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -72, -72, -72, -72, -72, -72, -72, -72, 128, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 125, 126, 127, 98, 99, -72, -72, -72, -72, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 509, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 510, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -75, -75, -75, -75, -75, -75, -75, -75, 128, -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 125, 126, 127, 98, 99, -75, -75, -75, -75, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 511, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -78, -78, -78, -78, -78, -78, -78, -78, 128, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 125, 126, 127, 98, 99, -78, -78, -78, -78, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 512, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 513, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -81, -81, -81, -81, -81, -81, -81, -81, 128, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 125, 126, 127, 98, 99, -81, -81, -81, -81, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 514, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 3, 131, 1, 1, 515, 92, 93, 18, 6, 50, 1, 10, 1, 13, 1, 1, 7, 7, 7, 1, 1, 1, 6, 15, 6, 1, -242, 154, 106, -242, -242, 156, 157, 155, 101, -242, 159, -242, 158, 153, -242, -242, 516, 152, 2, 6, 61, 517, 518, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 519, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 6, 6, 61, 1, 5, 55, 2, -204, -204, -204, -204, -204, -204, 56, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 3, 1, 4, 2, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 2, 6, 62, 109, 520, 10, 6, 61, 1, 5, 23, 1, 8, 8, 15, 2, -241, -241, -241, 367, 368, -241, -241, -241, -241, 521, 1, 68, 522, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, 127, -432, -432, -432, -432, -432, -432, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 523, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 524, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -85, -85, -85, -85, -85, -85, -85, -85, 128, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 125, 126, 127, 98, 99, -85, -85, -85, -85, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 525, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 526, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 2, 67, 10, 162, 527, 6, 56, 1, 10, 10, 5, 8, 528, 106, 162, 530, 529, 101, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 531, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 532, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 533, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 534, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 95, 535, 1, 171, 536, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 537, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 10, 56, 1, 24, 1, 1, 7, 14, 2, 29, 39, 154, 106, 156, 157, 155, 101, 159, 158, 197, 538, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 539, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 3, 161, 1, 1, 540, 396, 397, 4, 68, 83, 11, 1, 541, 542, 543, 397, 3, 68, 83, 12, -276, -276, -276, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 6, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 545, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 544, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 45, 1, 5, 60, 1, 1, 5, 4, 10, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -331, -331, -331, 162, -331, -331, 546, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 127, -331, -331, -331, -331, -331, -331, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 547, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 2, 6, 62, 549, 548, 2, 6, 62, -340, -340, 23, 6, 62, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -343, -343, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 6, 62, -344, -344, 7, 6, 62, 86, 1, 9, 1, 1, -345, -345, 129, 130, 131, 98, 99, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 550, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 57, 551, 22, 67, 26, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 552, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 1, 68, 553, 1, 68, 554, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 127, -251, -251, -251, -251, -251, -251, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 18, 6, 50, 1, 10, 1, 5, 8, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -197, 154, 106, -197, -197, -197, 156, 157, 155, 101, 159, 158, 153, 555, -197, -197, 151, 152, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, -190, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 1, 68, 556, 3, 55, 5, 1, 557, 107, 108, 3, 90, 96, 5, 559, 558, 222, 3, 55, 5, 1, 560, 107, 108, 1, 148, 561, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 563, 562, -241, -241, -241, -241, 5, 6, 61, 1, 5, 24, -356, -356, -356, -356, -356, 6, 56, 1, 10, 120, 1, 2, 423, 106, 422, 564, 421, 424, 6, 6, 61, 1, 5, 24, 92, -361, -361, -361, -361, -361, 565, 6, 6, 61, 1, 5, 24, 92, -363, -363, -363, -363, -363, 566, 2, 56, 1, 567, 106, 14, 1, 5, 60, 1, 1, 5, 32, 23, 16, 4, 6, 1, 10, 1, -367, -367, -367, -367, -367, -367, -367, -367, -367, 568, -367, -367, -367, -367, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 570, 569, -241, -241, -241, -241, 5, 6, 61, 1, 5, 24, -385, -385, -385, -385, -385, 6, 56, 1, 10, 123, 3, 2, 572, 106, 429, 431, 571, 428, 12, 6, 61, 1, 5, 1, 10, 1, 1, 6, 5, 29, 63, -390, -390, -390, -390, -121, -121, -121, -121, -121, -390, -121, 573, 6, 6, 61, 1, 5, 24, 92, -393, -393, -393, -393, -393, 574, 104, 6, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 576, 575, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 577, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 30, 1, 5, 60, 1, 1, 5, 20, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -380, -380, -380, -380, -380, -380, 128, -380, -380, -380, -380, -380, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 82, 8, 578, 101, 3, 55, 5, 1, 579, 107, 108, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 2, 6, 62, 109, 580, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 581, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, -167, 60, 6, 5, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 6, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 445, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, -179, 5, 6, 61, 1, 5, 32, -175, -175, -175, -175, -175, 2, 67, 38, 583, 582, 119, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 3, 6, 1, 1, 1, 1, 7, 3, 4, 7, 1, 1, 1, 2, 2, 1, 1, 4, 3, 1, 1, 3, 3, 1, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -242, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -242, -242, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, -242, 84, -242, 88, 250, 85, 86, 91, -242, 585, 584, 247, 243, 67, -242, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 4, 6, 61, 1, 37, 586, -176, -176, -176, 60, 6, 5, 36, 2, 1, 1, 1, 1, 1, 3, 3, 1, 6, 1, 1, 1, 3, 6, 11, 3, 11, 1, 1, 1, 2, 2, 1, 13, 4, 3, 1, 7, 1, 1, 1, 2, 1, 1, 3, 3, 3, 4, 5, 1, 2, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, 10, 6, 61, 1, 5, 23, 1, 8, 8, 6, 9, -241, -241, -241, 443, 444, -241, -241, -241, 587, -241, 110, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 441, 440, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 27, 6, 61, 1, 5, 20, 12, 23, 26, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -210, -210, -210, -210, 128, -210, -210, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, 22, 87, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 588, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 589, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, -236, 3, 6, 61, 46, 591, 592, 590, 35, 6, 32, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 11, 1, 1, 7, 7, 7, 1, 1, 1, 6, 2, 1, 12, 15, -242, 276, 267, 268, 271, 270, 269, 272, 273, 102, 103, 264, 106, 265, 256, 107, 108, -242, -242, 104, 105, 274, 275, 266, 101, -242, 159, -242, 158, 263, -242, 593, 262, -242, 83, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 594, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 595, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 26, 6, 61, 1, 5, 20, 20, 41, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -152, -152, -152, -152, 128, -152, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 596, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 597, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 598, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 599, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 600, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 3, 6, 61, 30, 602, 603, 601, 24, 6, 40, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 15, 8, 6, 4, 1, 1, 1, 1, 1, 1, 6, 15, -242, 288, 102, 103, 290, 106, 291, 256, 107, 108, -242, -242, 292, 605, -242, 604, 293, 285, 286, -242, 287, 294, -242, -242, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 606, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 607, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 22, 93, 12, 49, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 128, 608, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 609, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 10, 6, 61, 1, 5, 11, 1, 1, 11, 13, 16, -128, -128, -128, -128, -130, -130, -130, -128, 610, 141, 10, 6, 61, 1, 5, 11, 1, 1, 11, 13, 16, -129, -129, -129, -129, 612, 613, 614, -129, 611, 141, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -131, -131, -131, -131, -131, -131, -131, -131, -131, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -132, -132, -132, -132, -132, -132, -132, -132, -132, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -133, -133, -133, -133, -133, -133, -133, -133, -133, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -134, -134, -134, -134, -134, -134, -134, -134, -134, 4, 84, 2, 24, 16, 252, 253, 615, 141, 2, 110, 16, 616, 141, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 56, 1, 5, 54, 1, 2, 2, 1, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 4, 60, 1, 2, 2, -60, -60, -60, -60, 2, 6, 60, 109, 617, 107, 4, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 618, 3, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 4, 60, 1, 2, 2, -63, -63, -63, -63, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 619, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 621, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 620, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 622, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 623, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 624, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 625, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 95, 626, 1, 171, 627, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 628, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, 104, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 9, 1, 1, 1, 1, 4, 3, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 629, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -186, 104, 105, 54, 53, 73, 74, 95, -186, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 25, 68, 25, 14, 16, 1, 30, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 630, 128, 340, 493, 339, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 1, 68, 631, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, -96, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, -98, 23, 68, 19, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -187, -187, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 632, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 22, 87, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 633, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 634, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 3, 6, 61, 61, 636, 637, 635, 115, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 9, 1, 1, 1, 1, 7, 3, 4, 7, 1, 1, 1, 2, 2, 1, 1, 8, 4, 3, 1, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -242, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -242, -242, 104, 105, 54, 53, 73, 74, 95, 101, 60, -242, 84, -242, 88, 250, 85, 86, 91, -242, 638, 67, -242, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 503, 639, -241, -241, -241, -241, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, -103, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 640, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 127, -70, -70, -70, -70, -70, -70, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 641, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -73, -73, -73, -73, -73, -73, -73, -73, 128, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 125, 126, 127, 98, 99, -73, -73, -73, -73, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 642, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -76, -76, -76, -76, -76, -76, -76, -76, 128, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 125, 126, 127, 98, 99, -76, -76, -76, -76, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -79, -79, -79, -79, -79, -79, -79, -79, 128, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 125, 126, 127, 98, 99, -79, -79, -79, -79, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 643, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -82, -82, -82, -82, -82, -82, -82, -82, 128, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 125, 126, 127, 98, 99, -82, -82, -82, -82, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 108, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 7, 2, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 645, 4, 5, 6, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 162, 104, 105, 644, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 6, 6, 61, 1, 5, 55, 2, -199, -199, -199, -199, -199, -199, 11, 56, 1, 24, 1, 1, 7, 14, 2, 1, 27, 1, 154, 106, 156, 157, 155, 101, 159, 158, 153, 646, 152, 18, 6, 50, 1, 10, 1, 5, 8, 1, 1, 7, 14, 2, 1, 20, 1, 2, 4, 1, -197, 154, 106, -197, -197, -197, 156, 157, 155, 101, 159, 158, 153, 647, -197, -197, 151, 152, 27, 6, 61, 1, 5, 20, 35, 2, 24, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -203, -203, -203, -203, 128, -203, -203, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 56, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 3, 1, 4, 2, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 3, 131, 1, 1, 648, 92, 93, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, -406, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 649, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, -434, 127, -434, -434, -434, -434, -434, -434, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 650, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 67, 10, 162, 651, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 2, 67, 10, 162, 652, 2, 67, 10, 162, 653, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 25, 67, 10, 16, 5, 56, 1, 9, 1, 1, 4, 30, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 654, 128, 655, 125, 126, 127, 98, 99, 656, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 24, 67, 10, 16, 5, 56, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 657, 128, 658, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 24, 67, 10, 16, 5, 56, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 659, 128, 660, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 24, 67, 10, 16, 5, 56, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 661, 128, 662, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 663, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 664, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 665, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 4, 95, 74, 2, 2, -328, -328, -328, -328, 26, 73, 20, 2, 59, 1, 9, 1, 1, 3, 2, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -326, 128, -326, 125, 126, 127, 98, 99, -326, -326, -326, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 4, 68, 83, 11, 1, 666, 667, 543, 397, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 2, 67, 10, 162, 668, 3, 68, 83, 12, -277, -277, -277, 3, 67, 6, 4, 162, 670, 669, 23, 67, 6, 20, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -227, -227, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 45, 1, 5, 60, 1, 1, 5, 4, 10, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -335, -335, -335, 162, -335, -335, 671, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 127, -335, -335, -335, -335, -335, -335, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 110, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 7, 1, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 2, 1, 1, 1, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, -342, 403, 404, 405, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -342, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 672, 406, 407, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 23, 6, 62, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -346, -346, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 2, 6, 62, -347, -347, 109, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 403, 404, 405, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 43, 44, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 673, 402, 406, 407, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 367, 368, -241, -241, -241, 674, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 1, 148, 675, 6, 56, 1, 10, 120, 1, 2, 423, 106, 422, 676, 421, 424, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, 3, 55, 5, 1, 677, 107, 108, 3, 6, 61, 30, 679, 680, 678, 11, 6, 50, 1, 10, 1, 29, 8, 8, 15, 60, 2, -242, 423, 106, -242, -242, -242, -242, -242, -242, 681, 424, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 563, 682, -241, -241, -241, -241, 2, 56, 1, 683, 106, 2, 56, 1, 684, 106, 1, 148, -366, 3, 55, 5, 1, 685, 107, 108, 3, 6, 61, 30, 687, 688, 686, 11, 6, 50, 1, 10, 1, 29, 8, 8, 15, 62, 5, -242, 572, 106, -242, -242, -242, -242, -242, -242, 431, 689, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 570, 690, -241, -241, -241, -241, 6, 6, 61, 1, 5, 24, 92, -390, -390, -390, -390, -390, 573, 3, 56, 1, 133, 691, 106, 692, 2, 56, 1, 693, 106, 30, 1, 5, 60, 1, 1, 5, 20, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -373, -373, -373, -373, -373, -373, 128, -373, -373, -373, -373, -373, 127, -373, -373, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 694, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 695, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 68, 696, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -382, -382, -382, -382, -382, -382, -382, -382, -382, -382, -382, -382, -382, 1, 144, 697, 22, 93, 12, 49, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 128, 698, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, 114, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 5, 1, 2, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 245, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 447, 699, 244, 247, 243, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 5, 6, 61, 1, 5, 32, -170, -170, -170, -170, -170, 113, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 1, 1, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 1, 1, 1, 2, 2, 1, 9, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, -177, -177, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, -177, 88, 250, 85, 86, 91, 441, 440, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 112, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 3, 6, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 5, 3, 1, 1, 3, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 246, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 447, 700, 247, 243, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 2, 67, 1, 583, 701, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 702, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, 28, 38, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 1, 11, 1, 1, 7, 14, 2, 1, 8, 1, 27, 276, 267, 268, 271, 270, 269, 272, 273, 102, 103, 264, 106, 265, 256, 107, 108, 104, 105, 274, 275, 266, 101, 159, 158, 263, 703, 262, 83, 34, 6, 32, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 3, 8, 1, 1, 7, 14, 2, 1, 6, 1, 1, 1, 27, -145, 276, 267, 268, 271, 270, 269, 272, 273, 102, 103, 264, 106, 265, 256, 107, 108, -145, -145, 104, 105, -145, 274, 275, 266, 101, 159, 158, 263, -145, 704, 261, 262, 83, 5, 6, 61, 1, 5, 40, -147, -147, -147, -147, -147, 26, 6, 61, 1, 5, 20, 20, 41, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -150, -150, -150, -150, 128, -150, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 705, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 2, 67, 10, 162, 706, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, 127, -281, -281, -281, -281, -281, -281, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 127, -283, -283, -283, -283, -283, -283, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 26, 6, 61, 1, 5, 20, 4, 57, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -117, -117, -117, -117, 707, -117, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 708, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, -109, 17, 46, 8, 1, 1, 1, 1, 1, 1, 1, 22, 8, 10, 1, 1, 1, 2, 1, 288, 102, 103, 290, 106, 291, 256, 107, 108, 292, 605, 709, 293, 285, 286, 287, 294, 23, 6, 40, 8, 1, 1, 1, 1, 1, 1, 1, 6, 1, 5, 10, 8, 6, 3, 1, 1, 1, 1, 2, 1, -110, 288, 102, 103, 290, 106, 291, 256, 107, 108, -110, -110, -110, 292, 605, -110, 710, 289, 293, 285, 286, 287, 294, 5, 6, 61, 1, 5, 24, -112, -112, -112, -112, -112, 6, 6, 61, 1, 5, 19, 5, -115, -115, -115, -115, 711, -115, 26, 6, 61, 1, 5, 20, 4, 57, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -119, -119, -119, -119, 128, -119, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 712, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 6, 6, 61, 1, 5, 19, 5, -125, -125, -125, -125, -125, -125, 22, 93, 12, 49, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 128, 713, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -137, -137, -137, -137, -137, -137, -137, -137, -137, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -138, -138, -138, -138, -138, -138, -138, -138, -138, 2, 58, 1, 714, 256, 2, 58, 1, 715, 256, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 716, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 717, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -135, -135, -135, -135, -135, -135, -135, -135, -135, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -136, -136, -136, -136, -136, -136, -136, -136, -136, 4, 60, 1, 2, 2, -61, -61, -61, -61, 2, 6, 62, 109, 718, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, -431, 127, -431, -431, -431, -431, -431, -431, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 719, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -262, -262, -262, -262, -262, -262, -262, -262, 128, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 127, 98, 99, -262, -262, -262, -262, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 720, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 127, -308, -308, -308, 721, -308, -308, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, 722, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, 127, -313, -313, -313, -313, -313, -313, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -317, -317, -317, -317, -317, -317, -317, -317, -317, -317, -317, 723, -317, -317, -317, -317, -317, -317, -317, -317, -317, -317, 127, -317, -317, -317, -317, -317, -317, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -321, -321, -321, -321, -321, -321, -321, -321, -321, -321, -321, 724, -321, -321, -321, -321, -321, -321, -321, -321, -321, -321, 127, -321, -321, -321, -321, -321, -321, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 725, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 726, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, 127, -324, -324, -324, -324, -324, -324, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 68, 19, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -185, -185, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 1, 87, 727, 1, 87, 728, 22, 87, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -67, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 729, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 54, 1, 5, 54, 1, 5, 1, 1, 3, 2, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, -217, 108, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 4, 2, 1, 1, 3, 4, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 730, 67, 43, 44, 92, 93, 249, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 110, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 1, 2, 2, 1, 9, 4, 4, 2, 1, 1, 3, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 346, 248, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 345, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 250, 85, 86, 91, 344, 67, 43, 44, 92, 93, 249, 731, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 45, 46, 69, 47, 48, 49, 51, 52, 5, 6, 61, 1, 5, 55, -219, -219, -219, -219, -219, 3, 6, 61, 1, 636, 637, 732, 1, 87, 733, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, -191, 9, 1, 5, 60, 1, 1, 5, 32, 23, 16, -193, -193, -193, -193, -193, -193, -193, -193, -193, 6, 6, 61, 1, 5, 55, 2, -200, -200, -200, -200, -200, -200, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 367, 734, -241, -241, -241, -241, 2, 67, 10, 162, 644, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, -433, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 3, 7, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, -291, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 735, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 736, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 737, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, -300, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 738, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 739, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 24, 67, 10, 16, 5, 56, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 740, 128, 741, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 24, 67, 10, 16, 5, 56, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 742, 128, 743, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 2, 67, 10, 162, 744, 1, 68, 745, 4, 6, 62, 83, 12, 746, -278, -278, -278, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 747, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 2, 6, 62, -341, -341, 2, 6, 62, 549, 748, 2, 67, 10, 162, 749, 3, 55, 5, 1, 750, 107, 108, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 563, 751, -241, -241, -241, -241, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, 1, 148, 752, 4, 56, 1, 131, 2, 423, 106, 753, 424, 6, 56, 1, 10, 120, 1, 2, 423, 106, 422, 754, 421, 424, 5, 6, 61, 1, 5, 24, -357, -357, -357, -357, -357, 3, 6, 61, 1, 679, 680, 755, 5, 6, 61, 1, 5, 24, -362, -362, -362, -362, -362, 5, 6, 61, 1, 5, 24, -364, -364, -364, -364, -364, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, -383, 14, 1, 5, 60, 1, 1, 5, 32, 23, 16, 4, 6, 1, 10, 1, -368, -368, -368, -368, -368, -368, -368, -368, -368, 756, -368, -368, -368, -368, 4, 56, 1, 133, 5, 572, 106, 431, 757, 6, 56, 1, 10, 123, 3, 2, 572, 106, 429, 431, 758, 428, 5, 6, 61, 1, 5, 24, -386, -386, -386, -386, -386, 3, 6, 61, 1, 687, 688, 759, 5, 6, 61, 1, 5, 24, -391, -391, -391, -391, -391, 5, 6, 61, 1, 5, 24, -392, -392, -392, -392, -392, 5, 6, 61, 1, 5, 24, -394, -394, -394, -394, -394, 30, 1, 5, 60, 1, 1, 5, 20, 12, 23, 16, 10, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -374, -374, -374, -374, -374, -374, 128, -374, -374, -374, -374, -374, 127, -374, -374, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 760, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, -184, 10, 6, 61, 1, 5, 23, 1, 8, 8, 6, 9, -241, -241, -241, 443, 444, -241, -241, -241, 761, -241, 5, 6, 61, 1, 5, 32, -171, -171, -171, -171, -171, 5, 6, 61, 1, 5, 32, -172, -172, -172, -172, -172, 1, 87, 762, 5, 6, 61, 1, 5, 40, -148, -148, -148, -148, -148, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 455, 763, -241, -241, -241, -241, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 764, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 14, 39, 17, 1, 24, 1, 1, 7, 4, 5, 5, 2, 29, 37, 2, 327, 154, 106, 156, 157, 155, 101, 765, 766, 84, 158, 197, 326, 196, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 767, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 5, 6, 61, 1, 5, 24, -113, -113, -113, -113, -113, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 465, 768, -241, -241, -241, -241, 103, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 6, 2, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 769, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 600, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 770, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 6, 6, 61, 1, 5, 19, 5, -126, -126, -126, -126, -126, -126, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -139, -139, -139, -139, -139, -139, -139, -139, -139, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -140, -140, -140, -140, -140, -140, -140, -140, -140, 22, 87, 6, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 771, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 772, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 66, 773, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 774, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 775, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 776, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 777, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 778, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 779, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -315, -315, -315, -315, -315, -315, -315, -315, -315, -315, -315, 780, -315, -315, -315, -315, -315, -315, -315, -315, -315, -315, 127, -315, -315, -315, -315, -315, -315, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -319, -319, -319, -319, -319, -319, -319, -319, -319, -319, -319, 781, -319, -319, -319, -319, -319, -319, -319, -319, -319, -319, 127, -319, -319, -319, -319, -319, -319, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, 1, 87, 782, 5, 6, 61, 1, 5, 55, -220, -220, -220, -220, -220, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 503, 783, -241, -241, -241, -241, 5, 6, 61, 1, 5, 55, -221, -221, -221, -221, -221, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, -104, 3, 6, 61, 1, 517, 518, 784, 24, 67, 10, 16, 61, 1, 9, 1, 1, 4, 30, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 785, 128, 125, 126, 127, 98, 99, 786, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 24, 67, 10, 16, 5, 56, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 787, 128, 788, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 789, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 790, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 791, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 792, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, -302, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 793, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 68, 794, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 3, 68, 83, 12, -279, -279, -279, 23, 67, 6, 20, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -228, -228, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, -189, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, -354, 3, 6, 61, 30, 679, 680, 795, 3, 55, 5, 1, 796, 107, 108, 5, 6, 61, 1, 5, 24, -358, -358, -358, -358, -358, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 563, 797, -241, -241, -241, -241, 5, 6, 61, 1, 5, 24, -359, -359, -359, -359, -359, 3, 55, 5, 1, 798, 107, 108, 5, 6, 61, 1, 5, 24, -387, -387, -387, -387, -387, 9, 6, 61, 1, 5, 23, 1, 8, 8, 15, -241, -241, -241, 570, 799, -241, -241, -241, -241, 5, 6, 61, 1, 5, 24, -388, -388, -388, -388, -388, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, 2, 67, 1, 583, 800, 53, 1, 5, 54, 1, 5, 1, 1, 5, 11, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 3, 6, 61, 1, 591, 592, 801, 5, 6, 61, 1, 5, 40, -151, -151, -151, -151, -151, 4, 95, 74, 2, 2, 802, 485, 487, 488, 11, 56, 1, 24, 1, 1, 7, 4, 10, 2, 29, 39, 154, 106, 156, 157, 155, 101, 803, 159, 158, 197, 196, 5, 6, 61, 1, 5, 24, -118, -118, -118, -118, -118, 3, 6, 61, 1, 602, 603, 804, 26, 6, 61, 1, 5, 20, 4, 57, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -117, -117, -117, -117, 128, -117, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 5, 6, 61, 1, 5, 24, -120, -120, -120, -120, -120, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -141, -141, -141, -141, -141, -141, -141, -141, -141, 22, 68, 25, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 805, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 4, 60, 1, 2, 2, -62, -62, -62, -62, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 127, -309, -309, -309, 806, -309, -309, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -310, -310, -310, -310, -310, -310, -310, -310, -310, -310, -310, 807, -310, -310, -310, -310, -310, -310, -310, -310, -310, -310, 127, -310, -310, -310, -310, -310, -310, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, 127, -314, -314, -314, -314, -314, -314, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, -318, 127, -318, -318, -318, -318, -318, -318, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, -322, 127, -322, -322, -322, -322, -322, -322, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 808, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 809, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 62, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 3, 24, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, -100, 3, 6, 61, 1, 636, 637, 810, 6, 6, 61, 1, 5, 55, 2, -201, -201, -201, -201, -201, -201, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, -292, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 811, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, -293, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 812, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, -301, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 813, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 814, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 1, 148, 815, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, -353, 3, 6, 61, 1, 679, 680, 816, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, -384, 3, 6, 61, 1, 687, 688, 817, 5, 6, 61, 1, 5, 32, -173, -173, -173, -173, -173, 5, 6, 61, 1, 5, 40, -149, -149, -149, -149, -149, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 818, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 95, 819, 5, 6, 61, 1, 5, 24, -114, -114, -114, -114, -114, 1, 87, 820, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 821, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 822, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, 127, -316, -316, -316, -316, -316, -316, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, -320, 127, -320, -320, -320, -320, -320, -320, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 5, 6, 61, 1, 5, 55, -222, -222, -222, -222, -222, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 823, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 23, 67, 10, 16, 61, 1, 9, 1, 1, 34, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 162, 824, 128, 125, 126, 127, 98, 99, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, -299, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 3, 55, 5, 1, 825, 107, 108, 5, 6, 61, 1, 5, 24, -360, -360, -360, -360, -360, 5, 6, 61, 1, 5, 24, -389, -389, -389, -389, -389, 45, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -313, -313, -313, -313, -313, 828, -313, -313, -313, -313, 826, -313, 827, -313, -313, -313, -313, -313, -313, -313, -313, -313, -313, 127, -313, -313, -313, -313, -313, -313, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 829, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 9, 6, 61, 1, 5, 11, 1, 1, 11, 29, -142, -142, -142, -142, -142, -142, -142, -142, -142, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, -311, 127, -311, -311, -311, -311, -311, -311, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 44, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, -312, 127, -312, -312, -312, -312, -312, -312, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, -294, 43, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 2, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, -295, 13, 1, 5, 60, 1, 1, 5, 32, 23, 16, 10, 1, 10, 1, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, 1, 97, 830, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 831, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 7, 6, 61, 1, 29, 8, 8, 15, -242, -242, -242, -242, -242, -242, -242, 45, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -315, -315, -315, -315, -315, 828, -315, -315, -315, -315, 832, -315, 833, -315, -315, -315, -315, -315, -315, -315, -315, -315, -315, 127, -315, -315, -315, -315, -315, -315, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, -105, 45, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -314, -314, -314, -314, -314, 828, -314, -314, -314, -314, 834, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, -314, 127, -314, -314, -314, -314, -314, -314, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 1, 97, 835, 102, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 8, 1, 9, 1, 1, 1, 1, 7, 3, 11, 2, 3, 2, 1, 13, 4, 2, 1, 1, 7, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 3, 4, 4, 1, 1, 1, 1, 4, 3, 2, 1, 5, 1, 8, 4, 1, 1, 1, 1, 1, 3, 1, 836, 165, 29, 30, 31, 32, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 75, 76, 77, 78, 79, 80, 81, 82, 102, 103, 94, 106, 107, 108, 104, 105, 54, 53, 73, 74, 95, 101, 60, 84, 88, 85, 86, 91, 67, 169, 170, 92, 93, 87, 89, 90, 83, 70, 65, 66, 55, 96, 56, 97, 57, 61, 58, 98, 99, 59, 100, 50, 62, 68, 63, 64, 71, 72, 171, 172, 173, 47, 48, 49, 51, 52, 1, 97, 837, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, 45, 1, 5, 60, 1, 1, 5, 14, 5, 1, 2, 1, 1, 1, 7, 2, 6, 11, 4, 2, 14, 7, 3, 1, 9, 1, 1, 3, 1, 1, 2, 27, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -316, -316, -316, -316, -316, 828, -316, -316, -316, -316, 838, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, 127, -316, -316, -316, -316, -316, -316, 111, 110, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, -106, 1, 97, 839, 58, 1, 5, 54, 1, 5, 1, 1, 5, 1, 1, 1, 2, 1, 5, 1, 1, 1, 2, 3, 1, 2, 2, 1, 7, 2, 6, 11, 2, 2, 2, 7, 7, 7, 3, 1, 10, 1, 3, 1, 1, 2, 27, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, -108], t = [], p = 0, n, o, k, a;
3028
3191
  while (p < d.length) {
3029
3192
  n = d[p++];
3030
3193
  o = {};
@@ -3038,7 +3201,7 @@
3038
3201
  }
3039
3202
  return t;
3040
3203
  })(),
3041
- ruleTable: [0, 0, 3, 0, 3, 1, 4, 1, 4, 3, 4, 2, 5, 1, 5, 1, 5, 1, 9, 1, 9, 1, 9, 1, 9, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 47, 1, 47, 1, 57, 1, 59, 1, 56, 1, 56, 3, 63, 1, 63, 2, 65, 3, 65, 5, 65, 2, 65, 1, 49, 1, 49, 3, 73, 3, 73, 1, 17, 3, 17, 4, 17, 5, 18, 3, 19, 3, 19, 4, 19, 5, 20, 3, 20, 4, 20, 3, 21, 3, 21, 4, 21, 5, 22, 3, 22, 4, 22, 3, 22, 2, 22, 3, 22, 2, 37, 1, 37, 1, 37, 1, 82, 1, 82, 1, 82, 3, 82, 3, 82, 4, 82, 6, 82, 4, 82, 6, 82, 4, 82, 5, 82, 7, 82, 3, 82, 3, 82, 4, 82, 6, 84, 10, 84, 12, 84, 11, 84, 13, 84, 4, 102, 0, 102, 1, 102, 3, 102, 4, 102, 6, 103, 1, 103, 1, 103, 3, 103, 5, 103, 3, 103, 5, 105, 1, 105, 1, 105, 1, 93, 1, 93, 3, 93, 4, 93, 1, 104, 2, 104, 2, 110, 1, 110, 1, 110, 1, 110, 1, 110, 1, 110, 2, 110, 2, 110, 2, 110, 2, 110, 3, 110, 3, 110, 4, 110, 6, 46, 2, 46, 4, 116, 0, 116, 1, 116, 3, 116, 4, 116, 6, 117, 3, 117, 5, 117, 2, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 118, 1, 83, 2, 83, 3, 83, 4, 120, 1, 120, 3, 120, 4, 120, 4, 120, 6, 122, 1, 122, 2, 121, 1, 121, 2, 119, 1, 119, 2, 124, 1, 124, 2, 125, 1, 125, 1, 40, 5, 90, 3, 90, 2, 90, 2, 90, 1, 33, 6, 33, 3, 15, 5, 15, 2, 35, 5, 35, 2, 133, 1, 133, 1, 129, 0, 129, 1, 129, 3, 129, 4, 129, 6, 136, 1, 136, 3, 136, 2, 136, 1, 137, 1, 137, 1, 137, 1, 137, 1, 138, 2, 41, 2, 41, 2, 41, 3, 41, 2, 41, 2, 112, 2, 112, 4, 140, 1, 140, 3, 140, 4, 140, 4, 140, 6, 123, 1, 123, 1, 123, 1, 123, 1, 141, 1, 141, 3, 43, 1, 43, 1, 85, 2, 44, 3, 44, 4, 44, 6, 45, 3, 45, 3, 79, 2, 79, 3, 39, 3, 39, 5, 98, 0, 98, 1, 10, 2, 10, 4, 10, 1, 31, 2, 31, 4, 32, 1, 32, 2, 32, 4, 32, 3, 151, 3, 151, 5, 154, 3, 154, 5, 23, 1, 23, 3, 23, 1, 23, 3, 23, 3, 23, 7, 23, 5, 23, 3, 23, 3, 24, 2, 24, 3, 24, 4, 24, 5, 159, 3, 159, 3, 159, 2, 27, 5, 27, 7, 27, 4, 27, 6, 163, 1, 163, 2, 164, 3, 164, 4, 166, 2, 166, 4, 166, 2, 166, 4, 25, 2, 25, 2, 25, 2, 25, 1, 169, 2, 169, 2, 169, 3, 26, 5, 26, 7, 26, 7, 26, 9, 26, 9, 26, 5, 26, 7, 26, 6, 26, 8, 26, 5, 26, 7, 26, 6, 26, 8, 26, 5, 26, 7, 26, 3, 26, 5, 26, 5, 26, 7, 26, 7, 26, 9, 26, 9, 26, 5, 26, 7, 26, 6, 26, 8, 26, 5, 26, 7, 26, 6, 26, 8, 26, 5, 26, 7, 26, 3, 26, 5, 176, 1, 176, 3, 96, 1, 96, 3, 28, 1, 28, 2, 28, 3, 28, 4, 28, 2, 28, 3, 28, 4, 28, 5, 34, 3, 29, 4, 29, 6, 181, 1, 181, 3, 181, 2, 182, 1, 182, 1, 182, 1, 182, 2, 182, 2, 30, 2, 12, 2, 12, 4, 12, 4, 12, 5, 12, 7, 12, 6, 12, 9, 189, 1, 189, 3, 189, 4, 189, 4, 189, 6, 190, 1, 190, 3, 190, 1, 190, 3, 187, 1, 188, 3, 13, 3, 13, 5, 13, 2, 13, 2, 13, 2, 13, 2, 13, 4, 13, 5, 13, 6, 13, 2, 13, 2, 13, 2, 13, 2, 13, 3, 13, 5, 13, 4, 13, 5, 13, 7, 195, 1, 195, 3, 195, 4, 195, 4, 195, 6, 197, 1, 197, 3, 197, 3, 197, 1, 197, 3, 36, 2, 36, 2, 36, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 4, 16, 2, 16, 2, 16, 2, 16, 2, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 5, 16, 3, 16, 5, 16, 4, 42, 2],
3204
+ ruleTable: [0, 0, 3, 0, 3, 1, 4, 1, 4, 3, 4, 2, 5, 1, 5, 1, 5, 1, 9, 1, 9, 1, 9, 1, 9, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 46, 1, 46, 1, 56, 1, 58, 1, 55, 1, 55, 3, 62, 1, 62, 2, 64, 3, 64, 5, 64, 2, 64, 1, 48, 1, 48, 3, 72, 3, 72, 1, 17, 3, 17, 4, 17, 5, 18, 3, 18, 4, 18, 5, 19, 3, 19, 4, 19, 3, 20, 3, 20, 4, 20, 5, 21, 3, 21, 4, 21, 3, 21, 2, 21, 3, 21, 2, 36, 1, 36, 1, 36, 1, 80, 1, 80, 1, 80, 3, 80, 3, 80, 4, 80, 6, 80, 4, 80, 6, 80, 4, 80, 5, 80, 7, 80, 3, 80, 3, 80, 4, 80, 6, 82, 10, 82, 12, 82, 11, 82, 13, 82, 4, 100, 0, 100, 1, 100, 3, 100, 4, 100, 6, 101, 1, 101, 1, 101, 3, 101, 5, 101, 3, 101, 5, 103, 1, 103, 1, 103, 1, 91, 1, 91, 3, 91, 4, 91, 1, 102, 2, 102, 2, 108, 1, 108, 1, 108, 1, 108, 1, 108, 1, 108, 2, 108, 2, 108, 2, 108, 2, 108, 3, 108, 3, 108, 4, 108, 6, 45, 2, 45, 4, 114, 0, 114, 1, 114, 3, 114, 4, 114, 6, 115, 3, 115, 5, 115, 2, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 81, 2, 81, 3, 81, 4, 118, 1, 118, 3, 118, 4, 118, 4, 118, 6, 120, 1, 120, 2, 119, 1, 119, 2, 117, 1, 117, 2, 122, 1, 122, 2, 123, 1, 123, 1, 39, 5, 88, 3, 88, 2, 88, 2, 88, 1, 32, 6, 32, 3, 15, 5, 15, 2, 34, 5, 34, 2, 131, 1, 131, 1, 127, 0, 127, 1, 127, 3, 127, 4, 127, 6, 134, 1, 134, 3, 134, 2, 134, 1, 135, 1, 135, 1, 135, 1, 135, 1, 136, 2, 40, 2, 40, 2, 40, 3, 40, 2, 40, 2, 110, 2, 110, 4, 138, 1, 138, 3, 138, 4, 138, 4, 138, 6, 121, 1, 121, 1, 121, 1, 121, 1, 139, 1, 139, 3, 42, 1, 42, 1, 83, 2, 43, 3, 43, 4, 43, 6, 44, 3, 44, 3, 77, 2, 77, 3, 38, 3, 38, 5, 96, 0, 96, 1, 10, 2, 10, 4, 10, 1, 30, 2, 30, 4, 31, 1, 31, 2, 31, 4, 31, 3, 149, 3, 149, 5, 152, 3, 152, 5, 22, 1, 22, 3, 22, 1, 22, 3, 22, 3, 22, 7, 22, 5, 22, 3, 22, 3, 23, 2, 23, 3, 23, 4, 23, 5, 157, 3, 157, 3, 157, 2, 26, 5, 26, 7, 26, 4, 26, 6, 161, 1, 161, 2, 162, 3, 162, 4, 164, 2, 164, 4, 164, 2, 164, 4, 24, 2, 24, 2, 24, 2, 24, 1, 167, 2, 167, 2, 167, 3, 25, 5, 25, 7, 25, 7, 25, 9, 25, 9, 25, 5, 25, 7, 25, 6, 25, 8, 25, 5, 25, 7, 25, 6, 25, 8, 25, 5, 25, 7, 25, 3, 25, 5, 25, 5, 25, 7, 25, 7, 25, 9, 25, 9, 25, 5, 25, 7, 25, 6, 25, 8, 25, 5, 25, 7, 25, 6, 25, 8, 25, 5, 25, 7, 25, 3, 25, 5, 174, 1, 174, 3, 94, 1, 94, 3, 27, 1, 27, 2, 27, 3, 27, 4, 27, 2, 27, 3, 27, 4, 27, 5, 33, 3, 28, 4, 28, 6, 179, 1, 179, 3, 179, 2, 180, 1, 180, 1, 180, 1, 180, 2, 180, 2, 29, 2, 12, 2, 12, 4, 12, 4, 12, 5, 12, 7, 12, 6, 12, 9, 187, 1, 187, 3, 187, 4, 187, 4, 187, 6, 188, 1, 188, 3, 188, 1, 188, 3, 185, 1, 186, 3, 13, 3, 13, 5, 13, 2, 13, 2, 13, 2, 13, 2, 13, 4, 13, 5, 13, 6, 13, 2, 13, 2, 13, 2, 13, 2, 13, 3, 13, 5, 13, 4, 13, 5, 13, 7, 193, 1, 193, 3, 193, 4, 193, 4, 193, 6, 195, 1, 195, 3, 195, 3, 195, 1, 195, 3, 35, 2, 35, 2, 35, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2, 16, 4, 16, 2, 16, 2, 16, 2, 16, 2, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 5, 16, 3, 16, 5, 16, 4, 41, 2],
3042
3205
  ruleActions: (rule, vals, locs, shared) => {
3043
3206
  const $ = vals;
3044
3207
  const $0 = vals.length - 1;
@@ -3048,34 +3211,34 @@
3048
3211
  case 2:
3049
3212
  return ["program", ...$[$0]];
3050
3213
  case 3:
3051
- case 60:
3052
- case 113:
3053
- case 148:
3054
- case 176:
3055
- case 180:
3056
- case 200:
3057
- case 220:
3058
- case 229:
3059
- case 278:
3060
- case 329:
3061
- case 342:
3062
- case 358:
3063
- case 387:
3214
+ case 59:
3215
+ case 111:
3216
+ case 146:
3217
+ case 174:
3218
+ case 178:
3219
+ case 198:
3220
+ case 218:
3221
+ case 227:
3222
+ case 276:
3223
+ case 327:
3224
+ case 340:
3225
+ case 356:
3226
+ case 385:
3064
3227
  return [$[$0]];
3065
3228
  case 4:
3066
- case 114:
3067
- case 149:
3068
- case 201:
3069
- case 221:
3070
- case 230:
3071
- case 343:
3072
- case 359:
3073
- case 388:
3229
+ case 112:
3230
+ case 147:
3231
+ case 199:
3232
+ case 219:
3233
+ case 228:
3234
+ case 341:
3235
+ case 357:
3236
+ case 386:
3074
3237
  return [...$[$0 - 2], $[$0]];
3075
3238
  case 5:
3076
- case 62:
3077
- case 183:
3078
- case 344:
3239
+ case 61:
3240
+ case 181:
3241
+ case 342:
3079
3242
  return $[$0 - 1];
3080
3243
  case 6:
3081
3244
  case 7:
@@ -3119,7 +3282,7 @@
3119
3282
  case 45:
3120
3283
  case 46:
3121
3284
  case 47:
3122
- case 48:
3285
+ case 50:
3123
3286
  case 51:
3124
3287
  case 52:
3125
3288
  case 53:
@@ -3127,581 +3290,574 @@
3127
3290
  case 55:
3128
3291
  case 56:
3129
3292
  case 57:
3130
- case 58:
3293
+ case 64:
3131
3294
  case 65:
3132
- case 66:
3295
+ case 87:
3296
+ case 88:
3133
3297
  case 89:
3134
3298
  case 90:
3135
3299
  case 91:
3136
- case 92:
3137
- case 93:
3138
- case 118:
3300
+ case 116:
3301
+ case 121:
3302
+ case 122:
3139
3303
  case 123:
3140
3304
  case 124:
3141
- case 125:
3142
- case 126:
3143
- case 129:
3305
+ case 127:
3306
+ case 130:
3307
+ case 131:
3144
3308
  case 132:
3145
3309
  case 133:
3146
3310
  case 134:
3147
- case 135:
3148
- case 136:
3311
+ case 153:
3312
+ case 154:
3149
3313
  case 155:
3150
3314
  case 156:
3151
3315
  case 157:
3152
3316
  case 158:
3153
- case 159:
3154
- case 160:
3317
+ case 161:
3318
+ case 162:
3155
3319
  case 163:
3156
3320
  case 164:
3157
3321
  case 165:
3158
- case 166:
3159
- case 167:
3160
- case 171:
3161
- case 197:
3162
- case 198:
3163
- case 204:
3322
+ case 169:
3323
+ case 195:
3324
+ case 196:
3325
+ case 202:
3326
+ case 206:
3327
+ case 207:
3164
3328
  case 208:
3165
3329
  case 209:
3166
- case 210:
3167
- case 211:
3330
+ case 223:
3331
+ case 224:
3168
3332
  case 225:
3169
- case 226:
3170
- case 227:
3171
- case 243:
3172
- case 244:
3333
+ case 241:
3334
+ case 242:
3335
+ case 256:
3173
3336
  case 258:
3174
- case 260:
3175
- case 289:
3176
- case 327:
3337
+ case 287:
3338
+ case 325:
3339
+ case 343:
3340
+ case 344:
3177
3341
  case 345:
3178
- case 346:
3179
- case 347:
3342
+ case 361:
3180
3343
  case 363:
3181
3344
  case 365:
3182
- case 367:
3183
- case 392:
3184
- case 395:
3345
+ case 390:
3346
+ case 393:
3185
3347
  return $[$0];
3186
- case 49:
3187
- case 162:
3348
+ case 48:
3349
+ case 160:
3188
3350
  return "undefined";
3189
- case 50:
3190
- case 161:
3351
+ case 49:
3352
+ case 159:
3191
3353
  return "null";
3192
- case 59:
3354
+ case 58:
3193
3355
  return ["str", ...$[$0 - 1]];
3194
- case 61:
3195
- case 177:
3196
- case 181:
3197
- case 279:
3356
+ case 60:
3357
+ case 175:
3358
+ case 179:
3359
+ case 277:
3198
3360
  return [...$[$0 - 1], $[$0]];
3199
- case 63:
3200
- case 219:
3201
- case 223:
3202
- case 361:
3203
- case 390:
3361
+ case 62:
3362
+ case 217:
3363
+ case 221:
3364
+ case 359:
3365
+ case 388:
3204
3366
  return $[$0 - 2];
3205
- case 64:
3367
+ case 63:
3206
3368
  return "";
3207
- case 67:
3369
+ case 66:
3208
3370
  return ["regex", $[$0 - 1]];
3209
- case 68:
3371
+ case 67:
3210
3372
  return ["regex-index", $[$0 - 2], $[$0]];
3211
- case 69:
3373
+ case 68:
3212
3374
  return ["regex-index", $[$0], null];
3213
- case 70:
3214
- case 121:
3375
+ case 69:
3376
+ case 119:
3215
3377
  return ["=", $[$0 - 2], $[$0]];
3216
- case 71:
3378
+ case 70:
3217
3379
  return ["=", $[$0 - 3], $[$0]];
3218
- case 72:
3219
- case 122:
3380
+ case 71:
3381
+ case 120:
3220
3382
  return ["=", $[$0 - 4], $[$0 - 1]];
3221
- case 73:
3222
- return ["=", $[$0], $[$0 - 2]];
3223
- case 74:
3383
+ case 72:
3224
3384
  return ["state", $[$0 - 2], $[$0]];
3225
- case 75:
3385
+ case 73:
3226
3386
  return ["state", $[$0 - 3], $[$0]];
3227
- case 76:
3387
+ case 74:
3228
3388
  return ["state", $[$0 - 4], $[$0 - 1]];
3389
+ case 75:
3229
3390
  case 77:
3230
- case 79:
3231
3391
  return ["computed", $[$0 - 2], $[$0]];
3232
- case 78:
3392
+ case 76:
3233
3393
  return ["computed", $[$0 - 3], $[$0]];
3234
- case 80:
3394
+ case 78:
3235
3395
  return ["readonly", $[$0 - 2], $[$0]];
3236
- case 81:
3396
+ case 79:
3237
3397
  return ["readonly", $[$0 - 3], $[$0]];
3238
- case 82:
3398
+ case 80:
3239
3399
  return ["readonly", $[$0 - 4], $[$0 - 1]];
3400
+ case 81:
3240
3401
  case 83:
3241
- case 85:
3242
3402
  return ["effect", $[$0 - 2], $[$0]];
3243
- case 84:
3403
+ case 82:
3244
3404
  return ["effect", $[$0 - 3], $[$0]];
3405
+ case 84:
3406
+ case 85:
3245
3407
  case 86:
3246
- case 87:
3247
- case 88:
3248
3408
  return ["effect", null, $[$0]];
3409
+ case 92:
3410
+ case 101:
3411
+ case 139:
3412
+ return [".", $[$0 - 2], $[$0]];
3413
+ case 93:
3414
+ case 102:
3415
+ case 140:
3416
+ return ["?.", $[$0 - 2], $[$0]];
3249
3417
  case 94:
3418
+ case 96:
3250
3419
  case 103:
3251
3420
  case 141:
3252
- return [".", $[$0 - 2], $[$0]];
3421
+ return ["[]", $[$0 - 3], $[$0 - 1]];
3253
3422
  case 95:
3423
+ case 97:
3254
3424
  case 104:
3255
3425
  case 142:
3256
- return ["?.", $[$0 - 2], $[$0]];
3257
- case 96:
3258
- case 98:
3259
- case 105:
3260
- case 143:
3261
- return ["[]", $[$0 - 3], $[$0 - 1]];
3262
- case 97:
3263
- case 99:
3264
- case 106:
3265
- case 144:
3266
3426
  return ["[]", $[$0 - 5], $[$0 - 2]];
3267
- case 100:
3427
+ case 98:
3268
3428
  return [$[$0 - 1][0], $[$0 - 3], ...$[$0 - 1].slice(1)];
3269
- case 101:
3429
+ case 99:
3270
3430
  return ["optindex", $[$0 - 4], $[$0 - 1]];
3271
- case 102:
3431
+ case 100:
3272
3432
  return ["optindex", $[$0 - 6], $[$0 - 2]];
3273
- case 107:
3433
+ case 105:
3274
3434
  return ["object-comprehension", $[$0 - 8], $[$0 - 6], [["for-of", $[$0 - 4], $[$0 - 2], false]], []];
3275
- case 108:
3435
+ case 106:
3276
3436
  return ["object-comprehension", $[$0 - 10], $[$0 - 8], [["for-of", $[$0 - 6], $[$0 - 4], false]], [$[$0 - 2]]];
3277
- case 109:
3437
+ case 107:
3278
3438
  return ["object-comprehension", $[$0 - 9], $[$0 - 7], [["for-of", $[$0 - 4], $[$0 - 2], true]], []];
3279
- case 110:
3439
+ case 108:
3280
3440
  return ["object-comprehension", $[$0 - 11], $[$0 - 9], [["for-of", $[$0 - 6], $[$0 - 4], true]], [$[$0 - 2]]];
3281
- case 111:
3441
+ case 109:
3282
3442
  return ["object", ...$[$0 - 2]];
3283
- case 112:
3284
- case 147:
3285
- case 178:
3286
- case 199:
3287
- case 218:
3443
+ case 110:
3444
+ case 145:
3445
+ case 176:
3446
+ case 197:
3447
+ case 216:
3288
3448
  return [];
3289
- case 115:
3290
- case 150:
3291
- case 202:
3449
+ case 113:
3450
+ case 148:
3451
+ case 200:
3452
+ case 220:
3453
+ case 358:
3454
+ case 387:
3455
+ return [...$[$0 - 3], $[$0]];
3456
+ case 114:
3457
+ case 149:
3458
+ case 201:
3292
3459
  case 222:
3293
3460
  case 360:
3294
3461
  case 389:
3295
- return [...$[$0 - 3], $[$0]];
3296
- case 116:
3297
- case 151:
3298
- case 203:
3299
- case 224:
3300
- case 362:
3301
- case 391:
3302
3462
  return [...$[$0 - 5], ...$[$0 - 2]];
3303
- case 117:
3463
+ case 115:
3304
3464
  return [null, $[$0], $[$0]];
3305
- case 119:
3306
- case 152:
3465
+ case 117:
3466
+ case 150:
3307
3467
  return [":", $[$0 - 2], $[$0]];
3308
- case 120:
3309
- case 153:
3468
+ case 118:
3469
+ case 151:
3310
3470
  return [":", $[$0 - 4], $[$0 - 1]];
3311
- case 127:
3471
+ case 125:
3312
3472
  return ["dynamicKey", $[$0 - 1]];
3313
- case 128:
3473
+ case 126:
3314
3474
  return ["[]", "this", $[$0 - 1]];
3315
- case 130:
3316
- case 131:
3317
- case 154:
3318
- case 212:
3475
+ case 128:
3476
+ case 129:
3477
+ case 152:
3478
+ case 210:
3319
3479
  return ["...", $[$0]];
3320
- case 137:
3321
- case 216:
3480
+ case 135:
3481
+ case 214:
3322
3482
  return ["super", ...$[$0]];
3483
+ case 136:
3484
+ case 137:
3323
3485
  case 138:
3324
- case 139:
3325
- case 140:
3326
- case 214:
3327
- case 217:
3486
+ case 212:
3487
+ case 215:
3328
3488
  return [$[$0 - 1], ...$[$0]];
3329
- case 145:
3489
+ case 143:
3330
3490
  return ["map-literal"];
3331
- case 146:
3491
+ case 144:
3332
3492
  return ["map-literal", ...$[$0 - 2]];
3333
- case 168:
3493
+ case 166:
3334
3494
  return ["array"];
3335
- case 169:
3495
+ case 167:
3336
3496
  return ["array", ...$[$0 - 1]];
3337
- case 170:
3497
+ case 168:
3338
3498
  return ["array", ...$[$0 - 2], ...$[$0 - 1]];
3339
- case 172:
3499
+ case 170:
3340
3500
  return [...$[$0 - 2], ...$[$0]];
3341
- case 173:
3501
+ case 171:
3342
3502
  return [...$[$0 - 3], ...$[$0]];
3343
- case 174:
3503
+ case 172:
3344
3504
  return [...$[$0 - 2], ...$[$0 - 1]];
3345
- case 175:
3505
+ case 173:
3346
3506
  return [...$[$0 - 5], ...$[$0 - 4], ...$[$0 - 2], ...$[$0 - 1]];
3347
- case 179:
3507
+ case 177:
3348
3508
  return [...$[$0]];
3349
- case 182:
3509
+ case 180:
3350
3510
  return null;
3351
- case 184:
3511
+ case 182:
3352
3512
  return "..";
3353
- case 185:
3354
- case 228:
3513
+ case 183:
3514
+ case 226:
3355
3515
  return "...";
3356
- case 186:
3516
+ case 184:
3357
3517
  return [$[$0 - 2], $[$0 - 3], $[$0 - 1]];
3358
- case 187:
3518
+ case 185:
3519
+ case 413:
3520
+ case 415:
3359
3521
  case 416:
3360
- case 418:
3361
- case 419:
3362
- case 434:
3363
- case 436:
3522
+ case 430:
3523
+ case 432:
3364
3524
  return [$[$0 - 1], $[$0 - 2], $[$0]];
3365
- case 188:
3525
+ case 186:
3366
3526
  return [$[$0], $[$0 - 1], null];
3367
- case 189:
3527
+ case 187:
3368
3528
  return [$[$0 - 1], null, $[$0]];
3369
- case 190:
3529
+ case 188:
3370
3530
  return [$[$0], null, null];
3371
- case 191:
3531
+ case 189:
3372
3532
  return ["def", $[$0 - 4], $[$0 - 2], $[$0]];
3373
- case 192:
3533
+ case 190:
3374
3534
  return ["def", $[$0 - 1], [], $[$0]];
3535
+ case 191:
3375
3536
  case 193:
3376
- case 195:
3377
3537
  return [$[$0 - 1], $[$0 - 3], $[$0]];
3538
+ case 192:
3378
3539
  case 194:
3379
- case 196:
3380
3540
  return [$[$0 - 1], [], $[$0]];
3381
- case 205:
3382
- case 328:
3541
+ case 203:
3542
+ case 326:
3383
3543
  return ["default", $[$0 - 2], $[$0]];
3384
- case 206:
3544
+ case 204:
3385
3545
  return ["rest", $[$0]];
3386
- case 207:
3546
+ case 205:
3387
3547
  return ["expansion"];
3388
- case 213:
3548
+ case 211:
3389
3549
  return ["tagged-template", $[$0 - 1], $[$0]];
3390
- case 215:
3550
+ case 213:
3391
3551
  return ["optcall", $[$0 - 2], ...$[$0]];
3392
- case 231:
3393
- case 232:
3552
+ case 229:
3553
+ case 230:
3394
3554
  return "this";
3395
- case 233:
3555
+ case 231:
3396
3556
  return [".", "this", $[$0]];
3397
- case 234:
3557
+ case 232:
3398
3558
  return [".", "super", $[$0]];
3399
- case 235:
3559
+ case 233:
3400
3560
  return ["[]", "super", $[$0 - 1]];
3401
- case 236:
3561
+ case 234:
3402
3562
  return ["[]", "super", $[$0 - 2]];
3403
- case 237:
3563
+ case 235:
3404
3564
  return [".", "new", $[$0]];
3405
- case 238:
3565
+ case 236:
3406
3566
  return [".", "import", $[$0]];
3407
- case 239:
3567
+ case 237:
3408
3568
  return ["block"];
3409
- case 240:
3569
+ case 238:
3410
3570
  return ["block", ...$[$0 - 1]];
3411
- case 241:
3571
+ case 239:
3412
3572
  return $[$0 - 1].length === 1 ? $[$0 - 1][0] : ["block", ...$[$0 - 1]];
3413
- case 242:
3573
+ case 240:
3414
3574
  return $[$0 - 2].length === 1 ? $[$0 - 2][0] : ["block", ...$[$0 - 2]];
3415
- case 245:
3575
+ case 243:
3416
3576
  return ["return", $[$0]];
3417
- case 246:
3577
+ case 244:
3418
3578
  return ["return", $[$0 - 1]];
3419
- case 247:
3579
+ case 245:
3420
3580
  return ["return"];
3421
- case 248:
3581
+ case 246:
3422
3582
  return ["throw", $[$0]];
3423
- case 249:
3583
+ case 247:
3424
3584
  return ["throw", $[$0 - 1]];
3425
- case 250:
3585
+ case 248:
3426
3586
  return ["yield"];
3427
- case 251:
3587
+ case 249:
3428
3588
  return ["yield", $[$0]];
3429
- case 252:
3589
+ case 250:
3430
3590
  return ["yield", $[$0 - 1]];
3431
- case 253:
3591
+ case 251:
3432
3592
  return ["yield-from", $[$0]];
3433
- case 254:
3593
+ case 252:
3434
3594
  return ["if", $[$0 - 1], $[$0]];
3435
- case 255:
3595
+ case 253:
3436
3596
  return $[$0 - 4].length === 3 ? ["if", $[$0 - 4][1], $[$0 - 4][2], ["if", $[$0 - 1], $[$0]]] : [...$[$0 - 4], ["if", $[$0 - 1], $[$0]]];
3437
- case 256:
3597
+ case 254:
3438
3598
  return ["if", ["!", $[$0 - 1]], $[$0]];
3439
- case 257:
3599
+ case 255:
3440
3600
  return ["if", ["!", $[$0 - 3]], $[$0 - 2], $[$0]];
3441
- case 259:
3601
+ case 257:
3442
3602
  return $[$0 - 2].length === 3 ? ["if", $[$0 - 2][1], $[$0 - 2][2], $[$0]] : [...$[$0 - 2], $[$0]];
3603
+ case 259:
3604
+ case 260:
3605
+ return ["if", $[$0], [$[$0 - 2]]];
3443
3606
  case 261:
3607
+ return ["?:", $[$0 - 4], $[$0 - 6], $[$0 - 1]];
3444
3608
  case 262:
3445
- return ["if", $[$0], [$[$0 - 2]]];
3609
+ return ["?:", $[$0 - 2], $[$0 - 4], $[$0]];
3446
3610
  case 263:
3447
- return ["?:", $[$0 - 4], $[$0 - 6], $[$0 - 1]];
3448
3611
  case 264:
3449
- return ["?:", $[$0 - 2], $[$0 - 4], $[$0]];
3612
+ return ["if", ["!", $[$0]], [$[$0 - 2]]];
3450
3613
  case 265:
3614
+ return ["try", $[$0]];
3451
3615
  case 266:
3452
- return ["if", ["!", $[$0]], [$[$0 - 2]]];
3616
+ return ["try", $[$0 - 1], $[$0]];
3453
3617
  case 267:
3454
- return ["try", $[$0]];
3618
+ return ["try", $[$0 - 2], $[$0]];
3455
3619
  case 268:
3456
- return ["try", $[$0 - 1], $[$0]];
3620
+ return ["try", $[$0 - 3], $[$0 - 2], $[$0]];
3457
3621
  case 269:
3458
- return ["try", $[$0 - 2], $[$0]];
3459
3622
  case 270:
3460
- return ["try", $[$0 - 3], $[$0 - 2], $[$0]];
3461
- case 271:
3462
- case 272:
3463
- case 397:
3623
+ case 395:
3624
+ case 398:
3464
3625
  case 400:
3465
- case 402:
3466
3626
  return [$[$0 - 1], $[$0]];
3467
- case 273:
3627
+ case 271:
3468
3628
  return [null, $[$0]];
3469
- case 274:
3629
+ case 272:
3470
3630
  return ["switch", $[$0 - 3], $[$0 - 1], null];
3471
- case 275:
3631
+ case 273:
3472
3632
  return ["switch", $[$0 - 5], $[$0 - 3], $[$0 - 1]];
3473
- case 276:
3633
+ case 274:
3474
3634
  return ["switch", null, $[$0 - 1], null];
3475
- case 277:
3635
+ case 275:
3476
3636
  return ["switch", null, $[$0 - 3], $[$0 - 1]];
3477
- case 280:
3637
+ case 278:
3478
3638
  return ["when", $[$0 - 1], $[$0]];
3479
- case 281:
3639
+ case 279:
3480
3640
  return ["when", $[$0 - 2], $[$0 - 1]];
3481
- case 282:
3641
+ case 280:
3482
3642
  return ["while", $[$0]];
3483
- case 283:
3643
+ case 281:
3484
3644
  return ["while", $[$0 - 2], $[$0]];
3485
- case 284:
3645
+ case 282:
3486
3646
  return ["while", ["!", $[$0]]];
3487
- case 285:
3647
+ case 283:
3488
3648
  return ["while", ["!", $[$0 - 2]], $[$0]];
3489
- case 286:
3649
+ case 284:
3490
3650
  return $[$0 - 1].length === 2 ? [$[$0 - 1][0], $[$0 - 1][1], $[$0]] : [$[$0 - 1][0], $[$0 - 1][1], $[$0 - 1][2], $[$0]];
3491
- case 287:
3492
- case 288:
3651
+ case 285:
3652
+ case 286:
3493
3653
  return $[$0].length === 2 ? [$[$0][0], $[$0][1], [$[$0 - 1]]] : [$[$0][0], $[$0][1], $[$0][2], [$[$0 - 1]]];
3494
- case 290:
3654
+ case 288:
3495
3655
  return ["loop", $[$0]];
3496
- case 291:
3656
+ case 289:
3497
3657
  return ["loop", [$[$0]]];
3498
- case 292:
3658
+ case 290:
3499
3659
  return ["loop-n", $[$0 - 1], $[$0]];
3500
- case 293:
3660
+ case 291:
3501
3661
  return ["for-in", $[$0 - 3], $[$0 - 1], null, null, $[$0]];
3502
- case 294:
3662
+ case 292:
3503
3663
  return ["for-in", $[$0 - 5], $[$0 - 3], null, $[$0 - 1], $[$0]];
3504
- case 295:
3664
+ case 293:
3505
3665
  return ["for-in", $[$0 - 5], $[$0 - 3], $[$0 - 1], null, $[$0]];
3506
- case 296:
3666
+ case 294:
3507
3667
  return ["for-in", $[$0 - 7], $[$0 - 5], $[$0 - 1], $[$0 - 3], $[$0]];
3508
- case 297:
3668
+ case 295:
3509
3669
  return ["for-in", $[$0 - 7], $[$0 - 5], $[$0 - 3], $[$0 - 1], $[$0]];
3510
- case 298:
3670
+ case 296:
3511
3671
  return ["for-of", $[$0 - 3], $[$0 - 1], false, null, $[$0]];
3512
- case 299:
3672
+ case 297:
3513
3673
  return ["for-of", $[$0 - 5], $[$0 - 3], false, $[$0 - 1], $[$0]];
3514
- case 300:
3674
+ case 298:
3515
3675
  return ["for-of", $[$0 - 3], $[$0 - 1], true, null, $[$0]];
3516
- case 301:
3676
+ case 299:
3517
3677
  return ["for-of", $[$0 - 5], $[$0 - 3], true, $[$0 - 1], $[$0]];
3518
- case 302:
3678
+ case 300:
3519
3679
  return ["for-as", $[$0 - 3], $[$0 - 1], false, null, $[$0]];
3520
- case 303:
3680
+ case 301:
3521
3681
  return ["for-as", $[$0 - 5], $[$0 - 3], false, $[$0 - 1], $[$0]];
3682
+ case 302:
3522
3683
  case 304:
3523
- case 306:
3524
3684
  return ["for-as", $[$0 - 3], $[$0 - 1], true, null, $[$0]];
3685
+ case 303:
3525
3686
  case 305:
3526
- case 307:
3527
3687
  return ["for-as", $[$0 - 5], $[$0 - 3], true, $[$0 - 1], $[$0]];
3528
- case 308:
3688
+ case 306:
3529
3689
  return ["for-in", [], $[$0 - 1], null, null, $[$0]];
3530
- case 309:
3690
+ case 307:
3531
3691
  return ["for-in", [], $[$0 - 3], $[$0 - 1], null, $[$0]];
3532
- case 310:
3692
+ case 308:
3533
3693
  return ["comprehension", $[$0 - 4], [["for-in", $[$0 - 2], $[$0], null]], []];
3534
- case 311:
3694
+ case 309:
3535
3695
  return ["comprehension", $[$0 - 6], [["for-in", $[$0 - 4], $[$0 - 2], null]], [$[$0]]];
3536
- case 312:
3696
+ case 310:
3537
3697
  return ["comprehension", $[$0 - 6], [["for-in", $[$0 - 4], $[$0 - 2], $[$0]]], []];
3538
- case 313:
3698
+ case 311:
3539
3699
  return ["comprehension", $[$0 - 8], [["for-in", $[$0 - 6], $[$0 - 4], $[$0]]], [$[$0 - 2]]];
3540
- case 314:
3700
+ case 312:
3541
3701
  return ["comprehension", $[$0 - 8], [["for-in", $[$0 - 6], $[$0 - 4], $[$0 - 2]]], [$[$0]]];
3542
- case 315:
3702
+ case 313:
3543
3703
  return ["comprehension", $[$0 - 4], [["for-of", $[$0 - 2], $[$0], false]], []];
3544
- case 316:
3704
+ case 314:
3545
3705
  return ["comprehension", $[$0 - 6], [["for-of", $[$0 - 4], $[$0 - 2], false]], [$[$0]]];
3546
- case 317:
3706
+ case 315:
3547
3707
  return ["comprehension", $[$0 - 5], [["for-of", $[$0 - 2], $[$0], true]], []];
3548
- case 318:
3708
+ case 316:
3549
3709
  return ["comprehension", $[$0 - 7], [["for-of", $[$0 - 4], $[$0 - 2], true]], [$[$0]]];
3550
- case 319:
3710
+ case 317:
3551
3711
  return ["comprehension", $[$0 - 4], [["for-as", $[$0 - 2], $[$0], false, null]], []];
3552
- case 320:
3712
+ case 318:
3553
3713
  return ["comprehension", $[$0 - 6], [["for-as", $[$0 - 4], $[$0 - 2], false, null]], [$[$0]]];
3554
- case 321:
3714
+ case 319:
3555
3715
  return ["comprehension", $[$0 - 5], [["for-as", $[$0 - 2], $[$0], true, null]], []];
3556
- case 322:
3716
+ case 320:
3557
3717
  return ["comprehension", $[$0 - 7], [["for-as", $[$0 - 4], $[$0 - 2], true, null]], [$[$0]]];
3558
- case 323:
3718
+ case 321:
3559
3719
  return ["comprehension", $[$0 - 4], [["for-as", $[$0 - 2], $[$0], true, null]], []];
3560
- case 324:
3720
+ case 322:
3561
3721
  return ["comprehension", $[$0 - 6], [["for-as", $[$0 - 4], $[$0 - 2], true, null]], [$[$0]]];
3562
- case 325:
3722
+ case 323:
3563
3723
  return ["comprehension", $[$0 - 2], [["for-in", [], $[$0], null]], []];
3564
- case 326:
3724
+ case 324:
3565
3725
  return ["comprehension", $[$0 - 4], [["for-in", [], $[$0 - 2], $[$0]]], []];
3566
- case 330:
3726
+ case 328:
3727
+ case 362:
3567
3728
  case 364:
3568
- case 366:
3569
- case 393:
3729
+ case 391:
3730
+ case 392:
3570
3731
  case 394:
3571
- case 396:
3572
3732
  return [$[$0 - 2], $[$0]];
3573
- case 331:
3733
+ case 329:
3574
3734
  return ["class", null, null];
3575
- case 332:
3735
+ case 330:
3576
3736
  return ["class", null, null, $[$0]];
3577
- case 333:
3737
+ case 331:
3578
3738
  return ["class", null, $[$0]];
3579
- case 334:
3739
+ case 332:
3580
3740
  return ["class", null, $[$0 - 1], $[$0]];
3581
- case 335:
3741
+ case 333:
3582
3742
  return ["class", $[$0], null];
3583
- case 336:
3743
+ case 334:
3584
3744
  return ["class", $[$0 - 1], null, $[$0]];
3585
- case 337:
3745
+ case 335:
3586
3746
  return ["class", $[$0 - 2], $[$0]];
3587
- case 338:
3747
+ case 336:
3588
3748
  return ["class", $[$0 - 3], $[$0 - 1], $[$0]];
3589
- case 339:
3749
+ case 337:
3590
3750
  return ["enum", $[$0 - 1], $[$0]];
3591
- case 340:
3751
+ case 338:
3592
3752
  return ["component", null, ["block", ...$[$0 - 1]]];
3593
- case 341:
3753
+ case 339:
3594
3754
  return ["component", $[$0 - 3], ["block", ...$[$0 - 1]]];
3595
- case 348:
3755
+ case 346:
3596
3756
  return ["offer", $[$0]];
3597
- case 349:
3757
+ case 347:
3598
3758
  return ["accept", $[$0]];
3599
- case 350:
3759
+ case 348:
3600
3760
  return ["render", $[$0]];
3601
- case 351:
3602
- case 354:
3603
- return ["import", "{}", $[$0]];
3761
+ case 349:
3604
3762
  case 352:
3605
- case 353:
3763
+ return ["import", "{}", $[$0]];
3764
+ case 350:
3765
+ case 351:
3606
3766
  return ["import", $[$0 - 2], $[$0]];
3607
- case 355:
3767
+ case 353:
3608
3768
  return ["import", $[$0 - 4], $[$0]];
3609
- case 356:
3769
+ case 354:
3610
3770
  return ["import", $[$0 - 4], $[$0 - 2], $[$0]];
3611
- case 357:
3771
+ case 355:
3612
3772
  return ["import", $[$0 - 7], $[$0 - 4], $[$0]];
3613
- case 368:
3773
+ case 366:
3614
3774
  return ["*", $[$0]];
3615
- case 369:
3775
+ case 367:
3616
3776
  return ["export", "{}"];
3617
- case 370:
3777
+ case 368:
3618
3778
  return ["export", $[$0 - 2]];
3779
+ case 369:
3780
+ case 370:
3619
3781
  case 371:
3620
3782
  case 372:
3621
- case 373:
3622
- case 374:
3783
+ case 376:
3784
+ case 377:
3623
3785
  case 378:
3624
3786
  case 379:
3625
- case 380:
3626
- case 381:
3627
3787
  return ["export", $[$0]];
3628
- case 375:
3788
+ case 373:
3629
3789
  return ["export", ["=", $[$0 - 2], $[$0]]];
3630
- case 376:
3790
+ case 374:
3631
3791
  return ["export", ["=", $[$0 - 3], $[$0]]];
3632
- case 377:
3792
+ case 375:
3633
3793
  return ["export", ["=", $[$0 - 4], $[$0 - 1]]];
3634
- case 382:
3794
+ case 380:
3635
3795
  return ["export-default", $[$0]];
3636
- case 383:
3796
+ case 381:
3637
3797
  return ["export-default", $[$0 - 1]];
3638
- case 384:
3798
+ case 382:
3639
3799
  return ["export-all", $[$0]];
3640
- case 385:
3800
+ case 383:
3641
3801
  return ["export-from", "{}", $[$0]];
3642
- case 386:
3802
+ case 384:
3643
3803
  return ["export-from", $[$0 - 4], $[$0]];
3644
- case 398:
3804
+ case 396:
3805
+ case 397:
3645
3806
  case 399:
3646
- case 401:
3647
- case 439:
3807
+ case 435:
3648
3808
  return ["do-iife", $[$0]];
3649
- case 403:
3809
+ case 401:
3650
3810
  return ["-", $[$0]];
3651
- case 404:
3811
+ case 402:
3652
3812
  return ["+", $[$0]];
3653
- case 405:
3813
+ case 403:
3654
3814
  return ["?", $[$0 - 1]];
3655
- case 406:
3656
- return ["defined", $[$0 - 1]];
3657
- case 407:
3815
+ case 404:
3658
3816
  return ["presence", $[$0 - 1]];
3659
- case 408:
3817
+ case 405:
3660
3818
  return ["await", $[$0]];
3661
- case 409:
3819
+ case 406:
3662
3820
  return ["await", $[$0 - 1]];
3663
- case 410:
3821
+ case 407:
3664
3822
  return ["--", $[$0], false];
3665
- case 411:
3823
+ case 408:
3666
3824
  return ["++", $[$0], false];
3667
- case 412:
3825
+ case 409:
3668
3826
  return ["--", $[$0 - 1], true];
3669
- case 413:
3827
+ case 410:
3670
3828
  return ["++", $[$0 - 1], true];
3671
- case 414:
3829
+ case 411:
3672
3830
  return ["+", $[$0 - 2], $[$0]];
3673
- case 415:
3831
+ case 412:
3674
3832
  return ["-", $[$0 - 2], $[$0]];
3675
- case 417:
3833
+ case 414:
3676
3834
  return ["**", $[$0 - 2], $[$0]];
3677
- case 420:
3835
+ case 417:
3678
3836
  return ["&", $[$0 - 2], $[$0]];
3679
- case 421:
3837
+ case 418:
3680
3838
  return ["^", $[$0 - 2], $[$0]];
3681
- case 422:
3839
+ case 419:
3682
3840
  return ["|", $[$0 - 2], $[$0]];
3841
+ case 420:
3842
+ case 421:
3843
+ case 422:
3683
3844
  case 423:
3684
3845
  case 424:
3685
3846
  case 425:
3686
- case 426:
3687
- case 427:
3688
- case 428:
3689
3847
  return ["control", $[$0 - 1], $[$0 - 2], $[$0]];
3690
- case 429:
3848
+ case 426:
3691
3849
  return ["&&", $[$0 - 2], $[$0]];
3692
- case 430:
3850
+ case 427:
3693
3851
  return ["||", $[$0 - 2], $[$0]];
3694
- case 431:
3852
+ case 428:
3695
3853
  return ["??", $[$0 - 2], $[$0]];
3696
- case 432:
3697
- return ["!?", $[$0 - 2], $[$0]];
3698
- case 433:
3854
+ case 429:
3699
3855
  return ["|>", $[$0 - 2], $[$0]];
3700
- case 435:
3856
+ case 431:
3701
3857
  return ["?:", $[$0 - 4], $[$0 - 2], $[$0]];
3702
- case 437:
3858
+ case 433:
3703
3859
  return [$[$0 - 3], $[$0 - 4], $[$0 - 1]];
3704
- case 438:
3860
+ case 434:
3705
3861
  return [$[$0 - 2], $[$0 - 3], $[$0]];
3706
3862
  }
3707
3863
  },
@@ -4669,7 +4825,7 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
4669
4825
  } else if (op === "computed") {
4670
4826
  const varName = getMemberName(stmt[1]);
4671
4827
  if (varName) {
4672
- derivedVars.push({ name: varName, expr: stmt[2] });
4828
+ derivedVars.push({ name: varName, expr: stmt[2], type: getMemberType(stmt[1]) });
4673
4829
  memberNames.add(varName);
4674
4830
  reactiveMembers.add(varName);
4675
4831
  }
@@ -4742,8 +4898,9 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
4742
4898
  if (this.options.stubComponents) {
4743
4899
  const expandType = (t) => t ? t.replace(/::/g, ":").replace(/(\w+(?:<[^>]+>)?)\?\?/g, "$1 | null | undefined").replace(/(\w+(?:<[^>]+>)?)\?(?![.:])/g, "$1 | undefined").replace(/(\w+(?:<[^>]+>)?)\!/g, "NonNullable<$1>") : null;
4744
4900
  const sl = [];
4745
- sl.push("class {");
4746
- sl.push(" declare _root: Element | null;");
4901
+ const componentTypeParams = this._componentTypeParams || "";
4902
+ sl.push(`class ${componentTypeParams}{`);
4903
+ sl.push(" declare _root: Element | null; declare app: any;");
4747
4904
  sl.push(" emit(_name: string, _detail?: any): void {}");
4748
4905
  const propEntries = [];
4749
4906
  for (const { name, type, isPublic, required } of stateVars) {
@@ -4788,14 +4945,16 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
4788
4945
  const ts = expandType(type) || inferLiteralType(value);
4789
4946
  sl.push(ts ? ` declare ${name}: ${ts};` : ` declare ${name}: any;`);
4790
4947
  }
4791
- for (const { name, expr } of derivedVars) {
4948
+ for (const { name, expr, type } of derivedVars) {
4949
+ const ts = expandType(type);
4950
+ const typeAnnot = ts ? `: Computed<${ts}>` : "";
4792
4951
  if (this.is(expr, "block")) {
4793
4952
  const transformed = this.transformComponentMembers(expr);
4794
4953
  const body2 = this.emitFunctionBody(transformed);
4795
- sl.push(` ${name} = __computed(() => ${body2});`);
4954
+ sl.push(` ${name}${typeAnnot} = __computed(() => ${body2});`);
4796
4955
  } else {
4797
4956
  const val = this.emitInComponent(expr, "value");
4798
- sl.push(` ${name} = __computed(() => ${val});`);
4957
+ sl.push(` ${name}${typeAnnot} = __computed(() => ${val});`);
4799
4958
  }
4800
4959
  }
4801
4960
  sl.push(" _init(props) {");
@@ -4909,6 +5068,8 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
4909
5068
  if (renderBlock) {
4910
5069
  const constructions = [];
4911
5070
  let constructionIdx = 0;
5071
+ const sourceLines = this.options.source?.split(`
5072
+ `);
4912
5073
  const extractProps = (args) => {
4913
5074
  const props = [];
4914
5075
  for (const arg of args) {
@@ -4971,8 +5132,12 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
4971
5132
  const val = this.emitInComponent(value, "value");
4972
5133
  props.push({ code: `'${eventKey}': ${val}`, srcLine });
4973
5134
  } else if (typeof key === "string") {
4974
- if (key === "key")
5135
+ if (key === "key") {
5136
+ const val = this.emitInComponent(value, "value");
5137
+ const marker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5138
+ constructions.push(` (${val});${marker}`);
4975
5139
  continue;
5140
+ }
4976
5141
  if (key.startsWith("__bind_") && key.endsWith("__")) {
4977
5142
  const propName = key.slice(7, -2);
4978
5143
  const val = this.emitInComponent(value, "value");
@@ -4991,6 +5156,130 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
4991
5156
  if (!Array.isArray(node))
4992
5157
  return;
4993
5158
  const head2 = node[0]?.valueOf?.() ?? node[0];
5159
+ if (head2 === "object")
5160
+ return;
5161
+ if (head2 === "if" || head2 === "unless") {
5162
+ const condition = node[1];
5163
+ if (condition != null) {
5164
+ const condCode = this.emitInComponent(condition, "value");
5165
+ const srcLine = node.loc?.r;
5166
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5167
+ constructions.push(` ${condCode};${srcMarker}`);
5168
+ }
5169
+ } else if (head2 === "?:") {
5170
+ const ternCode = this.emitInComponent(node, "value");
5171
+ const srcLine = node.loc?.r;
5172
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5173
+ constructions.push(` ${ternCode};${srcMarker}`);
5174
+ } else if (head2 === "switch") {
5175
+ const discriminant = node[1];
5176
+ if (discriminant != null) {
5177
+ const discCode = this.emitInComponent(discriminant, "value");
5178
+ const srcLine = node.loc?.r;
5179
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5180
+ constructions.push(` ${discCode};${srcMarker}`);
5181
+ }
5182
+ } else if (head2 === "for-in" || head2 === "for-of" || head2 === "for-as") {
5183
+ const vars = node[1];
5184
+ const iterable = node[2];
5185
+ if (iterable != null) {
5186
+ const iterCode = this.emitInComponent(iterable, "value");
5187
+ const srcLine = node.loc?.r;
5188
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5189
+ let varPattern;
5190
+ if (Array.isArray(vars)) {
5191
+ if (vars.length === 1) {
5192
+ const v = vars[0];
5193
+ varPattern = Array.isArray(v) ? this.emitDestructuringPattern(v) : String(v);
5194
+ } else if (head2 === "for-of") {
5195
+ varPattern = `[${vars.map((v) => String(v)).join(", ")}]`;
5196
+ } else {
5197
+ varPattern = String(vars[0]);
5198
+ }
5199
+ } else {
5200
+ varPattern = String(vars);
5201
+ }
5202
+ if (head2 === "for-of") {
5203
+ constructions.push(` for (const ${varPattern} of Object.entries(${iterCode})) {${srcMarker}`);
5204
+ } else {
5205
+ constructions.push(` for (const ${varPattern} of ${iterCode}) {${srcMarker}`);
5206
+ }
5207
+ for (let bi = 3;bi < node.length; bi++) {
5208
+ if (node[bi] != null)
5209
+ walkRender(node[bi]);
5210
+ }
5211
+ constructions.push(` }`);
5212
+ return;
5213
+ }
5214
+ } else if (head2 === "__text__") {
5215
+ const textExpr = node[1];
5216
+ if (textExpr != null) {
5217
+ const exprCode = this.emitInComponent(textExpr, "value");
5218
+ const srcLine = node.loc?.r;
5219
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5220
+ constructions.push(` ${exprCode};${srcMarker}`);
5221
+ }
5222
+ }
5223
+ const emitBareIdent = (child, parentNode, isTextChild) => {
5224
+ if (typeof child !== "string" || !/^[a-z][\w-]*$/.test(child))
5225
+ return;
5226
+ if (CodeEmitter.GENERATORS[child])
5227
+ return;
5228
+ if (child === "null" || child === "undefined" || child === "true" || child === "false")
5229
+ return;
5230
+ let srcLine = parentNode.loc?.r;
5231
+ if (srcLine != null && sourceLines) {
5232
+ const re = new RegExp(`\\b${child}\\b`);
5233
+ for (let ln = srcLine;ln < sourceLines.length; ln++) {
5234
+ if (re.test(sourceLines[ln])) {
5235
+ srcLine = ln;
5236
+ break;
5237
+ }
5238
+ }
5239
+ }
5240
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5241
+ if (this.componentMembers && this.componentMembers.has(child)) {
5242
+ constructions.push(` this.${child};${srcMarker}`);
5243
+ } else if (isTextChild) {
5244
+ constructions.push(` ${child};${srcMarker}`);
5245
+ } else {
5246
+ constructions.push(` __ripEl('${child}');${srcMarker}`);
5247
+ }
5248
+ };
5249
+ const isTagHead = typeof head2 === "string" && /^[a-z][\w-]*$/.test(head2) && !CodeEmitter.GENERATORS[head2] && TEMPLATE_TAGS.has(head2.split(/[.#]/)[0]);
5250
+ if (head2 === "block") {
5251
+ for (let i = 1;i < node.length; i++)
5252
+ emitBareIdent(node[i], node, false);
5253
+ } else if (isTagHead) {
5254
+ for (let i = 1;i < node.length; i++)
5255
+ emitBareIdent(node[i], node, true);
5256
+ for (let i = 1;i < node.length; i++) {
5257
+ const child = node[i];
5258
+ if (!Array.isArray(child))
5259
+ continue;
5260
+ const ch = child[0]?.valueOf?.() ?? child[0];
5261
+ if (ch === "object" || ch === "block" || ch === "__text__")
5262
+ continue;
5263
+ if (typeof ch === "string") {
5264
+ if (/^[A-Z]/.test(ch))
5265
+ continue;
5266
+ if (TEMPLATE_TAGS.has(ch.split(/[.#]/)[0]))
5267
+ continue;
5268
+ if (/^[a-z][\w-]*$/.test(ch) && !CodeEmitter.GENERATORS[ch])
5269
+ continue;
5270
+ if (/^(if|unless|switch|for-in|for-of|for-as|while|until|loop|loop-n|try|throw|break|continue|break-if|continue-if|control|when|return|def|->|=>|class|enum|state|computed|readonly|effect|=|program)$/.test(ch))
5271
+ continue;
5272
+ }
5273
+ try {
5274
+ const exprCode = this.emitInComponent(child, "value");
5275
+ const srcLine = child.loc?.r ?? node.loc?.r;
5276
+ const srcMarker = srcLine != null ? ` // @rip-src:${srcLine}` : "";
5277
+ constructions.push(` ${exprCode};${srcMarker}`);
5278
+ } catch {}
5279
+ }
5280
+ }
5281
+ for (let i = 1;i < node.length; i++)
5282
+ walkRender(node[i]);
4994
5283
  if (typeof head2 === "string" && /^[A-Z]/.test(head2)) {
4995
5284
  const props = extractProps(node.slice(1));
4996
5285
  const varName = `_${constructionIdx++}`;
@@ -5041,8 +5330,6 @@ Expecting ${expected.join(", ")}, got '${this.tokenNames[symbol] || symbol}'`;
5041
5330
  }
5042
5331
  }
5043
5332
  }
5044
- for (let i = 1;i < node.length; i++)
5045
- walkRender(node[i]);
5046
5333
  };
5047
5334
  walkRender(renderBlock);
5048
5335
  if (constructions.length > 0) {
@@ -5252,13 +5539,13 @@ ${blockFactoriesCode}return ${lines.join(`
5252
5539
  return this.emit(sexpr, context);
5253
5540
  };
5254
5541
  proto.emitRender = function(head, rest, context, sexpr) {
5255
- throw new Error("render blocks can only be used inside a component");
5542
+ this.error("render blocks can only be used inside a component", sexpr);
5256
5543
  };
5257
5544
  proto.emitOffer = function(head, rest, context, sexpr) {
5258
- throw new Error("offer can only be used inside a component");
5545
+ this.error("offer can only be used inside a component", sexpr);
5259
5546
  };
5260
5547
  proto.emitAccept = function(head, rest, context, sexpr) {
5261
- throw new Error("accept can only be used inside a component");
5548
+ this.error("accept can only be used inside a component", sexpr);
5262
5549
  };
5263
5550
  proto.buildRender = function(body) {
5264
5551
  this._elementCount = 0;
@@ -5768,6 +6055,13 @@ ${blockFactoriesCode}return ${lines.join(`
5768
6055
  };
5769
6056
  proto.emitConditional = function(sexpr) {
5770
6057
  this._pendingAutoWire = false;
6058
+ if (sexpr.length > 4) {
6059
+ let chain = sexpr[sexpr.length - 1];
6060
+ for (let i = sexpr.length - 2;i >= 3; i--) {
6061
+ chain = [...sexpr[i], chain];
6062
+ }
6063
+ sexpr = [sexpr[0], sexpr[1], sexpr[2], chain];
6064
+ }
5771
6065
  const [, condition, thenBlock, elseBlock] = sexpr;
5772
6066
  const anchorVar = this.newElementVar("anchor");
5773
6067
  this._createLines.push(`${anchorVar} = document.createComment('if');`);
@@ -5819,6 +6113,9 @@ ${blockFactoriesCode}return ${lines.join(`
5819
6113
  setupLines.push(` }`);
5820
6114
  }
5821
6115
  setupLines.push(` ${effClose}`);
6116
+ if (this._factoryMode) {
6117
+ setupLines.push(` disposers.push(() => { if (currentBlock) { currentBlock.d(true); currentBlock = null; } });`);
6118
+ }
5822
6119
  setupLines.push(`}`);
5823
6120
  this._setupLines.push(setupLines.join(`
5824
6121
  `));
@@ -6504,6 +6801,214 @@ if (typeof globalThis !== 'undefined') {
6504
6801
  }
6505
6802
  }
6506
6803
 
6804
+ // src/error.js
6805
+ class RipError extends Error {
6806
+ constructor(message, {
6807
+ code = null,
6808
+ file = null,
6809
+ line = null,
6810
+ column = null,
6811
+ length = 1,
6812
+ source = null,
6813
+ suggestion = null,
6814
+ phase = null
6815
+ } = {}) {
6816
+ super(message);
6817
+ this.name = "RipError";
6818
+ this.code = code;
6819
+ this.file = file;
6820
+ this.line = line;
6821
+ this.column = column;
6822
+ this.length = length;
6823
+ this.source = source;
6824
+ this.suggestion = suggestion;
6825
+ this.phase = phase;
6826
+ }
6827
+ static fromLexer(err, source, file) {
6828
+ let loc = err.location || {};
6829
+ return new RipError(err.message, {
6830
+ code: "E_SYNTAX",
6831
+ file,
6832
+ line: loc.first_line ?? null,
6833
+ column: loc.first_column ?? null,
6834
+ length: loc.last_column != null && loc.first_column != null ? loc.last_column - loc.first_column + 1 : 1,
6835
+ source,
6836
+ phase: "lexer"
6837
+ });
6838
+ }
6839
+ static fromParser(err, source, file) {
6840
+ let h = err.hash || {};
6841
+ let loc = h.loc || {};
6842
+ let line = h.line ?? loc.r ?? null;
6843
+ let column = loc.first_column ?? loc.c ?? null;
6844
+ let suggestion = null;
6845
+ if (h.expected?.length) {
6846
+ let first5 = h.expected.slice(0, 5).map((e) => e.replace(/'/g, ""));
6847
+ suggestion = `Expected ${first5.join(", ")}`;
6848
+ if (h.expected.length > 5)
6849
+ suggestion += `, ... (${h.expected.length} total)`;
6850
+ }
6851
+ let token = h.token || "token";
6852
+ let near = h.text ? ` near '${h.text}'` : "";
6853
+ let message = `Unexpected ${token}${near}`;
6854
+ return new RipError(message, {
6855
+ code: "E_PARSE",
6856
+ file,
6857
+ line,
6858
+ column,
6859
+ length: h.text?.length || 1,
6860
+ source,
6861
+ suggestion,
6862
+ phase: "parser"
6863
+ });
6864
+ }
6865
+ static fromSExpr(message, sexpr, source, file, suggestion) {
6866
+ let loc = sexpr?.loc || {};
6867
+ return new RipError(message, {
6868
+ code: "E_CODEGEN",
6869
+ file,
6870
+ line: loc.r ?? null,
6871
+ column: loc.c ?? null,
6872
+ length: loc.n ?? 1,
6873
+ source,
6874
+ suggestion,
6875
+ phase: "codegen"
6876
+ });
6877
+ }
6878
+ get locationString() {
6879
+ let parts = [];
6880
+ if (this.file)
6881
+ parts.push(this.file);
6882
+ if (this.line != null) {
6883
+ parts.push(`${this.line + 1}:${(this.column ?? 0) + 1}`);
6884
+ }
6885
+ return parts.join(":");
6886
+ }
6887
+ format({ color = true } = {}) {
6888
+ let c = color ? {
6889
+ red: "\x1B[31m",
6890
+ yellow: "\x1B[33m",
6891
+ cyan: "\x1B[36m",
6892
+ dim: "\x1B[2m",
6893
+ bold: "\x1B[1m",
6894
+ reset: "\x1B[0m"
6895
+ } : { red: "", yellow: "", cyan: "", dim: "", bold: "", reset: "" };
6896
+ let lines = [];
6897
+ let loc = this.locationString;
6898
+ let header = loc ? `${c.cyan}${loc}${c.reset} ` : "";
6899
+ lines.push(`${header}${c.red}${c.bold}error${c.reset}${c.bold}: ${this.message}${c.reset}`);
6900
+ let snippet = this._snippet();
6901
+ if (snippet) {
6902
+ lines.push("");
6903
+ for (let s of snippet) {
6904
+ if (s.type === "source") {
6905
+ lines.push(`${c.dim}${s.gutter}${c.reset}${s.text}`);
6906
+ } else if (s.type === "caret") {
6907
+ lines.push(`${c.dim}${s.gutter}${c.reset}${c.red}${c.bold}${s.text}${c.reset}`);
6908
+ }
6909
+ }
6910
+ }
6911
+ if (this.suggestion) {
6912
+ lines.push("");
6913
+ lines.push(`${c.yellow}hint${c.reset}: ${this.suggestion}`);
6914
+ }
6915
+ return lines.join(`
6916
+ `);
6917
+ }
6918
+ formatHTML() {
6919
+ let lines = [];
6920
+ lines.push('<div class="rip-error">');
6921
+ lines.push("<style>");
6922
+ lines.push(`.rip-error { font-family: ui-monospace, "SF Mono", Menlo, Monaco, monospace; font-size: 13px; line-height: 1.5; padding: 16px 20px; background: #1e1e2e; color: #cdd6f4; border-radius: 8px; overflow-x: auto; }`);
6923
+ lines.push(`.rip-error .re-header { color: #f38ba8; font-weight: 600; }`);
6924
+ lines.push(`.rip-error .re-loc { color: #89b4fa; }`);
6925
+ lines.push(`.rip-error .re-gutter { color: #585b70; user-select: none; }`);
6926
+ lines.push(`.rip-error .re-caret { color: #f38ba8; font-weight: 700; }`);
6927
+ lines.push(`.rip-error .re-hint { color: #f9e2af; }`);
6928
+ lines.push(`.rip-error .re-snippet { margin: 8px 0; }`);
6929
+ lines.push("</style>");
6930
+ let loc = this.locationString;
6931
+ let locSpan = loc ? `<span class="re-loc">${esc(loc)}</span> ` : "";
6932
+ lines.push(`<div class="re-header">${locSpan}error: ${esc(this.message)}</div>`);
6933
+ let snippet = this._snippet();
6934
+ if (snippet) {
6935
+ lines.push('<pre class="re-snippet">');
6936
+ for (let s of snippet) {
6937
+ if (s.type === "source") {
6938
+ lines.push(`<span class="re-gutter">${esc(s.gutter)}</span>${esc(s.text)}`);
6939
+ } else if (s.type === "caret") {
6940
+ lines.push(`<span class="re-gutter">${esc(s.gutter)}</span><span class="re-caret">${esc(s.text)}</span>`);
6941
+ }
6942
+ }
6943
+ lines.push("</pre>");
6944
+ }
6945
+ if (this.suggestion) {
6946
+ lines.push(`<div class="re-hint">hint: ${esc(this.suggestion)}</div>`);
6947
+ }
6948
+ lines.push("</div>");
6949
+ return lines.join(`
6950
+ `);
6951
+ }
6952
+ _snippet() {
6953
+ if (this.source == null || this.line == null)
6954
+ return null;
6955
+ let sourceLines = this.source.split(`
6956
+ `);
6957
+ let errLine = this.line;
6958
+ if (errLine < 0 || errLine >= sourceLines.length)
6959
+ return null;
6960
+ let contextRadius = 2;
6961
+ let start = Math.max(0, errLine - contextRadius);
6962
+ let end = Math.min(sourceLines.length - 1, errLine + contextRadius);
6963
+ let gutterWidth = String(end + 1).length;
6964
+ let result = [];
6965
+ for (let i = start;i <= end; i++) {
6966
+ let lineNum = String(i + 1).padStart(gutterWidth);
6967
+ let gutter = ` ${lineNum} │ `;
6968
+ result.push({ type: "source", gutter, text: sourceLines[i] });
6969
+ if (i === errLine && this.column != null) {
6970
+ let pad = " ".repeat(this.column);
6971
+ let caretLen = Math.max(1, Math.min(this.length || 1, sourceLines[i].length - this.column));
6972
+ let carets = "^".repeat(caretLen);
6973
+ let emptyGutter = " ".repeat(gutterWidth + 2) + "│ ";
6974
+ result.push({ type: "caret", gutter: emptyGutter, text: `${pad}${carets}` });
6975
+ }
6976
+ }
6977
+ return result;
6978
+ }
6979
+ }
6980
+ function isLexerError(err) {
6981
+ return err instanceof SyntaxError && err.location != null;
6982
+ }
6983
+ function isParserError(err) {
6984
+ return !(err instanceof SyntaxError) && err.hash != null;
6985
+ }
6986
+ function toRipError(err, source, file) {
6987
+ if (err instanceof RipError) {
6988
+ if (file && !err.file)
6989
+ err.file = file;
6990
+ if (source && !err.source)
6991
+ err.source = source;
6992
+ return err;
6993
+ }
6994
+ if (isLexerError(err))
6995
+ return RipError.fromLexer(err, source, file);
6996
+ if (isParserError(err))
6997
+ return RipError.fromParser(err, source, file);
6998
+ return new RipError(err.message, { file, source, phase: "unknown" });
6999
+ }
7000
+ function formatError(err, { source, file, color = true } = {}) {
7001
+ let re = err instanceof RipError ? err : toRipError(err, source, file);
7002
+ return re.format({ color });
7003
+ }
7004
+ function formatErrorHTML(err, { source, file } = {}) {
7005
+ let re = err instanceof RipError ? err : toRipError(err, source, file);
7006
+ return re.formatHTML();
7007
+ }
7008
+ function esc(s) {
7009
+ return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
7010
+ }
7011
+
6507
7012
  // src/compiler.js
6508
7013
  var meta = (node, key) => node instanceof String ? node[key] : undefined;
6509
7014
  var str = (node) => node instanceof String ? node.valueOf() : node;
@@ -6527,7 +7032,6 @@ if (typeof globalThis !== 'undefined') {
6527
7032
  "&&",
6528
7033
  "||",
6529
7034
  "??",
6530
- "!?",
6531
7035
  "not",
6532
7036
  "&",
6533
7037
  "|",
@@ -6701,7 +7205,6 @@ if (typeof globalThis !== 'undefined') {
6701
7205
  "<=": "emitBinaryOp",
6702
7206
  ">=": "emitBinaryOp",
6703
7207
  "??": "emitBinaryOp",
6704
- "!?": "emitBinaryOp",
6705
7208
  "&": "emitBinaryOp",
6706
7209
  "|": "emitBinaryOp",
6707
7210
  "^": "emitBinaryOp",
@@ -6763,7 +7266,6 @@ if (typeof globalThis !== 'undefined') {
6763
7266
  break: "emitBreak",
6764
7267
  continue: "emitContinue",
6765
7268
  "?": "emitExistential",
6766
- defined: "emitDefined",
6767
7269
  presence: "emitPresence",
6768
7270
  "?:": "emitTernary",
6769
7271
  "|>": "emitPipe",
@@ -6812,6 +7314,9 @@ if (typeof globalThis !== 'undefined') {
6812
7314
  this.reactiveVars = new Set(options.reactiveVars);
6813
7315
  }
6814
7316
  }
7317
+ error(message, sexpr, { suggestion } = {}) {
7318
+ throw RipError.fromSExpr(message, sexpr, this.options.source, this.options.filename, suggestion);
7319
+ }
6815
7320
  compile(sexpr) {
6816
7321
  this.programVars = new Set;
6817
7322
  this.functionVars = new Map;
@@ -6891,7 +7396,8 @@ if (typeof globalThis !== 'undefined') {
6891
7396
  if (ident)
6892
7397
  result.push({ name: ident, origLine: node.loc.r, origCol: node.loc.c });
6893
7398
  }
6894
- for (let i = 1;i < node.length; i++) {
7399
+ let start = head === "->" || head === "=>" ? 2 : 1;
7400
+ for (let i = start;i < node.length; i++) {
6895
7401
  if (Array.isArray(node[i]))
6896
7402
  this.collectSubExprs(node[i], result);
6897
7403
  }
@@ -7085,7 +7591,7 @@ if (typeof globalThis !== 'undefined') {
7085
7591
  if (sexpr === null || sexpr === undefined)
7086
7592
  return "null";
7087
7593
  if (!Array.isArray(sexpr))
7088
- throw new Error(`Invalid s-expression: ${JSON.stringify(sexpr)}`);
7594
+ this.error(`Invalid s-expression: ${JSON.stringify(sexpr)}`, sexpr);
7089
7595
  let [head, ...rest] = sexpr;
7090
7596
  let headAwaitMeta = meta(head, "await");
7091
7597
  head = str(head);
@@ -7136,7 +7642,7 @@ if (typeof globalThis !== 'undefined') {
7136
7642
  let callStr = `${calleeCode}(${this._emitArgs(rest)})`;
7137
7643
  return needsAwait ? `await ${callStr}` : callStr;
7138
7644
  }
7139
- throw new Error(`Unknown s-expression type: ${head}`);
7645
+ this.error(`Unknown s-expression type: ${head}`, sexpr);
7140
7646
  }
7141
7647
  emitProgram(head, statements, context, sexpr) {
7142
7648
  let code = "";
@@ -7191,12 +7697,14 @@ if (typeof globalThis !== 'undefined') {
7191
7697
  this.programVars.delete("_");
7192
7698
  if (this.programVars.size > 0) {
7193
7699
  let vars = Array.from(this.programVars).sort().join(", ");
7194
- if (needsBlank)
7195
- code += `
7700
+ if (vars) {
7701
+ if (needsBlank)
7702
+ code += `
7196
7703
  `;
7197
- code += `let ${vars};
7704
+ code += `let ${vars};
7198
7705
  `;
7199
- needsBlank = true;
7706
+ needsBlank = true;
7707
+ }
7200
7708
  }
7201
7709
  if (hasUnderscore) {
7202
7710
  if (needsBlank)
@@ -7325,10 +7833,6 @@ function _setDataSection() {
7325
7833
  return `((${a} ${leftOp} ${b}) && (${b} ${op} ${c}))`;
7326
7834
  }
7327
7835
  }
7328
- if (op === "!?") {
7329
- let l = this.emit(left, "value"), r = this.emit(right, "value");
7330
- return `(${l} !== undefined ? ${l} : ${r})`;
7331
- }
7332
7836
  if (op === "==")
7333
7837
  op = "===";
7334
7838
  if (op === "!=")
@@ -7371,7 +7875,7 @@ function _setDataSection() {
7371
7875
  let isFnValue = this.is(value, "->") || this.is(value, "=>") || this.is(value, "def");
7372
7876
  if (target instanceof String && meta(target, "await") !== undefined && !isFnValue) {
7373
7877
  let sigil = meta(target, "await") === true ? "!" : "&";
7374
- throw new Error(`Cannot use ${sigil} sigil in variable declaration '${str(target)}'.`);
7878
+ this.error(`Cannot use ${sigil} sigil in variable declaration '${str(target)}'`, sexpr);
7375
7879
  }
7376
7880
  if (target instanceof String && meta(target, "await") === true && isFnValue) {
7377
7881
  this.nextFunctionIsVoid = true;
@@ -7465,10 +7969,14 @@ function _setDataSection() {
7465
7969
  targetCode = this.emit(target, "value");
7466
7970
  }
7467
7971
  const prevComponentName = this._componentName;
7468
- if (this.is(value, "component") && (typeof target === "string" || target instanceof String))
7972
+ const prevComponentTypeParams = this._componentTypeParams;
7973
+ if (this.is(value, "component") && (typeof target === "string" || target instanceof String)) {
7469
7974
  this._componentName = str(target);
7975
+ this._componentTypeParams = target.typeParams || "";
7976
+ }
7470
7977
  let valueCode = this.emit(value, "value");
7471
7978
  this._componentName = prevComponentName;
7979
+ this._componentTypeParams = prevComponentTypeParams;
7472
7980
  let isObjLit = this.is(value, "object");
7473
7981
  if (!isObjLit)
7474
7982
  valueCode = this.unwrap(valueCode);
@@ -7634,7 +8142,7 @@ function _setDataSection() {
7634
8142
  return "return";
7635
8143
  let [expr] = rest;
7636
8144
  if (this.sideEffectOnly && !(this.is(expr, "->") || this.is(expr, "=>"))) {
7637
- throw new Error(`Cannot return a value from a void function (declared with !)`);
8145
+ this.error("Cannot return a value from a void function (declared with !)", sexpr);
7638
8146
  }
7639
8147
  if (this.is(expr, "if")) {
7640
8148
  let [, condition, body, ...elseParts] = expr;
@@ -7703,9 +8211,6 @@ function _setDataSection() {
7703
8211
  emitExistential(head, rest) {
7704
8212
  return `(${this.emit(rest[0], "value")} != null)`;
7705
8213
  }
7706
- emitDefined(head, rest) {
7707
- return `(${this.emit(rest[0], "value")} !== undefined)`;
7708
- }
7709
8214
  emitPresence(head, rest) {
7710
8215
  return `(${this.emit(rest[0], "value")} ? true : undefined)`;
7711
8216
  }
@@ -8277,8 +8782,8 @@ ${this.indent()}}`;
8277
8782
  }
8278
8783
  return switchBody;
8279
8784
  }
8280
- emitWhen() {
8281
- throw new Error("when clause should be handled by switch");
8785
+ emitWhen(head, rest, context, sexpr) {
8786
+ this.error("when clause should be handled by switch", sexpr);
8282
8787
  }
8283
8788
  _forInHeader(vars, iterable, step) {
8284
8789
  let va = Array.isArray(vars) ? vars : [vars];
@@ -8634,10 +9139,14 @@ ${this.indent()}}`;
8634
9139
  if (this.options.skipExports) {
8635
9140
  if (this.is(decl, "=")) {
8636
9141
  const prev = this._componentName;
8637
- if (this.is(decl[2], "component"))
9142
+ const prevTP = this._componentTypeParams;
9143
+ if (this.is(decl[2], "component")) {
8638
9144
  this._componentName = str(decl[1]);
9145
+ this._componentTypeParams = decl[1]?.typeParams || "";
9146
+ }
8639
9147
  const result = `const ${decl[1]} = ${this.emit(decl[2], "value")}`;
8640
9148
  this._componentName = prev;
9149
+ this._componentTypeParams = prevTP;
8641
9150
  return result;
8642
9151
  }
8643
9152
  if (Array.isArray(decl) && decl.every((i) => typeof i === "string"))
@@ -8646,10 +9155,14 @@ ${this.indent()}}`;
8646
9155
  }
8647
9156
  if (this.is(decl, "=")) {
8648
9157
  const prev = this._componentName;
8649
- if (this.is(decl[2], "component"))
9158
+ const prevTP = this._componentTypeParams;
9159
+ if (this.is(decl[2], "component")) {
8650
9160
  this._componentName = str(decl[1]);
9161
+ this._componentTypeParams = decl[1]?.typeParams || "";
9162
+ }
8651
9163
  const result = `export const ${decl[1]} = ${this.emit(decl[2], "value")}`;
8652
9164
  this._componentName = prev;
9165
+ this._componentTypeParams = prevTP;
8653
9166
  return result;
8654
9167
  }
8655
9168
  if (Array.isArray(decl) && decl.every((i) => typeof i === "string"))
@@ -9973,7 +10486,12 @@ if (typeof globalThis !== 'undefined') {
9973
10486
  `);
9974
10487
  }
9975
10488
  let lexer = new Lexer;
9976
- let tokens = lexer.tokenize(source);
10489
+ let tokens;
10490
+ try {
10491
+ tokens = lexer.tokenize(source);
10492
+ } catch (err) {
10493
+ throw toRipError(err, source, this.options.filename);
10494
+ }
9977
10495
  if (this.options.showTokens) {
9978
10496
  tokens.forEach((t) => console.log(`${t[0].padEnd(12)} ${JSON.stringify(t[1])}`));
9979
10497
  console.log();
@@ -9984,6 +10502,54 @@ if (typeof globalThis !== 'undefined') {
9984
10502
  typeTokens = [...tokens];
9985
10503
  }
9986
10504
  tokens = tokens.filter((t) => t[0] !== "TYPE_DECL");
10505
+ if (lexer.typeRefNames?.size > 0) {
10506
+ let typeRefNames = lexer.typeRefNames;
10507
+ let usedNames = new Set;
10508
+ let inImport = false;
10509
+ for (let t of tokens) {
10510
+ if (t[0] === "IMPORT") {
10511
+ inImport = true;
10512
+ continue;
10513
+ }
10514
+ if (inImport && t[0] === "TERMINATOR") {
10515
+ inImport = false;
10516
+ continue;
10517
+ }
10518
+ if (inImport)
10519
+ continue;
10520
+ if (t[0] === "IDENTIFIER")
10521
+ usedNames.add(t[1]);
10522
+ }
10523
+ for (let i = tokens.length - 1;i >= 0; i--) {
10524
+ if (tokens[i][0] !== "IMPORT")
10525
+ continue;
10526
+ let j = i + 1;
10527
+ if (j >= tokens.length)
10528
+ continue;
10529
+ if (tokens[j][0] === "CALL_START" || tokens[j][0] === "(")
10530
+ continue;
10531
+ if (tokens[j][0] === "STRING")
10532
+ continue;
10533
+ let names = [];
10534
+ while (j < tokens.length && tokens[j][0] !== "FROM" && tokens[j][0] !== "TERMINATOR") {
10535
+ if (tokens[j][0] === "IDENTIFIER")
10536
+ names.push(tokens[j][1]);
10537
+ j++;
10538
+ }
10539
+ if (names.length === 0)
10540
+ continue;
10541
+ if (names.some((n) => usedNames.has(n)))
10542
+ continue;
10543
+ if (!names.some((n) => typeRefNames.has(n)))
10544
+ continue;
10545
+ let end = j;
10546
+ while (end < tokens.length && tokens[end][0] !== "TERMINATOR")
10547
+ end++;
10548
+ if (end < tokens.length)
10549
+ end++;
10550
+ tokens.splice(i, end - i);
10551
+ }
10552
+ }
9987
10553
  while (tokens.length > 0 && tokens[0][0] === "TERMINATOR") {
9988
10554
  tokens.shift();
9989
10555
  }
@@ -9992,6 +10558,7 @@ if (typeof globalThis !== 'undefined') {
9992
10558
  dts = emitTypes(typeTokens, ["program"], source);
9993
10559
  return { tokens, sexpr: ["program"], code: "", dts, data: dataSection, reactiveVars: {} };
9994
10560
  }
10561
+ let lastLexedLoc = null;
9995
10562
  parser.lexer = {
9996
10563
  tokens,
9997
10564
  pos: 0,
@@ -10007,17 +10574,31 @@ if (typeof globalThis !== 'undefined') {
10007
10574
  }
10008
10575
  this.text = val;
10009
10576
  this.loc = token.loc;
10577
+ this.line = token.loc?.r;
10578
+ lastLexedLoc = token.loc;
10010
10579
  return token[0];
10011
10580
  }
10012
10581
  };
10013
10582
  let sexpr;
10014
10583
  try {
10015
10584
  sexpr = parser.parse(source);
10016
- } catch (parseError) {
10585
+ } catch (err) {
10017
10586
  if (/\?\s*\([^)]*\?[^)]*:[^)]*\)\s*:/.test(source) || /\?\s+\w+\s+\?\s+/.test(source)) {
10018
- throw new Error("Nested ternary operators are not supported. Use if/else statements instead.");
10587
+ throw new RipError("Nested ternary operators are not supported", {
10588
+ code: "E_PARSE",
10589
+ source,
10590
+ file: this.options.filename,
10591
+ suggestion: "Use if/else statements instead.",
10592
+ phase: "parser"
10593
+ });
10594
+ }
10595
+ let re = toRipError(err, source, this.options.filename);
10596
+ if (re.phase === "parser" && lastLexedLoc) {
10597
+ re.line = lastLexedLoc.r ?? re.line;
10598
+ re.column = lastLexedLoc.c ?? re.column;
10599
+ re.length = lastLexedLoc.n || 1;
10019
10600
  }
10020
- throw parseError;
10601
+ throw re;
10021
10602
  }
10022
10603
  if (this.options.showSExpr) {
10023
10604
  console.log(formatSExpr(sexpr, 0, true));
@@ -10032,6 +10613,7 @@ if (typeof globalThis !== 'undefined') {
10032
10613
  let generator = new CodeEmitter({
10033
10614
  dataSection,
10034
10615
  source,
10616
+ filename: this.options.filename,
10035
10617
  skipPreamble: this.options.skipPreamble,
10036
10618
  skipRuntimes: this.options.skipRuntimes,
10037
10619
  skipExports: this.options.skipExports,
@@ -10095,8 +10677,8 @@ globalThis.zip ??= (...a) => a[0].map((_, i) => a.map(b => b[i]));
10095
10677
  return new CodeEmitter({}).getComponentRuntime();
10096
10678
  }
10097
10679
  // src/browser.js
10098
- var VERSION = "3.13.134";
10099
- var BUILD_DATE = "2026-04-04@08:49:20GMT";
10680
+ var VERSION = "3.13.136";
10681
+ var BUILD_DATE = "2026-04-10@10:36:35GMT";
10100
10682
  if (typeof globalThis !== "undefined") {
10101
10683
  if (!globalThis.__rip)
10102
10684
  new Function(getReactiveRuntime())();
@@ -10164,7 +10746,7 @@ globalThis.zip ??= (...a) => a[0].map((_, i) => a.map(b => b[i]));
10164
10746
  js += compileToJS(s.code, opts) + `
10165
10747
  `;
10166
10748
  } catch (e) {
10167
- console.error(`Rip compile error in ${s.url || "inline"}:`, e.message);
10749
+ console.error(formatError(e, { source: s.code, file: s.url || "inline", color: false }));
10168
10750
  }
10169
10751
  }
10170
10752
  if (js) {
@@ -10214,7 +10796,7 @@ ${js}
10214
10796
  const js = compileToJS(s.code, opts);
10215
10797
  compiled.push({ js, url: s.url || "inline" });
10216
10798
  } catch (e) {
10217
- console.error(`Rip compile error in ${s.url || "inline"}:`, e.message);
10799
+ console.error(formatError(e, { source: s.code, file: s.url || "inline", color: false }));
10218
10800
  }
10219
10801
  }
10220
10802
  if (!globalThis.__ripApp && runtimeTag) {
@@ -10348,7 +10930,7 @@ ${indented}`);
10348
10930
  globalThis._ = result;
10349
10931
  return result;
10350
10932
  } catch (error) {
10351
- console.error("Rip compilation error:", error.message);
10933
+ console.error(formatError(error, { source: code, color: false }));
10352
10934
  return;
10353
10935
  }
10354
10936
  }
@@ -11336,6 +11918,14 @@ ${indented}`);
11336
11918
  mp.appendChild(cached._target);
11337
11919
  currentComponent = cached;
11338
11920
  currentRoute = route.file;
11921
+ if (params)
11922
+ cached.params = params;
11923
+ if (query)
11924
+ cached.query = query;
11925
+ if (cached.mounted)
11926
+ cached.mounted();
11927
+ if (cached.load)
11928
+ await cached.load(params, query);
11339
11929
  } else {
11340
11930
  pageWrapper = document.createElement("div");
11341
11931
  pageWrapper.setAttribute("data-component", route.file);