Browse code

Fix bytecode interpreter to work on bigendian machines.

Török Edvin authored on 2009/08/18 16:03:26
Showing 3 changed files
... ...
@@ -204,33 +204,6 @@ static inline funcid_t readFuncID(struct cli_bc *bc, unsigned char *p,
204 204
     return id;
205 205
 }
206 206
 
207
-static inline operand_t readOperand(struct cli_bc_func *func, unsigned char *p,
208
-				    unsigned *off, unsigned len, char *ok)
209
-{
210
-    uint64_t v;
211
-    if ((p[*off]&0xf0) == 0x40 || p[*off] == 0x50) {
212
-	p[*off] |= 0x20;
213
-	/* TODO: unique constants */
214
-	func->constants = cli_realloc2(func->constants, (func->numConstants+1)*sizeof(*func->constants));
215
-	if (!func->constants) {
216
-	    *ok = 0;
217
-	    return MAX_OP;
218
-	}
219
-	v = readNumber(p, off, len, ok);
220
-	func->constants[func->numConstants] = v;
221
-	return func->numValues + func->numConstants++;
222
-    }
223
-    v = readNumber(p, off, len, ok);
224
-    if (!*ok)
225
-	return MAX_OP;
226
-    if (v >= func->numValues) {
227
-	cli_errmsg("Operand index exceeds bounds: %u >= %u!\n", (unsigned)v, (unsigned)func->numValues);
228
-	*ok = 0;
229
-	return MAX_OP;
230
-    }
231
-    return v;
232
-}
233
-
234 207
 static inline unsigned readFixedNumber(const unsigned char *p, unsigned *off,
235 208
 				       unsigned len, char *ok, unsigned width)
236 209
 {
... ...
@@ -257,6 +230,53 @@ static inline unsigned readFixedNumber(const unsigned char *p, unsigned *off,
257 257
     return n;
258 258
 }
259 259
 
260
+static inline operand_t readOperand(struct cli_bc_func *func, unsigned char *p,
261
+				    unsigned *off, unsigned len, char *ok)
262
+{
263
+    uint64_t v;
264
+    if ((p[*off]&0xf0) == 0x40 || p[*off] == 0x50) {
265
+	uint64_t *dest;
266
+	uint16_t ty;
267
+	p[*off] |= 0x20;
268
+	/* TODO: unique constants */
269
+	func->constants = cli_realloc2(func->constants, (func->numConstants+1)*sizeof(*func->constants));
270
+	if (!func->constants) {
271
+	    *ok = 0;
272
+	    return MAX_OP;
273
+	}
274
+	v = readNumber(p, off, len, ok);
275
+	dest = &func->constants[func->numConstants];
276
+	/* Write the constant to the correct place according to its type.
277
+	 * This is needed on big-endian machines, because constants are always
278
+	 * read as u64, but accesed as one of these types: u8, u16, u32, u64 */
279
+	*dest= 0;
280
+	ty = 8*readFixedNumber(p, off, len, ok, 1);
281
+	if (!ty) {
282
+	    cli_errmsg("bytecode: void type constant is invalid!\n");
283
+	    *ok = 0;
284
+	    return MAX_OP;
285
+	}
286
+	if (ty <= 8)
287
+	    *(uint8_t*)dest = v;
288
+	else if (ty <= 16)
289
+	    *(uint16_t*)dest = v;
290
+	else if (ty <= 32)
291
+	    *(uint32_t*)dest = v;
292
+	else
293
+	    *dest = v;
294
+	return func->numValues + func->numConstants++;
295
+    }
296
+    v = readNumber(p, off, len, ok);
297
+    if (!*ok)
298
+	return MAX_OP;
299
+    if (v >= func->numValues) {
300
+	cli_errmsg("Operand index exceeds bounds: %u >= %u!\n", (unsigned)v, (unsigned)func->numValues);
301
+	*ok = 0;
302
+	return MAX_OP;
303
+    }
304
+    return v;
305
+}
306
+
260 307
 static inline unsigned char *readData(const unsigned char *p, unsigned *off, unsigned len, char *ok, unsigned *datalen)
261 308
 {
262 309
     unsigned char *dat, *q;
... ...
@@ -638,13 +658,14 @@ static int parseBB(struct cli_bc *bc, unsigned func, unsigned bb, unsigned char
638 638
 	    cli_errmsg("Invalid opcode: %u\n", inst.opcode);
639 639
 	    return CL_EMALFDB;
640 640
 	}
641
+
641 642
 	switch (inst.opcode) {
642 643
 	    case OP_JMP:
643 644
 		inst.u.jump = readBBID(bcfunc, buffer, &offset, len, &ok);
644 645
 		break;
645 646
 	    case OP_RET:
646
-		inst.u.unaryop = readOperand(bcfunc, buffer, &offset, len, &ok);
647 647
 		inst.type = readNumber(buffer, &offset, len, &ok);
648
+		inst.u.unaryop = readOperand(bcfunc, buffer, &offset, len, &ok);
648 649
 		break;
649 650
 	    case OP_BRANCH:
650 651
 		inst.u.branch.condition = readOperand(bcfunc, buffer, &offset, len, &ok);
... ...
@@ -688,6 +709,19 @@ static int parseBB(struct cli_bc *bc, unsigned func, unsigned bb, unsigned char
688 688
 			(1ull<<inst.u.cast.mask)-1 :
689 689
 			~0ull;
690 690
 		break;
691
+	    case OP_ICMP_EQ:
692
+	    case OP_ICMP_NE:
693
+	    case OP_ICMP_UGT:
694
+	    case OP_ICMP_UGE:
695
+	    case OP_ICMP_ULT:
696
+	    case OP_ICMP_ULE:
697
+	    case OP_ICMP_SGT:
698
+	    case OP_ICMP_SGE:
699
+	    case OP_ICMP_SLE:
700
+	    case OP_ICMP_SLT:
701
+		/* instruction type must be correct before readOperand! */
702
+		inst.type = readNumber(buffer, &offset, len, &ok);
703
+		/* fall-through */
691 704
 	    default:
692 705
 		numOp = operand_counts[inst.opcode];
693 706
 		switch (numOp) {
... ...
@@ -718,31 +752,17 @@ static int parseBB(struct cli_bc *bc, unsigned func, unsigned bb, unsigned char
718 718
 		       bcfunc->insn_idx+BB->numInsts, bcfunc->numInsts);
719 719
 	    return CL_EMALFDB;
720 720
 	}
721
-	switch (inst.opcode) {
722
-	    default:
723
-		break;
724
-	    case OP_ICMP_EQ:
725
-	    case OP_ICMP_NE:
726
-	    case OP_ICMP_UGT:
727
-	    case OP_ICMP_UGE:
728
-	    case OP_ICMP_ULT:
729
-	    case OP_ICMP_ULE:
730
-	    case OP_ICMP_SGT:
731
-	    case OP_ICMP_SGE:
732
-	    case OP_ICMP_SLE:
733
-	    case OP_ICMP_SLT:
734
-		inst.type = get_type(bcfunc, inst.u.binop[0]);
735
-		break;
736
-	}
737 721
 	inst.interp_op = inst.opcode*5;
738
-	if (inst.type > 1 && inst.type <= 8)
739
-	    inst.interp_op += 1;
740
-	else if (inst.type <= 16)
741
-	    inst.interp_op += 2;
742
-	else if (inst.type <= 32)
743
-	    inst.interp_op += 3;
744
-	else if (inst.type <= 64)
745
-	    inst.interp_op += 4;
722
+	if (inst.type > 1) {
723
+	    if (inst.type <= 8)
724
+		inst.interp_op += 1;
725
+	    else if (inst.type <= 16)
726
+		inst.interp_op += 2;
727
+	    else if (inst.type <= 32)
728
+		inst.interp_op += 3;
729
+	    else if (inst.type <= 64)
730
+		inst.interp_op += 4;
731
+	}
746 732
 	BB->insts[BB->numInsts++] = inst;
747 733
     }
748 734
     if (bb+1 == bc->funcs[func].numBB) {
... ...
@@ -883,7 +903,7 @@ int cli_bytecode_run(const struct cli_bc *bc, struct cli_bc_ctx *ctx)
883 883
 
884 884
 uint64_t cli_bytecode_context_getresult_int(struct cli_bc_ctx *ctx)
885 885
 {
886
-    return *(uint64_t*)ctx->values;/*XXX*/
886
+    return *(uint32_t*)ctx->values;/*XXX*/
887 887
 //    return ctx->values[ctx->numParams];
888 888
 }
889 889
 
... ...
@@ -4,350 +4,350 @@ E``
4 4
 A`Lbabb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bb`bFbbbaa
5 5
 Bb`b`oa`abb`baaoa`acb`baboa`adb`bacoa`aeb`badoa`afb`baeoa`agb`bafoa`ahb`bagoa`aib`bahoa`ajb`baioa`akb`bajoa`alb`bakoa`amb`baloa`anb`bamoa`aob`banoa`b`ab`baooa`baab`bb`aoa`bbab`bbaaa`aa`b`bbbaa`baaabb`bbcaa`bbaacb`bbdaa`bcaadb`bbeaa`bdaaeb`bbfaa`beaafb`bbgaa`bfaagb`bbhaa`bgaahb`bbiaa`bhaaib`bbjaa`biaajb`bbkaa`bjaakb`bblaa`bkaalb`bbmaa`blaamb`bbnaa`bmaanb`bboaa`bnaaob`bb`ba`boab`aTcab`bb`bE
6 6
 A`Lb`cahaab`bahaab`bahaab`bahaab`bb`aaab`bb`aaab`bb`aaab`bb`aaab`bb`baab`bb`baab`bb`baab`bb`baab`bb`daab`bb`daab`bb`daab`bb`daab`bFbaebab
7
-Bah`oabbcaAaAaaaaada`AbTaaaaabaa
8
-Bb`baboaabga@Tcaabb`b
9
-BahacoabbcaAaBooaaaddaac@Taaadadac
10
-Bb`baeoaabga@Tcaaeb`b
11
-BahafoabbcaBooBooaaagdaafBnoTaaagafae
12
-Bb`bahoaabga@Tcaahb`b
13
-BahaioabbcaBooAaaaajdaai@Taaajahag
14
-Bb`bakoaabga@Tcaakb`b
15
-Bb`aaloabbdaAaAaaaamdaalAbTaaamajai
16
-Bb`banoaabga@Tcaanb`b
17
-Bb`aaooabbdaAaDooooaab`adaao@Taab`aalak
18
-Bb`bbaaoaabga@Tcabaab`b
19
-Bb`abbaoabbdaDooooDooooaabcadabbaDnoooTaabcaanam
20
-Bb`bbdaoaabga@Tcabdab`b
21
-Bb`abeaoabbdaDooooAaaabfadabea@Taabfab`aao
22
-Bb`bbgaoaabga@Tcabgab`b
23
-Bb`bbhaoabbeaAaAaaabiadabhaAbTaabiabbabaa
24
-Bb`bbjaoaabga@Tcabjab`b
25
-Bb`bbkaoabbeaAaHooooooooaabladabka@Taablabdabca
26
-Bb`bbmaoaabga@Tcabmab`b
27
-Bb`bbnaoabbeaHooooooooHooooooooaaboadabnaHnoooooooTaaboabfabea
28
-Bb`bb`boaabga@Tcab`bb`b
29
-Bb`bbaboabbeaHooooooooAaaabbbdabab@Taabbbbhabga
30
-Bb`bbcboaabga@Tcabcbb`b
31
-Bb`dbdboabbfaAaAaaabebdabdbAbTaabebbjabia
32
-Bb`bbfboaabga@Tcabfbb`b
33
-Bb`dbgboabbfaAaPooooooooooooooooaabhbdabgb@Taabhbblabka
34
-Bb`bbiboaabga@Tcabibb`b
35
-Bb`dbjboabbfaPooooooooooooooooPooooooooooooooooaabkbdabjbPnoooooooooooooooTaabkbbnabma
36
-Bb`bblboaabga@Tcablbb`b
37
-Bb`dbmboabbfaPooooooooooooooooAaaabnbdabmb@Taabnbb`bboa
38
-Bb`bboboaabga@Tcabobb`b
39
-BTcaAab`bE
7
+Bah`oabbcaAaaAaaaaaadaah`AbaTaaaaabaa
8
+Bb`baboaabga@dTcab`bab
9
+BahacoabbcaAaaBooaaaaddaahac@aTaaadadac
10
+Bb`baeoaabga@dTcab`bae
11
+BahafoabbcaBooaBooaaaagdaahafBnoaTaaagafae
12
+Bb`bahoaabga@dTcab`bah
13
+BahaioabbcaBooaAaaaaajdaahai@aTaaajahag
14
+Bb`bakoaabga@dTcab`bak
15
+Bb`aaloabbdaAabAabaaamdab`aalAbbTaaamajai
16
+Bb`banoaabga@dTcab`ban
17
+Bb`aaooabbdaAabDoooobaab`adab`aao@bTaab`aalak
18
+Bb`bbaaoaabga@dTcab`bbaa
19
+Bb`abbaoabbdaDoooobDoooobaabcadab`abbaDnooobTaabcaanam
20
+Bb`bbdaoaabga@dTcab`bbda
21
+Bb`abeaoabbdaDoooobAabaabfadab`abea@bTaabfab`aao
22
+Bb`bbgaoaabga@dTcab`bbga
23
+Bb`bbhaoabbeaAadAadaabiadab`bbhaAbdTaabiabbabaa
24
+Bb`bbjaoaabga@dTcab`bbja
25
+Bb`bbkaoabbeaAadHoooooooodaabladab`bbka@dTaablabdabca
26
+Bb`bbmaoaabga@dTcab`bbma
27
+Bb`bbnaoabbeaHoooooooodHoooooooodaaboadab`bbnaHnooooooodTaaboabfabea
28
+Bb`bb`boaabga@dTcab`bb`b
29
+Bb`bbaboabbeaHoooooooodAadaabbbdab`bbab@dTaabbbbhabga
30
+Bb`bbcboaabga@dTcab`bbcb
31
+Bb`dbdboabbfaAahAahaabebdab`dbdbAbhTaabebbjabia
32
+Bb`bbfboaabga@dTcab`bbfb
33
+Bb`dbgboabbfaAahPoooooooooooooooohaabhbdab`dbgb@hTaabhbblabka
34
+Bb`bbiboaabga@dTcab`bbib
35
+Bb`dbjboabbfaPoooooooooooooooohPoooooooooooooooohaabkbdab`dbjbPnooooooooooooooohTaabkbbnabma
36
+Bb`bblboaabga@dTcab`bblb
37
+Bb`dbmboabbfaPoooooooooooooooohAahaabnbdab`dbmb@hTaabnbb`bboa
38
+Bb`bboboaabga@dTcab`bbob
39
+BTcab`bAadE
40 40
 A`Lbdbahaab`bahaab`bahaab`bb`aaab`bb`aaab`bb`aaab`bb`baab`bb`baab`bb`baab`bb`daab`bb`daab`bb`daab`bFbmcbia
41
-Bah`oabbhaBooAaaaaada`BnoTaaaaabaa
42
-Bb`baboaabga@Tcaabb`b
43
-BahacoabbhaAaBooaaaddaacAbTaaadadac
44
-Bb`baeoaabga@Tcaaeb`b
45
-BahafoabbhaAaAaaaagdaaf@Taaagafae
46
-Bb`bahoaabga@Tcaahb`b
47
-Bb`aaioabbiaDooooAaaaajdaaiDnoooTaaajahag
48
-Bb`bakoaabga@Tcaakb`b
49
-Bb`aaloabbiaAaDooooaaamdaalAbTaaamajai
50
-Bb`banoaabga@Tcaanb`b
51
-Bb`aaooabbiaAaAaaab`adaao@Taab`aalak
52
-Bb`bbaaoaabga@Tcabaab`b
53
-Bb`bbbaoabbjaHooooooooAaaabcadabbaHnoooooooTaabcaanam
54
-Bb`bbdaoaabga@Tcabdab`b
55
-Bb`bbeaoabbjaAaHooooooooaabfadabeaAbTaabfab`aao
56
-Bb`bbgaoaabga@Tcabgab`b
57
-Bb`bbhaoabbjaAaAaaabiadabha@Taabiabbabaa
58
-Bb`bbjaoaabga@Tcabjab`b
59
-Bb`dbkaoabbkaPooooooooooooooooAaaabladabkaPnoooooooooooooooTaablabdabca
60
-Bb`bbmaoaabga@Tcabmab`b
61
-Bb`dbnaoabbkaAaPooooooooooooooooaaboadabnaAbTaaboabfabea
62
-Bb`bb`boaabga@Tcab`bb`b
63
-Bb`dbaboabbkaAaAaaabbbdabab@Taabbbbhabga
64
-Bb`bbcboaabga@Tcabcbb`b
65
-BTcaAdb`bE
41
+Bah`oabbhaBooaAaaaaaadaah`BnoaTaaaaabaa
42
+Bb`baboaabga@dTcab`bab
43
+BahacoabbhaAaaBooaaaaddaahacAbaTaaadadac
44
+Bb`baeoaabga@dTcab`bae
45
+BahafoabbhaAaaAaaaaagdaahaf@aTaaagafae
46
+Bb`bahoaabga@dTcab`bah
47
+Bb`aaioabbiaDoooobAabaaajdab`aaiDnooobTaaajahag
48
+Bb`bakoaabga@dTcab`bak
49
+Bb`aaloabbiaAabDoooobaaamdab`aalAbbTaaamajai
50
+Bb`banoaabga@dTcab`ban
51
+Bb`aaooabbiaAabAabaab`adab`aao@bTaab`aalak
52
+Bb`bbaaoaabga@dTcab`bbaa
53
+Bb`bbbaoabbjaHoooooooodAadaabcadab`bbbaHnooooooodTaabcaanam
54
+Bb`bbdaoaabga@dTcab`bbda
55
+Bb`bbeaoabbjaAadHoooooooodaabfadab`bbeaAbdTaabfab`aao
56
+Bb`bbgaoaabga@dTcab`bbga
57
+Bb`bbhaoabbjaAadAadaabiadab`bbha@dTaabiabbabaa
58
+Bb`bbjaoaabga@dTcab`bbja
59
+Bb`dbkaoabbkaPoooooooooooooooohAahaabladab`dbkaPnooooooooooooooohTaablabdabca
60
+Bb`bbmaoaabga@dTcab`bbma
61
+Bb`dbnaoabbkaAahPoooooooooooooooohaaboadab`dbnaAbhTaaboabfabea
62
+Bb`bb`boaabga@dTcab`bb`b
63
+Bb`dbaboabbkaAahAahaabbbdab`dbab@hTaabbbbhabga
64
+Bb`bbcboaabga@dTcab`bbcb
65
+BTcab`bAddE
66 66
 A`Lb`cahaab`bahaab`bahaab`bahaab`bb`aaab`bb`aaab`bb`aaab`bb`aaab`bb`baab`bb`baab`bb`baab`bb`baab`bb`daab`bb`daab`bb`daab`bb`daab`bFbaebab
67
-Bah`oabblaBooAaaaaada`BooTaaaaabaa
68
-Bb`baboaabga@Tcaabb`b
69
-BahacoabblaBooBooaaaddaacAaTaaadadac
70
-Bb`baeoaabga@Tcaaeb`b
71
-BahafoabblaAaAaaaagdaafAaTaaagafae
72
-Bb`bahoaabga@Tcaahb`b
73
-BahaioabblaBaaBcbaaajdaaiBceTaaajahag
74
-Bb`bakoaabga@Tcaakb`b
75
-Bb`aaloabbmaDooooAaaaamdaalDooooTaaamajai
76
-Bb`banoaabga@Tcaanb`b
77
-Bb`aaooabbmaDooooDooooaab`adaaoAaTaab`aalak
78
-Bb`bbaaoaabga@Tcabaab`b
79
-Bb`abbaoabbmaAaAaaabcadabbaAaTaabcaanam
80
-Bb`bbdaoaabga@Tcabdab`b
81
-Bb`abeaoabbmaBckCgfcaabfadabeaDe`afTaabfab`aao
82
-Bb`bbgaoaabga@Tcabgab`b
83
-Bb`bbhaoabbnaHooooooooAaaabiadabhaHooooooooTaabiabbabaa
84
-Bb`bbjaoaabga@Tcabjab`b
85
-Bb`bbkaoabbnaHooooooooHooooooooaabladabkaAaTaablabdabca
86
-Bb`bbmaoaabga@Tcabmab`b
87
-Bb`bbnaoabbnaAaAaaaboadabnaAaTaaboabfabea
88
-Bb`bb`boaabga@Tcab`bb`b
89
-Bb`bbaboabbnaE`emkbEhnmdmaabbbdababH`h`jlgbgTaabbbbhabga
90
-Bb`bbcboaabga@Tcabcbb`b
91
-Bb`dbdboabboaPooooooooooooooooAaaabebdabdbPooooooooooooooooTaabebbjabia
92
-Bb`bbfboaabga@Tcabfbb`b
93
-Bb`dbgboabboaPooooooooooooooooPooooooooooooooooaabhbdabgbAaTaabhbblabka
94
-Bb`bbiboaabga@Tcabibb`b
95
-Bb`dbjboabboaAaAaaabkbdabjbAaTaabkbbnabma
96
-Bb`bblboaabga@Tcablbb`b
97
-Bb`dbmboabboaImaghnanbdIogjdckg`baabnbdabmbPcfifjghokjjemflgTaabnbb`bboa
98
-Bb`bboboaabga@Tcabobb`b
99
-BTcaB`ab`bE
67
+Bah`oabblaBooaAaaaaaadaah`BooaTaaaaabaa
68
+Bb`baboaabga@dTcab`bab
69
+BahacoabblaBooaBooaaaaddaahacAaaTaaadadac
70
+Bb`baeoaabga@dTcab`bae
71
+BahafoabblaAaaAaaaaagdaahafAaaTaaagafae
72
+Bb`bahoaabga@dTcab`bah
73
+BahaioabblaBaaaBcbaaaajdaahaiBceaTaaajahag
74
+Bb`bakoaabga@dTcab`bak
75
+Bb`aaloabbmaDoooobAabaaamdab`aalDoooobTaaamajai
76
+Bb`banoaabga@dTcab`ban
77
+Bb`aaooabbmaDoooobDoooobaab`adab`aaoAabTaab`aalak
78
+Bb`bbaaoaabga@dTcab`bbaa
79
+Bb`abbaoabbmaAabAabaabcadab`abbaAabTaabcaanam
80
+Bb`bbdaoaabga@dTcab`bbda
81
+Bb`abeaoabbmaBckbCgfcbaabfadab`abeaDe`afbTaabfab`aao
82
+Bb`bbgaoaabga@dTcab`bbga
83
+Bb`bbhaoabbnaHoooooooodAadaabiadab`bbhaHoooooooodTaabiabbabaa
84
+Bb`bbjaoaabga@dTcab`bbja
85
+Bb`bbkaoabbnaHoooooooodHoooooooodaabladab`bbkaAadTaablabdabca
86
+Bb`bbmaoaabga@dTcab`bbma
87
+Bb`bbnaoabbnaAadAadaaboadab`bbnaAadTaaboabfabea
88
+Bb`bb`boaabga@dTcab`bb`b
89
+Bb`bbaboabbnaE`emkbdEhnmdmdaabbbdab`bbabH`h`jlgbgdTaabbbbhabga
90
+Bb`bbcboaabga@dTcab`bbcb
91
+Bb`dbdboabboaPoooooooooooooooohAahaabebdab`dbdbPoooooooooooooooohTaabebbjabia
92
+Bb`bbfboaabga@dTcab`bbfb
93
+Bb`dbgboabboaPoooooooooooooooohPoooooooooooooooohaabhbdab`dbgbAahTaabhbblabka
94
+Bb`bbiboaabga@dTcab`bbib
95
+Bb`dbjboabboaAahAahaabkbdab`dbjbAahTaabkbbnabma
96
+Bb`bblboaabga@dTcab`bblb
97
+Bb`dbmboabboaImaghnanbdhIogjdckg`bhaabnbdab`dbmbPcfifjghokjjemflghTaabnbb`bboa
98
+Bb`bboboaabga@dTcab`bbob
99
+BTcab`bB`adE
100 100
 A`Lacb`aaab`bFafac
101
-Bb`a`oabbabDjnmoAgaaaada`DfddbTaaaaabaa
102
-Bb`baboaabga@Tcaabb`b
103
-BTcaB`db`bE
101
+Bb`a`oabbabDjnmobAgbaaaadab`a`DfddbbTaaaaabaa
102
+Bb`baboaabga@dTcab`bab
103
+BTcab`bB`ddE
104 104
 A`Lbfaahaab`bahaab`bahaab`bahaab`bahahaab`bahaab`bb`aaab`bFbebao
105
-Bah`oabbdbAaBooaaaada`BooTaaaaabaa
106
-Bb`baboaabga@Tcaabb`b
107
-BahacoabbdbBooAaaaaddaacBooTaaadadac
108
-Bb`baeoaabga@Tcaaeb`b
109
-BahafoabbdbBooBooaaagdaafAaTaaagafae
110
-Bb`bahoaabga@Tcaahb`b
111
-BahaioabbdbAaAaaaajdaaiAaTaaajahag
112
-Bb`bakoaabga@Tcaakb`b
113
-BahaloabbcaBnoAeahamoabbdbAfalaaandaamAbTaaanajai
114
-Bb`baooaabga@Tcaaob`b
115
-Bahb`aoabbdbalAbaabaadab`aAaTaabaaalak
116
-Bb`bbbaoaabga@Tcabbab`b
117
-Bb`abcaoabbebDjnmoAgaabdadabcaDdkooTaabdaanam
118
-Bb`bbeaoaabga@Tcabeab`b
119
-BTcaC``ab`bE
105
+Bah`oabbdbAaaBooaaaaadaah`BooaTaaaaabaa
106
+Bb`baboaabga@dTcab`bab
107
+BahacoabbdbBooaAaaaaaddaahacBooaTaaadadac
108
+Bb`baeoaabga@dTcab`bae
109
+BahafoabbdbBooaBooaaaagdaahafAaaTaaagafae
110
+Bb`bahoaabga@dTcab`bah
111
+BahaioabbdbAaaAaaaaajdaahaiAaaTaaajahag
112
+Bb`bakoaabga@dTcab`bak
113
+BahaloabbcaBnoaAeaahamoabbdbAfaalaaandaahamAbaTaaanajai
114
+Bb`baooaabga@dTcab`bao
115
+Bahb`aoabbdbalAbaaabaadaahb`aAaaTaabaaalak
116
+Bb`bbbaoaabga@dTcab`bbba
117
+Bb`abcaoabbebDjnmobAgbaabdadab`abcaDdkoobTaabdaanam
118
+Bb`bbeaoaabga@dTcab`bbea
119
+BTcab`bC``adE
120 120
 A`Laoahaab`bahaab`bahaab`bb`aaab`bb`aaab`bFbjaak
121
-Bah`oabblbBooAaaaaada`@Taaaaabaa
122
-Bb`baboaabga@Tcaabb`b
123
-BahacoabbhbBooAaaaaddaac@Taaadadac
124
-Bb`baeoaabga@Tcaaeb`b
125
-BahafoabblbAaBooaaagdaaf@Taaagafae
126
-Bb`bahoaabga@Tcaahb`b
127
-Bb`aaioabbmbDinmoAgaaajdaaiDmoooTaaajahag
128
-Bb`bakoaabga@Tcaakb`b
129
-Bb`aaloabbibDinmoAgaaamdaalAfTaaamajai
130
-Bb`banoaabga@Tcaanb`b
131
-BTcaC``db`bE
121
+Bah`oabblbBooaAaaaaaadaah`@aTaaaaabaa
122
+Bb`baboaabga@dTcab`bab
123
+BahacoabbhbBooaAaaaaaddaahac@aTaaadadac
124
+Bb`baeoaabga@dTcab`bae
125
+BahafoabblbAaaBooaaaagdaahaf@aTaaagafae
126
+Bb`bahoaabga@dTcab`bah
127
+Bb`aaioabbmbDinmobAgbaaajdab`aaiDmooobTaaajahag
128
+Bb`bakoaabga@dTcab`bak
129
+Bb`aaloabbibDinmobAgbaaamdab`aalAfbTaaamajai
130
+Bb`banoaabga@dTcab`ban
131
+BTcab`bC``ddE
132 132
 A`Lalahaab`bahaab`bahaab`bb`aaab`bFbeaai
133
-Bah`oabb`cAaAaaaaada`AbTaaaaabaa
134
-Bb`baboaabga@Tcaabb`b
135
-Bahacoabb`cAa@aaaddaacAaTaaadadac
136
-Bb`baeoaabga@Tcaaeb`b
137
-Bahafoabb`cBnoAbaaagdaafBhoTaaagafae
138
-Bb`bahoaabga@Tcaahb`b
139
-Bb`aaioabbacDnojoAbaaajdaaiDhoknTaaajahag
140
-Bb`bakoaabga@Tcaakb`b
141
-BTcaD```ab`bE
133
+Bah`oabb`cAaaAadaaaadaah`AbaTaaaaabaa
134
+Bb`baboaabga@dTcab`bab
135
+Bahacoabb`cAaa@daaaddaahacAaaTaaadadac
136
+Bb`baeoaabga@dTcab`bae
137
+Bahafoabb`cBnoaAbdaaagdaahafBhoaTaaagafae
138
+Bb`bahoaabga@dTcab`bah
139
+Bb`aaioabbacDnojobAbdaaajdab`aaiDhoknbTaaajahag
140
+Bb`bakoaabga@dTcab`bak
141
+BTcab`bD```adE
142 142
 A`Lagahaab`bahahaab`bFalae
143
-Bah`oabbdcBnoAaaaaada`BogTaaaaabaa
144
-Bb`baboaabga@Tcaabb`b
145
-BahacoabbcaBnoAeahadoabbdcacAaaaaedaadAaTaaaeadac
146
-Bb`bafoaabga@Tcaafb`b
147
-BTcaD```db`bE
143
+Bah`oabbdcBnoaAadaaaadaah`BogaTaaaaabaa
144
+Bb`baboaabga@dTcab`bab
145
+BahacoabbcaBnoaAeaahadoabbdcacAadaaaedaahadAaaTaaaeadac
146
+Bb`bafoaabga@dTcab`baf
147
+BTcab`bD```ddE
148 148
 A`Lafahaab`bahaab`bFakae
149
-Bah`oabbhcBnoAaaaaada`BooTaaaaabaa
150
-Bb`baboaabga@Tcaabb`b
151
-BahacoabbhcBngAaaaaddaacBocTaaadadac
152
-Bb`baeoaabga@Tcaaeb`b
153
-BTcaE````ab`bE
149
+Bah`oabbhcBnoaAaaaaaadaah`BooaTaaaaabaa
150
+Bb`baboaabga@dTcab`bab
151
+BahacoabbhcBngaAaaaaaddaahacBocaTaaadadac
152
+Bb`baeoaabga@dTcab`bae
153
+BTcab`bE````adE
154 154
 A`Lalahaab`bb`aaab`bb`baab`bb`daab`bFbeaai
155
-Bah`oabblcBjeAoaaaada`AjTaaaaabaa
156
-Bb`baboaabga@Tcaabb`b
157
-Bb`aacoabbmcDlkjeD```oaaaddaacD```eTaaadadac
158
-Bb`baeoaabga@Tcaaeb`b
159
-Bb`bafoabbncHdcbalkjeG``````oaaagdaafG``````jTaaagafae
160
-Bb`bahoaabga@Tcaahb`b
161
-Bb`daioabbocPdcbahgfedcbalkjeG``````oaaajdaaiG``````fTaaajahag
162
-Bb`bakoaabga@Tcaakb`b
163
-BTcaE````db`bE
155
+Bah`oabblcBjeaAoaaaaadaah`AjaTaaaaabaa
156
+Bb`baboaabga@dTcab`bab
157
+Bb`aacoabbmcDlkjebD```obaaaddab`aacD```ebTaaadadac
158
+Bb`baeoaabga@dTcab`bae
159
+Bb`bafoabbncHdcbalkjedG``````odaaagdab`bafG``````jdTaaagafae
160
+Bb`bahoaabga@dTcab`bah
161
+Bb`daioabbocPdcbahgfedcbalkjehG``````ohaaajdab`daiG``````fhTaaajahag
162
+Bb`bakoaabga@dTcab`bak
163
+BTcab`bE````ddE
164 164
 A`Lalahaab`bb`aaab`bb`baab`bb`daab`bFbeaai
165
-Bah`oabb`dBjeAoaaaada`BoeTaaaaabaa
166
-Bb`baboaabga@Tcaabb`b
167
-Bb`aacoabbadDlkjeD```oaaaddaacDlkjoTaaadadac
168
-Bb`baeoaabga@Tcaaeb`b
169
-Bb`bafoabbbdHdcbalkjeG``````oaaagdaafHdcbalkoeTaaagafae
170
-Bb`bahoaabga@Tcaahb`b
171
-Bb`daioabbcdPdcbahgfedcbalkjeG``````oaaajdaaiPdcbahgoedcbalkjeTaaajahag
172
-Bb`bakoaabga@Tcaakb`b
173
-BTcaF`````ab`bE
165
+Bah`oabb`dBjeaAoaaaaadaah`BoeaTaaaaabaa
166
+Bb`baboaabga@dTcab`bab
167
+Bb`aacoabbadDlkjebD```obaaaddab`aacDlkjobTaaadadac
168
+Bb`baeoaabga@dTcab`bae
169
+Bb`bafoabbbdHdcbalkjedG``````odaaagdab`bafHdcbalkoedTaaagafae
170
+Bb`bahoaabga@dTcab`bah
171
+Bb`daioabbcdPdcbahgfedcbalkjehG``````ohaaajdab`daiPdcbahgoedcbalkjehTaaajahag
172
+Bb`bakoaabga@dTcab`bak
173
+BTcab`bF`````adE
174 174
 A`Lalahaab`bb`aaab`bb`baab`bb`daab`bFbeaai
175
-Bah`oabbddBjeB`oaaaada`BjjTaaaaabaa
176
-Bb`baboaabga@Tcaabb`b
177
-Bb`aacoabbedDjejeD``ooaaaddaacDjeejTaaadadac
178
-Bb`baeoaabga@Tcaaeb`b
179
-Bb`bafoabbfdHjejejejeH``ooooooaaagdaafHjeejejejTaaagafae
180
-Bb`bahoaabga@Tcaahb`b
181
-Bb`daioabbgdPjejejejejejejejeP``ooooooooooooooaaajdaaiPjeejejejejejejejTaaajahag
182
-Bb`bakoaabga@Tcaakb`b
183
-BTcaF`````db`bE
175
+Bah`oabbddBjeaB`oaaaaadaah`BjjaTaaaaabaa
176
+Bb`baboaabga@dTcab`bab
177
+Bb`aacoabbedDjejebD``oobaaaddab`aacDjeejbTaaadadac
178
+Bb`baeoaabga@dTcab`bae
179
+Bb`bafoabbfdHjejejejedH``oooooodaaagdab`bafHjeejejejdTaaagafae
180
+Bb`bahoaabga@dTcab`bah
181
+Bb`daioabbgdPjejejejejejejejehP``oooooooooooooohaaajdab`daiPjeejejejejejejejhTaaajahag
182
+Bb`bakoaabga@dTcab`bak
183
+BTcab`bF`````ddE
184 184
 A`Laib`aaab`bb`baab`bb`daab`bFb`aag
185
-Bb`a`oaabhdBloaaaada`DloooTaaaaabaa
186
-Bb`baboaabga@Tcaabb`b
187
-Bb`bacoaabidDjoooaaaddaacHjoooooooTaaadadac
188
-Bb`baeoaabga@Tcaaeb`b
189
-Bb`dafoaabjdHjoooooooaaagdaafPjoooooooooooooooTaaagafae
190
-Bb`bahoaabga@Tcaahb`b
191
-BTcaG``````ab`bE
185
+Bb`a`oaabhdBloaaaaadab`a`DlooobTaaaaabaa
186
+Bb`baboaabga@dTcab`bab
187
+Bb`bacoaabidDjooobaaaddab`bacHjooooooodTaaadadac
188
+Bb`baeoaabga@dTcab`bae
189
+Bb`dafoaabjdHjooooooodaaagdab`dafPjooooooooooooooohTaaagafae
190
+Bb`bahoaabga@dTcab`bah
191
+BTcab`bG``````adE
192 192
 A`Laib`aaab`bb`baab`bb`daab`bFb`aag
193
-Bb`a`oaabkdBloaaaada`BloTaaaaabaa
194
-Bb`baboaabga@Tcaabb`b
195
-Bb`bacoaabldDloooaaaddaacDloooTaaadadac
196
-Bb`baeoaabga@Tcaaeb`b
197
-Bb`dafoaabmdHloooooooaaagdaafHloooooooTaaagafae
198
-Bb`bahoaabga@Tcaahb`b
199
-BTcaG``````db`bE
193
+Bb`a`oaabkdBloaaaaadab`a`BlobTaaaaabaa
194
+Bb`baboaabga@dTcab`bab
195
+Bb`bacoaabldDlooobaaaddab`bacDlooodTaaadadac
196
+Bb`baeoaabga@dTcab`bae
197
+Bb`dafoaabmdHlooooooodaaagdab`dafHlooooooohTaaagafae
198
+Bb`bahoaabga@dTcab`bah
199
+BTcab`bG``````ddE
200 200
 A`Laiahaab`bb`aaab`bb`baab`bFb`aag
201
-Bah`oaabndDmnnoaaaada`BmnTaaaaabaa
202
-Bb`baboaabga@Tcaabb`b
203
-Bb`aacoaabodHmnnomjnmaaaddaacDmnnoTaaadadac
204
-Bb`baeoaabga@Tcaaeb`b
205
-Bb`bafoaab`ePonnkmnnomjnmonnkaaagdaafHonnkmnnoTaaagafae
206
-Bb`bahoaabga@Tcaahb`b
207
-BTcaH```````ab`bE
201
+Bah`oaabndDmnnobaaaadaah`BmnaTaaaaabaa
202
+Bb`baboaabga@dTcab`bab
203
+Bb`aacoaabodHmnnomjnmdaaaddab`aacDmnnobTaaadadac
204
+Bb`baeoaabga@dTcab`bae
205
+Bb`bafoaab`ePonnkmnnomjnmonnkhaaagdab`bafHonnkmnnodTaaagafae
206
+Bb`bahoaabga@dTcab`bah
207
+BTcab`bH```````adE
208 208
 A`Laob`baab`bb`baab`bb`baab`bb`baab`bb`baab`bFbjaak
209
-Bb`b`oadbaeHooooooooAb@Adaaaada`CijbTaaaaabaa
210
-Bb`baboaabga@Tcaabb`b
211
-Bb`bacoadbaeHooooooooHooooooooAaHooooooooaaaddaacCbbcTaaadadac
212
-Bb`baeoaabga@Tcaaeb`b
213
-Bb`bafoadbaeHoooooooo@AcHnoooooooaaagdaafCcjbTaaagafae
214
-Bb`bahoaabga@Tcaahb`b
215
-Bb`baioadbaeHoooooooo@Ac@aaajdaaiCcnbTaaajahag
216
-Bb`bakoaabga@Tcaakb`b
217
-Bb`baloadbaeHoooooooo@@HooooooooaaamdaalBkbTaaamajai
218
-Bb`banoaabga@Tcaanb`b
219
-BTcaH```````db`bE
209
+Bb`b`oadbaeHoooooooodAbd@dAddaaaadab`b`CijbdTaaaaabaa
210
+Bb`baboaabga@dTcab`bab
211
+Bb`bacoadbaeHoooooooodHoooooooodAadHoooooooodaaaddab`bacCbbcdTaaadadac
212
+Bb`baeoaabga@dTcab`bae
213
+Bb`bafoadbaeHooooooood@dAcdHnooooooodaaagdab`bafCcjbdTaaagafae
214
+Bb`bahoaabga@dTcab`bah
215
+Bb`baioadbaeHooooooood@dAcd@daaajdab`baiCcnbdTaaajahag
216
+Bb`bakoaabga@dTcab`bak
217
+Bb`baloadbaeHooooooood@d@dHoooooooodaaamdab`balBkbdTaaamajai
218
+Bb`banoaabga@dTcab`ban
219
+BTcab`bH```````ddE
220 220
 A`Lafb`baab`bb`baab`bFakae
221
-Bb`b`oacbbeAdAeAfaaaada`AeTaaaaabaa
222
-Bb`baboaabga@Tcaabb`b
223
-Bb`bacoacbbe@AeAfaaaddaacAfTaaadadac
224
-Bb`baeoaabga@Tcaaeb`b
225
-BTcaH```````hb`bE
221
+Bb`b`oacbbeAddAedAfdaaaadab`b`AedTaaaaabaa
222
+Bb`baboaabga@dTcab`bab
223
+Bb`bacoacbbe@dAedAfdaaaddab`bacAfdTaaadadac
224
+Bb`baeoaabga@dTcab`bae
225
+BTcab`bH```````hdE
226 226
 AbLaaahahahFabaa
227
-Bahaba`aa`TcaabahE
227
+Bahaba`aa`TcaahabE
228 228
 AbLaab`ab`ab`aFabaa
229
-Bb`aaba`aa`Tcaabb`aE
229
+Bb`aaba`aa`Tcab`aabE
230 230
 AbLaab`bb`bb`bFabaa
231
-Bb`baba`aa`Tcaabb`bE
231
+Bb`baba`aa`Tcab`babE
232 232
 AbLaab`db`db`dFabaa
233
-Bb`daba`aa`Tcaabb`dE
233
+Bb`daba`aa`Tcab`dabE
234 234
 AaLaab`bb`bFabaa
235
-Bb`baae`Aa`Tcaaab`bE
235
+Bb`baae`Aad`Tcab`baaE
236 236
 AbLaaahahahFabaa
237
-Bahabb``aaTcaabahE
237
+Bahabb``aaTcaahabE
238 238
 AbLaab`ab`ab`aFabaa
239
-Bb`aabb``aaTcaabb`aE
239
+Bb`aabb``aaTcab`aabE
240 240
 AbLaab`bb`bb`bFabaa
241
-Bb`babb``aaTcaabb`bE
241
+Bb`babb``aaTcab`babE
242 242
 AbLaab`db`db`dFabaa
243
-Bb`dabb``aaTcaabb`dE
243
+Bb`dabb``aaTcab`dabE
244 244
 AbLaaahahahFabaa
245
-Bahabc`aa`TcaabahE
245
+Bahabc`aa`TcaahabE
246 246
 AbLaab`ab`ab`aFabaa
247
-Bb`aabc`aa`Tcaabb`aE
247
+Bb`aabc`aa`Tcab`aabE
248 248
 AbLaab`bb`bb`bFabaa
249
-Bb`babc`aa`Tcaabb`bE
249
+Bb`babc`aa`Tcab`babE
250 250
 AbLaab`db`db`dFabaa
251
-Bb`dabc`aa`Tcaabb`dE
251
+Bb`dabc`aa`Tcab`dabE
252 252
 AbLaaahahahFabaa
253
-Bahabd``aaTcaabahE
253
+Bahabd``aaTcaahabE
254 254
 AbLaab`ab`ab`aFabaa
255
-Bb`aabd``aaTcaabb`aE
255
+Bb`aabd``aaTcab`aabE
256 256
 AbLaab`bb`bb`bFabaa
257
-Bb`babd``aaTcaabb`bE
257
+Bb`babd``aaTcab`babE
258 258
 AbLaab`db`db`dFabaa
259
-Bb`dabd``aaTcaabb`dE
259
+Bb`dabd``aaTcab`dabE
260 260
 AbLadahahb`bb`bb`bahFaeaa
261
-Bb`babo``b`baco`aab`bade`abacahaen`adTcaaeahE
261
+Bb`babo``b`baco`aab`bade`abacahaen`adTcaahaeE
262 262
 AbLadb`ab`ab`bb`bb`bb`aFaeaa
263
-Bb`babo``b`baco`aab`bade`abacb`aaen`adTcaaeb`aE
263
+Bb`babo``b`baco`aab`bade`abacb`aaen`adTcab`aaeE
264 264
 AbLaab`bb`bb`bFabaa
265
-Bb`babe``aaTcaabb`bE
265
+Bb`babe``aaTcab`babE
266 266
 AbLaab`db`db`dFabaa
267
-Bb`dabe``aaTcaabb`dE
267
+Bb`dabe``aaTcab`dabE
268 268
 AbLaaahahahFabaa
269
-Bahabf``aaTcaabahE
269
+Bahabf``aaTcaahabE
270 270
 AbLaab`ab`ab`aFabaa
271
-Bb`aabf``aaTcaabb`aE
271
+Bb`aabf``aaTcab`aabE
272 272
 AbLaab`bb`bb`bFabaa
273
-Bb`babf``aaTcaabb`bE
273
+Bb`babf``aaTcab`babE
274 274
 AbLaab`db`db`dFabaa
275
-Bb`dabf``aaTcaabb`dE
275
+Bb`dabf``aaTcab`dabE
276 276
 AbLadahahb`bb`bb`bahFaeaa
277
-Bb`babo``b`baco`aab`badg`abacahaen`adTcaaeahE
277
+Bb`babo``b`baco`aab`badg`abacahaen`adTcaahaeE
278 278
 AbLadb`ab`ab`bb`bb`bb`aFaeaa
279
-Bb`babo``b`baco`aab`badg`abacb`aaen`adTcaaeb`aE
279
+Bb`babo``b`baco`aab`badg`abacb`aaen`adTcab`aaeE
280 280
 AbLaab`bb`bb`bFabaa
281
-Bb`babg``aaTcaabb`bE
281
+Bb`babg``aaTcab`babE
282 282
 AbLaab`db`db`dFabaa
283
-Bb`dabg``aaTcaabb`dE
283
+Bb`dabg``aaTcab`dabE
284 284
 AbLacahb`bb`bb`bahFadaa
285
-Bb`babo``b`bach`abaaahadn`acTcaadahE
285
+Bb`babo``b`bach`abaaahadn`acTcaahadE
286 286
 AbLacb`ab`bb`bb`bb`aFadaa
287
-Bb`babo``b`bach`abaab`aadn`acTcaadb`aE
287
+Bb`babo``b`bach`abaab`aadn`acTcab`aadE
288 288
 AbLaab`bb`bb`bFabaa
289
-Bb`babh``aaTcaabb`bE
289
+Bb`babh``aaTcab`babE
290 290
 AbLabb`db`bb`db`dFacaa
291
-Bb`dab`aaab`dach``abTcaacb`dE
291
+Bb`dab`aaab`dach``abTcab`dacE
292 292
 AbLacahb`bb`bb`bahFadaa
293
-Bb`bab`a`b`baci`abaaahadn`acTcaadahE
293
+Bb`bab`a`b`baci`abaaahadn`acTcaahadE
294 294
 AbLacb`ab`bb`bb`bb`aFadaa
295
-Bb`bab`a`b`baci`abaab`aadn`acTcaadb`aE
295
+Bb`bab`a`b`baci`abaab`aadn`acTcab`aadE
296 296
 AbLaab`bb`bb`bFabaa
297
-Bb`babi``aaTcaabb`bE
297
+Bb`babi``aaTcab`babE
298 298
 AbLabb`db`bb`db`dFacaa
299
-Bb`dab`aaab`daci``abTcaacb`dE
299
+Bb`dab`aaab`daci``abTcab`dacE
300 300
 AbLadahahb`bb`bb`bahFaeaa
301
-Bb`babo``b`baco`aab`badj`abacahaen`adTcaaeahE
301
+Bb`babo``b`baco`aab`badj`abacahaen`adTcaahaeE
302 302
 AbLadb`ab`ab`bb`bb`bb`aFaeaa
303
-Bb`babo``b`baco`aab`badj`abacb`aaen`adTcaaeb`aE
303
+Bb`babo``b`baco`aab`badj`abacb`aaen`adTcab`aaeE
304 304
 AbLaab`bb`bb`bFabaa
305
-Bb`babj``aaTcaabb`bE
305
+Bb`babj``aaTcab`babE
306 306
 AbLaab`db`db`dFabaa
307
-Bb`dabj``aaTcaabb`dE
307
+Bb`dabj``aaTcab`dabE
308 308
 AbLaaahahahFabaa
309
-Bahabk`aa`TcaabahE
309
+Bahabk`aa`TcaahabE
310 310
 AbLaab`ab`ab`aFabaa
311
-Bb`aabk`aa`Tcaabb`aE
311
+Bb`aabk`aa`Tcab`aabE
312 312
 AbLaab`bb`bb`bFabaa
313
-Bb`babk`aa`Tcaabb`bE
313
+Bb`babk`aa`Tcab`babE
314 314
 AbLaab`db`db`dFabaa
315
-Bb`dabk`aa`Tcaabb`dE
315
+Bb`dabk`aa`Tcab`dabE
316 316
 AbLaaahahahFabaa
317
-Bahabl`aa`TcaabahE
317
+Bahabl`aa`TcaahabE
318 318
 AbLaab`ab`ab`aFabaa
319
-Bb`aabl`aa`Tcaabb`aE
319
+Bb`aabl`aa`Tcab`aabE
320 320
 AbLaab`bb`bb`bFabaa
321
-Bb`babl`aa`Tcaabb`bE
321
+Bb`babl`aa`Tcab`babE
322 322
 AbLaab`db`db`dFabaa
323
-Bb`dabl`aa`Tcaabb`dE
323
+Bb`dabl`aa`Tcab`dabE
324 324
 AbLaaahahahFabaa
325
-Bahabm`aa`TcaabahE
325
+Bahabm`aa`TcaahabE
326 326
 AbLaab`ab`ab`aFabaa
327
-Bb`aabm`aa`Tcaabb`aE
327
+Bb`aabm`aa`Tcab`aabE
328 328
 AbLaab`bb`bb`bFabaa
329
-Bb`babm`aa`Tcaabb`bE
329
+Bb`babm`aa`Tcab`babE
330 330
 AbLaab`db`db`dFabaa
331
-Bb`dabm`aa`Tcaabb`dE
331
+Bb`dabm`aa`Tcab`dabE
332 332
 AaLaaahb`aFabaa
333
-Bb`aaao``Tcaaab`aE
333
+Bb`aaao``Tcab`aaaE
334 334
 AaLaab`ab`bFabaa
335
-Bb`baao``Tcaaab`bE
335
+Bb`baao``Tcab`baaE
336 336
 AaLaab`bb`dFabaa
337
-Bb`daao``Tcaaab`dE
337
+Bb`daao``Tcab`daaE
338 338
 AaLaaahb`aFabaa
339
-Bb`aaa`a`Tcaaab`aE
339
+Bb`aaa`a`Tcab`aaaE
340 340
 AaLaab`ab`bFabaa
341
-Bb`baa`a`Tcaaab`bE
341
+Bb`baa`a`Tcab`baaE
342 342
 AaLaab`bb`dFabaa
343
-Bb`daa`a`Tcaaab`dE
343
+Bb`daa`a`Tcab`daaE
344 344
 AaLaab`aahFabaa
345
-Bahaan``TcaaaahE
345
+Bahaan``TcaahaaE
346 346
 AaLaab`bb`aFabaa
347
-Bb`aaan``Tcaaab`aE
347
+Bb`aaan``Tcab`aaaE
348 348
 AaLaab`db`bFabaa
349
-Bb`baan``Tcaaab`bE
349
+Bb`baan``Tcab`baaE
350 350
 AdLbmab`bb`bb`bb`baab`baab`bb`baab`bb`baab`bb`baab`bb`baab`bb`baab`bb`baab`bb`baab`bb`baab`bb`bFbnaaa
351
-Baaadma`aab`bae`aadaaafjaaaabb`bagl`aeAbb`bahnaafaeagaaaija`aab`bajl`ahAdb`baknaaiajahaaalmaaaabb`baml`akAhb`bannaalakamaaaoha`acb`bb`al`anB`ab`bbaanaaob`aanaabbafaaaacb`bbcal`baaB`bb`bbdanabbabaabcaaabeahaabacb`bbfal`bdaB`db`bbganabeabdabfaaabhafa`acb`bbial`bgaB`hb`bbjanabhabiabgaaabkada`aab`bblal`bjaC``ab`bbmanabkablabjaaabnadaaaabb`bboal`bmaC``bb`bb`bnabnabmaboaTcab`bb`bE
351
+Baaadmab`b`aab`bae`aadaaafjab`baaabb`bagl`aeAbdb`bahnaafaeagaaaijab`b`aab`bajl`ahAddb`baknaaiajahaaalmab`baaabb`baml`akAhdb`bannaalakamaaaohab`b`acb`bb`al`anB`adb`bbaanaaob`aanaabbafab`baaacb`bbcal`baaB`bdb`bbdanabbabaabcaaabeahab`babacb`bbfal`bdaB`ddb`bbganabeabdabfaaabhafab`b`acb`bbial`bgaB`hdb`bbjanabhabiabgaaabkadab`b`aab`bblal`bjaC``adb`bbmanabkablabjaaabnadab`baaabb`bboal`bmaC``bdb`bb`bnabnabmaboaTcab`bb`bE
352 352
 AcLabb`bb`bb`baab`bFacaa
353
-Baaacea`@b`badnaacaaabTcaadb`bE
353
+Baaaceab`b`@db`badnaacaaabTcab`badE
... ...
@@ -2,4 +2,4 @@ ClamBCaa`|`````|`aeaap`clamcoincidencejb
2 2
 Ted
3 3
 E``
4 4
 A`L`Faaaa
5
-BTcaHm``odcbab`bE
5
+BTcab`bHm``odcbadE