summaryrefslogtreecommitdiffstats
path: root/src/Bindings/tolua++.exe
blob: 86ab1d70f040c52d116becd9e824aa62535b0b5a (plain) (blame)
ofshex dumpascii
0000 4d 5a 90 00 03 00 00 00 04 00 00 00 ff ff 00 00 b8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 MZ......................@.......
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e8 00 00 00 ................................
0040 0e 1f ba 0e 00 b4 09 cd 21 b8 01 4c cd 21 54 68 69 73 20 70 72 6f 67 72 61 6d 20 63 61 6e 6e 6f ........!..L.!This.program.canno
0060 74 20 62 65 20 72 75 6e 20 69 6e 20 44 4f 53 20 6d 6f 64 65 2e 0d 0d 0a 24 00 00 00 00 00 00 00 t.be.run.in.DOS.mode....$.......
0080 83 7d 20 d6 c7 1c 4e 85 c7 1c 4e 85 c7 1c 4e 85 ce 64 ca 85 d8 1c 4e 85 ce 64 db 85 d6 1c 4e 85 .}....N...N...N..d....N..d....N.
00a0 ce 64 cd 85 99 1c 4e 85 ce 64 dd 85 c4 1c 4e 85 e0 da 35 85 c5 1c 4e 85 c7 1c 4f 85 42 1c 4e 85 .d....N..d....N...5...N...O.B.N.
00c0 ce 64 c7 85 c0 1c 4e 85 ce 64 df 85 c6 1c 4e 85 52 69 63 68 c7 1c 4e 85 00 00 00 00 00 00 00 00 .d....N..d....N.Rich..N.........
00e0 00 00 00 00 00 00 00 00 50 45 00 00 4c 01 05 00 69 5f 2b 53 00 00 00 00 00 00 00 00 e0 00 02 01 ........PE..L...i_+S............
0100 0b 01 09 00 00 aa 00 00 00 28 02 00 00 00 00 00 fc 36 00 00 00 10 00 00 00 c0 00 00 00 00 40 00 .........(.......6............@.
0120 00 10 00 00 00 02 00 00 05 00 00 00 00 00 00 00 05 00 00 00 00 00 00 00 00 30 03 00 00 04 00 00 .........................0......
0140 7a 2d 03 00 03 00 40 81 80 96 98 00 00 10 00 00 00 00 10 00 00 10 00 00 00 00 00 00 10 00 00 00 z-....@.........................
0160 00 00 00 00 00 00 00 00 34 89 01 00 3c 00 00 00 00 00 03 00 b4 01 00 00 00 00 00 00 00 00 00 00 ........4...<...................
0180 00 00 00 00 00 00 00 00 00 10 03 00 e4 0b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 85 01 00 40 00 00 00 00 00 00 00 00 00 00 00 ....................@...........
01c0 00 c0 00 00 cc 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01e0 2e 74 65 78 74 00 00 00 94 a9 00 00 00 10 00 00 00 aa 00 00 00 04 00 00 00 00 00 00 00 00 00 00 .text...........................
0200 00 00 00 00 20 00 00 60 2e 72 64 61 74 61 00 00 f6 d2 00 00 00 c0 00 00 00 d4 00 00 00 ae 00 00 .......`.rdata..................
0220 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 40 2e 64 61 74 61 00 00 00 44 56 01 00 00 a0 01 00 ............@..@.data...DV......
0240 00 3c 01 00 00 82 01 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 c0 2e 72 73 72 63 00 00 00 .<..................@....rsrc...
0260 b4 01 00 00 00 00 03 00 00 02 00 00 00 be 02 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 40 ............................@..@
0280 2e 72 65 6c 6f 63 00 00 24 14 00 00 00 10 03 00 00 16 00 00 00 c0 02 00 00 00 00 00 00 00 00 00 .reloc..$.......................
02a0 00 00 00 00 40 00 00 42 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ....@..B........................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 68 20 d4 40 00 e8 6c 1f 00 00 83 c0 40 50 e8 1a 21 00 00 83 c4 08 c3 cc cc cc cc cc cc cc cc cc h..@..l.....@P..!...............
0420 57 8b 3d 28 c1 40 00 50 56 ff d7 8b 4c 24 14 51 56 ff d7 8b 54 24 18 83 c4 10 5f 89 54 24 08 89 W.=(.@.PV...L$.QV...T$...._.T$..
0440 74 24 04 ff 25 34 c1 40 00 cc cc cc cc cc cc cc 57 68 dc d8 40 00 68 ee d8 ff ff 56 ff 15 20 c1 t$..%4.@........Wh..@.h....V....
0460 40 00 6a ff 56 ff 15 2c c1 40 00 8b f8 8b 44 24 1c 50 56 ff 15 28 c1 40 00 47 57 6a fe 56 ff 15 @.j.V..,.@....D$.PV..(.@.GWj.V..
0480 10 c1 40 00 6a fe 56 ff 15 14 c1 40 00 83 c4 30 5f c3 cc cc cc cc cc cc cc cc cc cc cc cc cc cc ..@.j.V....@...0_...............
04a0 50 68 f0 d8 40 00 e8 cb 1e 00 00 83 c0 40 50 e8 79 20 00 00 83 c4 0c 68 20 d4 40 00 e8 b5 1e 00 Ph..@........@P.y......h..@.....
04c0 00 83 c0 40 50 e8 63 20 00 00 83 c4 08 6a 01 e8 15 24 00 00 cc cc cc cc cc cc cc cc cc cc cc cc ...@P.c......j...$..............
04e0 53 55 56 57 ff 15 3c c1 40 00 8b f0 56 ff 15 24 c1 40 00 8b 1d 28 c1 40 00 68 a4 d8 40 00 56 ff SUVW..<.@...V..$.@...(.@.h..@.V.
0500 d3 8b 3d 30 c1 40 00 68 0c d9 40 00 68 ee d8 ff ff 56 ff d7 68 1c d9 40 00 56 ff d3 68 24 d9 40 ..=0.@.h..@.h....V..h..@.V..h$.@
0520 00 68 ee d8 ff ff 56 ff d7 8b 6c 24 40 83 c4 2c 83 fd 01 75 1d 68 20 d4 40 00 e8 37 1e 00 00 83 .h....V...l$@..,...u.h..@..7....
0540 c0 40 50 e8 e5 1f 00 00 83 c4 08 5f 5e 5d 33 c0 5b c3 8b 1d 38 c1 40 00 6a 00 6a 00 56 ff d3 68 .@P........_^]3.[...8.@.j.j.V..h
0560 dc d8 40 00 68 ee d8 ff ff 56 ff d7 6a 00 6a 00 56 ff d3 6a ff 56 ff 15 1c c1 40 00 68 38 d9 40 ..@.h....V..j.j.V..j.V....@.h8.@
0580 00 68 ee d8 ff ff 56 ff d7 56 ff 15 18 c1 40 00 bb 01 00 00 00 83 c4 3c 3b eb 8b f8 0f 8e 2b 01 .h....V..V....@........<;.....+.
05a0 00 00 8b 6c 24 18 eb 08 8d a4 24 00 00 00 00 90 8b 44 9d 00 80 38 2d 0f 85 f1 00 00 00 0f be 40 ...l$.....$......D...8-........@
05c0 01 83 c0 cf 83 f8 45 0f 87 d8 00 00 00 0f b6 80 2c 13 40 00 ff 24 85 e8 12 40 00 b8 40 d9 40 00 ......E.........,.@..$...@..@.@.
05e0 eb 7a b8 44 d9 40 00 eb 73 8b 4c 9d 04 43 51 b8 48 d9 40 00 eb 6b 8b 54 9d 04 43 52 b8 4c d9 40 .z.D.@..s.L..CQ.H.@..k.T..CR.L.@
0600 00 eb 5e 8b 44 9d 04 43 50 b8 50 d9 40 00 eb 51 b8 54 d9 40 00 eb 45 b8 58 d9 40 00 eb 3e 8b 4c ..^.D..CP.P.@..Q.T.@..E.X.@..>.L
0620 9d 04 43 51 b8 5c d9 40 00 eb 36 b8 60 d9 40 00 eb 2a b8 64 d9 40 00 eb 23 b8 68 d9 40 00 eb 1c ..CQ.\.@..6.`.@..*.d.@..#.h.@...
0640 8b 54 9d 04 43 52 e8 05 fe ff ff 83 c4 04 eb 1a b8 6c d9 40 00 eb 05 b8 70 d9 40 00 68 3e d9 40 .T..CR...........l.@....p.@.h>.@
0660 00 57 e8 b9 fd ff ff 83 c4 08 43 3b 5c 24 14 0f 8c 3b ff ff ff eb 56 68 a4 d8 40 00 68 b4 d8 40 .W........C;\$...;....Vh..@.h..@
0680 00 e8 f0 1c 00 00 83 c0 40 50 e8 9e 1e 00 00 83 c4 0c 5f 5e 5d 33 c0 5b c3 e8 62 fd ff ff 5f 5e ........@P........_^]3.[..b..._^
06a0 5d 33 c0 5b c3 8b 44 9d 00 e8 f2 fd ff ff 8b 2d 28 c1 40 00 68 74 d9 40 00 56 8b d8 ff d5 53 56 ]3.[..D........-(.@.ht.@.V....SV
06c0 ff d5 57 56 ff 15 34 c1 40 00 83 c4 18 6a fe 56 ff 15 14 c1 40 00 83 c4 08 e8 a2 00 00 00 5f 5e ..WV..4.@....j.V....@........._^
06e0 5d 33 c0 5b c3 8d 49 00 17 12 40 00 39 12 40 00 2b 12 40 00 40 12 40 00 03 12 40 00 1e 12 40 00 ]3.[..I...@.9.@.+.@.@.@...@...@.
0700 e2 11 40 00 10 12 40 00 32 12 40 00 99 12 40 00 f6 11 40 00 e9 11 40 00 db 11 40 00 57 12 40 00 ..@...@.2.@...@...@...@...@.W.@.
0720 50 12 40 00 77 12 40 00 a5 12 40 00 00 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 01 02 P.@.w.@...@.....................
0740 03 10 10 04 10 10 10 05 10 10 10 06 10 10 07 10 10 10 08 10 10 10 10 10 10 10 10 10 10 10 10 10 ................................
0760 10 10 10 09 10 10 10 10 10 0a 0b 0c 0d 10 10 0e 10 0f cc cc cc cc cc cc cc cc cc cc cc cc cc cc ................................
0780 51 53 55 57 8b c6 e8 55 08 00 00 8b 1d 1c c1 40 00 68 ee d8 ff ff 56 ff d3 8b 3d 14 c1 40 00 6a QSUW...U.......@.h....V...=..@.j
07a0 fe 56 ff d7 68 ee d8 ff ff 56 ff d3 8b 1d 18 c1 40 00 56 ff d3 8b 2d 80 c1 40 00 68 78 d9 40 00 .V..h....V......@.V...-..@.hx.@.
07c0 68 a7 03 00 00 68 f0 ae 41 00 56 89 44 24 38 ff d5 83 c4 2c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 h....h..A.V.D$8....,..u.PPPV..X.
07e0 40 00 83 c4 10 8b 44 24 0c 50 56 ff d7 56 ff d3 68 a4 d9 40 00 68 fe 0f 00 00 68 98 b2 41 00 56 @.....D$.PV..V..h..@.h....h..A.V
0800 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 .D$(.......u.PPPV..X.@.....L$.QV
0820 ff d7 56 ff d3 68 94 7e 41 00 68 59 23 00 00 68 d0 d9 40 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 ..V..h.~A.hY#..h..@.V.D$(.......
0840 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 bc 7e 41 00 68 u.PPPV..X.@.....T$.RV..V..h.~A.h
0860 41 0b 00 00 68 98 c2 41 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 A...h..A.V.D$(.......u.PPPV..X.@
0880 00 83 c4 10 8b 44 24 0c 50 56 ff d7 56 ff d3 68 e4 7e 41 00 68 81 06 00 00 68 e0 cd 41 00 56 89 .....D$.PV..V..h.~A.h....h..A.V.
08a0 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 ff D$(.......u.PPPV..X.@.....L$.QV.
08c0 d7 56 ff d3 68 10 7f 41 00 68 d6 09 00 00 68 68 d4 41 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 .V..h..A.h....hh.A.V.D$(.......u
08e0 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 38 7f 41 00 68 9e .PPPV..X.@.....T$.RV..V..h8.A.h.
0900 06 00 00 68 40 de 41 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 ...h@.A.V.D$(.......u.PPPV..X.@.
0920 83 c4 10 8b 44 24 0c 50 56 ff d7 56 ff d3 68 60 7f 41 00 68 06 44 00 00 68 e0 e4 41 00 56 89 44 ....D$.PV..V..h`.A.h.D..h..A.V.D
0940 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 ff d7 $(.......u.PPPV..X.@.....L$.QV..
0960 56 ff d3 68 8c 7f 41 00 68 9a 29 00 00 68 e8 28 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d V..h..A.h.)..h.(B.V.D$(.......u.
0980 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 b4 7f 41 00 68 c5 05 PPPV..X.@.....T$.RV..V..h..A.h..
09a0 00 00 68 88 52 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 ..h.RB.V.D$(.......u.PPPV..X.@..
09c0 c4 10 8b 44 24 0c 50 56 ff d7 56 ff d3 68 dc 7f 41 00 68 9b 04 00 00 68 50 58 42 00 56 89 44 24 ...D$.PV..V..h..A.h....hPXB.V.D$
09e0 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 ff d7 56 (.......u.PPPV..X.@.....L$.QV..V
0a00 ff d3 68 08 80 41 00 68 23 05 00 00 68 f0 5c 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 ..h..A.h#...h.\B.V.D$(.......u.P
0a20 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 30 80 41 00 68 a5 0d 00 PPV..X.@.....T$.RV..V..h0.A.h...
0a40 00 68 30 fd 40 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 .h0.@.V.D$(.......u.PPPV..X.@...
0a60 10 8b 44 24 0c 50 56 ff d7 56 ff d3 68 5c 80 41 00 68 27 3b 00 00 68 d8 0a 41 00 56 89 44 24 28 ..D$.PV..V..h\.A.h';..h..A.V.D$(
0a80 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 ff d7 56 ff .......u.PPPV..X.@.....L$.QV..V.
0aa0 d3 68 88 80 41 00 68 83 1f 00 00 68 18 62 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 .h..A.h....h.bB.V.D$(.......u.PP
0ac0 50 56 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 b4 80 41 00 68 95 19 00 00 PV..X.@.....T$.RV..V..h..A.h....
0ae0 68 a0 81 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 h..B.V.D$(.......u.PPPV..X.@....
0b00 8b 44 24 0c 50 56 ff d7 56 ff d3 68 dc 80 41 00 68 93 38 00 00 68 00 46 41 00 56 89 44 24 28 ff .D$.PV..V..h..A.h.8..h.FA.V.D$(.
0b20 d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 ff d7 56 ff d3 ......u.PPPV..X.@.....L$.QV..V..
0b40 68 08 81 41 00 68 99 17 00 00 68 38 9b 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 h..A.h....h8.B.V.D$(.......u.PPP
0b60 56 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 34 81 41 00 68 25 07 00 00 68 V..X.@.....T$.RV..V..h4.A.h%...h
0b80 d8 b2 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b ..B.V.D$(.......u.PPPV..X.@.....
0ba0 44 24 0c 50 56 ff d7 56 ff d3 68 64 81 41 00 68 64 13 00 00 68 00 ba 42 00 56 89 44 24 28 ff d5 D$.PV..V..hd.A.hd...h..B.V.D$(..
0bc0 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 4c 24 0c 51 56 ff d7 56 ff d3 68 .....u.PPPV..X.@.....L$.QV..V..h
0be0 8c 81 41 00 68 37 05 00 00 68 68 cd 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ..A.h7...hh.B.V.D$(.......u.PPPV
0c00 ff 15 58 c1 40 00 83 c4 10 8b 54 24 0c 52 56 ff d7 56 ff d3 68 b4 81 41 00 68 36 07 00 00 68 a0 ..X.@.....T$.RV..V..h..A.h6...h.
0c20 d2 42 00 56 89 44 24 28 ff d5 83 c4 1c 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 8b 44 .B.V.D$(.......u.PPPV..X.@.....D
0c40 24 0c 50 56 ff d7 56 ff d3 68 dc 81 41 00 68 99 00 00 00 68 d8 d9 42 00 56 8b d8 ff d5 83 c4 1c $.PV..V..h..A.h....h..B.V.......
0c60 85 c0 75 0d 50 50 50 56 ff 15 58 c1 40 00 83 c4 10 53 56 ff d7 6a fe 56 ff d7 83 c4 10 5f 5d b8 ..u.PPPV..X.@....SV..j.V....._].
0c80 01 00 00 00 5b 59 c3 cc cc cc cc cc cc cc cc cc 56 57 8b f0 68 1c 82 41 00 56 ff 15 60 c1 40 00 ....[Y..........VW..h..A.V..`.@.
0ca0 8b f8 83 c4 08 85 ff 74 29 6a ff 56 ff 15 1c c1 40 00 68 1c 82 41 00 56 ff 15 28 c1 40 00 68 f0 .......t)j.V....@.h..A.V..(.@.h.
0cc0 d8 ff ff 56 ff 15 34 c1 40 00 83 c4 18 e8 1e 11 00 00 6a fe 56 ff 15 14 c1 40 00 83 c4 08 8b c7 ...V..4.@.........j.V....@......
0ce0 5f 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 57 56 ff 15 18 c1 40 00 83 c4 04 _^..............V.t$.WV....@....
0d00 8b f8 e8 29 14 00 00 5f b8 01 00 00 00 5e c3 cc 56 8b 74 24 08 57 6a 01 56 33 ff ff 15 50 c1 40 ...)..._.....^..V.t$.Wj.V3...P.@
0d20 00 83 c4 08 85 c0 74 2d 6a 01 56 ff 15 44 c1 40 00 83 c4 08 85 c0 74 1d 6a fe 56 ff 15 14 c1 40 ......t-j.V..D.@......t.j.V....@
0d40 00 57 6a 02 56 ff 15 6c c1 40 00 83 c4 14 e8 5d 05 00 00 8b f8 33 c0 85 ff 0f 95 c0 50 56 ff 15 .Wj.V..l.@.....].....3......PV..
0d60 90 c1 40 00 83 c4 08 5f b8 01 00 00 00 5e c3 cc 51 56 8b 74 24 0c 6a 01 56 c7 44 24 0c 00 00 00 ..@...._.....^..QV.t$.j.V.D$....
0d80 00 ff 15 50 c1 40 00 83 c4 08 85 c0 74 7f 53 55 57 6a 01 56 ff 15 94 c1 40 00 8b 38 6a 00 6a 02 ...P.@......t.SUWj.V....@..8j.j.
0da0 56 ff 15 6c c1 40 00 68 30 82 41 00 56 ff 15 28 c1 40 00 8b 1d 68 c1 40 00 68 f0 d8 ff ff 56 ff V..l.@.h0.A.V..(.@...h.@.h....V.
0dc0 d3 8b 2d 8c c1 40 00 57 56 ff d5 6a fe 56 ff d3 6a 01 56 ff 15 44 c1 40 00 6a fe 6a ff 56 ff 15 ..-..@.WV..j.V..j.V..D.@.j.j.V..
0de0 48 c1 40 00 83 c4 48 85 c0 74 1f 57 56 ff d5 56 ff 15 64 c1 40 00 6a fb 56 ff 15 40 c1 40 00 83 H.@...H..t.WV..V..d.@.j.V..@.@..
0e00 c4 14 c7 44 24 10 01 00 00 00 5f 5d 5b 33 c0 39 44 24 04 0f 95 c0 50 56 ff 15 90 c1 40 00 83 c4 ...D$....._][3.9D$....PV....@...
0e20 08 b8 01 00 00 00 5e 59 c3 cc cc cc cc cc cc cc 53 56 8b 74 24 0c 57 6a 01 56 ff 15 4c c1 40 00 ......^Y........SV.t$.Wj.V..L.@.
0e40 8b 1d 18 c1 40 00 83 c4 08 83 f8 02 75 0b 8b c6 e8 7b 05 00 00 8b f8 eb 4d 56 ff d3 8b c8 b8 01 ....@.......u....{......MV......
0e60 00 00 00 99 33 c2 2b c2 83 c4 04 3b c8 7d 04 33 ff eb 33 6a 01 56 ff 15 50 c1 40 00 83 c4 08 85 ....3.+....;.}.3..3j.V..P.@.....
0e80 c0 75 0d e8 88 14 00 00 85 c0 75 04 33 ff eb 16 6a 01 56 ff 15 94 c1 40 00 83 c4 08 85 c0 75 04 .u........u.3...j.V....@......u.
0ea0 33 ff eb 02 8b 38 56 ff d3 8b c8 b8 02 00 00 00 99 33 c2 2b c2 83 c4 04 3b c8 7d 04 33 c0 eb 0e 3....8V..........3.+....;.}.3...
0ec0 6a 00 6a 02 56 ff 15 98 c1 40 00 83 c4 0c 85 ff 74 17 85 c0 74 13 50 57 e8 43 10 00 00 83 c4 08 j.j.V....@......t...t.PW.C......
0ee0 5f 5e b8 01 00 00 00 5b c3 56 ff 15 64 c1 40 00 83 c4 04 5f 5e b8 01 00 00 00 5b c3 cc cc cc cc _^.....[.V..d.@...._^.....[.....
0f00 56 8b 74 24 08 68 3c 82 41 00 56 ff 15 28 c1 40 00 6a fe 56 ff 15 1c c1 40 00 6a fc 56 ff 15 40 V.t$.h<.A.V..(.@.j.V....@.j.V..@
0f20 c1 40 00 83 c4 18 33 c0 5e c3 cc cc cc cc cc cc 56 8b 74 24 08 6a fe 56 ff 15 50 c1 40 00 83 c4 .@....3.^.......V.t$.j.V..P.@...
0f40 08 85 c0 75 16 68 48 82 41 00 56 ff 15 28 c1 40 00 56 ff 15 84 c1 40 00 83 c4 0c 6a ff 56 ff 15 ...u.hH.A.V..(.@.V....@....j.V..
0f60 4c c1 40 00 83 c4 08 85 c0 75 18 6a fe 56 ff 15 14 c1 40 00 68 f0 d8 ff ff 56 ff 15 1c c1 40 00 L.@......u.j.V....@.h....V....@.
0f80 83 c4 10 6a fe 56 ff 15 74 c1 40 00 83 c4 08 33 c0 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc cc ...j.V..t.@....3.^..............
0fa0 56 8b 74 24 08 6a ff 56 ff 15 5c c1 40 00 68 f0 d8 ff ff 6a ff 56 ff 15 48 c1 40 00 83 c4 14 85 V.t$.j.V..\.@.h....j.V..H.@.....
0fc0 c0 74 13 6a fe 56 ff 15 14 c1 40 00 56 ff 15 64 c1 40 00 83 c4 0c b8 01 00 00 00 5e c3 cc cc cc .t.j.V....@.V..d.@.........^....
0fe0 51 53 56 8b f0 57 56 ff 15 18 c1 40 00 8b 1d 28 c1 40 00 68 7c 82 41 00 56 89 44 24 18 ff d3 68 QSV..WV....@...(.@.h|.A.V.D$...h
1000 f0 d8 ff ff 56 ff 15 68 c1 40 00 6a ff 56 ff 15 4c c1 40 00 83 c4 1c 83 f8 01 0f 84 fd 01 00 00 ....V..h.@.j.V..L.@.............
1020 55 68 7c 82 41 00 56 ff d3 6a 01 56 ff 15 90 c1 40 00 8b 2d 40 c1 40 00 68 f0 d8 ff ff 56 ff d5 Uh|.A.V..j.V....@..-@.@.h....V..
1040 68 04 82 41 00 56 ff d3 8b 3d 38 c1 40 00 6a 00 6a 00 56 ff d7 6a 00 6a 00 56 ff d7 6a 06 68 10 h..A.V...=8.@.j.j.V..j.j.V..j.h.
1060 82 41 00 56 ff 15 7c c1 40 00 83 c4 44 6a 01 68 18 82 41 00 56 ff 15 7c c1 40 00 6a fd 56 ff d5 .A.V..|.@...Dj.h..A.V..|.@.j.V..
1080 6a fe 56 ff 15 70 c1 40 00 68 f0 d8 ff ff 56 ff d5 68 f8 81 41 00 56 ff d3 6a 00 6a 00 56 ff d7 j.V..p.@.h....V..h..A.V..j.j.V..
10a0 68 f0 d8 ff ff 56 ff d5 83 c4 40 68 30 82 41 00 56 ff d3 6a 00 6a 00 56 ff d7 68 f0 d8 ff ff 56 h....V....@h0.A.V..j.j.V..h....V
10c0 ff d5 68 8c 82 41 00 56 ff d3 68 30 82 41 00 56 ff d3 8b 3d 68 c1 40 00 68 f0 d8 ff ff 56 ff d7 ..h..A.V..h0.A.V...=h.@.h....V..
10e0 68 f8 81 41 00 56 ff d3 68 f0 d8 ff ff 56 ff d7 83 c4 44 6a 02 68 20 29 40 00 56 ff 15 54 c1 40 h..A.V..h....V....Dj.h.)@.V..T.@
1100 00 68 f0 d8 ff ff 56 ff d5 8b c6 e8 80 fb ff ff 8b 3d 1c c1 40 00 68 ee d8 ff ff 56 ff d7 6a fe .h....V..........=..@.h....V..j.
1120 56 ff 15 14 c1 40 00 68 ee d8 ff ff 56 ff d7 bf 9c 82 41 00 e8 17 02 00 00 57 56 ff d3 6a fe 56 V....@.h....V.....A......WV..j.V
1140 ff 15 68 c1 40 00 68 a4 82 41 00 56 ff d3 8b 3d 54 c1 40 00 83 c4 44 6a 00 68 f0 18 40 00 56 ff ..h.@.h..A.V...=T.@...Dj.h..@.V.
1160 d7 6a fd 56 ff d5 68 ac 82 41 00 56 ff d3 6a 00 68 10 19 40 00 56 ff d7 6a fd 56 ff d5 68 bc 82 .j.V..h..A.V..j.h..@.V..j.V..h..
1180 41 00 56 ff d3 6a 00 68 70 19 40 00 56 ff d7 83 c4 44 6a fd 56 ff d5 68 d0 82 41 00 56 ff d3 6a A.V..j.hp.@.V....Dj.V..h..A.V..j
11a0 00 68 30 1a 40 00 56 ff d7 6a fd 56 ff d5 68 d8 82 41 00 56 ff d3 6a 00 68 00 1b 40 00 56 ff d7 .h0.@.V..j.V..h..A.V..j.h..@.V..
11c0 6a fd 56 ff d5 83 c4 40 68 e0 82 41 00 56 ff d3 6a 00 68 30 1b 40 00 56 ff d7 6a fd 56 ff d5 68 j.V....@h..A.V..j.h0.@.V..j.V..h
11e0 e8 82 41 00 56 ff d3 6a 00 68 a0 1b 40 00 56 ff d7 6a fd 56 ff d5 8b 3d 14 c1 40 00 6a fe 56 ff ..A.V..j.h..@.V..j.V...=..@.j.V.
1200 d7 83 c4 40 6a fe 56 ff d7 8b 44 24 18 83 c4 08 5d 50 56 ff d7 83 c4 08 5f 5e 5b 59 c3 8b 44 24 ...@j.V...D$....]PV....._^[Y..D$
1220 0c 8b 3d 14 c1 40 00 50 56 ff d7 83 c4 08 5f 5e 5b 59 c3 cc cc cc cc cc cc cc cc cc cc cc cc cc ..=..@.PV....._^[Y..............
1240 56 8b 74 24 08 56 ff 15 18 c1 40 00 8b c8 b8 01 00 00 00 99 33 c2 2b c2 83 c4 04 3b c8 7c 29 6a V.t$.V....@.........3.+....;.|)j
1260 01 56 ff 15 50 c1 40 00 83 c4 08 85 c0 75 09 e8 9c 10 00 00 85 c0 74 10 6a 01 56 ff 15 94 c1 40 .V..P.@......u........t.j.V....@
1280 00 83 c4 08 85 c0 75 0f 33 c0 50 e8 b5 19 00 00 83 c4 04 33 c0 5e c3 8b 00 50 e8 a6 19 00 00 83 ......u.3.P........3.^...P......
12a0 c4 04 33 c0 5e c3 cc cc cc cc cc cc cc cc cc cc 51 53 55 57 6a 01 56 c7 44 24 14 01 00 00 00 ff ..3.^...........QSUWj.V.D$......
12c0 15 94 c1 40 00 8b 38 68 30 82 41 00 56 ff 15 28 c1 40 00 8b 1d 68 c1 40 00 68 f0 d8 ff ff 56 ff ...@..8h0.A.V..(.@...h.@.h....V.
12e0 d3 8b 2d 8c c1 40 00 57 56 ff d5 6a fe 56 ff d3 6a ff 56 ff 15 4c c1 40 00 83 c4 30 85 c0 74 15 ..-..@.WV..j.V..j.V..L.@...0..t.
1300 6a fd 56 33 ff ff 15 14 c1 40 00 83 c4 08 8b c7 5f 5d 5b 59 c3 57 56 ff d5 6a 01 56 ff 15 44 c1 j.V3.....@......_][Y.WV..j.V..D.
1320 40 00 6a fc 56 ff 15 40 c1 40 00 8b 7c 24 24 83 c4 18 6a fd 56 ff 15 14 c1 40 00 83 c4 08 8b c7 @.j.V..@.@..|$$...j.V....@......
1340 5f 5d 5b 59 c3 cc cc cc cc cc cc cc cc cc cc cc 53 55 8b 2d 14 c1 40 00 85 ff 74 58 8b 1d 28 c1 _][Y............SU.-..@...tX..(.
1360 40 00 57 56 ff d3 6a fe 56 ff 15 68 c1 40 00 6a ff 56 ff 15 4c c1 40 00 83 c4 18 83 f8 05 74 43 @.WV..j.V..h.@.j.V..L.@.......tC
1380 6a fe 56 ff d5 6a 00 6a 00 56 ff 15 38 c1 40 00 57 56 ff d3 6a fe 56 ff 15 1c c1 40 00 6a fc 56 j.V..j.j.V..8.@.WV..j.V....@.j.V
13a0 ff 15 40 c1 40 00 83 c4 2c 6a fe 56 ff d5 83 c4 08 5d 5b c3 68 ee d8 ff ff 56 ff 15 1c c1 40 00 ..@.@...,j.V.....][.h....V....@.
13c0 83 c4 08 6a fe 56 ff d5 83 c4 08 5d 5b c3 cc cc 53 8b 1d 18 c1 40 00 56 8b f0 b8 01 00 00 00 99 ...j.V.....][...S....@.V........
13e0 57 8b f8 33 fa 56 2b fa ff d3 83 c4 04 3b c7 7d 06 5f 5e 33 c0 5b c3 6a 01 56 ff 15 4c c1 40 00 W..3.V+......;.}._^3.[.j.V..L.@.
1400 83 c4 08 83 f8 02 75 10 6a 01 56 ff 15 94 c1 40 00 83 c4 08 5f 5e 5b c3 56 ff d3 83 c4 04 3b c7 ......u.j.V....@...._^[.V.....;.
1420 7c cf 6a 01 56 ff 15 50 c1 40 00 83 c4 08 85 c0 75 09 e8 d9 0e 00 00 85 c0 74 b6 6a 01 56 ff 15 |.j.V..P.@......u........t.j.V..
1440 94 c1 40 00 83 c4 08 85 c0 74 a6 8b 00 5f 5e 5b c3 cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc ..@......t..._^[................
1460 57 6a 01 56 ff 15 5c c1 40 00 68 f0 d8 ff ff 6a ff 56 ff 15 48 c1 40 00 8b 3d 14 c1 40 00 83 c4 Wj.V..\.@.h....j.V..H.@..=..@...
1480 14 85 c0 74 25 6a fe 56 ff d7 6a 00 6a 00 56 ff 15 38 c1 40 00 6a ff 56 ff 15 1c c1 40 00 6a 01 ...t%j.V..j.j.V..8.@.j.V....@.j.
14a0 56 ff 15 74 c1 40 00 83 c4 24 6a fd 56 ff 15 78 c1 40 00 6a fd 56 ff 15 34 c1 40 00 6a fe 56 ff V..t.@...$j.V..x.@.j.V..4.@.j.V.
14c0 d7 83 c4 18 5f c3 cc cc cc cc cc cc cc cc cc cc 53 55 56 8b 74 24 10 57 68 fc 82 41 00 56 ff 15 ...._...........SUV.t$.Wh..A.V..
14e0 28 c1 40 00 8b 1d 68 c1 40 00 6a fd 56 ff d3 8b 3d 4c c1 40 00 6a ff 56 ff d7 8b 2d 1c c1 40 00 (.@...h.@.j.V...=L.@.j.V...-..@.
1500 83 c4 18 83 f8 05 75 3f 6a 02 56 ff d5 6a fe 56 ff d3 6a ff 56 ff 15 b0 c1 40 00 83 c4 18 85 c0 ......u?j.V..j.V..j.V....@......
1520 74 18 6a 01 6a 00 56 ff 15 a4 c1 40 00 83 c4 0c 5f 5e 5d b8 01 00 00 00 5b c3 6a ff 56 ff d7 83 t.j.j.V....@...._^].....[.j.V...
1540 c4 08 83 f8 05 74 7d 6a 01 56 ff 15 44 c1 40 00 83 c4 08 85 c0 74 63 68 0c 83 41 00 56 ff 15 28 .....t}j.V..D.@......tch..A.V..(
1560 c1 40 00 6a fe 56 ff d3 6a 01 56 ff d5 6a 02 56 ff d5 6a ff 56 ff d7 83 c4 28 83 f8 06 75 18 6a .@.j.V..j.V..j.V..j.V....(...u.j
1580 01 6a 02 56 ff 15 a4 c1 40 00 83 c4 0c 5f 5e 5d b8 01 00 00 00 5b c3 6a ff 56 ff d7 83 c4 08 83 .j.V....@...._^].....[.j.V......
15a0 f8 05 75 16 6a fd 56 ff 15 9c c1 40 00 83 c4 08 5f 5e 5d b8 01 00 00 00 5b c3 56 ff 15 64 c1 40 ..u.j.V....@...._^].....[.V..d.@
15c0 00 83 c4 04 5f 5e 5d b8 01 00 00 00 5b c3 cc cc 53 55 8b 2d 28 c1 40 00 56 8b 74 24 10 57 68 04 ...._^].....[...SU.-(.@.V.t$.Wh.
15e0 83 41 00 56 ff d5 8b 1d 68 c1 40 00 6a fc 56 ff d3 6a ff 56 ff 15 4c c1 40 00 8b 3d 1c c1 40 00 .A.V....h.@.j.V..j.V..L.@..=..@.
1600 83 c4 18 83 f8 05 75 39 6a 02 56 ff d7 6a fe 56 ff d3 6a ff 56 ff 15 b0 c1 40 00 83 c4 18 85 c0 ......u9j.V..j.V..j.V....@......
1620 74 1f 6a 01 56 ff d7 6a 03 56 ff d7 6a 00 6a 02 56 ff 15 a4 c1 40 00 83 c4 1c 5f 5e 5d 33 c0 5b t.j.V..j.V..j.j.V....@...._^]3.[
1640 c3 6a 01 56 ff 15 44 c1 40 00 83 c4 08 85 c0 74 4b 6a ff 56 ff 15 44 c1 40 00 83 c4 08 85 c0 74 .j.V..D.@......tKj.V..D.@......t
1660 3b 68 14 83 41 00 56 ff d5 6a fe 56 ff d3 6a ff 56 ff 15 4c c1 40 00 83 c4 18 83 f8 06 75 1d 6a ;h..A.V..j.V..j.V..L.@.......u.j
1680 01 56 ff d7 6a 02 56 ff d7 6a 03 56 ff d7 6a 00 6a 03 56 ff 15 a4 c1 40 00 83 c4 24 6a 03 56 ff .V..j.V..j.V..j.j.V....@...$j.V.
16a0 15 14 c1 40 00 6a fd 56 ff 15 40 c1 40 00 83 c4 10 5f 5e 5d 33 c0 5b c3 cc cc cc cc cc cc cc cc ...@.j.V..@.@...._^]3.[.........
16c0 55 8b 2d 4c c1 40 00 56 8b 74 24 0c 6a 01 56 ff d5 83 c4 08 83 f8 07 0f 85 c5 01 00 00 53 6a 01 U.-L.@.V.t$.j.V..............Sj.
16e0 56 ff 15 5c c1 40 00 68 f0 d8 ff ff 6a ff 56 ff 15 48 c1 40 00 8b 1d 1c c1 40 00 83 c4 14 85 c0 V..\.@.h....j.V..H.@.....@......
1700 75 1a 6a 02 56 ff d3 6a fe 56 ff 15 9c c1 40 00 6a ff 56 ff d5 83 c4 18 85 c0 75 7d 57 6a 02 56 u.j.V..j.V....@.j.V.......u}Wj.V
1720 ff 15 14 c1 40 00 6a 01 56 ff d3 6a ff 56 ff 15 44 c1 40 00 83 c4 18 85 c0 0f 84 e4 00 00 00 8b ....@.j.V..j.V..D.@.............
1740 3d 68 c1 40 00 6a fe 56 ff 15 ac c1 40 00 6a 02 56 ff 15 a8 c1 40 00 83 c4 10 85 c0 74 44 68 20 =h.@.j.V....@.j.V....@......tDh.
1760 83 41 00 56 ff 15 28 c1 40 00 6a fe 56 ff d7 6a ff 56 ff d5 83 c4 18 83 f8 06 0f 85 86 00 00 00 .A.V..(.@.j.V..j.V..............
1780 6a 01 56 ff d3 6a 02 56 ff d3 6a 01 6a 02 56 ff 15 a4 c1 40 00 83 c4 1c 5f 5b 5e b8 01 00 00 00 j.V..j.V..j.j.V....@...._[^.....
17a0 5d c3 6a 02 56 ff d3 6a fe 56 ff d7 6a ff 56 ff d5 83 c4 18 85 c0 75 e0 6a fe 56 ff 15 14 c1 40 ].j.V..j.V..j.V.......u.j.V....@
17c0 00 68 fc 82 41 00 56 ff 15 28 c1 40 00 6a fe 56 ff d7 6a ff 56 ff d5 83 c4 20 83 f8 05 75 27 6a .h..A.V..(.@.j.V..j.V........u'j
17e0 02 56 ff d3 6a fe 56 ff d7 6a ff 56 ff 15 b0 c1 40 00 83 c4 18 85 c0 75 87 6a ff 56 ff d5 83 c4 .V..j.V..j.V....@......u.j.V....
1800 08 83 f8 05 74 31 6a 03 56 ff 15 14 c1 40 00 6a ff 56 ff 15 44 c1 40 00 83 c4 10 85 c0 0f 85 22 ....t1j.V....@.j.V..D.@........"
1820 ff ff ff 56 ff 15 64 c1 40 00 83 c4 04 5f 5b 5e b8 01 00 00 00 5d c3 6a 01 56 ff 15 94 c1 40 00 ...V..d.@...._[^.....].j.V....@.
1840 8b 38 6a 00 6a 00 56 ff 15 38 c1 40 00 68 28 83 41 00 56 ff 15 28 c1 40 00 57 56 ff 15 8c c1 40 .8j.j.V..8.@.h(.A.V..(.@.WV....@
1860 00 6a fd 56 ff 15 40 c1 40 00 8b 3d 78 c1 40 00 6a fe 56 ff d7 6a fe 56 ff 15 70 c1 40 00 6a ff .j.V..@.@..=x.@.j.V..j.V..p.@.j.
1880 56 ff d3 83 c4 44 6a 02 56 ff d3 6a fe 56 ff d7 83 c4 10 e8 c8 fb ff ff 5f 5b 5e b8 01 00 00 00 V....Dj.V..j.V.........._[^.....
18a0 5d c3 56 83 f8 05 75 10 e8 23 fc ff ff 83 c4 04 5e b8 01 00 00 00 5d c3 ff 15 64 c1 40 00 83 c4 ].V...u..#......^.....]...d.@...
18c0 04 5e b8 01 00 00 00 5d c3 cc cc cc cc cc cc cc 53 8b 1d 4c c1 40 00 55 56 8b 74 24 10 57 6a 01 .^.....]........S..L.@.UV.t$.Wj.
18e0 56 ff d3 83 c4 08 83 f8 07 0f 85 3f 01 00 00 6a 01 56 ff 15 44 c1 40 00 6a ff 56 ff d3 83 c4 10 V..........?...j.V..D.@.j.V.....
1900 83 f8 05 0f 85 e8 00 00 00 8b 2d 28 c1 40 00 8b 3d 68 c1 40 00 6a 02 56 ff 15 a8 c1 40 00 83 c4 ..........-(.@..=h.@.j.V....@...
1920 08 85 c0 74 48 68 30 83 41 00 56 ff d5 6a fe 56 ff d7 6a ff 56 ff d3 83 c4 18 83 f8 06 0f 85 9d ...tHh0.A.V..j.V..j.V...........
1940 00 00 00 8b 3d 1c c1 40 00 6a 01 56 ff d7 6a 02 56 ff d7 6a 03 56 ff d7 6a 00 6a 03 56 ff 15 a4 ....=..@.j.V..j.V..j.V..j.j.V...
1960 c1 40 00 83 c4 24 5f 5e 5d 33 c0 5b c3 68 04 83 41 00 56 ff d5 6a fe 56 ff d7 6a ff 56 ff d3 83 .@...$_^]3.[.h..A.V..j.V..j.V...
1980 c4 18 83 f8 05 75 2a 6a 02 56 ff 15 1c c1 40 00 6a fe 56 ff d7 6a ff 56 ff 15 b0 c1 40 00 83 c4 .....u*j.V....@.j.V..j.V....@...
19a0 18 85 c0 75 64 6a fe 56 ff 15 14 c1 40 00 83 c4 08 6a fe 56 ff 15 14 c1 40 00 6a ff 56 ff 15 44 ...udj.V....@....j.V....@.j.V..D
19c0 c1 40 00 83 c4 10 85 c0 75 0a 56 ff 15 64 c1 40 00 83 c4 04 6a fe 56 ff 15 ac c1 40 00 83 c4 08 .@......u.V..d.@....j.V....@....
19e0 6a ff 56 ff d3 83 c4 08 83 f8 05 0f 84 24 ff ff ff 6a 03 56 ff 15 14 c1 40 00 83 c4 08 e8 5e fa j.V..........$...j.V....@.....^.
1a00 ff ff 5f 5e 5d 33 c0 5b c3 8b 3d 1c c1 40 00 6a 01 56 ff d7 6a 03 56 ff d7 6a 00 6a 02 56 ff 15 .._^]3.[..=..@.j.V..j.V..j.j.V..
1a20 a4 c1 40 00 83 c4 1c 5f 5e 5d 33 c0 5b c3 83 f8 05 75 09 56 e8 97 fb ff ff 83 c4 04 5f 5e 5d 33 ..@...._^]3.[....u.V........_^]3
1a40 c0 5b c3 cc cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 57 8b 3d 4c c1 40 00 6a 01 56 ff .[..............V.t$.W.=L.@.j.V.
1a60 d7 83 c4 08 83 f8 05 75 4e 68 38 83 41 00 56 ff 15 28 c1 40 00 6a 01 56 ff 15 68 c1 40 00 6a ff .......uNh8.A.V..(.@.j.V..h.@.j.
1a80 56 ff d7 83 c4 18 83 f8 06 75 2c 6a 01 56 ff 15 78 c1 40 00 83 c4 08 6a 01 56 ff 15 18 c1 40 00 V........u,j.V..x.@....j.V....@.
1aa0 83 c4 04 48 50 56 ff 15 a4 c1 40 00 83 c4 0c 5f b8 01 00 00 00 5e c3 b8 40 83 41 00 8b ce e8 9d ...HPV....@...._.....^..@.A.....
1ac0 07 00 00 5f 33 c0 5e c3 cc cc cc cc cc cc cc cc 53 55 57 6a 01 56 ff 15 50 c1 40 00 83 c4 08 85 ..._3.^.........SUWj.V..P.@.....
1ae0 c0 74 69 6a 01 56 ff 15 1c c1 40 00 6a ff 56 ff 15 44 c1 40 00 83 c4 10 85 c0 74 50 8b 3d ac c1 .tij.V....@.j.V..D.@......tP.=..
1b00 40 00 8b 1d 28 c1 40 00 8b 2d 68 c1 40 00 8b ff 6a fe 56 ff d7 8b 44 24 18 50 56 ff d3 6a fe 56 @...(.@..-h.@...j.V...D$.PV..j.V
1b20 ff d5 6a ff 56 ff 15 4c c1 40 00 83 c4 20 83 f8 06 74 2b 6a 03 56 ff 15 14 c1 40 00 6a ff 56 ff ..j.V..L.@.......t+j.V....@.j.V.
1b40 15 44 c1 40 00 83 c4 10 85 c0 75 c4 b8 68 83 41 00 8b ce e8 08 07 00 00 5f 5d 33 c0 5b c3 8b 3d .D.@......u..h.A........_]3.[..=
1b60 1c c1 40 00 6a 01 56 ff d7 6a 02 56 ff d7 6a 01 6a 02 56 ff 15 a4 c1 40 00 83 c4 1c 5f 5d b8 01 ..@.j.V..j.V..j.j.V....@...._]..
1b80 00 00 00 5b c3 cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 68 9c 83 41 00 e8 31 ff ff ff 83 ...[............V.t$.h..A..1....
1ba0 c4 04 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 68 a4 83 41 00 e8 11 ff ff ff 83 ..^.............V.t$.h..A.......
1bc0 c4 04 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 68 ac 83 41 00 e8 f1 fe ff ff 83 ..^.............V.t$.h..A.......
1be0 c4 04 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 68 b4 83 41 00 e8 d1 fe ff ff 83 ..^.............V.t$.h..A.......
1c00 c4 04 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 68 bc 83 41 00 e8 b1 fe ff ff 83 ..^.............V.t$.h..A.......
1c20 c4 04 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc 56 8b 74 24 08 68 c0 83 41 00 e8 91 fe ff ff 83 ..^.............V.t$.h..A.......
1c40 c4 04 5e c3 cc cc cc cc cc cc cc cc cc cc cc cc 53 55 56 8b 74 24 10 57 6a 01 56 ff 15 50 c1 40 ..^.............SUV.t$.Wj.V..P.@
1c60 00 83 c4 08 85 c0 74 67 6a 01 56 ff 15 1c c1 40 00 6a ff 56 ff 15 44 c1 40 00 83 c4 10 85 c0 74 ......tgj.V....@.j.V..D.@......t
1c80 4e 8b 3d ac c1 40 00 8b 1d 28 c1 40 00 8b 2d 68 c1 40 00 6a fe 56 ff d7 68 c4 83 41 00 56 ff d3 N.=..@...(.@..-h.@.j.V..h..A.V..
1ca0 6a fe 56 ff d5 6a ff 56 ff 15 4c c1 40 00 83 c4 20 83 f8 06 74 38 6a 03 56 ff 15 14 c1 40 00 6a j.V..j.V..L.@.......t8j.V....@.j
1cc0 ff 56 ff 15 44 c1 40 00 83 c4 10 85 c0 75 c4 6a 03 56 ff 15 14 c1 40 00 6a 00 56 ff 15 90 c1 40 .V..D.@......u.j.V....@.j.V....@
1ce0 00 83 c4 10 5f 5e 5d b8 01 00 00 00 5b c3 8b 3d 1c c1 40 00 6a 01 56 ff d7 6a 02 56 ff d7 6a 01 ...._^].....[..=..@.j.V..j.V..j.
1d00 6a 02 56 ff 15 a4 c1 40 00 83 c4 1c 5f 5e 5d b8 01 00 00 00 5b c3 cc cc cc cc cc cc cc cc cc cc j.V....@...._^].....[...........
1d20 53 55 56 8b 74 24 10 57 6a 01 56 ff 15 94 c1 40 00 8b 2d 1c c1 40 00 8b 38 68 ed d8 ff ff 56 ff SUV.t$.Wj.V....@..-..@..8h....V.
1d40 d5 57 56 ff 15 8c c1 40 00 8b 1d 68 c1 40 00 6a fe 56 ff d3 6a 01 56 ff 15 44 c1 40 00 56 ff 15 .WV....@...h.@.j.V..j.V..D.@.V..
1d60 18 c1 40 00 8d 48 ff 51 e8 53 03 00 00 83 c4 30 85 c0 74 69 6a 0a 68 f0 82 41 00 56 ff 15 7c c1 ..@..H.Q.S.....0..tij.h..A.V..|.
1d80 40 00 6a fe 56 ff d3 6a ff 56 ff 15 4c c1 40 00 83 c4 1c 83 f8 06 74 1a 6a fe 56 ff 15 14 c1 40 @.j.V..j.V..L.@.......t.j.V....@
1da0 00 6a 00 68 40 1e 40 00 56 ff 15 54 c1 40 00 83 c4 14 6a 01 56 ff d5 6a 00 6a 01 56 ff 15 a4 c1 .j.h@.@.V..T.@....j.V..j.j.V....
1dc0 40 00 57 56 ff 15 8c c1 40 00 56 ff 15 64 c1 40 00 6a fb 56 ff 15 40 c1 40 00 83 c4 28 6a fc 56 @.WV....@.V..d.@.j.V..@.@...(j.V
1de0 ff 15 14 c1 40 00 83 c4 08 5f 5e 5d 33 c0 5b c3 53 55 57 8b 3d 28 c1 40 00 68 0c 83 41 00 56 ff ....@...._^]3.[.SUW.=(.@.h..A.V.
1e00 d7 8b 2d 54 c1 40 00 6a 00 68 c0 22 40 00 56 ff d5 8b 1d 40 c1 40 00 6a fd 56 ff d3 68 14 83 41 ..-T.@.j.h."@.V....@.@.j.V..h..A
1e20 00 56 ff d7 6a 00 68 d0 24 40 00 56 ff d5 6a fd 56 ff d3 68 c8 83 41 00 56 ff d7 83 c4 40 6a 00 .V..j.h.$@.V..j.V..h..A.V....@j.
1e40 68 90 27 40 00 56 ff d5 6a fd 56 ff d3 68 d0 83 41 00 56 ff d7 6a 00 68 b0 27 40 00 56 ff d5 6a h.'@.V..j.V..h..A.V..j.h.'@.V..j
1e60 fd 56 ff d3 68 d8 83 41 00 56 ff d7 6a 00 68 d0 27 40 00 56 ff d5 83 c4 44 6a fd 56 ff d3 68 e0 .V..h..A.V..j.h.'@.V....Dj.V..h.
1e80 83 41 00 56 ff d7 6a 00 68 f0 27 40 00 56 ff d5 6a fd 56 ff d3 68 e8 83 41 00 56 ff d7 6a 00 68 .A.V..j.h.'@.V..j.V..h..A.V..j.h
1ea0 10 28 40 00 56 ff d5 6a fd 56 ff d3 83 c4 40 68 f0 83 41 00 56 ff d7 6a 00 68 30 28 40 00 56 ff .(@.V..j.V....@h..A.V..j.h0(@.V.
1ec0 d5 6a fd 56 ff d3 68 f8 83 41 00 56 ff d7 6a 00 68 50 28 40 00 56 ff d5 6a fd 56 ff d3 68 00 84 .j.V..h..A.V..j.hP(@.V..j.V..h..
1ee0 41 00 56 ff d7 83 c4 40 6a 00 68 50 26 40 00 56 ff d5 6a fd 56 ff d3 68 08 84 41 00 56 ff d7 68 A.V....@j.hP&@.V..j.V..h..A.V..h
1f00 8c 82 41 00 56 ff d7 68 f0 d8 ff ff 56 ff 15 68 c1 40 00 6a fd 56 ff d3 83 c4 34 5f 5d 5b c3 cc ..A.V..h....V..h.@.j.V....4_][..
1f20 83 7c 24 04 00 75 0b 56 ff 15 64 c1 40 00 83 c4 04 c3 8b 44 24 08 53 55 57 50 68 f0 d8 ff ff 56 .|$..u.V..d.@......D$.SUWPh....V
1f40 ff 15 20 c1 40 00 8b 2d 28 c1 40 00 68 04 82 41 00 56 ff d5 8b 3d 68 c1 40 00 6a fe 56 ff d7 6a ....@..-(.@.h..A.V...=h.@.j.V..j
1f60 ff 56 ff 15 4c c1 40 00 8b 1d 14 c1 40 00 83 c4 24 85 c0 75 18 6a fe 56 ff d3 68 04 82 41 00 56 .V..L.@.....@...$..u.j.V..h..A.V
1f80 ff d5 68 f0 d8 ff ff 56 ff d7 83 c4 18 8b 4c 24 10 51 56 ff 15 8c c1 40 00 6a fe 56 ff d7 6a ff ..h....V......L$.QV....@.j.V..j.
1fa0 56 ff 15 4c c1 40 00 83 c4 18 6a fe 56 85 c0 75 62 ff d3 8b 7c 24 18 57 56 ff 15 8c c1 40 00 6a V..L.@....j.V..ub...|$.WV....@.j
1fc0 04 56 ff 15 b4 c1 40 00 89 38 8b 3d 1c c1 40 00 6a ff 56 ff d7 6a fc 56 ff 15 78 c1 40 00 6a fd .V....@..8.=..@.j.V..j.V..x.@.j.
1fe0 56 ff 15 40 c1 40 00 6a fe 56 ff d3 6a fe 56 ff d7 83 c4 40 6a fe 56 ff 15 70 c1 40 00 68 f0 d8 V..@.@.j.V..j.V....@j.V..p.@.h..
2000 ff ff 56 ff d7 6a fe 56 ff 15 74 c1 40 00 e9 8c 00 00 00 ff 15 78 c1 40 00 6a fe 56 ff d3 68 f8 ..V..j.V..t.@........x.@.j.V..h.
2020 81 41 00 56 ff d5 68 f0 d8 ff ff 56 ff d7 6a fe 56 ff 15 44 c1 40 00 6a fe 56 ff d7 6a ff 56 ff .A.V..h....V..j.V..D.@.j.V..j.V.
2040 15 4c c1 40 00 83 c4 38 83 f8 05 75 3b 8b 54 24 14 52 56 ff d5 6a fe 56 ff d7 6a ff 56 ff 15 a0 .L.@...8...u;.T$.RV..j.V..j.V...
2060 c1 40 00 83 c4 18 83 f8 01 75 1d 6a fc 56 ff d3 83 c4 08 5f 5d 5b c7 44 24 08 fe ff ff ff 89 74 .@.......u.j.V....._][.D$......t
2080 24 04 ff 25 ac c1 40 00 6a fb 56 ff 15 1c c1 40 00 6a fb 56 ff 15 70 c1 40 00 6a fc 56 ff d3 83 $..%..@.j.V....@.j.V..p.@.j.V...
20a0 c4 18 5f 5d 5b c7 44 24 08 fe ff ff ff 89 74 24 04 ff 25 ac c1 40 00 cc cc cc cc cc cc cc cc cc .._][.D$......t$..%..@..........
20c0 53 55 8b 6c 24 0c 8b d8 55 53 56 ff 15 48 c1 40 00 83 c4 0c 85 c0 74 08 5d b8 01 00 00 00 5b c3 SU.l$...USV..H.@......t.].....[.
20e0 57 8b 3d 1c c1 40 00 68 ec d8 ff ff 56 ff d7 53 56 ff d7 8b 1d 68 c1 40 00 6a fe 56 ff d3 55 56 W.=..@.h....V..SV....h.@.j.V..UV
2100 ff d7 68 f0 d8 ff ff 56 ff d3 6a fe 56 ff d3 6a ff 56 ff 15 a0 c1 40 00 6a fc 56 8b f8 ff 15 14 ..h....V..j.V..j.V....@.j.V.....
2120 c1 40 00 83 c4 40 8b c7 5f 5d 5b c3 cc cc cc cc 57 56 ff 15 4c c1 40 00 83 c4 08 83 f8 ff 75 1e .@...@.._][.....WV..L.@.......u.
2140 68 10 84 41 00 56 ff 15 28 c1 40 00 83 c4 08 6a 00 6a ff 56 ff 15 98 c1 40 00 83 c4 0c c3 83 f8 h..A.V..(.@....j.j.V....@.......
2160 07 74 27 83 f8 05 74 7c 50 56 ff 15 b8 c1 40 00 50 56 ff 15 28 c1 40 00 83 c4 10 6a 00 6a ff 56 .t'...t|PV....@.PV..(.@....j.j.V
2180 ff 15 98 c1 40 00 83 c4 0c c3 57 56 ff 15 44 c1 40 00 83 c4 08 85 c0 75 04 6a 07 eb cc 68 f0 d8 ....@.....WV..D.@......u.j...h..
21a0 ff ff 56 ff 15 68 c1 40 00 6a ff 56 ff 15 c4 c1 40 00 83 c4 10 85 c0 0f 85 93 00 00 00 6a fe 56 ..V..h.@.j.V....@............j.V
21c0 ff 15 14 c1 40 00 68 1c 84 41 00 56 ff 15 28 c1 40 00 83 c4 10 6a 00 6a ff 56 ff 15 98 c1 40 00 ....@.h..A.V..(.@....j.j.V....@.
21e0 83 c4 0c c3 57 56 ff 15 1c c1 40 00 68 f0 d8 ff ff 56 ff 15 68 c1 40 00 6a ff 56 ff 15 c4 c1 40 ....WV....@.h....V..h.@.j.V....@
2200 00 83 c4 18 85 c0 75 27 6a fe 56 ff 15 14 c1 40 00 68 28 84 41 00 56 ff 15 28 c1 40 00 83 c4 10 ......u'j.V....@.h(.A.V..(.@....
2220 6a 00 6a ff 56 ff 15 98 c1 40 00 83 c4 0c c3 68 30 84 41 00 56 ff 15 28 c1 40 00 6a fe 56 ff 15 j.j.V....@.....h0.A.V..(.@.j.V..
2240 78 c1 40 00 6a 02 56 ff 15 bc c1 40 00 83 c4 18 6a 00 6a ff 56 ff 15 98 c1 40 00 83 c4 0c c3 cc x.@.j.V....@....j.j.V....@......
2260 53 8b d8 33 c0 80 3b 23 56 8b f1 0f 85 8f 00 00 00 55 8b 2d 08 00 00 00 57 8b 38 e8 b0 fe ff ff S..3..;#V........U.-....W.8.....
2280 8a 4b 01 80 f9 66 75 3c 55 33 c9 8b 09 50 83 c3 02 83 3d 04 00 00 00 00 51 53 74 14 68 38 84 41 .K...fu<U3...P....=.....QSt.h8.A
22a0 00 56 ff 15 88 c1 40 00 83 c4 18 5f 5d 5e 5b c3 68 78 84 41 00 56 ff 15 88 c1 40 00 83 c4 18 5f .V....@...._]^[.hx.A.V....@...._
22c0 5d 5e 5b c3 80 f9 76 75 1e 55 83 c3 02 83 3d 04 00 00 00 00 50 53 74 14 68 a8 84 41 00 56 ff 15 ]^[...vu.U....=.....PSt.h..A.V..
22e0 88 c1 40 00 83 c4 14 5f 5d 5e 5b c3 68 e4 84 41 00 56 ff 15 88 c1 40 00 83 c4 14 5f 5d 5e 5b c3 ..@...._]^[.h..A.V....@...._]^[.
2300 53 56 ff 15 88 c1 40 00 83 c4 08 5e 5b c3 cc cc 6a 01 56 ff 15 4c c1 40 00 83 c4 08 83 f8 05 75 SV....@....^[...j.V..L.@.......u
2320 43 68 3c 82 41 00 56 ff 15 28 c1 40 00 6a 01 56 ff 15 9c c1 40 00 6a ff 56 ff 15 50 c1 40 00 83 Ch<.A.V..(.@.j.V....@.j.V..P.@..
2340 c4 18 85 c0 74 12 6a 01 56 ff 15 c0 c1 40 00 83 c4 08 b8 01 00 00 00 c3 6a fe 56 ff 15 14 c1 40 ....t.j.V....@..........j.V....@
2360 00 83 c4 08 33 c0 c3 3b 0d 90 a2 41 00 75 02 f3 c3 e9 76 0a 00 00 b8 00 a0 41 00 c3 cc cc a1 40 ....3..;...A.u....v......A.....@
2380 f6 42 00 56 6a 14 5e 85 c0 75 07 b8 00 02 00 00 eb 06 3b c6 7d 07 8b c6 a3 40 f6 42 00 6a 04 50 .B.Vj.^..u........;.}....@.B.j.P
23a0 e8 e6 0d 00 00 59 59 a3 3c e6 42 00 85 c0 75 1e 6a 04 56 89 35 40 f6 42 00 e8 cd 0d 00 00 59 59 .....YY.<.B...u.j.V.5@.B......YY
23c0 a3 3c e6 42 00 85 c0 75 05 6a 1a 58 5e c3 33 d2 b9 00 a0 41 00 eb 05 a1 3c e6 42 00 89 0c 02 83 .<.B...u.j.X^.3....A....<.B.....
23e0 c1 20 83 c2 04 81 f9 80 a2 41 00 7c ea 6a fe 5e 33 d2 b9 10 a0 41 00 57 8b c2 c1 f8 05 8b 04 85 .........A.|.j.^3....A.W........
2400 20 e5 42 00 8b fa 83 e7 1f c1 e7 06 8b 04 07 83 f8 ff 74 08 3b c6 74 04 85 c0 75 02 89 31 83 c1 ..B...............t.;.t...u..1..
2420 20 42 81 f9 70 a0 41 00 7c ce 5f 33 c0 5e c3 e8 1a 10 00 00 80 3d ac da 42 00 00 74 05 e8 e3 0d .B..p.A.|._3.^.......=..B..t....
2440 00 00 ff 35 3c e6 42 00 e8 f8 07 00 00 59 c3 8b ff 55 8b ec 56 8b 75 08 b8 00 a0 41 00 3b f0 72 ...5<.B......Y...U..V.u....A.;.r
2460 22 81 fe 60 a2 41 00 77 1a 8b ce 2b c8 c1 f9 05 83 c1 10 51 e8 5a 11 00 00 81 4e 0c 00 80 00 00 "..`.A.w...+.......Q.Z....N.....
2480 59 eb 0a 83 c6 20 56 ff 15 10 c0 40 00 5e 5d c3 8b ff 55 8b ec 8b 45 08 83 f8 14 7d 16 83 c0 10 Y.....V....@.^]...U...E....}....
24a0 50 e8 2d 11 00 00 8b 45 0c 81 48 0c 00 80 00 00 59 5d c3 8b 45 0c 83 c0 20 50 ff 15 10 c0 40 00 P.-....E..H.....Y]..E....P....@.
24c0 5d c3 8b ff 55 8b ec 8b 45 08 b9 00 a0 41 00 3b c1 72 1f 3d 60 a2 41 00 77 18 81 60 0c ff 7f ff ]...U...E....A.;.r.=`.A.w..`....
24e0 ff 2b c1 c1 f8 05 83 c0 10 50 e8 0a 10 00 00 59 5d c3 83 c0 20 50 ff 15 14 c0 40 00 5d c3 8b ff .+.......P.....Y]....P....@.]...
2500 55 8b ec 8b 4d 08 83 f9 14 8b 45 0c 7d 13 81 60 0c ff 7f ff ff 83 c1 10 51 e8 db 0f 00 00 59 5d U...M.....E.}..`........Q.....Y]
2520 c3 83 c0 20 50 ff 15 14 c0 40 00 5d c3 6a 0c 68 80 85 41 00 e8 7f 20 00 00 33 f6 89 75 e4 33 c0 ....P....@.].j.h..A......3..u.3.
2540 8b 5d 08 3b de 0f 95 c0 3b c6 75 20 e8 1b 20 00 00 c7 00 16 00 00 00 56 56 56 56 56 e8 a3 1f 00 .].;....;.u............VVVVV....
2560 00 83 c4 14 83 c8 ff e9 cd 00 00 00 33 c0 39 75 0c 0f 95 c0 3b c6 74 d4 89 5d 08 53 e8 ce fe ff ............3.9u....;.t..].S....
2580 ff 59 89 75 fc f6 43 0c 40 75 77 53 e8 0a 1e 00 00 59 83 f8 ff 74 1b 83 f8 fe 74 16 8b d0 c1 fa .Y.u..C.@uwS.....Y...t....t.....
25a0 05 8b c8 83 e1 1f c1 e1 06 03 0c 95 20 e5 42 00 eb 05 b9 98 a2 41 00 f6 41 24 7f 75 29 83 f8 ff ..............B......A..A$.u)...
25c0 74 19 83 f8 fe 74 14 8b c8 c1 f9 05 83 e0 1f c1 e0 06 03 04 8d 20 e5 42 00 eb 05 b8 98 a2 41 00 t....t.................B......A.
25e0 f6 40 24 80 74 1c e8 81 1f 00 00 c7 00 16 00 00 00 56 56 56 56 56 e8 09 1f 00 00 83 c4 14 83 4d .@$.t............VVVVV.........M
2600 e4 ff 39 75 e4 75 23 53 e8 f9 0f 00 00 8b f8 8d 45 10 50 56 ff 75 0c 53 e8 e6 11 00 00 89 45 e4 ..9u.u#S........E.PV.u.S......E.
2620 53 57 e8 7b 10 00 00 83 c4 1c c7 45 fc fe ff ff ff e8 09 00 00 00 8b 45 e4 e8 bf 1f 00 00 c3 ff SW.{.......E...........E........
2640 75 08 e8 7b fe ff ff 59 c3 8b ff 55 8b ec 57 bf e8 03 00 00 57 ff 15 1c c0 40 00 ff 75 08 ff 15 u..{...Y...U..W.....W....@..u...
2660 18 c0 40 00 81 c7 e8 03 00 00 81 ff 60 ea 00 00 77 04 85 c0 74 de 5f 5d c3 8b ff 55 8b ec e8 71 ..@.........`...w...t._]...U...q
2680 28 00 00 ff 75 08 e8 be 26 00 00 ff 35 80 a2 41 00 e8 91 21 00 00 68 ff 00 00 00 ff d0 83 c4 0c (...u...&...5..A...!..h.........
26a0 5d c3 8b ff 55 8b ec 68 18 c2 40 00 ff 15 18 c0 40 00 85 c0 74 15 68 08 c2 40 00 50 ff 15 20 c0 ]...U..h..@.....@...t.h..@.P....
26c0 40 00 85 c0 74 05 ff 75 08 ff d0 5d c3 8b ff 55 8b ec ff 75 08 e8 c8 ff ff ff 59 ff 75 08 ff 15 @...t..u...]...U...u......Y.u...
26e0 24 c0 40 00 cc 6a 08 e8 e7 0e 00 00 59 c3 6a 08 e8 04 0e 00 00 59 c3 8b ff 55 8b ec 56 8b f0 eb $.@..j......Y.j......Y...U..V...
2700 0b 8b 06 85 c0 74 02 ff d0 83 c6 04 3b 75 08 72 f0 5e 5d c3 8b ff 55 8b ec 56 8b 75 08 33 c0 eb .....t......;u.r.^]...U..V.u.3..
2720 0f 85 c0 75 10 8b 0e 85 c9 74 02 ff d1 83 c6 04 3b 75 0c 72 ec 5e 5d c3 8b ff 55 8b ec 83 3d 34 ...u.....t......;u.r.^]...U...=4
2740 e6 42 00 00 74 19 68 34 e6 42 00 e8 20 2a 00 00 59 85 c0 74 0a ff 75 08 ff 15 34 e6 42 00 59 e8 .B..t.h4.B...*..Y..t..u...4.B.Y.
2760 53 29 00 00 68 ec c1 40 00 68 d4 c1 40 00 e8 a1 ff ff ff 59 59 85 c0 75 42 68 91 5c 40 00 e8 d1 S)..h..@.h..@......YY..uBh.\@...
2780 28 00 00 b8 cc c1 40 00 c7 04 24 d0 c1 40 00 e8 63 ff ff ff 83 3d 38 e6 42 00 00 59 74 1b 68 38 (.....@...$..@..c....=8.B..Yt.h8
27a0 e6 42 00 e8 c8 29 00 00 59 85 c0 74 0c 6a 00 6a 02 6a 00 ff 15 38 e6 42 00 33 c0 5d c3 6a 18 68 .B...)..Y..t.j.j.j...8.B.3.].j.h
27c0 a0 85 41 00 e8 ef 1d 00 00 6a 08 e8 03 0e 00 00 59 83 65 fc 00 33 db 43 39 1d b4 da 42 00 0f 84 ..A......j......Y.e..3.C9...B...
27e0 c5 00 00 00 89 1d b0 da 42 00 8a 45 10 a2 ac da 42 00 83 7d 0c 00 0f 85 9d 00 00 00 ff 35 2c e6 ........B..E....B..}.........5,.
2800 42 00 e8 20 20 00 00 59 8b f8 89 7d d8 85 ff 74 78 ff 35 28 e6 42 00 e8 0b 20 00 00 59 8b f0 89 B......Y...}...tx.5(.B......Y...
2820 75 dc 89 7d e4 89 75 e0 83 ee 04 89 75 dc 3b f7 72 57 e8 e7 1f 00 00 39 06 74 ed 3b f7 72 4a ff u..}..u.....u.;.rW.....9.t.;.rJ.
2840 36 e8 e1 1f 00 00 8b f8 e8 d1 1f 00 00 89 06 ff d7 ff 35 2c e6 42 00 e8 cb 1f 00 00 8b f8 ff 35 6.................5,.B.........5
2860 28 e6 42 00 e8 be 1f 00 00 83 c4 0c 39 7d e4 75 05 39 45 e0 74 0e 89 7d e4 89 7d d8 89 45 e0 8b (.B.........9}.u.9E.t..}..}..E..
2880 f0 89 75 dc 8b 7d d8 eb 9f 68 fc c1 40 00 b8 f0 c1 40 00 e8 5f fe ff ff 59 68 04 c2 40 00 b8 00 ..u..}...h..@....@.._...Yh..@...
28a0 c2 40 00 e8 4f fe ff ff 59 c7 45 fc fe ff ff ff e8 1f 00 00 00 83 7d 10 00 75 28 89 1d b4 da 42 .@..O...Y.E...........}..u(....B
28c0 00 6a 08 e8 31 0c 00 00 59 ff 75 08 e8 fc fd ff ff 33 db 43 83 7d 10 00 74 08 6a 08 e8 18 0c 00 .j..1...Y.u......3.C.}..t.j.....
28e0 00 59 c3 e8 15 1d 00 00 c3 8b ff 55 8b ec 6a 00 6a 00 ff 75 08 e8 c3 fe ff ff 83 c4 0c 5d c3 8b .Y.........U..j.j..u.........]..
2900 ff 55 8b ec 6a 00 6a 01 ff 75 08 e8 ad fe ff ff 83 c4 0c 5d c3 6a 01 6a 00 6a 00 e8 9d fe ff ff .U..j.j..u.........].j.j.j......
2920 83 c4 0c c3 6a 01 6a 01 6a 00 e8 8e fe ff ff 83 c4 0c c3 8b ff 56 e8 e3 1e 00 00 8b f0 56 e8 34 ....j.j.j............V.......V.4
2940 2d 00 00 56 e8 bf 2c 00 00 56 e8 7e 1a 00 00 56 e8 a4 2c 00 00 56 e8 8f 2c 00 00 56 e8 77 2a 00 -..V..,..V.~...V..,..V..,..V.w*.
2960 00 56 e8 10 29 00 00 56 e8 f9 28 00 00 68 ff 34 40 00 e8 35 1e 00 00 83 c4 24 a3 80 a2 41 00 5e .V..)..V..(..h.4@..5.....$...A.^
2980 c3 8b ff 55 8b ec 83 3d c0 da 42 00 02 74 05 e8 60 25 00 00 ff 75 08 e8 ad 23 00 00 68 ff 00 00 ...U...=..B..t..`%...u...#..h...
29a0 00 e8 27 fd ff ff 59 59 5d c3 6a 14 68 c0 85 41 00 e8 02 1c 00 00 b8 4d 5a 00 00 66 39 05 00 00 ..'...YY].j.h..A.......MZ..f9...
29c0 40 00 75 38 a1 3c 00 40 00 81 b8 00 00 40 00 50 45 00 00 75 27 b9 0b 01 00 00 66 39 88 18 00 40 @.u8.<.@.....@.PE..u'.....f9...@
29e0 00 75 19 83 b8 74 00 40 00 0e 76 10 33 c9 39 88 e8 00 40 00 0f 95 c1 89 4d e4 eb 04 83 65 e4 00 .u...t.@..v.3.9...@.....M....e..
2a00 6a 01 e8 61 31 00 00 59 85 c0 75 08 6a 1c e8 6e ff ff ff 59 e8 a3 21 00 00 85 c0 75 08 6a 10 e8 j..a1..Y..u.j..n...Y..!....u.j..
2a20 5d ff ff ff 59 e8 41 26 00 00 83 65 fc 00 e8 bf 04 00 00 85 c0 7d 08 6a 1b e8 3b fc ff ff 59 ff ]...Y.A&...e.........}.j..;...Y.
2a40 15 28 c0 40 00 a3 20 e6 42 00 e8 e2 2f 00 00 a3 b8 da 42 00 e8 1d 2f 00 00 85 c0 7d 08 6a 08 e8 .(.@....B.../.....B.../....}.j..
2a60 15 fc ff ff 59 e8 94 2c 00 00 85 c0 7d 08 6a 09 e8 04 fc ff ff 59 6a 01 e8 bb fc ff ff 59 85 c0 ....Y..,....}.j......Yj......Y..
2a80 74 07 50 e8 f1 fb ff ff 59 a1 94 da 42 00 a3 98 da 42 00 50 ff 35 8c da 42 00 ff 35 88 da 42 00 t.P.....Y...B....B.P.5..B..5..B.
2aa0 e8 3b da ff ff 83 c4 0c 89 45 e0 83 7d e4 00 75 06 50 e8 32 fe ff ff e8 59 fe ff ff eb 2e 8b 45 .;.......E..}..u.P.2....Y......E
2ac0 ec 8b 08 8b 09 89 4d dc 50 51 e8 a9 27 00 00 59 59 c3 8b 65 e8 8b 45 dc 89 45 e0 83 7d e4 00 75 ......M.PQ..'..YY..e..E..E..}..u
2ae0 06 50 e8 18 fe ff ff e8 38 fe ff ff c7 45 fc fe ff ff ff 8b 45 e0 e8 02 1b 00 00 c3 e8 97 30 00 .P......8....E......E.........0.
2b00 00 e9 a4 fe ff ff cc cc cc cc cc cc cc cc cc cc 8b 4c 24 0c 57 85 c9 0f 84 b7 00 00 00 8b 7c 24 .................L$.W.........|$
2b20 08 56 f7 c7 03 00 00 00 53 74 11 8a 07 83 c7 01 84 c0 74 39 f7 c7 03 00 00 00 75 ef 8b 07 ba ff .V......St........t9......u.....
2b40 fe fe 7e 03 d0 83 f0 ff 33 c2 83 c7 04 a9 00 01 01 81 74 e8 8b 47 fc 84 c0 74 21 84 e4 74 18 a9 ..~.....3.........t..G...t!..t..
2b60 00 00 ff 00 74 0c a9 00 00 00 ff 75 cf 83 ef 01 eb 0d 83 ef 02 eb 08 83 ef 03 eb 03 83 ef 04 8b ....t......u....................
2b80 74 24 14 f7 c6 03 00 00 00 75 09 8b d9 c1 e9 02 75 5c eb 22 8a 16 83 c6 01 84 d2 74 3d 88 17 83 t$.......u......u\.".......t=...
2ba0 c7 01 83 e9 01 74 29 f7 c6 03 00 00 00 75 e5 8b d9 c1 e9 02 75 38 8b cb 83 e1 03 74 13 8a 16 83 .....t)......u......u8.....t....
2bc0 c6 01 88 17 83 c7 01 84 d2 74 07 83 e9 01 75 ed 88 0f 5b 5e 8b 44 24 08 5f c3 88 17 8b 44 24 10 .........t....u...[^.D$._....D$.
2be0 5b 5e 5f c3 89 17 83 c7 04 83 e9 01 74 c8 ba ff fe fe 7e 8b 06 03 d0 83 f0 ff 33 c2 8b 16 83 c6 [^_.........t.....~.......3.....
2c00 04 a9 00 01 01 81 74 dc 84 d2 74 ce 84 f6 74 2a f7 c2 00 00 ff 00 74 12 f7 c2 00 00 00 ff 75 c4 ......t...t...t*......t.......u.
2c20 89 17 8b 44 24 10 5b 5e 5f c3 66 89 17 33 d2 8b 44 24 10 88 57 02 5b 5e 5f c3 66 89 17 8b 44 24 ...D$.[^_.f..3..D$..W.[^_.f...D$
2c40 10 5b 5e 5f c3 6a 0c 68 e0 85 41 00 e8 67 19 00 00 8b 75 08 85 f6 74 75 83 3d 00 e5 42 00 03 75 .[^_.j.h..A..g....u...tu.=..B..u
2c60 43 6a 04 e8 6b 09 00 00 59 83 65 fc 00 56 e8 bb 2f 00 00 59 89 45 e4 85 c0 74 09 56 50 e8 dc 2f Cj..k...Y.e..V../..Y.E...t.VP../
2c80 00 00 59 59 c7 45 fc fe ff ff ff e8 0b 00 00 00 83 7d e4 00 75 37 ff 75 08 eb 0a 6a 04 e8 57 08 ..YY.E...........}..u7.u...j..W.
2ca0 00 00 59 c3 56 6a 00 ff 35 b4 e3 42 00 ff 15 30 c0 40 00 85 c0 75 16 e8 b0 18 00 00 8b f0 ff 15 ..Y.Vj..5..B...0.@...u..........
2cc0 2c c0 40 00 50 e8 60 18 00 00 89 06 59 e8 2b 19 00 00 c3 6a 0c 68 00 86 41 00 e8 d9 18 00 00 83 ,.@.P.`.....Y.+....j.h..A.......
2ce0 65 e4 00 8b 75 08 3b 35 f0 e4 42 00 77 22 6a 04 e8 de 08 00 00 59 83 65 fc 00 56 e8 0d 37 00 00 e...u.;5..B.w"j......Y.e..V..7..
2d00 59 89 45 e4 c7 45 fc fe ff ff ff e8 09 00 00 00 8b 45 e4 e8 e5 18 00 00 c3 6a 04 e8 d9 07 00 00 Y.E..E...........E.......j......
2d20 59 c3 8b ff 55 8b ec 56 8b 75 08 83 fe e0 0f 87 a1 00 00 00 53 57 8b 3d 34 c0 40 00 83 3d b4 e3 Y...U..V.u..........SW.=4.@..=..
2d40 42 00 00 75 18 e8 aa 21 00 00 6a 1e e8 f8 1f 00 00 68 ff 00 00 00 e8 72 f9 ff ff 59 59 a1 00 e5 B..u...!..j......h.....r...YY...
2d60 42 00 83 f8 01 75 0e 85 f6 74 04 8b c6 eb 03 33 c0 40 50 eb 1c 83 f8 03 75 0b 56 e8 53 ff ff ff B....u...t.....3.@P.....u.V.S...
2d80 59 85 c0 75 16 85 f6 75 01 46 83 c6 0f 83 e6 f0 56 6a 00 ff 35 b4 e3 42 00 ff d7 8b d8 85 db 75 Y..u...u.F......Vj..5..B.......u
2da0 2e 6a 0c 5e 39 05 bc e3 42 00 74 15 ff 75 08 e8 d2 28 00 00 59 85 c0 74 0f 8b 75 08 e9 7b ff ff .j.^9...B.t..u...(..Y..t..u..{..
2dc0 ff e8 a6 17 00 00 89 30 e8 9f 17 00 00 89 30 5f 8b c3 5b eb 14 56 e8 ab 28 00 00 59 e8 8b 17 00 .......0......0_..[..V..(..Y....
2de0 00 c7 00 0c 00 00 00 33 c0 5e 5d c3 8b ff 55 8b ec 81 ec 28 03 00 00 a3 d0 db 42 00 89 0d cc db .......3.^]...U....(......B.....
2e00 42 00 89 15 c8 db 42 00 89 1d c4 db 42 00 89 35 c0 db 42 00 89 3d bc db 42 00 66 8c 15 e8 db 42 B.....B.....B..5..B..=..B.f....B
2e20 00 66 8c 0d dc db 42 00 66 8c 1d b8 db 42 00 66 8c 05 b4 db 42 00 66 8c 25 b0 db 42 00 66 8c 2d .f....B.f....B.f....B.f.%..B.f.-
2e40 ac db 42 00 9c 8f 05 e0 db 42 00 8b 45 00 a3 d4 db 42 00 8b 45 04 a3 d8 db 42 00 8d 45 08 a3 e4 ..B......B..E....B..E....B..E...
2e60 db 42 00 8b 85 e0 fc ff ff c7 05 20 db 42 00 01 00 01 00 a1 d8 db 42 00 a3 d4 da 42 00 c7 05 c8 .B...........B........B....B....
2e80 da 42 00 09 04 00 c0 c7 05 cc da 42 00 01 00 00 00 a1 90 a2 41 00 89 85 d8 fc ff ff a1 94 a2 41 .B.........B........A..........A
2ea0 00 89 85 dc fc ff ff ff 15 48 c0 40 00 a3 18 db 42 00 6a 01 e8 39 38 00 00 59 6a 00 ff 15 44 c0 .........H.@....B.j..98..Yj...D.
2ec0 40 00 68 30 c2 40 00 ff 15 40 c0 40 00 83 3d 18 db 42 00 00 75 08 6a 01 e8 15 38 00 00 59 68 09 @.h0.@...@.@..=..B..u.j...8..Yh.
2ee0 04 00 c0 ff 15 3c c0 40 00 50 ff 15 38 c0 40 00 c9 c3 6a 54 68 20 86 41 00 e8 ba 16 00 00 33 ff .....<.@.P..8.@...jTh..A......3.
2f00 89 7d fc 8d 45 9c 50 ff 15 58 c0 40 00 c7 45 fc fe ff ff ff 6a 40 6a 20 5e 56 e8 6c 02 00 00 59 .}..E.P..X.@..E.....j@j.^V.l...Y
2f20 59 3b c7 0f 84 14 02 00 00 a3 20 e5 42 00 89 35 08 e5 42 00 8d 88 00 08 00 00 eb 30 c6 40 04 00 Y;..........B..5..B........0.@..
2f40 83 08 ff c6 40 05 0a 89 78 08 c6 40 24 00 c6 40 25 0a c6 40 26 0a 89 78 38 c6 40 34 00 83 c0 40 ....@...x..@$..@%..@&..x8.@4...@
2f60 8b 0d 20 e5 42 00 81 c1 00 08 00 00 3b c1 72 cc 66 39 7d ce 0f 84 0a 01 00 00 8b 45 d0 3b c7 0f ....B.......;.r.f9}........E.;..
2f80 84 ff 00 00 00 8b 38 8d 58 04 8d 04 3b 89 45 e4 be 00 08 00 00 3b fe 7c 02 8b fe c7 45 e0 01 00 ......8.X...;.E......;.|....E...
2fa0 00 00 eb 5b 6a 40 6a 20 e8 de 01 00 00 59 59 85 c0 74 56 8b 4d e0 8d 0c 8d 20 e5 42 00 89 01 83 ...[j@j......YY..tV.M......B....
2fc0 05 08 e5 42 00 20 8d 90 00 08 00 00 eb 2a c6 40 04 00 83 08 ff c6 40 05 0a 83 60 08 00 80 60 24 ...B.........*.@......@...`...`$
2fe0 80 c6 40 25 0a c6 40 26 0a 83 60 38 00 c6 40 34 00 83 c0 40 8b 11 03 d6 3b c2 72 d2 ff 45 e0 39 ..@%..@&..`8..@4...@....;.r..E.9
3000 3d 08 e5 42 00 7c 9d eb 06 8b 3d 08 e5 42 00 83 65 e0 00 85 ff 7e 6d 8b 45 e4 8b 08 83 f9 ff 74 =..B.|....=..B..e....~m.E......t
3020 56 83 f9 fe 74 51 8a 03 a8 01 74 4b a8 08 75 0b 51 ff 15 54 c0 40 00 85 c0 74 3c 8b 75 e0 8b c6 V...tQ....tK..u.Q..T.@...t<.u...
3040 c1 f8 05 83 e6 1f c1 e6 06 03 34 85 20 e5 42 00 8b 45 e4 8b 00 89 06 8a 03 88 46 04 68 a0 0f 00 ..........4...B..E........F.h...
3060 00 8d 46 0c 50 e8 ad 25 00 00 59 59 85 c0 0f 84 c9 00 00 00 ff 46 08 ff 45 e0 43 83 45 e4 04 39 ..F.P..%..YY.........F..E.C.E..9
3080 7d e0 7c 93 33 db 8b f3 c1 e6 06 03 35 20 e5 42 00 8b 06 83 f8 ff 74 0b 83 f8 fe 74 06 80 4e 04 }.|.3.......5..B......t....t..N.
30a0 80 eb 72 c6 46 04 81 85 db 75 05 6a f6 58 eb 0a 8b c3 48 f7 d8 1b c0 83 c0 f5 50 ff 15 50 c0 40 ..r.F....u.j.X....H.......P..P.@
30c0 00 8b f8 83 ff ff 74 43 85 ff 74 3f 57 ff 15 54 c0 40 00 85 c0 74 34 89 3e 25 ff 00 00 00 83 f8 ......tC..t?W..T.@...t4.>%......
30e0 02 75 06 80 4e 04 40 eb 09 83 f8 03 75 04 80 4e 04 08 68 a0 0f 00 00 8d 46 0c 50 e8 17 25 00 00 .u..N.@.....u..N..h.....F.P..%..
3100 59 59 85 c0 74 37 ff 46 08 eb 0a 80 4e 04 40 c7 06 fe ff ff ff 43 83 fb 03 0f 8c 67 ff ff ff ff YY..t7.F....N.@......C.....g....
3120 35 08 e5 42 00 ff 15 4c c0 40 00 33 c0 eb 11 33 c0 40 c3 8b 65 e8 c7 45 fc fe ff ff ff 83 c8 ff 5..B...L.@.3...3.@..e..E........
3140 e8 b8 14 00 00 c3 8b ff 55 8b ec 56 57 33 f6 ff 75 08 e8 cb fb ff ff 8b f8 59 85 ff 75 27 39 05 ........U..VW3..u........Y..u'9.
3160 ec dd 42 00 76 1f 56 ff 15 1c c0 40 00 8d 86 e8 03 00 00 3b 05 ec dd 42 00 76 03 83 c8 ff 8b f0 ..B.v.V....@.......;...B.v......
3180 83 f8 ff 75 ca 8b c7 5f 5e 5d c3 8b ff 55 8b ec 56 57 33 f6 6a 00 ff 75 0c ff 75 08 e8 59 35 00 ...u..._^]...U..VW3.j..u..u..Y5.
31a0 00 8b f8 83 c4 0c 85 ff 75 27 39 05 ec dd 42 00 76 1f 56 ff 15 1c c0 40 00 8d 86 e8 03 00 00 3b ........u'9...B.v.V....@.......;
31c0 05 ec dd 42 00 76 03 83 c8 ff 8b f0 83 f8 ff 75 c3 8b c7 5f 5e 5d c3 8b ff 55 8b ec 56 57 33 f6 ...B.v.........u..._^]...U..VW3.
31e0 ff 75 0c ff 75 08 e8 2d 36 00 00 8b f8 59 59 85 ff 75 2c 39 45 0c 74 27 39 05 ec dd 42 00 76 1f .u..u..-6....YY..u,9E.t'9...B.v.
3200 56 ff 15 1c c0 40 00 8d 86 e8 03 00 00 3b 05 ec dd 42 00 76 03 83 c8 ff 8b f0 83 f8 ff 75 c1 8b V....@.......;...B.v.........u..
3220 c7 5f 5e 5d c3 6a 10 68 40 86 41 00 e8 87 13 00 00 33 db 89 5d e4 6a 01 e8 96 03 00 00 59 89 5d ._^].j.h@.A......3..].j......Y.]
3240 fc 6a 03 5f 89 7d e0 3b 3d 40 f6 42 00 7d 57 8b f7 c1 e6 02 a1 3c e6 42 00 03 c6 39 18 74 44 8b .j._.}.;=@.B.}W......<.B...9.tD.
3260 00 f6 40 0c 83 74 0f 50 e8 3d 38 00 00 59 83 f8 ff 74 03 ff 45 e4 83 ff 14 7c 28 a1 3c e6 42 00 ..@..t.P.=8..Y...t..E....|(.<.B.
3280 8b 04 06 83 c0 20 50 ff 15 5c c0 40 00 a1 3c e6 42 00 ff 34 06 e8 ab f9 ff ff 59 a1 3c e6 42 00 ......P..\.@..<.B..4......Y.<.B.
32a0 89 1c 06 47 eb 9e c7 45 fc fe ff ff ff e8 09 00 00 00 8b 45 e4 e8 43 13 00 00 c3 6a 01 e8 37 02 ...G...E...........E..C....j..7.
32c0 00 00 59 c3 8b ff 55 8b ec 53 56 8b 75 08 8b 46 0c 8b c8 80 e1 03 33 db 80 f9 02 75 40 a9 08 01 ..Y...U..SV.u..F......3....u@...
32e0 00 00 74 39 8b 46 08 57 8b 3e 2b f8 85 ff 7e 2c 57 50 56 e8 a3 10 00 00 59 50 e8 5a 3f 00 00 83 ..t9.F.W.>+...~,WPV.....YP.Z?...
3300 c4 0c 3b c7 75 0f 8b 46 0c 84 c0 79 0f 83 e0 fd 89 46 0c eb 07 83 4e 0c 20 83 cb ff 5f 8b 46 08 ..;.u..F...y.....F....N....._.F.
3320 83 66 04 00 89 06 5e 8b c3 5b 5d c3 8b ff 55 8b ec 56 8b 75 08 85 f6 75 09 56 e8 35 00 00 00 59 .f....^..[]...U..V.u...u.V.5...Y
3340 eb 2f 56 e8 7c ff ff ff 59 85 c0 74 05 83 c8 ff eb 1f f7 46 0c 00 40 00 00 74 14 56 e8 3a 10 00 ./V.|...Y..t.......F..@..t.V.:..
3360 00 50 e8 ce 3f 00 00 59 f7 d8 59 1b c0 eb 02 33 c0 5e 5d c3 6a 14 68 60 86 41 00 e8 38 12 00 00 .P..?..Y..Y....3.^].j.h`.A..8...
3380 33 ff 89 7d e4 89 7d dc 6a 01 e8 44 02 00 00 59 89 7d fc 33 f6 89 75 e0 3b 35 40 f6 42 00 0f 8d 3..}..}.j..D...Y.}.3..u.;5@.B...
33a0 83 00 00 00 a1 3c e6 42 00 8d 04 b0 39 38 74 5e 8b 00 f6 40 0c 83 74 56 50 56 e8 d1 f0 ff ff 59 .....<.B....98t^...@..tVPV.....Y
33c0 59 33 d2 42 89 55 fc a1 3c e6 42 00 8b 04 b0 8b 48 0c f6 c1 83 74 2f 39 55 08 75 11 50 e8 4a ff Y3.B.U..<.B.....H....t/9U.u.P.J.
33e0 ff ff 59 83 f8 ff 74 1e ff 45 e4 eb 19 39 7d 08 75 14 f6 c1 02 74 0f 50 e8 2f ff ff ff 59 83 f8 ..Y...t..E...9}.u....t.P./...Y..
3400 ff 75 03 09 45 dc 89 7d fc e8 08 00 00 00 46 eb 84 33 ff 8b 75 e0 a1 3c e6 42 00 ff 34 b0 56 e8 .u..E..}......F..3..u..<.B..4.V.
3420 da f0 ff ff 59 59 c3 c7 45 fc fe ff ff ff e8 12 00 00 00 83 7d 08 01 8b 45 e4 74 03 8b 45 dc e8 ....YY..E...........}...E.t..E..
3440 b9 11 00 00 c3 6a 01 e8 ad 00 00 00 59 c3 6a 01 e8 1f ff ff ff 59 c3 8b ff 56 57 33 f6 bf f0 dd .....j......Y.j......Y...VW3....
3460 42 00 83 3c f5 dc a2 41 00 01 75 1e 8d 04 f5 d8 a2 41 00 89 38 68 a0 0f 00 00 ff 30 83 c7 18 e8 B..<...A..u......A..8h.....0....
3480 93 21 00 00 59 59 85 c0 74 0c 46 83 fe 24 7c d2 33 c0 40 5f 5e c3 83 24 f5 d8 a2 41 00 00 33 c0 .!..YY..t.F..$|.3.@_^..$...A..3.
34a0 eb f1 8b ff 53 8b 1d 5c c0 40 00 56 be d8 a2 41 00 57 8b 3e 85 ff 74 13 83 7e 04 01 74 0d 57 ff ....S..\.@.V...A.W.>..t..~..t.W.
34c0 d3 57 e8 7e f7 ff ff 83 26 00 59 83 c6 08 81 fe f8 a3 41 00 7c dc be d8 a2 41 00 5f 8b 06 85 c0 .W.~....&.Y.......A.|....A._....
34e0 74 09 83 7e 04 01 75 03 50 ff d3 83 c6 08 81 fe f8 a3 41 00 7c e6 5e 5b c3 8b ff 55 8b ec 8b 45 t..~..u.P.........A.|.^[...U...E
3500 08 ff 34 c5 d8 a2 41 00 ff 15 14 c0 40 00 5d c3 6a 0c 68 88 86 41 00 e8 9c 10 00 00 33 ff 47 89 ..4...A.....@.].j.h..A......3.G.
3520 7d e4 33 db 39 1d b4 e3 42 00 75 18 e8 c3 19 00 00 6a 1e e8 11 18 00 00 68 ff 00 00 00 e8 8b f1 }.3.9...B.u......j......h.......
3540 ff ff 59 59 8b 75 08 8d 34 f5 d8 a2 41 00 39 1e 74 04 8b c7 eb 6e 6a 18 e8 e9 fb ff ff 59 8b f8 ..YY.u..4...A.9.t....nj......Y..
3560 3b fb 75 0f e8 03 10 00 00 c7 00 0c 00 00 00 33 c0 eb 51 6a 0a e8 59 00 00 00 59 89 5d fc 39 1e ;.u............3..Qj..Y...Y.].9.
3580 75 2c 68 a0 0f 00 00 57 e8 8a 20 00 00 59 59 85 c0 75 17 57 e8 ac f6 ff ff 59 e8 cd 0f 00 00 c7 u,h....W.....YY..u.W.....Y......
35a0 00 0c 00 00 00 89 5d e4 eb 0b 89 3e eb 07 57 e8 91 f6 ff ff 59 c7 45 fc fe ff ff ff e8 09 00 00 ......]....>..W.....Y.E.........
35c0 00 8b 45 e4 e8 34 10 00 00 c3 6a 0a e8 28 ff ff ff 59 c3 8b ff 55 8b ec 8b 45 08 56 8d 34 c5 d8 ..E..4....j..(...Y...U...E.V.4..
35e0 a2 41 00 83 3e 00 75 13 50 e8 22 ff ff ff 59 85 c0 75 08 6a 11 e8 7f f0 ff ff 59 ff 36 ff 15 10 .A..>.u.P."...Y..u.j......Y.6...
3600 c0 40 00 5e 5d c3 8b ff 55 8b ec 56 8b 75 08 56 e8 86 0d 00 00 50 e8 fb 3d 00 00 59 59 85 c0 74 .@.^]...U..V.u.V.....P..=..YY..t
3620 7c e8 50 ed ff ff 83 c0 20 3b f0 75 04 33 c0 eb 0f e8 40 ed ff ff 83 c0 40 3b f0 75 60 33 c0 40 |.P......;.u.3....@.....@;.u`3.@
3640 ff 05 80 da 42 00 f7 46 0c 0c 01 00 00 75 4e 53 57 8d 3c 85 40 df 42 00 83 3f 00 bb 00 10 00 00 ....B..F.....uNSW.<.@.B..?......
3660 75 20 53 e8 de fa ff ff 59 89 07 85 c0 75 13 8d 46 14 6a 02 89 46 08 89 06 58 89 46 18 89 46 04 u.S.....Y....u..F.j..F...X.F..F.
3680 eb 0d 8b 3f 89 7e 08 89 3e 89 5e 18 89 5e 04 81 4e 0c 02 11 00 00 33 c0 5f 40 5b eb 02 33 c0 5e ...?.~..>.^..^..N.....3._@[..3.^
36a0 5d c3 8b ff 55 8b ec 83 7d 08 00 74 27 56 8b 75 0c f7 46 0c 00 10 00 00 74 19 56 e8 04 fc ff ff ]...U...}..t'V.u..F.....t.V.....
36c0 81 66 0c ff ee ff ff 83 66 18 00 83 26 00 83 66 08 00 59 5e 5d c3 8b ff 55 8b ec 8b 45 08 56 8b .f......f...&..f..Y^]...U...E.V.
36e0 f1 c6 46 0c 00 85 c0 75 63 e8 85 13 00 00 89 46 08 8b 48 6c 89 0e 8b 48 68 89 4e 04 8b 0e 3b 0d ..F....uc......F..Hl...Hh.N...;.
3700 78 ac 41 00 74 12 8b 0d 94 ab 41 00 85 48 70 75 07 e8 f6 46 00 00 89 06 8b 46 04 3b 05 98 aa 41 x.A.t.....A..Hpu...F.....F.;...A
3720 00 74 16 8b 46 08 8b 0d 94 ab 41 00 85 48 70 75 08 e8 6a 3f 00 00 89 46 04 8b 46 08 f6 40 70 02 .t..F.....A..Hpu..j?...F..F..@p.
3740 75 14 83 48 70 02 c6 46 0c 01 eb 0a 8b 08 89 0e 8b 40 04 89 46 04 8b c6 5e 5d c2 04 00 f6 41 0c u..Hp..F.........@..F...^]....A.
3760 40 74 06 83 79 08 00 74 24 ff 49 04 78 0b 8b 11 88 02 ff 01 0f b6 c0 eb 0c 0f be c0 51 50 e8 ff @t..y..t$.I.x...............QP..
3780 46 00 00 59 59 83 f8 ff 75 03 09 06 c3 ff 06 c3 8b ff 55 8b ec 56 8b f0 eb 13 8b 4d 10 8a 45 08 F..YY...u.........U..V.....M..E.
37a0 ff 4d 0c e8 b5 ff ff ff 83 3e ff 74 06 83 7d 0c 00 7f e7 5e 5d c3 8b ff 55 8b ec f6 47 0c 40 53 .M.......>.t..}....^]...U...G.@S
37c0 56 8b f0 8b d9 74 32 83 7f 08 00 75 2c 8b 45 08 01 06 eb 2b 8a 03 ff 4d 08 8b cf e8 7d ff ff ff V....t2....u,.E....+...M....}...
37e0 43 83 3e ff 75 13 e8 81 0d 00 00 83 38 2a 75 0f 8b cf b0 3f e8 64 ff ff ff 83 7d 08 00 7f d5 5e C.>.u.......8*u....?.d....}....^
3800 5b 5d c3 8b ff 55 8b ec 81 ec 78 02 00 00 a1 90 a2 41 00 33 c5 89 45 fc 53 8b 5d 0c 56 8b 75 08 []...U....x......A.3..E.S.].V.u.
3820 33 c0 57 8b 7d 14 ff 75 10 8d 8d a4 fd ff ff 89 b5 b4 fd ff ff 89 bd dc fd ff ff 89 85 b8 fd ff 3.W.}..u........................
3840 ff 89 85 f0 fd ff ff 89 85 cc fd ff ff 89 85 e8 fd ff ff 89 85 d0 fd ff ff 89 85 c0 fd ff ff 89 ................................
3860 85 c8 fd ff ff e8 6c fe ff ff 85 f6 75 35 e8 f9 0c 00 00 c7 00 16 00 00 00 33 c0 50 50 50 50 50 ......l.....u5...........3.PPPPP
3880 e8 7f 0c 00 00 83 c4 14 80 bd b0 fd ff ff 00 74 0a 8b 85 ac fd ff ff 83 60 70 fd 83 c8 ff e9 c8 ...............t........`p......
38a0 0a 00 00 f6 46 0c 40 75 5e 56 e8 ec 0a 00 00 59 ba 98 a2 41 00 83 f8 ff 74 1b 83 f8 fe 74 16 8b ....F.@u^V.....Y...A....t....t..
38c0 c8 83 e1 1f 8b f0 c1 fe 05 c1 e1 06 03 0c b5 20 e5 42 00 eb 02 8b ca f6 41 24 7f 75 91 83 f8 ff .................B......A$.u....
38e0 74 19 83 f8 fe 74 14 8b c8 83 e0 1f c1 f9 05 c1 e0 06 03 04 8d 20 e5 42 00 eb 02 8b c2 f6 40 24 t....t.................B......@$
3900 80 0f 85 67 ff ff ff 33 c9 3b d9 0f 84 5d ff ff ff 8a 13 89 8d d8 fd ff ff 89 8d e0 fd ff ff 89 ...g...3.;...]..................
3920 8d bc fd ff ff 88 95 ef fd ff ff 84 d2 0f 84 1f 0a 00 00 43 83 bd d8 fd ff ff 00 89 9d c4 fd ff ...................C............
3940 ff 0f 8c 0b 0a 00 00 8a c2 2c 20 3c 58 77 11 0f be c2 0f be 80 30 c2 40 00 83 e0 0f 33 f6 eb 04 .........,.<Xw.......0.@....3...
3960 33 f6 33 c0 0f be 84 c1 50 c2 40 00 6a 07 c1 f8 04 59 89 85 94 fd ff ff 3b c1 0f 87 ad 09 00 00 3.3.....P.@.j....Y......;.......
3980 ff 24 85 7b 4f 40 00 83 8d e8 fd ff ff ff 89 b5 90 fd ff ff 89 b5 c0 fd ff ff 89 b5 cc fd ff ff .$.{O@..........................
39a0 89 b5 d0 fd ff ff 89 b5 f0 fd ff ff 89 b5 c8 fd ff ff e9 76 09 00 00 0f be c2 83 e8 20 74 4a 83 ...................v.........tJ.
39c0 e8 03 74 36 83 e8 08 74 25 48 48 74 15 83 e8 03 0f 85 57 09 00 00 83 8d f0 fd ff ff 08 e9 4b 09 ..t6...t%HHt......W...........K.
39e0 00 00 83 8d f0 fd ff ff 04 e9 3f 09 00 00 83 8d f0 fd ff ff 01 e9 33 09 00 00 81 8d f0 fd ff ff ..........?...........3.........
3a00 80 00 00 00 e9 24 09 00 00 83 8d f0 fd ff ff 02 e9 18 09 00 00 80 fa 2a 75 2c 83 c7 04 89 bd dc .....$.................*u,......
3a20 fd ff ff 8b 7f fc 3b fe 89 bd cc fd ff ff 0f 8d f9 08 00 00 83 8d f0 fd ff ff 04 f7 9d cc fd ff ......;.........................
3a40 ff e9 e7 08 00 00 8b 85 cc fd ff ff 6b c0 0a 0f be ca 8d 44 08 d0 89 85 cc fd ff ff e9 cc 08 00 ............k......D............
3a60 00 89 b5 e8 fd ff ff e9 c1 08 00 00 80 fa 2a 75 26 83 c7 04 89 bd dc fd ff ff 8b 7f fc 3b fe 89 ..............*u&............;..
3a80 bd e8 fd ff ff 0f 8d a2 08 00 00 83 8d e8 fd ff ff ff e9 96 08 00 00 8b 85 e8 fd ff ff 6b c0 0a .............................k..
3aa0 0f be ca 8d 44 08 d0 89 85 e8 fd ff ff e9 7b 08 00 00 80 fa 49 74 55 80 fa 68 74 44 80 fa 6c 74 ....D.........{.....ItU..htD..lt
3ac0 18 80 fa 77 0f 85 63 08 00 00 81 8d f0 fd ff ff 00 08 00 00 e9 54 08 00 00 80 3b 6c 75 16 43 81 ...w..c..............T....;lu.C.
3ae0 8d f0 fd ff ff 00 10 00 00 89 9d c4 fd ff ff e9 39 08 00 00 83 8d f0 fd ff ff 10 e9 2d 08 00 00 ................9...........-...
3b00 83 8d f0 fd ff ff 20 e9 21 08 00 00 8a 03 3c 36 75 1d 80 7b 01 34 75 17 43 43 81 8d f0 fd ff ff ........!.....<6u..{.4u.CC......
3b20 00 80 00 00 89 9d c4 fd ff ff e9 fe 07 00 00 3c 33 75 1d 80 7b 01 32 75 17 43 43 81 a5 f0 fd ff ...............<3u..{.2u.CC.....
3b40 ff ff 7f ff ff 89 9d c4 fd ff ff e9 dd 07 00 00 3c 64 0f 84 d5 07 00 00 3c 69 0f 84 cd 07 00 00 ................<d......<i......
3b60 3c 6f 0f 84 c5 07 00 00 3c 75 0f 84 bd 07 00 00 3c 78 0f 84 b5 07 00 00 3c 58 0f 84 ad 07 00 00 <o......<u......<x......<X......
3b80 89 b5 94 fd ff ff 8d 85 a4 fd ff ff 50 0f b6 c2 50 89 b5 c8 fd ff ff e8 78 46 00 00 59 85 c0 8a ............P...P.......xF..Y...
3ba0 85 ef fd ff ff 59 74 22 8b 8d b4 fd ff ff 8d b5 d8 fd ff ff e8 a4 fb ff ff 8a 03 43 89 9d c4 fd .....Yt"...................C....
3bc0 ff ff 84 c0 0f 84 a4 fc ff ff 8b 8d b4 fd ff ff 8d b5 d8 fd ff ff e8 82 fb ff ff e9 4d 07 00 00 ............................M...
3be0 0f be c2 83 f8 64 0f 8f e8 01 00 00 0f 84 79 02 00 00 83 f8 53 0f 8f f2 00 00 00 0f 84 80 00 00 .....d........y.....S...........
3c00 00 83 e8 41 74 10 48 48 74 58 48 48 74 08 48 48 0f 85 92 05 00 00 80 c2 20 c7 85 90 fd ff ff 01 ...At.HHtXHHt.HH................
3c20 00 00 00 88 95 ef fd ff ff 83 8d f0 fd ff ff 40 39 b5 e8 fd ff ff 8d 9d f4 fd ff ff b8 00 02 00 ...............@9...............
3c40 00 89 9d e4 fd ff ff 89 85 a0 fd ff ff 0f 8d 48 02 00 00 c7 85 e8 fd ff ff 06 00 00 00 e9 a5 02 ...............H................
3c60 00 00 f7 85 f0 fd ff ff 30 08 00 00 0f 85 98 00 00 00 81 8d f0 fd ff ff 00 08 00 00 e9 89 00 00 ........0.......................
3c80 00 f7 85 f0 fd ff ff 30 08 00 00 75 0a 81 8d f0 fd ff ff 00 08 00 00 8b 8d e8 fd ff ff 83 f9 ff .......0...u....................
3ca0 75 05 b9 ff ff ff 7f 83 c7 04 f7 85 f0 fd ff ff 10 08 00 00 89 bd dc fd ff ff 8b 7f fc 89 bd e4 u...............................
3cc0 fd ff ff 0f 84 b1 04 00 00 3b fe 75 0b a1 fc a3 41 00 89 85 e4 fd ff ff 8b 85 e4 fd ff ff c7 85 .........;.u....A...............
3ce0 c8 fd ff ff 01 00 00 00 e9 7f 04 00 00 83 e8 58 0f 84 da 02 00 00 48 48 74 79 2b c1 0f 84 27 ff ...............X......HHty+...'.
3d00 ff ff 48 48 0f 85 9e 04 00 00 83 c7 04 f7 85 f0 fd ff ff 10 08 00 00 89 bd dc fd ff ff 74 30 0f ..HH.........................t0.
3d20 b7 47 fc 50 68 00 02 00 00 8d 85 f4 fd ff ff 50 8d 85 e0 fd ff ff 50 e8 bb 44 00 00 83 c4 10 85 .G.Ph..........P......P..D......
3d40 c0 74 1f c7 85 c0 fd ff ff 01 00 00 00 eb 13 8a 47 fc 88 85 f4 fd ff ff c7 85 e0 fd ff ff 01 00 .t..............G...............
3d60 00 00 8d 85 f4 fd ff ff 89 85 e4 fd ff ff e9 35 04 00 00 8b 07 83 c7 04 89 bd dc fd ff ff 3b c6 ...............5..............;.
3d80 74 3b 8b 48 04 3b ce 74 34 f7 85 f0 fd ff ff 00 08 00 00 0f bf 00 89 8d e4 fd ff ff 74 14 99 2b t;.H.;.t4...................t..+
3da0 c2 d1 f8 c7 85 c8 fd ff ff 01 00 00 00 e9 f0 03 00 00 89 b5 c8 fd ff ff e9 e5 03 00 00 a1 f8 a3 ................................
3dc0 41 00 89 85 e4 fd ff ff 50 e8 32 42 00 00 59 e9 ce 03 00 00 83 f8 70 0f 8f fb 01 00 00 0f 84 e3 A.......P.2B..Y.......p.........
3de0 01 00 00 83 f8 65 0f 8c bc 03 00 00 83 f8 67 0f 8e 34 fe ff ff 83 f8 69 74 71 83 f8 6e 74 28 83 .....e........g..4.....itq..nt(.
3e00 f8 6f 0f 85 a0 03 00 00 f6 85 f0 fd ff ff 80 c7 85 e0 fd ff ff 08 00 00 00 74 61 81 8d f0 fd ff .o.......................ta.....
3e20 ff 00 02 00 00 eb 55 8b 37 83 c7 04 89 bd dc fd ff ff e8 af 41 00 00 85 c0 0f 84 2f fa ff ff f6 ......U.7...........A....../....
3e40 85 f0 fd ff ff 20 74 0c 66 8b 85 d8 fd ff ff 66 89 06 eb 08 8b 85 d8 fd ff ff 89 06 c7 85 c0 fd ......t.f......f................
3e60 ff ff 01 00 00 00 e9 a6 04 00 00 83 8d f0 fd ff ff 40 c7 85 e0 fd ff ff 0a 00 00 00 8b 8d f0 fd .................@..............
3e80 ff ff f7 c1 00 80 00 00 0f 84 a9 01 00 00 8b 07 8b 57 04 83 c7 08 e9 d5 01 00 00 75 11 80 fa 67 .................W.........u...g
3ea0 75 65 c7 85 e8 fd ff ff 01 00 00 00 eb 59 39 85 e8 fd ff ff 7e 06 89 85 e8 fd ff ff 81 bd e8 fd ue...........Y9.....~...........
3ec0 ff ff a3 00 00 00 7e 3f 8b b5 e8 fd ff ff 81 c6 5d 01 00 00 56 e8 6c f2 ff ff 8a 95 ef fd ff ff ......~?........]...V.l.........
3ee0 59 89 85 bc fd ff ff 85 c0 74 10 89 85 e4 fd ff ff 89 b5 a0 fd ff ff 8b d8 eb 0a c7 85 e8 fd ff Y........t......................
3f00 ff a3 00 00 00 33 f6 8b 07 83 c7 08 89 85 88 fd ff ff 8b 47 fc 89 85 8c fd ff ff 8d 85 a4 fd ff .....3.............G............
3f20 ff 50 ff b5 90 fd ff ff 0f be c2 ff b5 e8 fd ff ff 89 bd dc fd ff ff 50 ff b5 a0 fd ff ff 8d 85 .P.....................P........
3f40 88 fd ff ff 53 50 ff 35 48 a6 41 00 e8 d6 08 00 00 59 ff d0 8b bd f0 fd ff ff 83 c4 1c 81 e7 80 ....SP.5H.A......Y..............
3f60 00 00 00 74 20 39 b5 e8 fd ff ff 75 18 8d 85 a4 fd ff ff 50 53 ff 35 54 a6 41 00 e8 a7 08 00 00 ...t.9.....u.......PS.5T.A......
3f80 59 ff d0 59 59 80 bd ef fd ff ff 67 75 1c 3b fe 75 18 8d 85 a4 fd ff ff 50 53 ff 35 50 a6 41 00 Y..YY......gu.;.u.......PS.5P.A.
3fa0 e8 82 08 00 00 59 ff d0 59 59 80 3b 2d 75 11 81 8d f0 fd ff ff 00 01 00 00 43 89 9d e4 fd ff ff .....Y..YY.;-u...........C......
3fc0 53 e9 03 fe ff ff c7 85 e8 fd ff ff 08 00 00 00 89 8d b8 fd ff ff eb 24 83 e8 73 0f 84 b6 fc ff S......................$..s.....
3fe0 ff 48 48 0f 84 89 fe ff ff 83 e8 03 0f 85 b6 01 00 00 c7 85 b8 fd ff ff 27 00 00 00 f6 85 f0 fd .HH.....................'.......
4000 ff ff 80 c7 85 e0 fd ff ff 10 00 00 00 0f 84 69 fe ff ff 8a 85 b8 fd ff ff 04 51 c6 85 d4 fd ff ...............i..........Q.....
4020 ff 30 88 85 d5 fd ff ff c7 85 d0 fd ff ff 02 00 00 00 e9 45 fe ff ff f7 c1 00 10 00 00 0f 85 4b .0.................E...........K
4040 fe ff ff 83 c7 04 f6 c1 20 74 18 89 bd dc fd ff ff f6 c1 40 74 06 0f bf 47 fc eb 04 0f b7 47 fc .........t.........@t...G.....G.
4060 99 eb 13 8b 47 fc f6 c1 40 74 03 99 eb 02 33 d2 89 bd dc fd ff ff f6 c1 40 74 1b 3b d6 7f 17 7c ....G...@t....3.........@t.;...|
4080 04 3b c6 73 11 f7 d8 83 d2 00 f7 da 81 8d f0 fd ff ff 00 01 00 00 f7 85 f0 fd ff ff 00 90 00 00 .;.s............................
40a0 8b da 8b f8 75 02 33 db 83 bd e8 fd ff ff 00 7d 0c c7 85 e8 fd ff ff 01 00 00 00 eb 1a 83 a5 f0 ....u.3........}................
40c0 fd ff ff f7 b8 00 02 00 00 39 85 e8 fd ff ff 7e 06 89 85 e8 fd ff ff 8b c7 0b c3 75 06 21 85 d0 .........9.....~...........u.!..
40e0 fd ff ff 8d 75 f3 8b 85 e8 fd ff ff ff 8d e8 fd ff ff 85 c0 7f 06 8b c7 0b c3 74 2d 8b 85 e0 fd ....u.....................t-....
4100 ff ff 99 52 50 53 57 e8 54 41 00 00 83 c1 30 83 f9 39 89 9d a0 fd ff ff 8b f8 8b da 7e 06 03 8d ...RPSW.TA....0..9..........~...
4120 b8 fd ff ff 88 0e 4e eb bd 8d 45 f3 2b c6 46 f7 85 f0 fd ff ff 00 02 00 00 89 85 e0 fd ff ff 89 ......N...E.+.F.................
4140 b5 e4 fd ff ff 74 61 85 c0 74 07 8b ce 80 39 30 74 56 ff 8d e4 fd ff ff 8b 8d e4 fd ff ff c6 01 .....ta..t....90tV..............
4160 30 40 eb 3e 49 66 39 30 74 06 40 40 3b ce 75 f4 2b 85 e4 fd ff ff d1 f8 eb 28 3b fe 75 0b a1 f8 0@.>If90t.@@;.u.+........(;.u...
4180 a3 41 00 89 85 e4 fd ff ff 8b 85 e4 fd ff ff eb 07 49 80 38 00 74 05 40 3b ce 75 f5 2b 85 e4 fd .A...............I.8.t.@;.u.+...
41a0 ff ff 89 85 e0 fd ff ff 83 bd c0 fd ff ff 00 0f 85 5c 01 00 00 8b 85 f0 fd ff ff a8 40 74 32 a9 .................\..........@t2.
41c0 00 01 00 00 74 09 c6 85 d4 fd ff ff 2d eb 18 a8 01 74 09 c6 85 d4 fd ff ff 2b eb 0b a8 02 74 11 ....t.......-....t.......+....t.
41e0 c6 85 d4 fd ff ff 20 c7 85 d0 fd ff ff 01 00 00 00 8b 9d cc fd ff ff 2b 9d e0 fd ff ff 2b 9d d0 .......................+.....+..
4200 fd ff ff f6 85 f0 fd ff ff 0c 75 17 ff b5 b4 fd ff ff 8d 85 d8 fd ff ff 53 6a 20 e8 70 f5 ff ff ..........u.............Sj..p...
4220 83 c4 0c ff b5 d0 fd ff ff 8b bd b4 fd ff ff 8d 85 d8 fd ff ff 8d 8d d4 fd ff ff e8 76 f5 ff ff ............................v...
4240 f6 85 f0 fd ff ff 08 59 74 1b f6 85 f0 fd ff ff 04 75 12 57 53 6a 30 8d 85 d8 fd ff ff e8 2e f5 .......Yt........u.WSj0.........
4260 ff ff 83 c4 0c 83 bd c8 fd ff ff 00 8b 85 e0 fd ff ff 74 66 85 c0 7e 62 8b b5 e4 fd ff ff 89 85 ..................tf..~b........
4280 a0 fd ff ff 0f b7 06 ff 8d a0 fd ff ff 50 6a 06 8d 45 f4 50 8d 85 98 fd ff ff 46 50 46 e8 55 3f .............Pj..E.P......FPF.U?
42a0 00 00 83 c4 10 85 c0 75 28 39 85 98 fd ff ff 74 20 ff b5 98 fd ff ff 8d 85 d8 fd ff ff 8d 4d f4 .......u(9.....t..............M.
42c0 e8 f1 f4 ff ff 83 bd a0 fd ff ff 00 59 75 b5 eb 1c 83 8d d8 fd ff ff ff eb 13 8b 8d e4 fd ff ff ............Yu..................
42e0 50 8d 85 d8 fd ff ff e8 ca f4 ff ff 59 83 bd d8 fd ff ff 00 7c 1b f6 85 f0 fd ff ff 04 74 12 57 P...........Y.......|........t.W
4300 53 6a 20 8d 85 d8 fd ff ff e8 82 f4 ff ff 83 c4 0c 83 bd bc fd ff ff 00 74 13 ff b5 bc fd ff ff Sj......................t.......
4320 e8 20 e9 ff ff 83 a5 bc fd ff ff 00 59 8b 9d c4 fd ff ff 8a 03 88 85 ef fd ff ff 84 c0 74 13 8b ............Y................t..
4340 8d 94 fd ff ff 8b bd dc fd ff ff 8a d0 e9 e1 f5 ff ff 80 bd b0 fd ff ff 00 74 0a 8b 85 ac fd ff .........................t......
4360 ff 83 60 70 fd 8b 85 d8 fd ff ff 8b 4d fc 5f 5e 33 cd 5b e8 ef df ff ff c9 c3 90 86 47 40 00 87 ..`p........M._^3.[.........G@..
4380 45 40 00 b7 45 40 00 15 46 40 00 61 46 40 00 6c 46 40 00 b2 46 40 00 e0 47 40 00 8b ff 55 8b ec E@..E@..F@.aF@.lF@..F@..G@...U..
43a0 8b 45 08 56 33 f6 3b c6 75 1d e8 bd 01 00 00 56 56 56 56 56 c7 00 16 00 00 00 e8 45 01 00 00 83 .E.V3.;.u......VVVVV.......E....
43c0 c4 14 83 c8 ff eb 03 8b 40 10 5e 5d c3 8b ff 55 8b ec 8b 45 08 a3 48 df 42 00 5d c3 8b ff 55 8b ........@.^]...U...E..H.B.]...U.
43e0 ec 81 ec 28 03 00 00 a1 90 a2 41 00 33 c5 89 45 fc 83 a5 d8 fc ff ff 00 53 6a 4c 8d 85 dc fc ff ...(......A.3..E........SjL.....
4400 ff 6a 00 50 e8 f7 3e 00 00 8d 85 d8 fc ff ff 89 85 28 fd ff ff 8d 85 30 fd ff ff 83 c4 0c 89 85 .j.P..>..........(.....0........
4420 2c fd ff ff 89 85 e0 fd ff ff 89 8d dc fd ff ff 89 95 d8 fd ff ff 89 9d d4 fd ff ff 89 b5 d0 fd ,...............................
4440 ff ff 89 bd cc fd ff ff 66 8c 95 f8 fd ff ff 66 8c 8d ec fd ff ff 66 8c 9d c8 fd ff ff 66 8c 85 ........f......f......f......f..
4460 c4 fd ff ff 66 8c a5 c0 fd ff ff 66 8c ad bc fd ff ff 9c 8f 85 f0 fd ff ff 8b 45 04 8d 4d 04 c7 ....f......f..............E..M..
4480 85 30 fd ff ff 01 00 01 00 89 85 e8 fd ff ff 89 8d f4 fd ff ff 8b 49 fc 89 8d e4 fd ff ff c7 85 .0....................I.........
44a0 d8 fc ff ff 17 04 00 c0 c7 85 dc fc ff ff 01 00 00 00 89 85 e4 fc ff ff ff 15 48 c0 40 00 6a 00 ..........................H.@.j.
44c0 8b d8 ff 15 44 c0 40 00 8d 85 28 fd ff ff 50 ff 15 40 c0 40 00 85 c0 75 0c 85 db 75 08 6a 02 e8 ....D.@...(...P..@.@...u...u.j..
44e0 0e 22 00 00 59 68 17 04 00 c0 ff 15 3c c0 40 00 50 ff 15 38 c0 40 00 8b 4d fc 33 cd 5b e8 65 de ."..Yh......<.@.P..8.@..M.3.[.e.
4500 ff ff c9 c3 8b ff 55 8b ec ff 35 48 df 42 00 e8 13 03 00 00 59 85 c0 74 03 5d ff e0 6a 02 e8 cf ......U...5H.B......Y..t.]..j...
4520 21 00 00 59 5d e9 b2 fe ff ff 8b ff 55 8b ec 8b 45 08 33 c9 3b 04 cd 00 a4 41 00 74 13 41 83 f9 !..Y].......U...E.3.;....A.t.A..
4540 2d 72 f1 8d 48 ed 83 f9 11 77 0e 6a 0d 58 5d c3 8b 04 cd 04 a4 41 00 5d c3 05 44 ff ff ff 6a 0e -r..H....w.j.X]......A.]..D...j.
4560 59 3b c8 1b c0 23 c1 83 c0 08 5d c3 e8 89 04 00 00 85 c0 75 06 b8 68 a5 41 00 c3 83 c0 08 c3 e8 Y;...#....]........u..h.A.......
4580 76 04 00 00 85 c0 75 06 b8 6c a5 41 00 c3 83 c0 0c c3 8b ff 55 8b ec 56 e8 e2 ff ff ff 8b 4d 08 v.....u..l.A........U..V......M.
45a0 51 89 08 e8 82 ff ff ff 59 8b f0 e8 bc ff ff ff 89 30 5e 5d c3 cc cc cc 68 20 52 40 00 64 ff 35 Q.......Y........0^]....h.R@.d.5
45c0 00 00 00 00 8b 44 24 10 89 6c 24 10 8d 6c 24 10 2b e0 53 56 57 a1 90 a2 41 00 31 45 fc 33 c5 50 .....D$..l$..l$.+.SVW...A.1E.3.P
45e0 89 65 e8 ff 75 f8 8b 45 fc c7 45 fc fe ff ff ff 89 45 f8 8d 45 f0 64 a3 00 00 00 00 c3 8b 4d f0 .e..u..E..E......E..E.d.......M.
4600 64 89 0d 00 00 00 00 59 5f 5f 5e 5b 8b e5 5d 51 c3 cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc d......Y__^[..]Q................
4620 8b ff 55 8b ec 83 ec 18 53 8b 5d 0c 56 8b 73 08 33 35 90 a2 41 00 57 8b 06 c6 45 ff 00 c7 45 f4 ..U.....S.].V.s.35..A.W...E...E.
4640 01 00 00 00 8d 7b 10 83 f8 fe 74 0d 8b 4e 04 03 cf 33 0c 38 e8 0e dd ff ff 8b 4e 0c 8b 46 08 03 .....{....t..N...3.8......N..F..
4660 cf 33 0c 38 e8 fe dc ff ff 8b 45 08 f6 40 04 66 0f 85 16 01 00 00 8b 4d 10 8d 55 e8 89 53 fc 8b .3.8......E..@.f.......M..U..S..
4680 5b 0c 89 45 e8 89 4d ec 83 fb fe 74 5f 8d 49 00 8d 04 5b 8b 4c 86 14 8d 44 86 10 89 45 f0 8b 00 [..E..M....t_.I...[.L...D...E...
46a0 89 45 f8 85 c9 74 14 8b d7 e8 c0 3d 00 00 c6 45 ff 01 85 c0 7c 40 7f 47 8b 45 f8 8b d8 83 f8 fe .E...t.....=...E....|@.G.E......
46c0 75 ce 80 7d ff 00 74 24 8b 06 83 f8 fe 74 0d 8b 4e 04 03 cf 33 0c 38 e8 8b dc ff ff 8b 4e 0c 8b u..}..t$.....t..N...3.8......N..
46e0 56 08 03 cf 33 0c 3a e8 7b dc ff ff 8b 45 f4 5f 5e 5b 8b e5 5d c3 c7 45 f4 00 00 00 00 eb c9 8b V...3.:.{....E._^[..]..E........
4700 4d 08 81 39 63 73 6d e0 75 29 83 3d 04 e5 42 00 00 74 20 68 04 e5 42 00 e8 53 0a 00 00 83 c4 04 M..9csm.u).=..B..t.h..B..S......
4720 85 c0 74 0f 8b 55 08 6a 01 52 ff 15 04 e5 42 00 83 c4 08 8b 4d 0c e8 63 3d 00 00 8b 45 0c 39 58 ..t..U.j.R....B.....M..c=...E.9X
4740 0c 74 12 68 90 a2 41 00 57 8b d3 8b c8 e8 66 3d 00 00 8b 45 0c 8b 4d f8 89 48 0c 8b 06 83 f8 fe .t.h..A.W.....f=...E..M..H......
4760 74 0d 8b 4e 04 03 cf 33 0c 38 e8 f8 db ff ff 8b 4e 0c 8b 56 08 03 cf 33 0c 3a e8 e8 db ff ff 8b t..N...3.8......N..V...3.:......
4780 45 f0 8b 48 08 8b d7 e8 f9 3c 00 00 ba fe ff ff ff 39 53 0c 0f 84 52 ff ff ff 68 90 a2 41 00 57 E..H.....<.......9S...R...h..A.W
47a0 8b cb e8 11 3d 00 00 e9 1c ff ff ff 8b ff 55 8b ec 56 ff 35 74 a5 41 00 8b 35 60 c0 40 00 ff d6 ....=.........U..V.5t.A..5`.@...
47c0 85 c0 74 21 a1 70 a5 41 00 83 f8 ff 74 17 50 ff 35 74 a5 41 00 ff d6 ff d0 85 c0 74 08 8b 80 f8 ..t!.p.A....t.P.5t.A.......t....
47e0 01 00 00 eb 27 be bc c2 40 00 56 ff 15 18 c0 40 00 85 c0 75 0b 56 e8 4e de ff ff 59 85 c0 74 18 ....'...@.V....@...u.V.N...Y..t.
4800 68 ac c2 40 00 50 ff 15 20 c0 40 00 85 c0 74 08 ff 75 08 ff d0 89 45 08 8b 45 08 5e 5d c3 6a 00 h..@.P....@...t..u....E..E.^].j.
4820 e8 87 ff ff ff 59 c3 8b ff 55 8b ec 56 ff 35 74 a5 41 00 8b 35 60 c0 40 00 ff d6 85 c0 74 21 a1 .....Y...U..V.5t.A..5`.@.....t!.
4840 70 a5 41 00 83 f8 ff 74 17 50 ff 35 74 a5 41 00 ff d6 ff d0 85 c0 74 08 8b 80 fc 01 00 00 eb 27 p.A....t.P.5t.A.......t........'
4860 be bc c2 40 00 56 ff 15 18 c0 40 00 85 c0 75 0b 56 e8 d3 dd ff ff 59 85 c0 74 18 68 d8 c2 40 00 ...@.V....@...u.V.....Y..t.h..@.
4880 50 ff 15 20 c0 40 00 85 c0 74 08 ff 75 08 ff d0 89 45 08 8b 45 08 5e 5d c3 ff 15 64 c0 40 00 c2 P....@...t..u....E..E.^]...d.@..
48a0 04 00 8b ff 56 ff 35 74 a5 41 00 ff 15 60 c0 40 00 8b f0 85 f6 75 1b ff 35 50 df 42 00 e8 65 ff ....V.5t.A...`.@.....u..5P.B..e.
48c0 ff ff 59 8b f0 56 ff 35 74 a5 41 00 ff 15 68 c0 40 00 8b c6 5e c3 a1 70 a5 41 00 83 f8 ff 74 16 ..Y..V.5t.A...h.@...^..p.A....t.
48e0 50 ff 35 58 df 42 00 e8 3b ff ff ff 59 ff d0 83 0d 70 a5 41 00 ff a1 74 a5 41 00 83 f8 ff 74 0e P.5X.B..;...Y....p.A...t.A....t.
4900 50 ff 15 6c c0 40 00 83 0d 74 a5 41 00 ff e9 8f eb ff ff 6a 0c 68 a8 86 41 00 e8 99 fc ff ff be P..l.@...t.A.......j.h..A.......
4920 bc c2 40 00 56 ff 15 18 c0 40 00 85 c0 75 07 56 e8 14 dd ff ff 59 89 45 e4 8b 75 08 c7 46 5c d8 ..@.V....@...u.V.....Y.E..u..F\.
4940 c8 40 00 33 ff 47 89 7e 14 85 c0 74 24 68 ac c2 40 00 50 8b 1d 20 c0 40 00 ff d3 89 86 f8 01 00 .@.3.G.~...t$h..@.P....@........
4960 00 68 d8 c2 40 00 ff 75 e4 ff d3 89 86 fc 01 00 00 89 7e 70 c6 86 c8 00 00 00 43 c6 86 4b 01 00 .h..@..u..........~p......C..K..
4980 00 43 c7 46 68 70 a6 41 00 6a 0d e8 43 ec ff ff 59 83 65 fc 00 ff 76 68 ff 15 70 c0 40 00 c7 45 .C.Fhp.A.j..C...Y.e...vh..p.@..E
49a0 fc fe ff ff ff e8 3e 00 00 00 6a 0c e8 22 ec ff ff 59 89 7d fc 8b 45 0c 89 46 6c 85 c0 75 08 a1 ......>...j.."...Y.}..E..Fl..u..
49c0 78 ac 41 00 89 46 6c ff 76 6c e8 d7 32 00 00 59 c7 45 fc fe ff ff ff e8 15 00 00 00 e8 1c fc ff x.A..Fl.vl..2..Y.E..............
49e0 ff c3 33 ff 47 8b 75 08 6a 0d e8 0a eb ff ff 59 c3 6a 0c e8 01 eb ff ff 59 c3 8b ff 56 57 ff 15 ..3.G.u.j......Y.j......Y...VW..
4a00 2c c0 40 00 ff 35 70 a5 41 00 8b f8 e8 91 fe ff ff ff d0 8b f0 85 f6 75 4e 68 14 02 00 00 6a 01 ,.@..5p.A..............uNh....j.
4a20 e8 66 e7 ff ff 8b f0 59 59 85 f6 74 3a 56 ff 35 70 a5 41 00 ff 35 54 df 42 00 e8 e8 fd ff ff 59 .f.....YY..t:V.5p.A..5T.B......Y
4a40 ff d0 85 c0 74 18 6a 00 56 e8 c5 fe ff ff 59 59 ff 15 78 c0 40 00 83 4e 04 ff 89 06 eb 09 56 e8 ....t.j.V.....YY..x.@..N......V.
4a60 e1 e1 ff ff 59 33 f6 57 ff 15 74 c0 40 00 5f 8b c6 5e c3 8b ff 56 e8 7f ff ff ff 8b f0 85 f6 75 ....Y3.W..t.@._..^...V.........u
4a80 08 6a 10 e8 f1 db ff ff 59 8b c6 5e c3 6a 08 68 d0 86 41 00 e8 1f fb ff ff 8b 75 08 85 f6 0f 84 .j......Y..^.j.h..A.......u.....
4aa0 f8 00 00 00 8b 46 24 85 c0 74 07 50 e8 94 e1 ff ff 59 8b 46 2c 85 c0 74 07 50 e8 86 e1 ff ff 59 .....F$..t.P.....Y.F,..t.P.....Y
4ac0 8b 46 34 85 c0 74 07 50 e8 78 e1 ff ff 59 8b 46 3c 85 c0 74 07 50 e8 6a e1 ff ff 59 8b 46 40 85 .F4..t.P.x...Y.F<..t.P.j...Y.F@.
4ae0 c0 74 07 50 e8 5c e1 ff ff 59 8b 46 44 85 c0 74 07 50 e8 4e e1 ff ff 59 8b 46 48 85 c0 74 07 50 .t.P.\...Y.FD..t.P.N...Y.FH..t.P
4b00 e8 40 e1 ff ff 59 8b 46 5c 3d d8 c8 40 00 74 07 50 e8 2f e1 ff ff 59 6a 0d e8 b5 ea ff ff 59 83 .@...Y.F\=..@.t.P./...Yj......Y.
4b20 65 fc 00 8b 7e 68 85 ff 74 1a 57 ff 15 7c c0 40 00 85 c0 75 0f 81 ff 70 a6 41 00 74 07 57 e8 02 e...~h..t.W..|.@...u...p.A.t.W..
4b40 e1 ff ff 59 c7 45 fc fe ff ff ff e8 57 00 00 00 6a 0c e8 7c ea ff ff 59 c7 45 fc 01 00 00 00 8b ...Y.E......W...j..|...Y.E......
4b60 7e 6c 85 ff 74 23 57 e8 c9 31 00 00 59 3b 3d 78 ac 41 00 74 14 81 ff a0 ab 41 00 74 0c 83 3f 00 ~l..t#W..1..Y;=x.A.t.....A.t..?.
4b80 75 07 57 e8 d5 2f 00 00 59 c7 45 fc fe ff ff ff e8 1e 00 00 00 56 e8 aa e0 ff ff 59 e8 5c fa ff u.W../..Y.E..........V.....Y.\..
4ba0 ff c2 04 00 8b 75 08 6a 0d e8 4b e9 ff ff 59 c3 8b 75 08 6a 0c e8 3f e9 ff ff 59 c3 8b ff 56 57 .....u.j..K...Y..u.j..?...Y...VW
4bc0 be bc c2 40 00 56 ff 15 18 c0 40 00 85 c0 75 07 56 e8 73 da ff ff 59 8b f8 85 ff 0f 84 5e 01 00 ...@.V....@...u.V.s...Y......^..
4be0 00 8b 35 20 c0 40 00 68 08 c3 40 00 57 ff d6 68 fc c2 40 00 57 a3 4c df 42 00 ff d6 68 f0 c2 40 ..5..@.h..@.W..h..@.W.L.B...h..@
4c00 00 57 a3 50 df 42 00 ff d6 68 e8 c2 40 00 57 a3 54 df 42 00 ff d6 83 3d 4c df 42 00 00 8b 35 68 .W.P.B...h..@.W.T.B....=L.B...5h
4c20 c0 40 00 a3 58 df 42 00 74 16 83 3d 50 df 42 00 00 74 0d 83 3d 54 df 42 00 00 74 04 85 c0 75 24 .@..X.B.t..=P.B..t..=T.B..t...u$
4c40 a1 60 c0 40 00 a3 50 df 42 00 a1 6c c0 40 00 c7 05 4c df 42 00 99 54 40 00 89 35 54 df 42 00 a3 .`.@..P.B..l.@...L.B..T@..5T.B..
4c60 58 df 42 00 ff 15 64 c0 40 00 a3 74 a5 41 00 83 f8 ff 0f 84 cc 00 00 00 ff 35 50 df 42 00 50 ff X.B...d.@..t.A...........5P.B.P.
4c80 d6 85 c0 0f 84 bb 00 00 00 e8 a5 dc ff ff ff 35 4c df 42 00 e8 13 fb ff ff ff 35 50 df 42 00 a3 ...............5L.B.......5P.B..
4ca0 4c df 42 00 e8 03 fb ff ff ff 35 54 df 42 00 a3 50 df 42 00 e8 f3 fa ff ff ff 35 58 df 42 00 a3 L.B.......5T.B..P.B.......5X.B..
4cc0 54 df 42 00 e8 e3 fa ff ff 83 c4 10 a3 58 df 42 00 e8 81 e7 ff ff 85 c0 74 65 68 8d 56 40 00 ff T.B..........X.B........teh.V@..
4ce0 35 4c df 42 00 e8 3d fb ff ff 59 ff d0 a3 70 a5 41 00 83 f8 ff 74 48 68 14 02 00 00 6a 01 e8 88 5L.B..=...Y...p.A....tHh....j...
4d00 e4 ff ff 8b f0 59 59 85 f6 74 34 56 ff 35 70 a5 41 00 ff 35 54 df 42 00 e8 0a fb ff ff 59 ff d0 .....YY..t4V.5p.A..5T.B......Y..
4d20 85 c0 74 1b 6a 00 56 e8 e7 fb ff ff 59 59 ff 15 78 c0 40 00 83 4e 04 ff 89 06 33 c0 40 eb 07 e8 ..t.j.V.....YY..x.@..N....3.@...
4d40 92 fb ff ff 33 c0 5f 5e c3 8b ff 55 8b ec 51 51 53 8b 5d 08 56 57 33 f6 33 ff 89 7d fc 3b 1c fd ....3._^...U..QQS.].VW3.3..}.;..
4d60 78 a5 41 00 74 09 47 89 7d fc 83 ff 17 72 ee 83 ff 17 0f 83 77 01 00 00 6a 03 e8 4a 3a 00 00 59 x.A.t.G.}....r......w...j..J:..Y
4d80 83 f8 01 0f 84 34 01 00 00 6a 03 e8 39 3a 00 00 59 85 c0 75 0d 83 3d 84 a2 41 00 01 0f 84 1b 01 .....4...j..9:..Y..u..=..A......
4da0 00 00 81 fb fc 00 00 00 0f 84 41 01 00 00 68 b8 c8 40 00 bb 14 03 00 00 53 bf 60 df 42 00 57 e8 ..........A...h..@......S.`.B.W.
4dc0 9d 39 00 00 83 c4 0c 85 c0 74 0d 56 56 56 56 56 e8 07 f6 ff ff 83 c4 14 68 04 01 00 00 be 79 df .9.......t.VVVVV........h.....y.
4de0 42 00 56 6a 00 c6 05 7d e0 42 00 00 ff 15 84 c0 40 00 85 c0 75 26 68 a0 c8 40 00 68 fb 02 00 00 B.Vj...}.B......@...u&h..@.h....
4e00 56 e8 5b 39 00 00 83 c4 0c 85 c0 74 0f 33 c0 50 50 50 50 50 e8 c3 f5 ff ff 83 c4 14 56 e8 de 31 V.[9.......t.3.PPPPP........V..1
4e20 00 00 40 59 83 f8 3c 76 38 56 e8 d1 31 00 00 83 ee 3b 03 c6 6a 03 b9 74 e2 42 00 68 9c c8 40 00 ..@Y..<v8V..1....;..j..t.B.h..@.
4e40 2b c8 51 50 e8 63 38 00 00 83 c4 14 85 c0 74 11 33 f6 56 56 56 56 56 e8 80 f5 ff ff 83 c4 14 eb +.QP.c8.......t.3.VVVVV.........
4e60 02 33 f6 68 98 c8 40 00 53 57 e8 c9 37 00 00 83 c4 0c 85 c0 74 0d 56 56 56 56 56 e8 5c f5 ff ff .3.h..@.SW..7.......t.VVVVV.\...
4e80 83 c4 14 8b 45 fc ff 34 c5 7c a5 41 00 53 57 e8 a4 37 00 00 83 c4 0c 85 c0 74 0d 56 56 56 56 56 ....E..4.|.A.SW..7.......t.VVVVV
4ea0 e8 37 f5 ff ff 83 c4 14 68 10 20 01 00 68 70 c8 40 00 57 e8 17 36 00 00 83 c4 0c eb 32 6a f4 ff .7......h....hp.@.W..6......2j..
4ec0 15 50 c0 40 00 8b d8 3b de 74 24 83 fb ff 74 1f 6a 00 8d 45 f8 50 8d 34 fd 7c a5 41 00 ff 36 e8 .P.@...;.t$...t.j..E.P.4.|.A..6.
4ee0 1c 31 00 00 59 50 ff 36 53 ff 15 80 c0 40 00 5f 5e 5b c9 c3 6a 03 e8 ce 38 00 00 59 83 f8 01 74 .1..YP.6S....@._^[..j...8..Y...t
4f00 15 6a 03 e8 c1 38 00 00 59 85 c0 75 1f 83 3d 84 a2 41 00 01 75 16 68 fc 00 00 00 e8 29 fe ff ff .j...8..Y..u..=..A..u.h.....)...
4f20 68 ff 00 00 00 e8 1f fe ff ff 59 59 c3 8b ff 55 8b ec 51 53 56 57 ff 35 2c e6 42 00 e8 e6 f8 ff h.........YY...U..QSVW.5,.B.....
4f40 ff ff 35 28 e6 42 00 8b f8 89 7d fc e8 d6 f8 ff ff 8b f0 59 59 3b f7 0f 82 83 00 00 00 8b de 2b ..5(.B....}........YY;.........+
4f60 df 8d 43 04 83 f8 04 72 77 57 e8 a5 38 00 00 8b f8 8d 43 04 59 3b f8 73 48 b8 00 08 00 00 3b f8 ..C....rwW..8.....C.Y;.sH.....;.
4f80 73 02 8b c7 03 c7 3b c7 72 0f 50 ff 75 fc e8 44 e2 ff ff 59 59 85 c0 75 16 8d 47 10 3b c7 72 40 s.....;.r.P.u..D...YY..u..G.;.r@
4fa0 50 ff 75 fc e8 2e e2 ff ff 59 59 85 c0 74 31 c1 fb 02 50 8d 34 98 e8 f1 f7 ff ff 59 a3 2c e6 42 P.u......YY..t1...P.4......Y.,.B
4fc0 00 ff 75 08 e8 e3 f7 ff ff 89 06 83 c6 04 56 e8 d8 f7 ff ff 59 a3 28 e6 42 00 8b 45 08 59 eb 02 ..u...........V.....Y.(.B..E.Y..
4fe0 33 c0 5f 5e 5b c9 c3 8b ff 56 6a 04 6a 20 e8 98 e1 ff ff 8b f0 56 e8 b1 f7 ff ff 83 c4 0c a3 2c 3._^[....Vj.j........V.........,
5000 e6 42 00 a3 28 e6 42 00 85 f6 75 05 6a 18 58 5e c3 83 26 00 33 c0 5e c3 6a 0c 68 f8 86 41 00 e8 .B..(.B...u.j.X^..&.3.^.j.h..A..
5020 94 f5 ff ff e8 bc d6 ff ff 83 65 fc 00 ff 75 08 e8 f8 fe ff ff 59 89 45 e4 c7 45 fc fe ff ff ff ..........e...u......Y.E..E.....
5040 e8 09 00 00 00 8b 45 e4 e8 b0 f5 ff ff c3 e8 9b d6 ff ff c3 8b ff 55 8b ec ff 75 08 e8 b7 ff ff ......E...............U...u.....
5060 ff f7 d8 1b c0 f7 d8 59 48 5d c3 8b ff 56 b8 70 85 41 00 be 70 85 41 00 57 8b f8 3b c6 73 0f 8b .......YH]...V.p.A..p.A.W..;.s..
5080 07 85 c0 74 02 ff d0 83 c7 04 3b fe 72 f1 5f 5e c3 8b ff 56 b8 78 85 41 00 be 78 85 41 00 57 8b ...t......;.r._^...V.x.A..x.A.W.
50a0 f8 3b c6 73 0f 8b 07 85 c0 74 02 ff d0 83 c7 04 3b fe 72 f1 5f 5e c3 8b ff 56 57 33 ff 8d b7 30 .;.s.....t......;.r._^...VW3...0
50c0 a6 41 00 ff 36 e8 e2 f6 ff ff 83 c7 04 59 89 06 83 ff 28 72 e8 5f 5e c3 cc cc cc cc cc cc cc cc .A..6........Y....(r._^.........
50e0 8b ff 55 8b ec 8b 4d 08 b8 4d 5a 00 00 66 39 01 74 04 33 c0 5d c3 8b 41 3c 03 c1 81 38 50 45 00 ..U...M..MZ..f9.t.3.]..A<...8PE.
5100 00 75 ef 33 d2 b9 0b 01 00 00 66 39 48 18 0f 94 c2 8b c2 5d c3 cc cc cc cc cc cc cc cc cc cc cc .u.3......f9H......]............
5120 8b ff 55 8b ec 8b 45 08 8b 48 3c 03 c8 0f b7 41 14 53 56 0f b7 71 06 33 d2 57 8d 44 08 18 85 f6 ..U...E..H<....A.SV..q.3.W.D....
5140 76 1b 8b 7d 0c 8b 48 0c 3b f9 72 09 8b 58 08 03 d9 3b fb 72 0a 42 83 c0 28 3b d6 72 e8 33 c0 5f v..}..H.;.r..X...;.r.B..(;.r.3._
5160 5e 5b 5d c3 cc cc cc cc cc cc cc cc cc cc cc cc 8b ff 55 8b ec 6a fe 68 18 87 41 00 68 20 52 40 ^[]...............U..j.h..A.h.R@
5180 00 64 a1 00 00 00 00 50 83 ec 08 53 56 57 a1 90 a2 41 00 31 45 f8 33 c5 50 8d 45 f0 64 a3 00 00 .d.....P...SVW...A.1E.3.P.E.d...
51a0 00 00 89 65 e8 c7 45 fc 00 00 00 00 68 00 00 40 00 e8 2a ff ff ff 83 c4 04 85 c0 74 55 8b 45 08 ...e..E.....h..@..*........tU.E.
51c0 2d 00 00 40 00 50 68 00 00 40 00 e8 50 ff ff ff 83 c4 08 85 c0 74 3b 8b 40 24 c1 e8 1f f7 d0 83 -..@.Ph..@..P........t;.@$......
51e0 e0 01 c7 45 fc fe ff ff ff 8b 4d f0 64 89 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 8b 45 ec 8b 08 ...E......M.d......Y_^[..]..E...
5200 8b 01 33 d2 3d 05 00 00 c0 0f 94 c2 8b c2 c3 8b 65 e8 c7 45 fc fe ff ff ff 33 c0 8b 4d f0 64 89 ..3.=...........e..E.....3..M.d.
5220 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 6a 08 68 38 87 41 00 e8 7f f3 ff ff e8 35 f8 ff ff 8b 40 .....Y_^[..].j.h8.A.......5....@
5240 78 85 c0 74 16 83 65 fc 00 ff d0 eb 07 33 c0 40 c3 8b 65 e8 c7 45 fc fe ff ff ff e8 60 36 00 00 x..t..e......3.@..e..E......`6..
5260 e8 98 f3 ff ff c3 68 2d 5e 40 00 e8 3c f5 ff ff 59 a3 74 e2 42 00 c3 c3 8b ff 55 8b ec 51 51 56 ......h-^@..<...Y.t.B.....U..QQV
5280 e8 75 f7 ff ff 8b f0 85 f6 0f 84 46 01 00 00 8b 56 5c a1 64 a6 41 00 57 8b 7d 08 8b ca 53 39 39 .u.........F....V\.d.A.W.}...S99
52a0 74 0e 8b d8 6b db 0c 83 c1 0c 03 da 3b cb 72 ee 6b c0 0c 03 c2 3b c8 73 08 39 39 75 04 8b c1 eb t...k.......;.r.k....;.s.99u....
52c0 02 33 c0 85 c0 74 0a 8b 58 08 89 5d fc 85 db 75 07 33 c0 e9 fb 00 00 00 83 fb 05 75 0c 83 60 08 .3...t..X..]...u.3.........u..`.
52e0 00 33 c0 40 e9 ea 00 00 00 83 fb 01 0f 84 de 00 00 00 8b 4e 60 89 4d f8 8b 4d 0c 89 4e 60 8b 48 .3.@...............N`.M..M..N`.H
5300 04 83 f9 08 0f 85 b8 00 00 00 8b 0d 58 a6 41 00 8b 3d 5c a6 41 00 8b d1 03 f9 3b d7 7d 24 6b c9 ............X.A..=\.A.....;.}$k.
5320 0c 8b 7e 5c 83 64 39 08 00 8b 3d 58 a6 41 00 8b 1d 5c a6 41 00 42 03 df 83 c1 0c 3b d3 7c e2 8b ..~\.d9...=X.A...\.A.B.....;.|..
5340 5d fc 8b 00 8b 7e 64 3d 8e 00 00 c0 75 09 c7 46 64 83 00 00 00 eb 5e 3d 90 00 00 c0 75 09 c7 46 ]....~d=....u..Fd.....^=....u..F
5360 64 81 00 00 00 eb 4e 3d 91 00 00 c0 75 09 c7 46 64 84 00 00 00 eb 3e 3d 93 00 00 c0 75 09 c7 46 d.....N=....u..Fd.....>=....u..F
5380 64 85 00 00 00 eb 2e 3d 8d 00 00 c0 75 09 c7 46 64 82 00 00 00 eb 1e 3d 8f 00 00 c0 75 09 c7 46 d......=....u..Fd......=....u..F
53a0 64 86 00 00 00 eb 0e 3d 92 00 00 c0 75 07 c7 46 64 8a 00 00 00 ff 76 64 6a 08 ff d3 59 89 7e 64 d......=....u..Fd.....vdj...Y.~d
53c0 eb 07 83 60 08 00 51 ff d3 8b 45 f8 59 89 46 60 83 c8 ff 5b 5f 5e c9 c3 8b ff 55 8b ec 8b 45 08 ...`..Q...E.Y.F`...[_^....U...E.
53e0 a3 78 e2 42 00 a3 7c e2 42 00 a3 80 e2 42 00 a3 84 e2 42 00 5d c3 8b ff 55 8b ec 8b 45 08 8b 0d .x.B..|.B....B....B.]...U...E...
5400 64 a6 41 00 56 39 50 04 74 0f 8b f1 6b f6 0c 03 75 08 83 c0 0c 3b c6 72 ec 6b c9 0c 03 4d 08 5e d.A.V9P.t...k...u....;.r.k...M.^
5420 3b c1 73 05 39 50 04 74 02 33 c0 5d c3 ff 35 80 e2 42 00 e8 ef f3 ff ff 59 c3 6a 20 68 58 87 41 ;.s.9P.t.3.]..5..B......Y.j.hX.A
5440 00 e8 72 f1 ff ff 33 ff 89 7d e4 89 7d d8 8b 5d 08 83 fb 0b 7f 4c 74 15 8b c3 6a 02 59 2b c1 74 ..r...3..}..}..].....Lt...j.Y+.t
5460 22 2b c1 74 08 2b c1 74 64 2b c1 75 44 e8 88 f5 ff ff 8b f8 89 7d d8 85 ff 75 14 83 c8 ff e9 61 "+.t.+.td+.uD........}...u.....a
5480 01 00 00 be 78 e2 42 00 a1 78 e2 42 00 eb 60 ff 77 5c 8b d3 e8 5d ff ff ff 8b f0 83 c6 08 8b 06 ....x.B..x.B..`.w\...]..........
54a0 eb 5a 8b c3 83 e8 0f 74 3c 83 e8 06 74 2b 48 74 1c e8 b6 f0 ff ff c7 00 16 00 00 00 33 c0 50 50 .Z.....t<...t+Ht............3.PP
54c0 50 50 50 e8 3c f0 ff ff 83 c4 14 eb ae be 80 e2 42 00 a1 80 e2 42 00 eb 16 be 7c e2 42 00 a1 7c PPP.<...........B....B....|.B..|
54e0 e2 42 00 eb 0a be 84 e2 42 00 a1 84 e2 42 00 c7 45 e4 01 00 00 00 50 e8 2b f3 ff ff 89 45 e0 59 .B......B....B..E.....P.+....E.Y
5500 33 c0 83 7d e0 01 0f 84 d8 00 00 00 39 45 e0 75 07 6a 03 e8 e7 d3 ff ff 39 45 e4 74 07 50 e8 b0 3..}........9E.u.j......9E.t.P..
5520 e0 ff ff 59 33 c0 89 45 fc 83 fb 08 74 0a 83 fb 0b 74 05 83 fb 04 75 1b 8b 4f 60 89 4d d4 89 47 ...Y3..E....t....t....u..O`.M..G
5540 60 83 fb 08 75 40 8b 4f 64 89 4d d0 c7 47 64 8c 00 00 00 83 fb 08 75 2e 8b 0d 58 a6 41 00 89 4d `...u@.Od.M..Gd.......u...X.A..M
5560 dc 8b 0d 5c a6 41 00 8b 15 58 a6 41 00 03 ca 39 4d dc 7d 19 8b 4d dc 6b c9 0c 8b 57 5c 89 44 11 ...\.A...X.A...9M.}..M.k...W\.D.
5580 08 ff 45 dc eb db e8 93 f2 ff ff 89 06 c7 45 fc fe ff ff ff e8 15 00 00 00 83 fb 08 75 1f ff 77 ..E...........E.............u..w
55a0 64 53 ff 55 e0 59 eb 19 8b 5d 08 8b 7d d8 83 7d e4 00 74 08 6a 00 e8 3e df ff ff 59 c3 53 ff 55 dS.U.Y...]..}..}..t.j..>...Y.S.U
55c0 e0 59 83 fb 08 74 0a 83 fb 0b 74 05 83 fb 04 75 11 8b 45 d4 89 47 60 83 fb 08 75 06 8b 45 d0 89 .Y...t....t....u..E..G`...u..E..
55e0 47 64 33 c0 e8 14 f0 ff ff c3 8b ff 55 8b ec 8b 45 08 a3 8c e2 42 00 5d c3 8b ff 55 8b ec 8b 45 Gd3.........U...E....B.]...U...E
5600 08 a3 98 e2 42 00 5d c3 8b ff 55 8b ec 8b 45 08 a3 9c e2 42 00 5d c3 6a 10 68 78 87 41 00 e8 95 ....B.]...U...E....B.].j.hx.A...
5620 ef ff ff 83 65 fc 00 ff 75 0c ff 75 08 ff 15 8c c0 40 00 89 45 e4 eb 2f 8b 45 ec 8b 00 8b 00 89 ....e...u..u.....@..E../.E......
5640 45 e0 33 c9 3d 17 00 00 c0 0f 94 c1 8b c1 c3 8b 65 e8 81 7d e0 17 00 00 c0 75 08 6a 08 ff 15 74 E.3.=...........e..}.....u.j...t
5660 c0 40 00 83 65 e4 00 c7 45 fc fe ff ff ff 8b 45 e4 e8 87 ef ff ff c3 8b ff 55 8b ec 8b 45 08 a3 .@..e...E......E.........U...E..
5680 a0 e2 42 00 5d c3 8b ff 55 8b ec ff 35 a0 e2 42 00 e8 91 f1 ff ff 59 85 c0 74 0f ff 75 08 ff d0 ..B.]...U...5..B......Y..t..u...
56a0 59 85 c0 74 05 33 c0 40 5d c3 33 c0 5d c3 8b ff 55 8b ec 8b 45 08 8b 00 81 38 63 73 6d e0 75 2a Y..t.3.@].3.]...U...E....8csm.u*
56c0 83 78 10 03 75 24 8b 40 14 3d 20 05 93 19 74 15 3d 21 05 93 19 74 0e 3d 22 05 93 19 74 07 3d 00 .x..u$.@.=....t.=!...t.="...t.=.
56e0 40 99 01 75 05 e8 43 fb ff ff 33 c0 5d c2 04 00 68 ae 62 40 00 ff 15 44 c0 40 00 33 c0 c3 83 3d @..u..C...3.]...h.b@...D.@.3...=
5700 30 e6 42 00 00 75 05 e8 33 24 00 00 56 8b 35 b8 da 42 00 57 33 ff 85 f6 75 18 83 c8 ff e9 a0 00 0.B..u..3$..V.5..B.W3...u.......
5720 00 00 3c 3d 74 01 47 56 e8 d3 28 00 00 59 8d 74 06 01 8a 06 84 c0 75 ea 6a 04 47 57 e8 4a da ff ..<=t.GV..(..Y.t......u.j.GW.J..
5740 ff 8b f8 59 59 89 3d 94 da 42 00 85 ff 74 cb 8b 35 b8 da 42 00 53 eb 42 56 e8 a2 28 00 00 8b d8 ...YY.=..B...t..5..B.S.BV..(....
5760 43 80 3e 3d 59 74 31 6a 01 53 e8 1c da ff ff 59 59 89 07 85 c0 74 4e 56 53 50 e8 e2 2f 00 00 83 C.>=Yt1j.S.....YY....tNVSP../...
5780 c4 0c 85 c0 74 0f 33 c0 50 50 50 50 50 e8 4a ec ff ff 83 c4 14 83 c7 04 03 f3 80 3e 00 75 b9 ff ....t.3.PPPPP.J............>.u..
57a0 35 b8 da 42 00 e8 9b d4 ff ff 83 25 b8 da 42 00 00 83 27 00 c7 05 24 e6 42 00 01 00 00 00 33 c0 5..B.......%..B...'...$.B.....3.
57c0 59 5b 5f 5e c3 ff 35 94 da 42 00 e8 75 d4 ff ff 83 25 94 da 42 00 00 83 c8 ff eb e4 8b ff 55 8b Y[_^..5..B..u....%..B.........U.
57e0 ec 51 8b 4d 10 53 33 c0 56 89 07 8b f2 8b 55 0c c7 01 01 00 00 00 39 45 08 74 09 8b 5d 08 83 45 .Q.M.S3.V.....U.......9E.t..]..E
5800 08 04 89 13 89 45 fc 80 3e 22 75 10 33 c0 39 45 fc b3 22 0f 94 c0 46 89 45 fc eb 3c ff 07 85 d2 .....E..>"u.3.9E.."...F.E..<....
5820 74 08 8a 06 88 02 42 89 55 0c 8a 1e 0f b6 c3 50 46 e8 82 35 00 00 59 85 c0 74 13 ff 07 83 7d 0c t.....B.U......PF..5..Y..t....}.
5840 00 74 0a 8b 4d 0c 8a 06 ff 45 0c 88 01 46 8b 55 0c 8b 4d 10 84 db 74 32 83 7d fc 00 75 a9 80 fb .t..M....E...F.U..M...t2.}..u...
5860 20 74 05 80 fb 09 75 9f 85 d2 74 04 c6 42 ff 00 83 65 fc 00 80 3e 00 0f 84 e9 00 00 00 8a 06 3c .t....u...t..B...e...>.........<
5880 20 74 04 3c 09 75 06 46 eb f3 4e eb e3 80 3e 00 0f 84 d0 00 00 00 83 7d 08 00 74 09 8b 45 08 83 .t.<.u.F..N...>........}..t..E..
58a0 45 08 04 89 10 ff 01 33 db 43 33 c9 eb 02 46 41 80 3e 5c 74 f9 80 3e 22 75 26 f6 c1 01 75 1f 83 E......3.C3...FA.>\t..>"u&...u..
58c0 7d fc 00 74 0c 8d 46 01 80 38 22 75 04 8b f0 eb 0d 33 c0 33 db 39 45 fc 0f 94 c0 89 45 fc d1 e9 }..t..F..8"u.....3.3.9E.....E...
58e0 85 c9 74 12 49 85 d2 74 04 c6 02 5c 42 ff 07 85 c9 75 f1 89 55 0c 8a 06 84 c0 74 55 83 7d fc 00 ..t.I..t...\B....u..U.....tU.}..
5900 75 08 3c 20 74 4b 3c 09 74 47 85 db 74 3d 0f be c0 50 85 d2 74 23 e8 9d 34 00 00 59 85 c0 74 0d u.<.tK<.tG..t=...P..t#..4..Y..t.
5920 8a 06 8b 4d 0c ff 45 0c 88 01 46 ff 07 8b 4d 0c 8a 06 ff 45 0c 88 01 eb 0d e8 7a 34 00 00 59 85 ...M..E...F...M....E......z4..Y.
5940 c0 74 03 46 ff 07 ff 07 8b 55 0c 46 e9 56 ff ff ff 85 d2 74 07 c6 02 00 42 89 55 0c ff 07 8b 4d .t.F.....U.F.V.....t....B.U....M
5960 10 e9 0e ff ff ff 8b 45 08 5e 5b 85 c0 74 03 83 20 00 ff 01 c9 c3 8b ff 55 8b ec 83 ec 0c 53 33 .......E.^[..t..........U.....S3
5980 db 56 57 39 1d 30 e6 42 00 75 05 e8 af 21 00 00 68 04 01 00 00 be a8 e2 42 00 56 53 88 1d ac e3 .VW9.0.B.u...!..h.......B.VS....
59a0 42 00 ff 15 84 c0 40 00 a1 20 e6 42 00 89 35 a4 da 42 00 3b c3 74 07 89 45 fc 38 18 75 03 89 75 B.....@....B..5..B.;.t..E.8.u..u
59c0 fc 8b 55 fc 8d 45 f8 50 53 53 8d 7d f4 e8 0a fe ff ff 8b 45 f8 83 c4 0c 3d ff ff ff 3f 73 4a 8b ..U..E.PSS.}.......E....=...?sJ.
59e0 4d f4 83 f9 ff 73 42 8b f8 c1 e7 02 8d 04 0f 3b c1 72 36 50 e8 4d d7 ff ff 8b f0 59 3b f3 74 29 M....sB........;.r6P.M.....Y;.t)
5a00 8b 55 fc 8d 45 f8 50 03 fe 57 56 8d 7d f4 e8 c9 fd ff ff 8b 45 f8 83 c4 0c 48 a3 88 da 42 00 89 .U..E.P..WV.}.......E....H...B..
5a20 35 8c da 42 00 33 c0 eb 03 83 c8 ff 5f 5e 5b c9 c3 8b ff 55 8b ec a1 b0 e3 42 00 83 ec 0c 53 56 5..B.3......_^[....U.....B....SV
5a40 8b 35 a0 c0 40 00 57 33 db 33 ff 3b c3 75 2e ff d6 8b f8 3b fb 74 0c c7 05 b0 e3 42 00 01 00 00 .5..@.W3.3.;.u.....;.t.....B....
5a60 00 eb 23 ff 15 2c c0 40 00 83 f8 78 75 0a 6a 02 58 a3 b0 e3 42 00 eb 05 a1 b0 e3 42 00 83 f8 01 ..#..,.@...xu.j.X...B......B....
5a80 0f 85 81 00 00 00 3b fb 75 0f ff d6 8b f8 3b fb 75 07 33 c0 e9 ca 00 00 00 8b c7 66 39 1f 74 0e ......;.u.....;.u.3........f9.t.
5aa0 40 40 66 39 18 75 f9 40 40 66 39 18 75 f2 8b 35 9c c0 40 00 53 53 53 2b c7 53 d1 f8 40 50 57 53 @@f9.u.@@f9.u..5..@.SSS+.S..@PWS
5ac0 53 89 45 f4 ff d6 89 45 f8 3b c3 74 2f 50 e8 73 d6 ff ff 59 89 45 fc 3b c3 74 21 53 53 ff 75 f8 S.E....E.;.t/P.s...Y.E.;.t!SS.u.
5ae0 50 ff 75 f4 57 53 53 ff d6 85 c0 75 0c ff 75 fc e8 50 d1 ff ff 59 89 5d fc 8b 5d fc 57 ff 15 98 P.u.WSS....u..u..P...Y.]..].W...
5b00 c0 40 00 8b c3 eb 5c 83 f8 02 74 04 3b c3 75 82 ff 15 94 c0 40 00 8b f0 3b f3 0f 84 72 ff ff ff .@....\...t.;.u.....@...;...r...
5b20 38 1e 74 0a 40 38 18 75 fb 40 38 18 75 f6 2b c6 40 50 89 45 f8 e8 0c d6 ff ff 8b f8 59 3b fb 75 8.t.@8.u.@8.u.+.@P.E........Y;.u
5b40 0c 56 ff 15 90 c0 40 00 e9 45 ff ff ff ff 75 f8 56 57 e8 89 2e 00 00 83 c4 0c 56 ff 15 90 c0 40 .V....@..E....u.VW........V....@
5b60 00 8b c7 5f 5e 5b c9 c3 8b ff 55 8b ec 33 c0 39 45 08 6a 00 0f 94 c0 68 00 10 00 00 50 ff 15 a4 ..._^[....U..3.9E.j....h....P...
5b80 c0 40 00 a3 b4 e3 42 00 85 c0 75 02 5d c3 33 c0 40 a3 00 e5 42 00 5d c3 8b ff 55 8b ec 83 ec 10 .@....B...u.].3.@...B.]...U.....
5ba0 a1 90 a2 41 00 83 65 f8 00 83 65 fc 00 53 57 bf 4e e6 40 bb bb 00 00 ff ff 3b c7 74 0d 85 c3 74 ...A..e...e..SW.N.@......;.t...t
5bc0 09 f7 d0 a3 94 a2 41 00 eb 60 56 8d 45 f8 50 ff 15 b8 c0 40 00 8b 75 fc 33 75 f8 ff 15 b4 c0 40 ......A..`V.E.P....@..u.3u.....@
5be0 00 33 f0 ff 15 78 c0 40 00 33 f0 ff 15 b0 c0 40 00 33 f0 8d 45 f0 50 ff 15 ac c0 40 00 8b 45 f4 .3...x.@.3.....@.3..E.P....@..E.
5c00 33 45 f0 33 f0 3b f7 75 07 be 4f e6 40 bb eb 0b 85 f3 75 07 8b c6 c1 e0 10 0b f0 89 35 90 a2 41 3E.3.;.u..O.@.....u.........5..A
5c20 00 f7 d6 89 35 94 a2 41 00 5e 5f 5b c9 c3 8b ff 55 8b ec 8b 0d e8 e4 42 00 a1 ec e4 42 00 6b c9 ....5..A.^_[....U......B....B.k.
5c40 14 03 c8 eb 11 8b 55 08 2b 50 0c 81 fa 00 00 10 00 72 09 83 c0 14 3b c1 72 eb 33 c0 5d c3 8b ff ......U.+P.......r....;.r.3.]...
5c60 55 8b ec 83 ec 10 8b 4d 08 8b 41 10 56 8b 75 0c 57 8b fe 2b 79 0c 83 c6 fc c1 ef 0f 8b cf 69 c9 U......M..A.V.u.W..+y.........i.
5c80 04 02 00 00 8d 8c 01 44 01 00 00 89 4d f0 8b 0e 49 89 4d fc f6 c1 01 0f 85 d3 02 00 00 53 8d 1c .......D....M...I.M..........S..
5ca0 31 8b 13 89 55 f4 8b 56 fc 89 55 f8 8b 55 f4 89 5d 0c f6 c2 01 75 74 c1 fa 04 4a 83 fa 3f 76 03 1...U..V..U..U..]....ut...J..?v.
5cc0 6a 3f 5a 8b 4b 04 3b 4b 08 75 42 bb 00 00 00 80 83 fa 20 73 19 8b ca d3 eb 8d 4c 02 04 f7 d3 21 j?Z.K.;K.uB........s......L....!
5ce0 5c b8 44 fe 09 75 23 8b 4d 08 21 19 eb 1c 8d 4a e0 d3 eb 8d 4c 02 04 f7 d3 21 9c b8 c4 00 00 00 \.D..u#.M.!....J....L....!......
5d00 fe 09 75 06 8b 4d 08 21 59 04 8b 5d 0c 8b 53 08 8b 5b 04 8b 4d fc 03 4d f4 89 5a 04 8b 55 0c 8b ..u..M.!Y..]..S..[..M..M..Z..U..
5d20 5a 04 8b 52 08 89 53 08 89 4d fc 8b d1 c1 fa 04 4a 83 fa 3f 76 03 6a 3f 5a 8b 5d f8 83 e3 01 89 Z..R..S..M......J..?v.j?Z.].....
5d40 5d f4 0f 85 8f 00 00 00 2b 75 f8 8b 5d f8 c1 fb 04 6a 3f 89 75 0c 4b 5e 3b de 76 02 8b de 03 4d ].......+u..]....j?.u.K^;.v....M
5d60 f8 8b d1 c1 fa 04 4a 89 4d fc 3b d6 76 02 8b d6 3b da 74 5e 8b 4d 0c 8b 71 04 3b 71 08 75 3b be ......J.M.;.v...;.t^.M..q.;q.u;.
5d80 00 00 00 80 83 fb 20 73 17 8b cb d3 ee f7 d6 21 74 b8 44 fe 4c 03 04 75 21 8b 4d 08 21 31 eb 1a .......s.......!t.D.L..u!.M.!1..
5da0 8d 4b e0 d3 ee f7 d6 21 b4 b8 c4 00 00 00 fe 4c 03 04 75 06 8b 4d 08 21 71 04 8b 4d 0c 8b 71 08 .K.....!.......L..u..M.!q..M..q.
5dc0 8b 49 04 89 4e 04 8b 4d 0c 8b 71 04 8b 49 08 89 4e 08 8b 75 0c eb 03 8b 5d 08 83 7d f4 00 75 08 .I..N..M..q..I..N..u....]..}..u.
5de0 3b da 0f 84 80 00 00 00 8b 4d f0 8d 0c d1 8b 59 04 89 4e 08 89 5e 04 89 71 04 8b 4e 04 89 71 08 ;........M.....Y..N..^..q..N..q.
5e00 8b 4e 04 3b 4e 08 75 60 8a 4c 02 04 88 4d 0f fe c1 88 4c 02 04 83 fa 20 73 25 80 7d 0f 00 75 0e .N.;N.u`.L...M....L.....s%.}..u.
5e20 8b ca bb 00 00 00 80 d3 eb 8b 4d 08 09 19 bb 00 00 00 80 8b ca d3 eb 8d 44 b8 44 09 18 eb 29 80 ..........M.............D.D...).
5e40 7d 0f 00 75 10 8d 4a e0 bb 00 00 00 80 d3 eb 8b 4d 08 09 59 04 8d 4a e0 ba 00 00 00 80 d3 ea 8d }..u..J.........M..Y..J.........
5e60 84 b8 c4 00 00 00 09 10 8b 45 fc 89 06 89 44 30 fc 8b 45 f0 ff 08 0f 85 f3 00 00 00 a1 b8 e3 42 .........E....D0..E............B
5e80 00 85 c0 0f 84 d8 00 00 00 8b 0d fc e4 42 00 8b 35 a8 c0 40 00 68 00 40 00 00 c1 e1 0f 03 48 0c .............B..5..@.h.@......H.
5ea0 bb 00 80 00 00 53 51 ff d6 8b 0d fc e4 42 00 a1 b8 e3 42 00 ba 00 00 00 80 d3 ea 09 50 08 a1 b8 .....SQ......B....B.........P...
5ec0 e3 42 00 8b 40 10 8b 0d fc e4 42 00 83 a4 88 c4 00 00 00 00 a1 b8 e3 42 00 8b 40 10 fe 48 43 a1 .B..@.....B............B..@..HC.
5ee0 b8 e3 42 00 8b 48 10 80 79 43 00 75 09 83 60 04 fe a1 b8 e3 42 00 83 78 08 ff 75 65 53 6a 00 ff ..B..H..yC.u..`.....B..x..ueSj..
5f00 70 0c ff d6 a1 b8 e3 42 00 ff 70 10 6a 00 ff 35 b4 e3 42 00 ff 15 30 c0 40 00 8b 0d e8 e4 42 00 p......B..p.j..5..B...0.@.....B.
5f20 a1 b8 e3 42 00 6b c9 14 8b 15 ec e4 42 00 2b c8 8d 4c 11 ec 51 8d 48 14 51 50 e8 91 2e 00 00 8b ...B.k......B.+..L..Q.H.QP......
5f40 45 08 83 c4 0c ff 0d e8 e4 42 00 3b 05 b8 e3 42 00 76 04 83 6d 08 14 a1 ec e4 42 00 a3 f4 e4 42 E........B.;...B.v..m.....B....B
5f60 00 8b 45 08 a3 b8 e3 42 00 89 3d fc e4 42 00 5b 5f 5e c9 c3 a1 f8 e4 42 00 56 8b 35 e8 e4 42 00 ..E....B..=..B.[_^.....B.V.5..B.
5f80 57 33 ff 3b f0 75 34 83 c0 10 6b c0 14 50 ff 35 ec e4 42 00 57 ff 35 b4 e3 42 00 ff 15 c0 c0 40 W3.;.u4...k..P.5..B.W.5..B.....@
5fa0 00 3b c7 75 04 33 c0 eb 78 83 05 f8 e4 42 00 10 8b 35 e8 e4 42 00 a3 ec e4 42 00 6b f6 14 03 35 .;.u.3..x....B...5..B....B.k...5
5fc0 ec e4 42 00 68 c4 41 00 00 6a 08 ff 35 b4 e3 42 00 ff 15 34 c0 40 00 89 46 10 3b c7 74 c7 6a 04 ..B.h.A..j..5..B...4.@..F.;.t.j.
5fe0 68 00 20 00 00 68 00 00 10 00 57 ff 15 bc c0 40 00 89 46 0c 3b c7 75 12 ff 76 10 57 ff 35 b4 e3 h....h....W....@..F.;.u..v.W.5..
6000 42 00 ff 15 30 c0 40 00 eb 9b 83 4e 08 ff 89 3e 89 7e 04 ff 05 e8 e4 42 00 8b 46 10 83 08 ff 8b B...0.@....N...>.~.....B..F.....
6020 c6 5f 5e c3 8b ff 55 8b ec 51 51 8b 4d 08 8b 41 08 53 56 8b 71 10 57 33 db eb 03 03 c0 43 85 c0 ._^...U..QQ.M..A.SV.q.W3.....C..
6040 7d f9 8b c3 69 c0 04 02 00 00 8d 84 30 44 01 00 00 6a 3f 89 45 f8 5a 89 40 08 89 40 04 83 c0 08 }...i.......0D...j?.E.Z.@..@....
6060 4a 75 f4 6a 04 8b fb 68 00 10 00 00 c1 e7 0f 03 79 0c 68 00 80 00 00 57 ff 15 bc c0 40 00 85 c0 Ju.j...h........y.h....W....@...
6080 75 08 83 c8 ff e9 9d 00 00 00 8d 97 00 70 00 00 89 55 fc 3b fa 77 43 8b ca 2b cf c1 e9 0c 8d 47 u............p...U.;.wC..+.....G
60a0 10 41 83 48 f8 ff 83 88 ec 0f 00 00 ff 8d 90 fc 0f 00 00 89 10 8d 90 fc ef ff ff c7 40 fc f0 0f .A.H........................@...
60c0 00 00 89 50 04 c7 80 e8 0f 00 00 f0 0f 00 00 05 00 10 00 00 49 75 cb 8b 55 fc 8b 45 f8 05 f8 01 ...P................Iu..U..E....
60e0 00 00 8d 4f 0c 89 48 04 89 41 08 8d 4a 0c 89 48 08 89 41 04 83 64 9e 44 00 33 ff 47 89 bc 9e c4 ...O..H..A..J..H..A..d.D.3.G....
6100 00 00 00 8a 46 43 8a c8 fe c1 84 c0 8b 45 08 88 4e 43 75 03 09 78 04 ba 00 00 00 80 8b cb d3 ea ....FC.......E..NCu..x..........
6120 f7 d2 21 50 08 8b c3 5f 5e 5b c9 c3 8b ff 55 8b ec 83 ec 0c 8b 4d 08 8b 41 10 53 56 8b 75 10 57 ..!P..._^[....U......M..A.SV.u.W
6140 8b 7d 0c 8b d7 2b 51 0c 83 c6 17 c1 ea 0f 8b ca 69 c9 04 02 00 00 8d 8c 01 44 01 00 00 89 4d f4 .}...+Q.........i........D....M.
6160 8b 4f fc 83 e6 f0 49 3b f1 8d 7c 39 fc 8b 1f 89 4d 10 89 5d fc 0f 8e 55 01 00 00 f6 c3 01 0f 85 .O....I;..|9....M..]...U........
6180 45 01 00 00 03 d9 3b f3 0f 8f 3b 01 00 00 8b 4d fc c1 f9 04 49 89 4d f8 83 f9 3f 76 06 6a 3f 59 E.....;...;....M....I.M...?v.j?Y
61a0 89 4d f8 8b 5f 04 3b 5f 08 75 43 bb 00 00 00 80 83 f9 20 73 1a d3 eb 8b 4d f8 8d 4c 01 04 f7 d3 .M.._.;_.uC........s....M..L....
61c0 21 5c 90 44 fe 09 75 26 8b 4d 08 21 19 eb 1f 83 c1 e0 d3 eb 8b 4d f8 8d 4c 01 04 f7 d3 21 9c 90 !\.D..u&.M.!.........M..L....!..
61e0 c4 00 00 00 fe 09 75 06 8b 4d 08 21 59 04 8b 4f 08 8b 5f 04 89 59 04 8b 4f 04 8b 7f 08 89 79 08 ......u..M.!Y..O.._..Y..O.....y.
6200 8b 4d 10 2b ce 01 4d fc 83 7d fc 00 0f 8e a5 00 00 00 8b 7d fc 8b 4d 0c c1 ff 04 4f 8d 4c 31 fc .M.+..M..}.........}..M....O.L1.
6220 83 ff 3f 76 03 6a 3f 5f 8b 5d f4 8d 1c fb 89 5d 10 8b 5b 04 89 59 04 8b 5d 10 89 59 08 89 4b 04 ..?v.j?_.].....]..[..Y..]..Y..K.
6240 8b 59 04 89 4b 08 8b 59 04 3b 59 08 75 57 8a 4c 07 04 88 4d 13 fe c1 88 4c 07 04 83 ff 20 73 1c .Y..K..Y.;Y.uW.L...M....L.....s.
6260 80 7d 13 00 75 0e 8b cf bb 00 00 00 80 d3 eb 8b 4d 08 09 19 8d 44 90 44 8b cf eb 20 80 7d 13 00 .}..u...........M....D.D.....}..
6280 75 10 8d 4f e0 bb 00 00 00 80 d3 eb 8b 4d 08 09 59 04 8d 84 90 c4 00 00 00 8d 4f e0 ba 00 00 00 u..O.........M..Y.........O.....
62a0 80 d3 ea 09 10 8b 55 0c 8b 4d fc 8d 44 32 fc 89 08 89 4c 01 fc eb 03 8b 55 0c 8d 46 01 89 42 fc ......U..M..D2....L.....U..F..B.
62c0 89 44 32 f8 e9 3c 01 00 00 33 c0 e9 38 01 00 00 0f 8d 2f 01 00 00 8b 5d 0c 29 75 10 8d 4e 01 89 .D2..<...3..8...../....].)u..N..
62e0 4b fc 8d 5c 33 fc 8b 75 10 c1 fe 04 4e 89 5d 0c 89 4b fc 83 fe 3f 76 03 6a 3f 5e f6 45 fc 01 0f K..\3..u....N.]..K...?v.j?^.E...
6300 85 80 00 00 00 8b 75 fc c1 fe 04 4e 83 fe 3f 76 03 6a 3f 5e 8b 4f 04 3b 4f 08 75 42 bb 00 00 00 ......u....N..?v.j?^.O.;O.uB....
6320 80 83 fe 20 73 19 8b ce d3 eb 8d 74 06 04 f7 d3 21 5c 90 44 fe 0e 75 23 8b 4d 08 21 19 eb 1c 8d ....s......t....!\.D..u#.M.!....
6340 4e e0 d3 eb 8d 4c 06 04 f7 d3 21 9c 90 c4 00 00 00 fe 09 75 06 8b 4d 08 21 59 04 8b 5d 0c 8b 4f N....L....!........u..M.!Y..]..O
6360 08 8b 77 04 89 71 04 8b 77 08 8b 4f 04 89 71 08 8b 75 10 03 75 fc 89 75 10 c1 fe 04 4e 83 fe 3f ..w..q..w..O..q..u..u..u....N..?
6380 76 03 6a 3f 5e 8b 4d f4 8d 0c f1 8b 79 04 89 4b 08 89 7b 04 89 59 04 8b 4b 04 89 59 08 8b 4b 04 v.j?^.M.....y..K..{..Y..K..Y..K.
63a0 3b 4b 08 75 57 8a 4c 06 04 88 4d 0f fe c1 88 4c 06 04 83 fe 20 73 1c 80 7d 0f 00 75 0e 8b ce bf ;K.uW.L...M....L.....s..}..u....
63c0 00 00 00 80 d3 ef 8b 4d 08 09 39 8d 44 90 44 8b ce eb 20 80 7d 0f 00 75 10 8d 4e e0 bf 00 00 00 .......M..9.D.D.....}..u..N.....
63e0 80 d3 ef 8b 4d 08 09 79 04 8d 84 90 c4 00 00 00 8d 4e e0 ba 00 00 00 80 d3 ea 09 10 8b 45 10 89 ....M..y.........N...........E..
6400 03 89 44 18 fc 33 c0 40 5f 5e 5b c9 c3 8b ff 55 8b ec 83 ec 14 a1 e8 e4 42 00 8b 4d 08 6b c0 14 ..D..3.@_^[....U........B..M.k..
6420 03 05 ec e4 42 00 83 c1 17 83 e1 f0 89 4d f0 c1 f9 04 53 49 83 f9 20 56 57 7d 0b 83 ce ff d3 ee ....B........M....SI...VW}......
6440 83 4d f8 ff eb 0d 83 c1 e0 83 ca ff 33 f6 d3 ea 89 55 f8 8b 0d f4 e4 42 00 8b d9 eb 11 8b 53 04 .M..........3....U.....B......S.
6460 8b 3b 23 55 f8 23 fe 0b d7 75 0a 83 c3 14 89 5d 08 3b d8 72 e8 3b d8 75 7f 8b 1d ec e4 42 00 eb .;#U.#...u.....].;.r.;.u.....B..
6480 11 8b 53 04 8b 3b 23 55 f8 23 fe 0b d7 75 0a 83 c3 14 89 5d 08 3b d9 72 e8 3b d9 75 5b eb 0c 83 ..S..;#U.#...u.....].;.r.;.u[...
64a0 7b 08 00 75 0a 83 c3 14 89 5d 08 3b d8 72 f0 3b d8 75 31 8b 1d ec e4 42 00 eb 09 83 7b 08 00 75 {..u.....].;.r.;.u1....B....{..u
64c0 0a 83 c3 14 89 5d 08 3b d9 72 f0 3b d9 75 15 e8 a0 fa ff ff 8b d8 89 5d 08 85 db 75 07 33 c0 e9 .....].;.r.;.u.........]...u.3..
64e0 09 02 00 00 53 e8 3a fb ff ff 59 8b 4b 10 89 01 8b 43 10 83 38 ff 74 e5 89 1d f4 e4 42 00 8b 43 ....S.:...Y.K....C..8.t.....B..C
6500 10 8b 10 89 55 fc 83 fa ff 74 14 8b 8c 90 c4 00 00 00 8b 7c 90 44 23 4d f8 23 fe 0b cf 75 29 83 ....U....t.........|.D#M.#...u).
6520 65 fc 00 8b 90 c4 00 00 00 8d 48 44 8b 39 23 55 f8 23 fe 0b d7 75 0e ff 45 fc 8b 91 84 00 00 00 e.........HD.9#U.#...u..E.......
6540 83 c1 04 eb e7 8b 55 fc 8b ca 69 c9 04 02 00 00 8d 8c 01 44 01 00 00 89 4d f4 8b 4c 90 44 33 ff ......U...i........D....M..L.D3.
6560 23 ce 75 12 8b 8c 90 c4 00 00 00 23 4d f8 6a 20 5f eb 03 03 c9 47 85 c9 7d f9 8b 4d f4 8b 54 f9 #.u........#M.j._....G..}..M..T.
6580 04 8b 0a 2b 4d f0 8b f1 c1 fe 04 4e 83 fe 3f 89 4d f8 7e 03 6a 3f 5e 3b f7 0f 84 01 01 00 00 8b ...+M......N..?.M.~.j?^;........
65a0 4a 04 3b 4a 08 75 5c 83 ff 20 bb 00 00 00 80 7d 26 8b cf d3 eb 8b 4d fc 8d 7c 38 04 f7 d3 89 5d J.;J.u\........}&.....M..|8....]
65c0 ec 23 5c 88 44 89 5c 88 44 fe 0f 75 33 8b 4d ec 8b 5d 08 21 0b eb 2c 8d 4f e0 d3 eb 8b 4d fc 8d .#\.D.\.D..u3.M..].!..,.O....M..
65e0 8c 88 c4 00 00 00 8d 7c 38 04 f7 d3 21 19 fe 0f 89 5d ec 75 0b 8b 5d 08 8b 4d ec 21 4b 04 eb 03 .......|8...!....].u..]..M.!K...
6600 8b 5d 08 83 7d f8 00 8b 4a 08 8b 7a 04 89 79 04 8b 4a 04 8b 7a 08 89 79 08 0f 84 8d 00 00 00 8b .]..}...J..z..y..J..z..y........
6620 4d f4 8d 0c f1 8b 79 04 89 4a 08 89 7a 04 89 51 04 8b 4a 04 89 51 08 8b 4a 04 3b 4a 08 75 5e 8a M.....y..J..z..Q..J..Q..J.;J.u^.
6640 4c 06 04 88 4d 0b fe c1 83 fe 20 88 4c 06 04 7d 23 80 7d 0b 00 75 0b bf 00 00 00 80 8b ce d3 ef L...M.......L..}#.}..u..........
6660 09 3b 8b ce bf 00 00 00 80 d3 ef 8b 4d fc 09 7c 88 44 eb 29 80 7d 0b 00 75 0d 8d 4e e0 bf 00 00 .;..........M..|.D.).}..u..N....
6680 00 80 d3 ef 09 7b 04 8b 4d fc 8d bc 88 c4 00 00 00 8d 4e e0 be 00 00 00 80 d3 ee 09 37 8b 4d f8 .....{..M.........N.........7.M.
66a0 85 c9 74 0b 89 0a 89 4c 11 fc eb 03 8b 4d f8 8b 75 f0 03 d1 8d 4e 01 89 0a 89 4c 32 fc 8b 75 f4 ..t....L.....M..u....N....L2..u.
66c0 8b 0e 8d 79 01 89 3e 85 c9 75 1a 3b 1d b8 e3 42 00 75 12 8b 4d fc 3b 0d fc e4 42 00 75 07 83 25 ...y..>..u.;...B.u..M.;...B.u..%
66e0 b8 e3 42 00 00 8b 4d fc 89 08 8d 42 04 5f 5e 5b c9 c3 83 25 e4 e4 42 00 00 c3 6a 0c 68 98 87 41 ..B...M....B._^[...%..B...j.h..A
6700 00 e8 b2 de ff ff 8b 4d 08 33 ff 3b cf 76 2e 6a e0 58 33 d2 f7 f1 3b 45 0c 1b c0 40 75 1f e8 49 .......M.3.;.v.j.X3...;E...@u..I
6720 de ff ff c7 00 0c 00 00 00 57 57 57 57 57 e8 d1 dd ff ff 83 c4 14 33 c0 e9 d5 00 00 00 0f af 4d .........WWWWW........3........M
6740 0c 8b f1 89 75 08 3b f7 75 03 33 f6 46 33 db 89 5d e4 83 fe e0 77 69 83 3d 00 e5 42 00 03 75 4b ....u.;.u.3.F3..]....wi.=..B..uK
6760 83 c6 0f 83 e6 f0 89 75 0c 8b 45 08 3b 05 f0 e4 42 00 77 37 6a 04 e8 58 ce ff ff 59 89 7d fc ff .......u..E.;...B.w7j..X...Y.}..
6780 75 08 e8 86 fc ff ff 59 89 45 e4 c7 45 fc fe ff ff ff e8 5f 00 00 00 8b 5d e4 3b df 74 11 ff 75 u......Y.E..E......_....].;.t..u
67a0 08 57 53 e8 58 1b 00 00 83 c4 0c 3b df 75 61 56 6a 08 ff 35 b4 e3 42 00 ff 15 34 c0 40 00 8b d8 .WS.X......;.uaVj..5..B...4.@...
67c0 3b df 75 4c 39 3d bc e3 42 00 74 33 56 e8 b4 ee ff ff 59 85 c0 0f 85 72 ff ff ff 8b 45 10 3b c7 ;.uL9=..B.t3V.....Y....r....E.;.
67e0 0f 84 50 ff ff ff c7 00 0c 00 00 00 e9 45 ff ff ff 33 ff 8b 75 0c 6a 04 e8 fc cc ff ff 59 c3 3b ..P..........E...3..u.j......Y.;
6800 df 75 0d 8b 45 10 3b c7 74 06 c7 00 0c 00 00 00 8b c3 e8 e6 dd ff ff c3 6a 10 68 b8 87 41 00 e8 .u..E.;.t...............j.h..A..
6820 94 dd ff ff 8b 5d 08 85 db 75 0e ff 75 0c e8 ef c4 ff ff 59 e9 cc 01 00 00 8b 75 0c 85 f6 75 0c .....]...u..u......Y......u...u.
6840 53 e8 ff c3 ff ff 59 e9 b7 01 00 00 83 3d 00 e5 42 00 03 0f 85 93 01 00 00 33 ff 89 7d e4 83 fe S.....Y......=..B........3..}...
6860 e0 0f 87 8a 01 00 00 6a 04 e8 65 cd ff ff 59 89 7d fc 53 e8 b6 f3 ff ff 59 89 45 e0 3b c7 0f 84 .......j..e...Y.}.S.....Y.E.;...
6880 9e 00 00 00 3b 35 f0 e4 42 00 77 49 56 53 50 e8 98 f8 ff ff 83 c4 0c 85 c0 74 05 89 5d e4 eb 35 ....;5..B.wIVSP..........t..]..5
68a0 56 e8 67 fb ff ff 59 89 45 e4 3b c7 74 27 8b 43 fc 48 3b c6 72 02 8b c6 50 53 ff 75 e4 e8 1e 21 V.g...Y.E.;.t'.C.H;.r...PS.u...!
68c0 00 00 53 e8 66 f3 ff ff 89 45 e0 53 50 e8 8c f3 ff ff 83 c4 18 39 7d e4 75 48 3b f7 75 06 33 f6 ..S.f....E.SP........9}.uH;.u.3.
68e0 46 89 75 0c 83 c6 0f 83 e6 f0 89 75 0c 56 57 ff 35 b4 e3 42 00 ff 15 34 c0 40 00 89 45 e4 3b c7 F.u........u.VW.5..B...4.@..E.;.
6900 74 20 8b 43 fc 48 3b c6 72 02 8b c6 50 53 ff 75 e4 e8 ca 20 00 00 53 ff 75 e0 e8 3f f3 ff ff 83 t..C.H;.r...PS.u......S.u..?....
6920 c4 14 c7 45 fc fe ff ff ff e8 2e 00 00 00 83 7d e0 00 75 31 85 f6 75 01 46 83 c6 0f 83 e6 f0 89 ...E...........}..u1..u.F.......
6940 75 0c 56 53 6a 00 ff 35 b4 e3 42 00 ff 15 c0 c0 40 00 8b f8 eb 12 8b 75 0c 8b 5d 08 6a 04 e8 96 u.VSj..5..B.....@......u..].j...
6960 cb ff ff 59 c3 8b 7d e4 85 ff 0f 85 bf 00 00 00 39 3d bc e3 42 00 74 2c 56 e8 08 ed ff ff 59 85 ...Y..}.........9=..B.t,V.....Y.
6980 c0 0f 85 d2 fe ff ff e8 e0 db ff ff 39 7d e0 75 6c 8b f0 ff 15 2c c0 40 00 50 e8 8b db ff ff 59 ............9}.ul....,.@.P.....Y
69a0 89 06 eb 5f 85 ff 0f 85 83 00 00 00 e8 bb db ff ff 39 7d e0 74 68 c7 00 0c 00 00 00 eb 71 85 f6 ..._.............9}.th.......q..
69c0 75 01 46 56 53 6a 00 ff 35 b4 e3 42 00 ff 15 c0 c0 40 00 8b f8 85 ff 75 56 39 05 bc e3 42 00 74 u.FVSj..5..B.....@.....uV9...B.t
69e0 34 56 e8 9f ec ff ff 59 85 c0 74 1f 83 fe e0 76 cd 56 e8 8f ec ff ff 59 e8 6f db ff ff c7 00 0c 4V.....Y..t....v.V.....Y.o......
6a00 00 00 00 33 c0 e8 f3 db ff ff c3 e8 5c db ff ff e9 7c ff ff ff 85 ff 75 16 e8 4e db ff ff 8b f0 ...3........\....|.....u..N.....
6a20 ff 15 2c c0 40 00 50 e8 fe da ff ff 89 06 59 8b c7 eb d2 8b ff 55 8b ec 53 56 8b 75 08 57 33 ff ..,.@.P.......Y......U..SV.u.W3.
6a40 83 cb ff 3b f7 75 1c e8 20 db ff ff 57 57 57 57 57 c7 00 16 00 00 00 e8 a8 da ff ff 83 c4 14 0b ...;.u......WWWWW...............
6a60 c3 eb 42 f6 46 0c 83 74 37 56 e8 55 c8 ff ff 56 8b d8 e8 27 28 00 00 56 e8 1e d9 ff ff 50 e8 4e ..B.F..t7V.U...V...'(..V.....P.N
6a80 27 00 00 83 c4 10 85 c0 7d 05 83 cb ff eb 11 8b 46 1c 3b c7 74 0a 50 e8 a9 c1 ff ff 59 89 7e 1c '.......}.......F.;.t.P.....Y.~.
6aa0 89 7e 0c 8b c3 5f 5e 5b 5d c3 6a 0c 68 d8 87 41 00 e8 02 db ff ff 83 4d e4 ff 33 c0 8b 75 08 33 .~..._^[].j.h..A.......M..3..u.3
6ac0 ff 3b f7 0f 95 c0 3b c7 75 1d e8 9d da ff ff c7 00 16 00 00 00 57 57 57 57 57 e8 25 da ff ff 83 .;....;.u............WWWWW.%....
6ae0 c4 14 83 c8 ff eb 0c f6 46 0c 40 74 0c 89 7e 0c 8b 45 e4 e8 05 db ff ff c3 56 e8 50 b9 ff ff 59 ........F.@t..~..E.......V.P...Y
6b00 89 7d fc 56 e8 2a ff ff ff 59 89 45 e4 c7 45 fc fe ff ff ff e8 05 00 00 00 eb d5 8b 75 08 56 e8 .}.V.*...Y.E..E.............u.V.
6b20 9e b9 ff ff 59 c3 8b ff 55 8b ec b8 e4 1a 00 00 e8 3b 2b 00 00 a1 90 a2 41 00 33 c5 89 45 fc 8b ....Y...U........;+.....A.3..E..
6b40 45 0c 56 33 f6 89 85 34 e5 ff ff 89 b5 38 e5 ff ff 89 b5 30 e5 ff ff 39 75 10 75 07 33 c0 e9 e9 E.V3...4.....8.....0...9u.u.3...
6b60 06 00 00 3b c6 75 27 e8 13 da ff ff 89 30 e8 f9 d9 ff ff 56 56 56 56 56 c7 00 16 00 00 00 e8 81 ...;.u'......0.....VVVVV........
6b80 d9 ff ff 83 c4 14 83 c8 ff e9 be 06 00 00 53 57 8b 7d 08 8b c7 c1 f8 05 8d 34 85 20 e5 42 00 8b ..............SW.}.......4...B..
6ba0 06 83 e7 1f c1 e7 06 03 c7 8a 58 24 02 db d0 fb 89 b5 28 e5 ff ff 88 9d 27 e5 ff ff 80 fb 02 74 ..........X$......(.....'......t
6bc0 05 80 fb 01 75 30 8b 4d 10 f7 d1 f6 c1 01 75 26 e8 aa d9 ff ff 33 f6 89 30 e8 8e d9 ff ff 56 56 ....u0.M......u&.....3..0.....VV
6be0 56 56 56 c7 00 16 00 00 00 e8 16 d9 ff ff 83 c4 14 e9 43 06 00 00 f6 40 04 20 74 11 6a 02 6a 00 VVV...............C....@..t.j.j.
6c00 6a 00 ff 75 08 e8 bb 28 00 00 83 c4 10 ff 75 08 e8 01 08 00 00 59 85 c0 0f 84 9d 02 00 00 8b 06 j..u...(......u......Y..........
6c20 f6 44 07 04 80 0f 84 90 02 00 00 e8 43 de ff ff 8b 40 6c 33 c9 39 48 14 8d 85 1c e5 ff ff 0f 94 .D..........C....@l3.9H.........
6c40 c1 50 8b 06 ff 34 07 89 8d 20 e5 ff ff ff 15 c8 c0 40 00 85 c0 0f 84 60 02 00 00 33 c9 39 8d 20 .P...4...........@.....`...3.9..
6c60 e5 ff ff 74 08 84 db 0f 84 50 02 00 00 ff 15 c4 c0 40 00 8b 9d 34 e5 ff ff 89 85 1c e5 ff ff 33 ...t.....P.......@...4.........3
6c80 c0 89 85 3c e5 ff ff 39 45 10 0f 86 42 05 00 00 89 85 44 e5 ff ff 8a 85 27 e5 ff ff 84 c0 0f 85 ...<...9E...B.....D.....'.......
6ca0 67 01 00 00 8a 0b 8b b5 28 e5 ff ff 33 c0 80 f9 0a 0f 94 c0 89 85 20 e5 ff ff 8b 06 03 c7 83 78 g.......(...3..................x
6cc0 38 00 74 15 8a 50 34 88 55 f4 88 4d f5 83 60 38 00 6a 02 8d 45 f4 50 eb 4b 0f be c1 50 e8 6a 15 8.t..P4.U..M..`8.j..E.P.K...P.j.
6ce0 00 00 59 85 c0 74 3a 8b 8d 34 e5 ff ff 2b cb 03 4d 10 33 c0 40 3b c8 0f 86 a5 01 00 00 6a 02 8d ..Y..t:..4...+..M.3.@;.......j..
6d00 85 40 e5 ff ff 53 50 e8 9f 27 00 00 83 c4 0c 83 f8 ff 0f 84 b1 04 00 00 43 ff 85 44 e5 ff ff eb .@...SP..'..............C..D....
6d20 1b 6a 01 53 8d 85 40 e5 ff ff 50 e8 7b 27 00 00 83 c4 0c 83 f8 ff 0f 84 8d 04 00 00 33 c0 50 50 .j.S..@...P.{'..............3.PP
6d40 6a 05 8d 4d f4 51 6a 01 8d 8d 40 e5 ff ff 51 50 ff b5 1c e5 ff ff 43 ff 85 44 e5 ff ff ff 15 9c j..M.Qj...@...QP......C..D......
6d60 c0 40 00 8b f0 85 f6 0f 84 5c 04 00 00 6a 00 8d 85 3c e5 ff ff 50 56 8d 45 f4 50 8b 85 28 e5 ff .@.......\...j...<...PV.E.P..(..
6d80 ff 8b 00 ff 34 07 ff 15 80 c0 40 00 85 c0 0f 84 29 04 00 00 8b 85 44 e5 ff ff 8b 8d 30 e5 ff ff ....4.....@.....).....D.....0...
6da0 03 c1 39 b5 3c e5 ff ff 89 85 38 e5 ff ff 0f 8c 15 04 00 00 83 bd 20 e5 ff ff 00 0f 84 cd 00 00 ..9.<.....8.....................
6dc0 00 6a 00 8d 85 3c e5 ff ff 50 6a 01 8d 45 f4 50 8b 85 28 e5 ff ff 8b 00 c6 45 f4 0d ff 34 07 ff .j...<...Pj..E.P..(......E...4..
6de0 15 80 c0 40 00 85 c0 0f 84 d0 03 00 00 83 bd 3c e5 ff ff 01 0f 8c cf 03 00 00 ff 85 30 e5 ff ff ...@...........<............0...
6e00 ff 85 38 e5 ff ff e9 83 00 00 00 3c 01 74 04 3c 02 75 21 0f b7 33 33 c9 66 83 fe 0a 0f 94 c1 43 ..8........<.t.<.u!..33.f......C
6e20 43 83 85 44 e5 ff ff 02 89 b5 40 e5 ff ff 89 8d 20 e5 ff ff 3c 01 74 04 3c 02 75 52 ff b5 40 e5 C..D......@.........<.t.<.uR..@.
6e40 ff ff e8 88 24 00 00 59 66 3b 85 40 e5 ff ff 0f 85 68 03 00 00 83 85 38 e5 ff ff 02 83 bd 20 e5 ....$..Yf;.@.....h.....8........
6e60 ff ff 00 74 29 6a 0d 58 50 89 85 40 e5 ff ff e8 5b 24 00 00 59 66 3b 85 40 e5 ff ff 0f 85 3b 03 ...t)j.XP..@....[$..Yf;.@.....;.
6e80 00 00 ff 85 38 e5 ff ff ff 85 30 e5 ff ff 8b 45 10 39 85 44 e5 ff ff 0f 82 f9 fd ff ff e9 27 03 ....8.....0....E.9.D..........'.
6ea0 00 00 8b 0e 8a 13 ff 85 38 e5 ff ff 88 54 0f 34 8b 0e 89 44 0f 38 e9 0e 03 00 00 33 c9 8b 06 03 ........8....T.4...D.8.....3....
6ec0 c7 f6 40 04 80 0f 84 bf 02 00 00 8b 85 34 e5 ff ff 89 8d 40 e5 ff ff 84 db 0f 85 ca 00 00 00 89 ..@..........4.....@............
6ee0 85 3c e5 ff ff 39 4d 10 0f 86 20 03 00 00 eb 06 8b b5 28 e5 ff ff 8b 8d 3c e5 ff ff 83 a5 44 e5 .<...9M...........(.....<.....D.
6f00 ff ff 00 2b 8d 34 e5 ff ff 8d 85 48 e5 ff ff 3b 4d 10 73 39 8b 95 3c e5 ff ff ff 85 3c e5 ff ff ...+.4.....H...;M.s9..<.....<...
6f20 8a 12 41 80 fa 0a 75 10 ff 85 30 e5 ff ff c6 00 0d 40 ff 85 44 e5 ff ff 88 10 40 ff 85 44 e5 ff ..A...u...0......@..D.....@..D..
6f40 ff 81 bd 44 e5 ff ff ff 13 00 00 72 c2 8b d8 8d 85 48 e5 ff ff 2b d8 6a 00 8d 85 2c e5 ff ff 50 ...D.......r.....H...+.j...,...P
6f60 53 8d 85 48 e5 ff ff 50 8b 06 ff 34 07 ff 15 80 c0 40 00 85 c0 0f 84 42 02 00 00 8b 85 2c e5 ff S..H...P...4.....@.....B.....,..
6f80 ff 01 85 38 e5 ff ff 3b c3 0f 8c 3a 02 00 00 8b 85 3c e5 ff ff 2b 85 34 e5 ff ff 3b 45 10 0f 82 ...8...;...:.....<...+.4...;E...
6fa0 4c ff ff ff e9 20 02 00 00 89 85 44 e5 ff ff 80 fb 02 0f 85 d1 00 00 00 39 4d 10 0f 86 4d 02 00 L..........D............9M...M..
6fc0 00 eb 06 8b b5 28 e5 ff ff 8b 8d 44 e5 ff ff 83 a5 3c e5 ff ff 00 2b 8d 34 e5 ff ff 8d 85 48 e5 .....(.....D.....<....+.4.....H.
6fe0 ff ff 3b 4d 10 73 46 8b 95 44 e5 ff ff 83 85 44 e5 ff ff 02 0f b7 12 41 41 66 83 fa 0a 75 16 83 ..;M.sF..D.....D.......AAf...u..
7000 85 30 e5 ff ff 02 6a 0d 5b 66 89 18 40 40 83 85 3c e5 ff ff 02 83 85 3c e5 ff ff 02 66 89 10 40 .0....j.[f..@@..<......<....f..@
7020 40 81 bd 3c e5 ff ff fe 13 00 00 72 b5 8b d8 8d 85 48 e5 ff ff 2b d8 6a 00 8d 85 2c e5 ff ff 50 @..<.......r.....H...+.j...,...P
7040 53 8d 85 48 e5 ff ff 50 8b 06 ff 34 07 ff 15 80 c0 40 00 85 c0 0f 84 62 01 00 00 8b 85 2c e5 ff S..H...P...4.....@.....b.....,..
7060 ff 01 85 38 e5 ff ff 3b c3 0f 8c 5a 01 00 00 8b 85 44 e5 ff ff 2b 85 34 e5 ff ff 3b 45 10 0f 82 ...8...;...Z.....D...+.4...;E...
7080 3f ff ff ff e9 40 01 00 00 39 4d 10 0f 86 7c 01 00 00 8b 8d 44 e5 ff ff 83 a5 3c e5 ff ff 00 2b ?....@...9M...|.....D.....<....+
70a0 8d 34 e5 ff ff 6a 02 8d 85 48 f9 ff ff 5e 3b 4d 10 73 3c 8b 95 44 e5 ff ff 0f b7 12 01 b5 44 e5 .4...j...H...^;M.s<..D........D.
70c0 ff ff 03 ce 66 83 fa 0a 75 0e 6a 0d 5b 66 89 18 03 c6 01 b5 3c e5 ff ff 01 b5 3c e5 ff ff 66 89 ....f...u.j.[f......<.....<...f.
70e0 10 03 c6 81 bd 3c e5 ff ff a8 06 00 00 72 bf 33 f6 56 56 68 55 0d 00 00 8d 8d f0 eb ff ff 51 8d .....<.......r.3.VVhU.........Q.
7100 8d 48 f9 ff ff 2b c1 99 2b c2 d1 f8 50 8b c1 50 56 68 e9 fd 00 00 ff 15 9c c0 40 00 8b d8 3b de .H...+..+...P..PVh........@...;.
7120 0f 84 97 00 00 00 6a 00 8d 85 2c e5 ff ff 50 8b c3 2b c6 50 8d 84 35 f0 eb ff ff 50 8b 85 28 e5 ......j...,...P..+.P..5....P..(.
7140 ff ff 8b 00 ff 34 07 ff 15 80 c0 40 00 85 c0 74 0c 03 b5 2c e5 ff ff 3b de 7f cb eb 0c ff 15 2c .....4.....@...t...,...;.......,
7160 c0 40 00 89 85 40 e5 ff ff 3b de 7f 5c 8b 85 44 e5 ff ff 2b 85 34 e5 ff ff 89 85 38 e5 ff ff 3b .@...@...;..\..D...+.4.....8...;
7180 45 10 0f 82 0a ff ff ff eb 3f 6a 00 8d 8d 2c e5 ff ff 51 ff 75 10 ff b5 34 e5 ff ff ff 30 ff 15 E........?j...,...Q.u...4....0..
71a0 80 c0 40 00 85 c0 74 15 8b 85 2c e5 ff ff 83 a5 40 e5 ff ff 00 89 85 38 e5 ff ff eb 0c ff 15 2c ..@...t...,.....@......8.......,
71c0 c0 40 00 89 85 40 e5 ff ff 83 bd 38 e5 ff ff 00 75 6c 83 bd 40 e5 ff ff 00 74 2d 6a 05 5e 39 b5 .@...@.....8....ul..@....t-j.^9.
71e0 40 e5 ff ff 75 14 e8 81 d3 ff ff c7 00 09 00 00 00 e8 89 d3 ff ff 89 30 eb 3f ff b5 40 e5 ff ff @...u..................0.?..@...
7200 e8 8d d3 ff ff 59 eb 31 8b b5 28 e5 ff ff 8b 06 f6 44 07 04 40 74 0f 8b 85 34 e5 ff ff 80 38 1a .....Y.1..(......D..@t...4....8.
7220 75 04 33 c0 eb 24 e8 41 d3 ff ff c7 00 1c 00 00 00 e8 49 d3 ff ff 83 20 00 83 c8 ff eb 0c 8b 85 u.3..$.A..........I.............
7240 38 e5 ff ff 2b 85 30 e5 ff ff 5f 5b 8b 4d fc 33 cd 5e e8 10 b1 ff ff c9 c3 6a 10 68 f8 87 41 00 8...+.0..._[.M.3.^.......j.h..A.
7260 e8 53 d3 ff ff 8b 45 08 83 f8 fe 75 1b e8 0d d3 ff ff 83 20 00 e8 f2 d2 ff ff c7 00 09 00 00 00 .S....E....u....................
7280 83 c8 ff e9 9d 00 00 00 33 ff 3b c7 7c 08 3b 05 08 e5 42 00 72 21 e8 e4 d2 ff ff 89 38 e8 ca d2 ........3.;.|.;...B.r!......8...
72a0 ff ff c7 00 09 00 00 00 57 57 57 57 57 e8 52 d2 ff ff 83 c4 14 eb c9 8b c8 c1 f9 05 8d 1c 8d 20 ........WWWWW.R.................
72c0 e5 42 00 8b f0 83 e6 1f c1 e6 06 8b 0b 0f be 4c 31 04 83 e1 01 74 bf 50 e8 bb 24 00 00 59 89 7d .B.............L1....t.P..$..Y.}
72e0 fc 8b 03 f6 44 30 04 01 74 16 ff 75 10 ff 75 0c ff 75 08 e8 2e f8 ff ff 83 c4 0c 89 45 e4 eb 16 ....D0..t..u..u..u..........E...
7300 e8 67 d2 ff ff c7 00 09 00 00 00 e8 6f d2 ff ff 89 38 83 4d e4 ff c7 45 fc fe ff ff ff e8 09 00 .g..........o....8.M...E........
7320 00 00 8b 45 e4 e8 d3 d2 ff ff c3 ff 75 08 e8 05 25 00 00 59 c3 6a 10 68 18 88 41 00 e8 77 d2 ff ...E........u...%..Y.j.h..A..w..
7340 ff 8b 45 08 83 f8 fe 75 13 e8 1e d2 ff ff c7 00 09 00 00 00 83 c8 ff e9 aa 00 00 00 33 db 3b c3 ..E....u....................3.;.
7360 7c 08 3b 05 08 e5 42 00 72 1a e8 fd d1 ff ff c7 00 09 00 00 00 53 53 53 53 53 e8 85 d1 ff ff 83 |.;...B.r............SSSSS......
7380 c4 14 eb d0 8b c8 c1 f9 05 8d 3c 8d 20 e5 42 00 8b f0 83 e6 1f c1 e6 06 8b 0f 0f be 4c 0e 04 83 ..........<...B.............L...
73a0 e1 01 74 c6 50 e8 ee 23 00 00 59 89 5d fc 8b 07 f6 44 06 04 01 74 31 ff 75 08 e8 62 23 00 00 59 ..t.P..#..Y.]....D...t1.u..b#..Y
73c0 50 ff 15 cc c0 40 00 85 c0 75 0b ff 15 2c c0 40 00 89 45 e4 eb 03 89 5d e4 39 5d e4 74 19 e8 9c P....@...u...,.@..E....].9].t...
73e0 d1 ff ff 8b 4d e4 89 08 e8 7f d1 ff ff c7 00 09 00 00 00 83 4d e4 ff c7 45 fc fe ff ff ff e8 09 ....M...............M...E.......
7400 00 00 00 8b 45 e4 e8 f2 d1 ff ff c3 ff 75 08 e8 24 24 00 00 59 c3 8b ff 55 8b ec 8b 45 08 83 f8 ....E........u..$$..Y...U...E...
7420 fe 75 0f e8 44 d1 ff ff c7 00 09 00 00 00 33 c0 5d c3 56 33 f6 3b c6 7c 08 3b 05 08 e5 42 00 72 .u..D.........3.].V3.;.|.;...B.r
7440 1c e8 26 d1 ff ff 56 56 56 56 56 c7 00 09 00 00 00 e8 ae d0 ff ff 83 c4 14 33 c0 eb 1a 8b c8 83 ..&...VVVVV..............3......
7460 e0 1f c1 f9 05 8b 0c 8d 20 e5 42 00 c1 e0 06 0f be 44 01 04 83 e0 40 5e 5d c3 2d a4 03 00 00 74 ..........B......D....@^].-....t
7480 22 83 e8 04 74 17 83 e8 0d 74 0c 48 74 03 33 c0 c3 b8 04 04 00 00 c3 b8 12 04 00 00 c3 b8 04 08 "...t....t.Ht.3.................
74a0 00 00 c3 b8 11 04 00 00 c3 8b ff 56 57 8b f0 68 01 01 00 00 33 ff 8d 46 1c 57 50 e8 40 0e 00 00 ...........VW..h....3..F.WP.@...
74c0 33 c0 0f b7 c8 8b c1 89 7e 04 89 7e 08 89 7e 0c c1 e1 10 0b c1 8d 7e 10 ab ab ab b9 70 a6 41 00 3.......~..~..~.......~.....p.A.
74e0 83 c4 0c 8d 46 1c 2b ce bf 01 01 00 00 8a 14 01 88 10 40 4f 75 f7 8d 86 1d 01 00 00 be 00 01 00 ....F.+...........@Ou...........
7500 00 8a 14 08 88 10 40 4e 75 f7 5f 5e c3 8b ff 55 8b ec 81 ec 1c 05 00 00 a1 90 a2 41 00 33 c5 89 ......@Nu._^...U...........A.3..
7520 45 fc 53 57 8d 85 e8 fa ff ff 50 ff 76 04 ff 15 00 c0 40 00 bf 00 01 00 00 85 c0 0f 84 fb 00 00 E.SW......P.v.....@.............
7540 00 33 c0 88 84 05 fc fe ff ff 40 3b c7 72 f4 8a 85 ee fa ff ff c6 85 fc fe ff ff 20 84 c0 74 2e .3........@;.r................t.
7560 8d 9d ef fa ff ff 0f b6 c8 0f b6 03 3b c8 77 16 2b c1 40 50 8d 94 0d fc fe ff ff 6a 20 52 e8 7d ............;.w.+.@P.......j.R.}
7580 0d 00 00 83 c4 0c 43 8a 03 43 84 c0 75 d8 6a 00 ff 76 0c 8d 85 fc fa ff ff ff 76 04 50 57 8d 85 ......C..C..u.j..v........v.PW..
75a0 fc fe ff ff 50 6a 01 6a 00 e8 55 28 00 00 33 db 53 ff 76 04 8d 85 fc fd ff ff 57 50 57 8d 85 fc ....Pj.j..U(..3.S.v.......WPW...
75c0 fe ff ff 50 57 ff 76 0c 53 e8 36 26 00 00 83 c4 44 53 ff 76 04 8d 85 fc fc ff ff 57 50 57 8d 85 ...PW.v.S.6&....DS.v.......WPW..
75e0 fc fe ff ff 50 68 00 02 00 00 ff 76 0c 53 e8 11 26 00 00 83 c4 24 33 c0 0f b7 8c 45 fc fa ff ff ....Ph.....v.S..&....$3....E....
7600 f6 c1 01 74 0e 80 4c 06 1d 10 8a 8c 05 fc fd ff ff eb 11 f6 c1 02 74 15 80 4c 06 1d 20 8a 8c 05 ...t..L...............t..L......
7620 fc fc ff ff 88 8c 06 1d 01 00 00 eb 08 c6 84 06 1d 01 00 00 00 40 3b c7 72 be eb 56 8d 86 1d 01 .....................@;.r..V....
7640 00 00 c7 85 e4 fa ff ff 9f ff ff ff 33 c9 29 85 e4 fa ff ff 8b 95 e4 fa ff ff 8d 84 0e 1d 01 00 ............3.).................
7660 00 03 d0 8d 5a 20 83 fb 19 77 0c 80 4c 0e 1d 10 8a d1 80 c2 20 eb 0f 83 fa 19 77 0e 80 4c 0e 1d ....Z....w..L.............w..L..
7680 20 8a d1 80 ea 20 88 10 eb 03 c6 00 00 41 3b cf 72 c2 8b 4d fc 5f 33 cd 5b e8 c9 ac ff ff c9 c3 .............A;.r..M._3.[.......
76a0 6a 0c 68 38 88 41 00 e8 0c cf ff ff e8 c2 d3 ff ff 8b f8 a1 94 ab 41 00 85 47 70 74 1d 83 7f 6c j.h8.A................A..Gpt...l
76c0 00 74 17 8b 77 68 85 f6 75 08 6a 20 e8 a8 af ff ff 59 8b c6 e8 24 cf ff ff c3 6a 0d e8 f2 be ff .t..wh..u.j......Y...$....j.....
76e0 ff 59 83 65 fc 00 8b 77 68 89 75 e4 3b 35 98 aa 41 00 74 36 85 f6 74 1a 56 ff 15 7c c0 40 00 85 .Y.e...wh.u.;5..A.t6..t.V..|.@..
7700 c0 75 0f 81 fe 70 a6 41 00 74 07 56 e8 34 b5 ff ff 59 a1 98 aa 41 00 89 47 68 8b 35 98 aa 41 00 .u...p.A.t.V.4...Y...A..Gh.5..A.
7720 89 75 e4 56 ff 15 70 c0 40 00 c7 45 fc fe ff ff ff e8 05 00 00 00 eb 8e 8b 75 e4 6a 0d e8 b7 bd .u.V..p.@..E.............u.j....
7740 ff ff 59 c3 8b ff 55 8b ec 83 ec 10 53 33 db 53 8d 4d f0 e8 7e bf ff ff 89 1d c0 e3 42 00 83 fe ..Y...U.....S3.S.M..~.......B...
7760 fe 75 1e c7 05 c0 e3 42 00 01 00 00 00 ff 15 d8 c0 40 00 38 5d fc 74 45 8b 4d f8 83 61 70 fd eb .u.....B.........@.8].tE.M..ap..
7780 3c 83 fe fd 75 12 c7 05 c0 e3 42 00 01 00 00 00 ff 15 d4 c0 40 00 eb db 83 fe fc 75 12 8b 45 f0 <...u.....B.........@......u..E.
77a0 8b 40 04 c7 05 c0 e3 42 00 01 00 00 00 eb c4 38 5d fc 74 07 8b 45 f8 83 60 70 fd 8b c6 5b c9 c3 .@.....B.......8].t..E..`p...[..
77c0 8b ff 55 8b ec 83 ec 20 a1 90 a2 41 00 33 c5 89 45 fc 53 8b 5d 0c 56 8b 75 08 57 e8 64 ff ff ff ..U........A.3..E.S.].V.u.W.d...
77e0 8b f8 33 f6 89 7d 08 3b fe 75 0e 8b c3 e8 b7 fc ff ff 33 c0 e9 9d 01 00 00 89 75 e4 33 c0 39 b8 ..3..}.;.u........3.......u.3.9.
7800 a0 aa 41 00 0f 84 91 00 00 00 ff 45 e4 83 c0 30 3d f0 00 00 00 72 e7 81 ff e8 fd 00 00 0f 84 70 ..A........E...0=....r.........p
7820 01 00 00 81 ff e9 fd 00 00 0f 84 64 01 00 00 0f b7 c7 50 ff 15 dc c0 40 00 85 c0 0f 84 52 01 00 ...........d......P....@.....R..
7840 00 8d 45 e8 50 57 ff 15 00 c0 40 00 85 c0 0f 84 33 01 00 00 68 01 01 00 00 8d 43 1c 56 50 e8 9d ..E.PW....@.....3...h.....C.VP..
7860 0a 00 00 33 d2 42 83 c4 0c 89 7b 04 89 73 0c 39 55 e8 0f 86 f8 00 00 00 80 7d ee 00 0f 84 cf 00 ...3.B....{..s.9U........}......
7880 00 00 8d 75 ef 8a 0e 84 c9 0f 84 c2 00 00 00 0f b6 46 ff 0f b6 c9 e9 a6 00 00 00 68 01 01 00 00 ...u.............F.........h....
78a0 8d 43 1c 56 50 e8 56 0a 00 00 8b 4d e4 83 c4 0c 6b c9 30 89 75 e0 8d b1 b0 aa 41 00 89 75 e4 eb .C.VP.V....M....k.0.u.....A..u..
78c0 2a 8a 46 01 84 c0 74 28 0f b6 3e 0f b6 c0 eb 12 8b 45 e0 8a 80 9c aa 41 00 08 44 3b 1d 0f b6 46 *.F...t(..>......E.....A..D;...F
78e0 01 47 3b f8 76 ea 8b 7d 08 46 46 80 3e 00 75 d1 8b 75 e4 ff 45 e0 83 c6 08 83 7d e0 04 89 75 e4 .G;.v..}.FF.>.u..u..E.....}...u.
7900 72 e9 8b c7 89 7b 04 c7 43 08 01 00 00 00 e8 67 fb ff ff 6a 06 89 43 0c 8d 43 10 8d 89 a4 aa 41 r....{..C......g...j..C..C.....A
7920 00 5a 66 8b 31 41 66 89 30 41 40 40 4a 75 f3 8b f3 e8 d7 fb ff ff e9 b7 fe ff ff 80 4c 03 1d 04 .Zf.1Af.0A@@Ju..............L...
7940 40 3b c1 76 f6 46 46 80 7e ff 00 0f 85 34 ff ff ff 8d 43 1e b9 fe 00 00 00 80 08 08 40 49 75 f9 @;.v.FF.~....4....C.........@Iu.
7960 8b 43 04 e8 12 fb ff ff 89 43 0c 89 53 08 eb 03 89 73 08 33 c0 0f b7 c8 8b c1 c1 e1 10 0b c1 8d .C.......C..S....s.3............
7980 7b 10 ab ab ab eb a8 39 35 c0 e3 42 00 0f 85 58 fe ff ff 83 c8 ff 8b 4d fc 5f 5e 33 cd 5b e8 c4 {......95..B...X.......M._^3.[..
79a0 a9 ff ff c9 c3 6a 14 68 58 88 41 00 e8 07 cc ff ff 83 4d e0 ff e8 b9 d0 ff ff 8b f8 89 7d dc e8 .....j.hX.A.......M..........}..
79c0 dc fc ff ff 8b 5f 68 8b 75 08 e8 75 fd ff ff 89 45 08 3b 43 04 0f 84 57 01 00 00 68 20 02 00 00 ....._h.u..u....E.;C...W...h....
79e0 e8 61 b7 ff ff 59 8b d8 85 db 0f 84 46 01 00 00 b9 88 00 00 00 8b 77 68 8b fb f3 a5 83 23 00 53 .a...Y......F.........wh.....#.S
7a00 ff 75 08 e8 b8 fd ff ff 59 59 89 45 e0 85 c0 0f 85 fc 00 00 00 8b 75 dc ff 76 68 ff 15 7c c0 40 .u......YY.E..........u..vh..|.@
7a20 00 85 c0 75 11 8b 46 68 3d 70 a6 41 00 74 07 50 e8 10 b2 ff ff 59 89 5e 68 53 8b 3d 70 c0 40 00 ...u..Fh=p.A.t.P.....Y.^hS.=p.@.
7a40 ff d7 f6 46 70 02 0f 85 ea 00 00 00 f6 05 94 ab 41 00 01 0f 85 dd 00 00 00 6a 0d e8 73 bb ff ff ...Fp...........A........j..s...
7a60 59 83 65 fc 00 8b 43 04 a3 d0 e3 42 00 8b 43 08 a3 d4 e3 42 00 8b 43 0c a3 d8 e3 42 00 33 c0 89 Y.e...C....B..C....B..C....B.3..
7a80 45 e4 83 f8 05 7d 10 66 8b 4c 43 10 66 89 0c 45 c4 e3 42 00 40 eb e8 33 c0 89 45 e4 3d 01 01 00 E....}.f.LC.f..E..B.@..3..E.=...
7aa0 00 7d 0d 8a 4c 18 1c 88 88 90 a8 41 00 40 eb e9 33 c0 89 45 e4 3d 00 01 00 00 7d 10 8a 8c 18 1d .}..L......A.@..3..E.=....}.....
7ac0 01 00 00 88 88 98 a9 41 00 40 eb e6 ff 35 98 aa 41 00 ff 15 7c c0 40 00 85 c0 75 13 a1 98 aa 41 .......A.@...5..A...|.@...u....A
7ae0 00 3d 70 a6 41 00 74 07 50 e8 57 b1 ff ff 59 89 1d 98 aa 41 00 53 ff d7 c7 45 fc fe ff ff ff e8 .=p.A.t.P.W...Y....A.S...E......
7b00 02 00 00 00 eb 30 6a 0d e8 ec b9 ff ff 59 c3 eb 25 83 f8 ff 75 20 81 fb 70 a6 41 00 74 07 53 e8 .....0j......Y..%...u...p.A.t.S.
7b20 21 b1 ff ff 59 e8 42 ca ff ff c7 00 16 00 00 00 eb 04 83 65 e0 00 8b 45 e0 e8 bf ca ff ff c3 83 !...Y.B............e...E........
7b40 3d 30 e6 42 00 00 75 12 6a fd e8 56 fe ff ff 59 c7 05 30 e6 42 00 01 00 00 00 33 c0 c3 8b ff 55 =0.B..u.j..V...Y..0.B.....3....U
7b60 8b ec 53 56 8b 75 08 8b 86 bc 00 00 00 33 db 57 3b c3 74 6f 3d 78 ad 41 00 74 68 8b 86 b0 00 00 ..SV.u.......3.W;.to=x.A.th.....
7b80 00 3b c3 74 5e 39 18 75 5a 8b 86 b8 00 00 00 3b c3 74 17 39 18 75 13 50 e8 a8 b0 ff ff ff b6 bc .;.t^9.uZ......;.t.9.u.P........
7ba0 00 00 00 e8 77 24 00 00 59 59 8b 86 b4 00 00 00 3b c3 74 17 39 18 75 13 50 e8 87 b0 ff ff ff b6 ....w$..YY......;.t.9.u.P.......
7bc0 bc 00 00 00 e8 11 24 00 00 59 59 ff b6 b0 00 00 00 e8 6f b0 ff ff ff b6 bc 00 00 00 e8 64 b0 ff ......$..YY.......o..........d..
7be0 ff 59 59 8b 86 c0 00 00 00 3b c3 74 44 39 18 75 40 8b 86 c4 00 00 00 2d fe 00 00 00 50 e8 43 b0 .YY......;.tD9.u@......-....P.C.
7c00 ff ff 8b 86 cc 00 00 00 bf 80 00 00 00 2b c7 50 e8 30 b0 ff ff 8b 86 d0 00 00 00 2b c7 50 e8 22 .............+.P.0.........+.P."
7c20 b0 ff ff ff b6 c0 00 00 00 e8 17 b0 ff ff 83 c4 10 8d be d4 00 00 00 8b 07 3d b8 ac 41 00 74 17 .........................=..A.t.
7c40 39 98 b4 00 00 00 75 0f 50 e8 f7 21 00 00 ff 37 e8 f0 af ff ff 59 59 8d 7e 50 c7 45 08 06 00 00 9.....u.P..!...7.....YY.~P.E....
7c60 00 81 7f f8 98 ab 41 00 74 11 8b 07 3b c3 74 0b 39 18 75 07 50 e8 cb af ff ff 59 39 5f fc 74 12 ......A.t...;.t.9.u.P.....Y9_.t.
7c80 8b 47 04 3b c3 74 0b 39 18 75 07 50 e8 b4 af ff ff 59 83 c7 10 ff 4d 08 75 c7 56 e8 a5 af ff ff .G.;.t.9.u.P.....Y....M.u.V.....
7ca0 59 5f 5e 5b 5d c3 8b ff 55 8b ec 53 56 8b 35 70 c0 40 00 57 8b 7d 08 57 ff d6 8b 87 b0 00 00 00 Y_^[]...U..SV.5p.@.W.}.W........
7cc0 85 c0 74 03 50 ff d6 8b 87 b8 00 00 00 85 c0 74 03 50 ff d6 8b 87 b4 00 00 00 85 c0 74 03 50 ff ..t.P..........t.P..........t.P.
7ce0 d6 8b 87 c0 00 00 00 85 c0 74 03 50 ff d6 8d 5f 50 c7 45 08 06 00 00 00 81 7b f8 98 ab 41 00 74 .........t.P..._P.E......{...A.t
7d00 09 8b 03 85 c0 74 03 50 ff d6 83 7b fc 00 74 0a 8b 43 04 85 c0 74 03 50 ff d6 83 c3 10 ff 4d 08 .....t.P...{..t..C...t.P......M.
7d20 75 d6 8b 87 d4 00 00 00 05 b4 00 00 00 50 ff d6 5f 5e 5b 5d c3 8b ff 55 8b ec 57 8b 7d 08 85 ff u............P.._^[]...U..W.}...
7d40 0f 84 83 00 00 00 53 56 8b 35 7c c0 40 00 57 ff d6 8b 87 b0 00 00 00 85 c0 74 03 50 ff d6 8b 87 ......SV.5|.@.W..........t.P....
7d60 b8 00 00 00 85 c0 74 03 50 ff d6 8b 87 b4 00 00 00 85 c0 74 03 50 ff d6 8b 87 c0 00 00 00 85 c0 ......t.P..........t.P..........
7d80 74 03 50 ff d6 8d 5f 50 c7 45 08 06 00 00 00 81 7b f8 98 ab 41 00 74 09 8b 03 85 c0 74 03 50 ff t.P..._P.E......{...A.t.....t.P.
7da0 d6 83 7b fc 00 74 0a 8b 43 04 85 c0 74 03 50 ff d6 83 c3 10 ff 4d 08 75 d6 8b 87 d4 00 00 00 05 ..{..t..C...t.P......M.u........
7dc0 b4 00 00 00 50 ff d6 5e 5b 8b c7 5f 5d c3 85 ff 74 37 85 c0 74 33 56 8b 30 3b f7 74 28 57 89 38 ....P..^[.._]...t7..t3V.0;.t(W.8
7de0 e8 c1 fe ff ff 59 85 f6 74 1b 56 e8 45 ff ff ff 83 3e 00 59 75 0f 81 fe a0 ab 41 00 74 07 56 e8 .....Y..t.V.E....>.Yu.....A.t.V.
7e00 59 fd ff ff 59 8b c7 5e c3 33 c0 c3 6a 0c 68 78 88 41 00 e8 a0 c7 ff ff e8 56 cc ff ff 8b f0 a1 Y...Y..^.3..j.hx.A.......V......
7e20 94 ab 41 00 85 46 70 74 22 83 7e 6c 00 74 1c e8 3f cc ff ff 8b 70 6c 85 f6 75 08 6a 20 e8 37 a8 ..A..Fpt".~l.t..?....pl..u.j..7.
7e40 ff ff 59 8b c6 e8 b3 c7 ff ff c3 6a 0c e8 81 b7 ff ff 59 83 65 fc 00 8d 46 6c 8b 3d 78 ac 41 00 ..Y........j......Y.e...Fl.=x.A.
7e60 e8 69 ff ff ff 89 45 e4 c7 45 fc fe ff ff ff e8 02 00 00 00 eb c1 6a 0c e8 7c b6 ff ff 59 8b 75 .i....E..E............j..|...Y.u
7e80 e4 c3 8b ff 55 8b ec 51 56 8b 75 0c 56 e8 09 c5 ff ff 89 45 0c 8b 46 0c 59 a8 82 75 17 e8 ca c6 ....U..QV.u.V......E..F.Y..u....
7ea0 ff ff c7 00 09 00 00 00 83 4e 0c 20 83 c8 ff e9 2f 01 00 00 a8 40 74 0d e8 af c6 ff ff c7 00 22 .........N....../....@t........"
7ec0 00 00 00 eb e3 53 33 db a8 01 74 16 89 5e 04 a8 10 0f 84 87 00 00 00 8b 4e 08 83 e0 fe 89 0e 89 .....S3...t..^..........N.......
7ee0 46 0c 8b 46 0c 83 e0 ef 83 c8 02 89 46 0c 89 5e 04 89 5d fc a9 0c 01 00 00 75 2c e8 76 a4 ff ff F..F........F..^..]......u,.v...
7f00 83 c0 20 3b f0 74 0c e8 6a a4 ff ff 83 c0 40 3b f0 75 0d ff 75 0c e8 fb f4 ff ff 59 85 c0 75 07 ...;.t..j.....@;.u..u......Y..u.
7f20 56 e8 aa 22 00 00 59 f7 46 0c 08 01 00 00 57 0f 84 80 00 00 00 8b 46 08 8b 3e 8d 48 01 89 0e 8b V.."..Y.F.....W.......F..>.H....
7f40 4e 18 2b f8 49 3b fb 89 4e 04 7e 1d 57 50 ff 75 0c e8 03 f3 ff ff 83 c4 0c 89 45 fc eb 4d 83 c8 N.+.I;..N.~.WP.u..........E..M..
7f60 20 89 46 0c 83 c8 ff eb 79 8b 4d 0c 83 f9 ff 74 1b 83 f9 fe 74 16 8b c1 83 e0 1f 8b d1 c1 fa 05 ..F.....y.M....t....t...........
7f80 c1 e0 06 03 04 95 20 e5 42 00 eb 05 b8 98 a2 41 00 f6 40 04 20 74 14 6a 02 53 53 51 e8 a9 15 00 ........B......A..@..t.j.SSQ....
7fa0 00 23 c2 83 c4 10 83 f8 ff 74 25 8b 46 08 8a 4d 08 88 08 eb 16 33 ff 47 57 8d 45 08 50 ff 75 0c .#.......t%.F..M.....3.GW.E.P.u.
7fc0 e8 94 f2 ff ff 83 c4 0c 89 45 fc 39 7d fc 74 09 83 4e 0c 20 83 c8 ff eb 08 8b 45 08 25 ff 00 00 .........E.9}.t..N........E.%...
7fe0 00 5f 5b 5e c9 c3 a1 90 a2 41 00 83 c8 01 33 c9 39 05 00 e4 42 00 0f 94 c1 8b c1 c3 cc cc cc cc ._[^.....A....3.9...B...........
8000 8b 4c 24 04 f7 c1 03 00 00 00 74 24 8a 01 83 c1 01 84 c0 74 4e f7 c1 03 00 00 00 75 ef 05 00 00 .L$.......t$.......tN......u....
8020 00 00 8d a4 24 00 00 00 00 8d a4 24 00 00 00 00 8b 01 ba ff fe fe 7e 03 d0 83 f0 ff 33 c2 83 c1 ....$......$..........~.....3...
8040 04 a9 00 01 01 81 74 e8 8b 41 fc 84 c0 74 32 84 e4 74 24 a9 00 00 ff 00 74 13 a9 00 00 00 ff 74 ......t..A...t2..t$.....t......t
8060 02 eb cd 8d 41 ff 8b 4c 24 04 2b c1 c3 8d 41 fe 8b 4c 24 04 2b c1 c3 8d 41 fd 8b 4c 24 04 2b c1 ....A..L$.+...A..L$.+...A..L$.+.
8080 c3 8d 41 fc 8b 4c 24 04 2b c1 c3 8b ff 55 8b ec 83 ec 10 53 56 8b 75 0c 33 db 57 8b 7d 10 3b f3 ..A..L$.+....U.....SV.u.3.W.}.;.
80a0 75 14 3b fb 76 10 8b 45 08 3b c3 74 02 89 18 33 c0 e9 83 00 00 00 8b 45 08 3b c3 74 03 83 08 ff u.;.v..E.;.t...3.......E.;.t....
80c0 81 ff ff ff ff 7f 76 1b e8 9f c4 ff ff 6a 16 5e 53 53 53 53 53 89 30 e8 28 c4 ff ff 83 c4 14 8b ......v......j.^SSSSS.0.(.......
80e0 c6 eb 56 ff 75 18 8d 4d f0 e8 e8 b5 ff ff 8b 45 f0 39 58 14 0f 85 9c 00 00 00 66 8b 45 14 b9 ff ..V.u..M.......E.9X.......f.E...
8100 00 00 00 66 3b c1 76 36 3b f3 74 0f 3b fb 76 0b 57 53 56 e8 e8 01 00 00 83 c4 0c e8 4c c4 ff ff ...f;.v6;.t.;.v.WSV.........L...
8120 c7 00 2a 00 00 00 e8 41 c4 ff ff 8b 00 38 5d fc 74 07 8b 4d f8 83 61 70 fd 5f 5e 5b c9 c3 3b f3 ..*....A.....8].t..M..ap._^[..;.
8140 74 32 3b fb 77 2c e8 21 c4 ff ff 6a 22 5e 53 53 53 53 53 89 30 e8 aa c3 ff ff 83 c4 14 38 5d fc t2;.w,.!...j"^SSSSS.0........8].
8160 0f 84 79 ff ff ff 8b 45 f8 83 60 70 fd e9 6d ff ff ff 88 06 8b 45 08 3b c3 74 06 c7 00 01 00 00 ..y....E..`p..m......E.;.t......
8180 00 38 5d fc 0f 84 25 ff ff ff 8b 45 f8 83 60 70 fd e9 19 ff ff ff 8d 4d 0c 51 53 57 56 6a 01 8d .8]...%....E..`p.......M.QSWVj..
81a0 4d 14 51 53 89 5d 0c ff 70 04 ff 15 9c c0 40 00 3b c3 74 14 39 5d 0c 0f 85 5e ff ff ff 8b 4d 08 M.QS.]..p.....@.;.t.9]...^....M.
81c0 3b cb 74 bd 89 01 eb b9 ff 15 2c c0 40 00 83 f8 7a 0f 85 44 ff ff ff 3b f3 0f 84 67 ff ff ff 3b ;.t.......,.@...z..D...;...g...;
81e0 fb 0f 86 5f ff ff ff 57 53 56 e8 11 01 00 00 83 c4 0c e9 4f ff ff ff 8b ff 55 8b ec 6a 00 ff 75 ..._...WSV.........O.....U..j..u
8200 14 ff 75 10 ff 75 0c ff 75 08 e8 7c fe ff ff 83 c4 14 5d c3 8b ff 55 8b ec 83 ec 10 ff 75 0c 8d ..u..u..u..|......]...U......u..
8220 4d f0 e8 af b4 ff ff 0f b6 45 08 8b 4d f0 8b 89 c8 00 00 00 0f b7 04 41 25 00 80 00 00 80 7d fc M........E..M..........A%.....}.
8240 00 74 07 8b 4d f8 83 61 70 fd c9 c3 8b ff 55 8b ec 6a 00 ff 75 08 e8 b9 ff ff ff 59 59 5d c3 cc .t..M..ap.....U..j..u......YY]..
8260 56 8b 44 24 14 0b c0 75 28 8b 4c 24 10 8b 44 24 0c 33 d2 f7 f1 8b d8 8b 44 24 08 f7 f1 8b f0 8b V.D$...u(.L$..D$.3......D$......
8280 c3 f7 64 24 10 8b c8 8b c6 f7 64 24 10 03 d1 eb 47 8b c8 8b 5c 24 10 8b 54 24 0c 8b 44 24 08 d1 ..d$......d$....G...\$..T$..D$..
82a0 e9 d1 db d1 ea d1 d8 0b c9 75 f4 f7 f3 8b f0 f7 64 24 14 8b c8 8b 44 24 10 f7 e6 03 d1 72 0e 3b .........u......d$....D$.....r.;
82c0 54 24 0c 77 08 72 0f 3b 44 24 08 76 09 4e 2b 44 24 10 1b 54 24 14 33 db 2b 44 24 08 1b 54 24 0c T$.w.r.;D$.v.N+D$..T$.3.+D$..T$.
82e0 f7 da f7 d8 83 da 00 8b ca 8b d3 8b d9 8b c8 8b c6 5e c2 10 00 cc cc cc cc cc cc cc cc cc cc cc .................^..............
8300 8b 54 24 0c 8b 4c 24 04 85 d2 74 69 33 c0 8a 44 24 08 84 c0 75 16 81 fa 00 01 00 00 72 0e 83 3d .T$..L$...ti3..D$...u.......r..=
8320 e0 e4 42 00 00 74 05 e9 44 1f 00 00 57 8b f9 83 fa 04 72 31 f7 d9 83 e1 03 74 0c 2b d1 88 07 83 ..B..t..D...W.....r1.....t.+....
8340 c7 01 83 e9 01 75 f6 8b c8 c1 e0 08 03 c1 8b c8 c1 e0 10 03 c1 8b ca 83 e2 03 c1 e9 02 74 06 f3 .....u.......................t..
8360 ab 85 d2 74 0a 88 07 83 c7 01 83 ea 01 75 f6 8b 44 24 08 5f c3 8b 44 24 04 c3 cc cc 53 56 57 8b ...t.........u..D$._..D$....SVW.
8380 54 24 10 8b 44 24 14 8b 4c 24 18 55 52 50 51 51 68 0c 90 40 00 64 ff 35 00 00 00 00 a1 90 a2 41 T$..D$..L$.URPQQh..@.d.5.......A
83a0 00 33 c4 89 44 24 08 64 89 25 00 00 00 00 8b 44 24 30 8b 58 08 8b 4c 24 2c 33 19 8b 70 0c 83 fe .3..D$.d.%.....D$0.X..L$,3..p...
83c0 fe 74 3b 8b 54 24 34 83 fa fe 74 04 3b f2 76 2e 8d 34 76 8d 5c b3 10 8b 0b 89 48 0c 83 7b 04 00 .t;.T$4...t.;.v..4v.\.....H..{..
83e0 75 cc 68 01 01 00 00 8b 43 08 e8 e6 20 00 00 b9 01 00 00 00 8b 43 08 e8 f8 20 00 00 eb b0 64 8f u.h.....C............C........d.
8400 05 00 00 00 00 83 c4 18 5f 5e 5b c3 8b 4c 24 04 f7 41 04 06 00 00 00 b8 01 00 00 00 74 33 8b 44 ........_^[..L$..A..........t3.D
8420 24 08 8b 48 08 33 c8 e8 3b 9f ff ff 55 8b 68 18 ff 70 0c ff 70 10 ff 70 14 e8 3e ff ff ff 83 c4 $..H.3..;...U.h..p..p..p..>.....
8440 0c 5d 8b 44 24 08 8b 54 24 10 89 02 b8 03 00 00 00 c3 55 8b 4c 24 08 8b 29 ff 71 1c ff 71 18 ff .].D$..T$.........U.L$..).q..q..
8460 71 28 e8 15 ff ff ff 83 c4 0c 5d c2 04 00 55 56 57 53 8b ea 33 c0 33 db 33 d2 33 f6 33 ff ff d1 q(........]...UVWS..3.3.3.3.3...
8480 5b 5f 5e 5d c3 8b ea 8b f1 8b c1 6a 01 e8 43 20 00 00 33 c0 33 db 33 c9 33 d2 33 ff ff e6 55 8b [_^].......j..C...3.3.3.3.3...U.
84a0 ec 53 56 57 6a 00 6a 00 68 b3 90 40 00 51 e8 db 28 00 00 5f 5e 5b 5d c3 55 8b 6c 24 08 52 51 ff .SVWj.j.h..@.Q..(.._^[].U.l$.RQ.
84c0 74 24 14 e8 b4 fe ff ff 83 c4 0c 5d c2 08 00 8b ff 55 8b ec 83 ec 14 53 56 57 e8 3f c3 ff ff 83 t$.........].....U.....SVW.?....
84e0 65 fc 00 83 3d 04 e4 42 00 00 8b d8 0f 85 8e 00 00 00 68 90 ca 40 00 ff 15 88 c0 40 00 8b f8 85 e...=..B..........h..@.....@....
8500 ff 0f 84 2a 01 00 00 8b 35 20 c0 40 00 68 84 ca 40 00 57 ff d6 85 c0 0f 84 14 01 00 00 50 e8 89 ...*....5..@.h..@.W..........P..
8520 c2 ff ff c7 04 24 74 ca 40 00 57 a3 04 e4 42 00 ff d6 50 e8 74 c2 ff ff c7 04 24 60 ca 40 00 57 .....$t.@.W...B...P.t.....$`.@.W
8540 a3 08 e4 42 00 ff d6 50 e8 5f c2 ff ff c7 04 24 44 ca 40 00 57 a3 0c e4 42 00 ff d6 50 e8 4a c2 ...B...P._.....$D.@.W...B...P.J.
8560 ff ff 59 a3 14 e4 42 00 85 c0 74 14 68 2c ca 40 00 57 ff d6 50 e8 32 c2 ff ff 59 a3 10 e4 42 00 ..Y...B...t.h,.@.W..P.2...Y...B.
8580 a1 10 e4 42 00 3b c3 74 4f 39 1d 14 e4 42 00 74 47 50 e8 90 c2 ff ff ff 35 14 e4 42 00 8b f0 e8 ...B.;.tO9...B.tGP......5..B....
85a0 83 c2 ff ff 59 59 8b f8 85 f6 74 2c 85 ff 74 28 ff d6 85 c0 74 19 8d 4d f8 51 6a 0c 8d 4d ec 51 ....YY....t,..t(....t..M.Qj..M.Q
85c0 6a 01 50 ff d7 85 c0 74 06 f6 45 f4 01 75 09 81 4d 10 00 00 20 00 eb 39 a1 08 e4 42 00 3b c3 74 j.P....t..E..u..M......9...B.;.t
85e0 30 50 e8 40 c2 ff ff 59 85 c0 74 25 ff d0 89 45 fc 85 c0 74 1c a1 0c e4 42 00 3b c3 74 13 50 e8 0P.@...Y..t%...E...t....B.;.t.P.
8600 23 c2 ff ff 59 85 c0 74 08 ff 75 fc ff d0 89 45 fc ff 35 04 e4 42 00 e8 0b c2 ff ff 59 85 c0 74 #...Y..t..u....E..5..B......Y..t
8620 10 ff 75 10 ff 75 0c ff 75 08 ff 75 fc ff d0 eb 02 33 c0 5f 5e 5b c9 c3 8b ff 55 8b ec 8b 45 08 ..u..u..u..u.....3._^[....U...E.
8640 53 33 db 56 57 3b c3 74 07 8b 7d 0c 3b fb 77 1b e8 17 bf ff ff 6a 16 5e 89 30 53 53 53 53 53 e8 S3.VW;.t..}.;.w......j.^.0SSSSS.
8660 a0 be ff ff 83 c4 14 8b c6 eb 3c 8b 75 10 3b f3 75 04 88 18 eb da 8b d0 38 1a 74 04 42 4f 75 f8 ..........<.u.;.u.......8.t.BOu.
8680 3b fb 74 ee 8a 0e 88 0a 42 46 3a cb 74 03 4f 75 f3 3b fb 75 10 88 18 e8 d0 be ff ff 6a 22 59 89 ;.t.....BF:.t.Ou.;.u........j"Y.
86a0 08 8b f1 eb b5 33 c0 5f 5e 5b 5d c3 8b ff 55 8b ec 53 56 8b 75 08 33 db 57 39 5d 14 75 10 3b f3 .....3._^[]...U..SV.u.3.W9].u.;.
86c0 75 10 39 5d 0c 75 12 33 c0 5f 5e 5b 5d c3 3b f3 74 07 8b 7d 0c 3b fb 77 1b e8 8e be ff ff 6a 16 u.9].u.3._^[].;.t..}.;.w......j.
86e0 5e 89 30 53 53 53 53 53 e8 17 be ff ff 83 c4 14 8b c6 eb d5 39 5d 14 75 04 88 1e eb ca 8b 55 10 ^.0SSSSS............9].u......U.
8700 3b d3 75 04 88 1e eb d1 83 7d 14 ff 8b c6 75 0f 8a 0a 88 08 40 42 3a cb 74 1e 4f 75 f3 eb 19 8a ;.u......}....u.....@B:.t.Ou....
8720 0a 88 08 40 42 3a cb 74 08 4f 74 05 ff 4d 14 75 ee 39 5d 14 75 02 88 18 3b fb 75 8b 83 7d 14 ff ...@B:.t.Ot..M.u.9].u...;.u..}..
8740 75 0f 8b 45 0c 6a 50 88 5c 06 ff 58 e9 78 ff ff ff 88 1e e8 14 be ff ff 6a 22 59 89 08 8b f1 eb u..E.jP.\..X.x..........j"Y.....
8760 82 8b ff 55 8b ec 8b 4d 08 53 33 db 56 57 3b cb 74 07 8b 7d 0c 3b fb 77 1b e8 ee bd ff ff 6a 16 ...U...M.S3.VW;.t..}.;.w......j.
8780 5e 89 30 53 53 53 53 53 e8 77 bd ff ff 83 c4 14 8b c6 eb 30 8b 75 10 3b f3 75 04 88 19 eb da 8b ^.0SSSSS.w.........0.u.;.u......
87a0 d1 8a 06 88 02 42 46 3a c3 74 03 4f 75 f3 3b fb 75 10 88 19 e8 b3 bd ff ff 6a 22 59 89 08 8b f1 .....BF:.t.Ou.;.u........j"Y....
87c0 eb c1 33 c0 5f 5e 5b 5d c3 8b ff 55 8b ec 8b 4d 08 56 33 f6 3b ce 7c 1e 83 f9 02 7e 0c 83 f9 03 ..3._^[]...U...M.V3.;.|....~....
87e0 75 14 a1 c0 da 42 00 eb 28 a1 c0 da 42 00 89 0d c0 da 42 00 eb 1b e8 71 bd ff ff 56 56 56 56 56 u....B..(...B.....B....q...VVVVV
8800 c7 00 16 00 00 00 e8 f9 bc ff ff 83 c4 14 83 c8 ff 5e 5d c3 6a 10 68 98 88 41 00 e8 98 bd ff ff .................^].j.h..A......
8820 33 c0 8b 5d 08 33 ff 3b df 0f 95 c0 3b c7 75 1d e8 37 bd ff ff c7 00 16 00 00 00 57 57 57 57 57 3..].3.;....;.u..7.........WWWWW
8840 e8 bf bc ff ff 83 c4 14 83 c8 ff eb 53 83 3d 00 e5 42 00 03 75 38 6a 04 e8 76 ad ff ff 59 89 7d ............S.=..B..u8j..v...Y.}
8860 fc 53 e8 c7 d3 ff ff 59 89 45 e0 3b c7 74 0b 8b 73 fc 83 ee 09 89 75 e4 eb 03 8b 75 e4 c7 45 fc .S.....Y.E.;.t..s.....u....u..E.
8880 fe ff ff ff e8 25 00 00 00 39 7d e0 75 10 53 57 ff 35 b4 e3 42 00 ff 15 e4 c0 40 00 8b f0 8b c6 .....%...9}.u.SW.5..B.....@.....
88a0 e8 58 bd ff ff c3 33 ff 8b 5d 08 8b 75 e4 6a 04 e8 44 ac ff ff 59 c3 6a 02 e8 bb 9d ff ff 59 c3 .X....3..]..u.j..D...Y.j......Y.
88c0 8b ff 55 8b ec 81 ec 28 03 00 00 a1 90 a2 41 00 33 c5 89 45 fc f6 05 90 ac 41 00 01 56 74 08 6a ..U....(......A.3..E.....A..Vt.j
88e0 0a e8 63 c4 ff ff 59 e8 41 cb ff ff 85 c0 74 08 6a 16 e8 43 cb ff ff 59 f6 05 90 ac 41 00 02 0f ..c...Y.A.....t.j..C...Y....A...
8900 84 ca 00 00 00 89 85 e0 fd ff ff 89 8d dc fd ff ff 89 95 d8 fd ff ff 89 9d d4 fd ff ff 89 b5 d0 ................................
8920 fd ff ff 89 bd cc fd ff ff 66 8c 95 f8 fd ff ff 66 8c 8d ec fd ff ff 66 8c 9d c8 fd ff ff 66 8c .........f......f......f......f.
8940 85 c4 fd ff ff 66 8c a5 c0 fd ff ff 66 8c ad bc fd ff ff 9c 8f 85 f0 fd ff ff 8b 75 04 8d 45 04 .....f......f..............u..E.
8960 89 85 f4 fd ff ff c7 85 30 fd ff ff 01 00 01 00 89 b5 e8 fd ff ff 8b 40 fc 6a 50 89 85 e4 fd ff ........0..............@.jP.....
8980 ff 8d 85 d8 fc ff ff 6a 00 50 e8 71 f9 ff ff 8d 85 d8 fc ff ff 83 c4 0c 89 85 28 fd ff ff 8d 85 .......j.P.q..............(.....
89a0 30 fd ff ff 6a 00 c7 85 d8 fc ff ff 15 00 00 40 89 b5 e4 fc ff ff 89 85 2c fd ff ff ff 15 44 c0 0...j..........@........,.....D.
89c0 40 00 8d 85 28 fd ff ff 50 ff 15 40 c0 40 00 6a 03 e8 29 9f ff ff cc cc cc cc cc cc cc cc cc cc @...(...P..@.@.j..).............
89e0 55 8b ec 57 56 8b 75 0c 8b 4d 10 8b 7d 08 8b c1 8b d1 03 c6 3b fe 76 08 3b f8 0f 82 a4 01 00 00 U..WV.u..M..}.......;.v.;.......
8a00 81 f9 00 01 00 00 72 1f 83 3d e0 e4 42 00 00 74 16 57 56 83 e7 0f 83 e6 0f 3b fe 5e 5f 75 08 5e ......r..=..B..t.WV......;.^_u.^
8a20 5f 5d e9 b1 1d 00 00 f7 c7 03 00 00 00 75 15 c1 e9 02 83 e2 03 83 f9 08 72 2a f3 a5 ff 24 95 54 _]...........u..........r*...$.T
8a40 97 40 00 90 8b c7 ba 03 00 00 00 83 e9 04 72 0c 83 e0 03 03 c8 ff 24 85 68 96 40 00 ff 24 8d 64 .@............r.......$.h.@..$.d
8a60 97 40 00 90 ff 24 8d e8 96 40 00 90 78 96 40 00 a4 96 40 00 c8 96 40 00 23 d1 8a 06 88 07 8a 46 .@...$...@..x.@...@...@.#......F
8a80 01 88 47 01 8a 46 02 c1 e9 02 88 47 02 83 c6 03 83 c7 03 83 f9 08 72 cc f3 a5 ff 24 95 54 97 40 ..G..F.....G..........r....$.T.@
8aa0 00 8d 49 00 23 d1 8a 06 88 07 8a 46 01 c1 e9 02 88 47 01 83 c6 02 83 c7 02 83 f9 08 72 a6 f3 a5 ..I.#......F.....G..........r...
8ac0 ff 24 95 54 97 40 00 90 23 d1 8a 06 88 07 83 c6 01 c1 e9 02 83 c7 01 83 f9 08 72 88 f3 a5 ff 24 .$.T.@..#.................r....$
8ae0 95 54 97 40 00 8d 49 00 4b 97 40 00 38 97 40 00 30 97 40 00 28 97 40 00 20 97 40 00 18 97 40 00 .T.@..I.K.@.8.@.0.@.(.@...@...@.
8b00 10 97 40 00 08 97 40 00 8b 44 8e e4 89 44 8f e4 8b 44 8e e8 89 44 8f e8 8b 44 8e ec 89 44 8f ec ..@...@..D...D...D...D...D...D..
8b20 8b 44 8e f0 89 44 8f f0 8b 44 8e f4 89 44 8f f4 8b 44 8e f8 89 44 8f f8 8b 44 8e fc 89 44 8f fc .D...D...D...D...D...D...D...D..
8b40 8d 04 8d 00 00 00 00 03 f0 03 f8 ff 24 95 54 97 40 00 8b ff 64 97 40 00 6c 97 40 00 78 97 40 00 ............$.T.@...d.@.l.@.x.@.
8b60 8c 97 40 00 8b 45 08 5e 5f c9 c3 90 8a 06 88 07 8b 45 08 5e 5f c9 c3 90 8a 06 88 07 8a 46 01 88 ..@..E.^_........E.^_........F..
8b80 47 01 8b 45 08 5e 5f c9 c3 8d 49 00 8a 06 88 07 8a 46 01 88 47 01 8a 46 02 88 47 02 8b 45 08 5e G..E.^_...I......F..G..F..G..E.^
8ba0 5f c9 c3 90 8d 74 31 fc 8d 7c 39 fc f7 c7 03 00 00 00 75 24 c1 e9 02 83 e2 03 83 f9 08 72 0d fd _....t1..|9.......u$.........r..
8bc0 f3 a5 fc ff 24 95 f0 98 40 00 8b ff f7 d9 ff 24 8d a0 98 40 00 8d 49 00 8b c7 ba 03 00 00 00 83 ....$...@......$...@..I.........
8be0 f9 04 72 0c 83 e0 03 2b c8 ff 24 85 f4 97 40 00 ff 24 8d f0 98 40 00 90 04 98 40 00 28 98 40 00 ..r....+..$...@..$...@....@.(.@.
8c00 50 98 40 00 8a 46 03 23 d1 88 47 03 83 ee 01 c1 e9 02 83 ef 01 83 f9 08 72 b2 fd f3 a5 fc ff 24 P.@..F.#..G.............r......$
8c20 95 f0 98 40 00 8d 49 00 8a 46 03 23 d1 88 47 03 8a 46 02 c1 e9 02 88 47 02 83 ee 02 83 ef 02 83 ...@..I..F.#..G..F.....G........
8c40 f9 08 72 88 fd f3 a5 fc ff 24 95 f0 98 40 00 90 8a 46 03 23 d1 88 47 03 8a 46 02 88 47 02 8a 46 ..r......$...@...F.#..G..F..G..F
8c60 01 c1 e9 02 88 47 01 83 ee 03 83 ef 03 83 f9 08 0f 82 56 ff ff ff fd f3 a5 fc ff 24 95 f0 98 40 .....G............V........$...@
8c80 00 8d 49 00 a4 98 40 00 ac 98 40 00 b4 98 40 00 bc 98 40 00 c4 98 40 00 cc 98 40 00 d4 98 40 00 ..I...@...@...@...@...@...@...@.
8ca0 e7 98 40 00 8b 44 8e 1c 89 44 8f 1c 8b 44 8e 18 89 44 8f 18 8b 44 8e 14 89 44 8f 14 8b 44 8e 10 ..@..D...D...D...D...D...D...D..
8cc0 89 44 8f 10 8b 44 8e 0c 89 44 8f 0c 8b 44 8e 08 89 44 8f 08 8b 44 8e 04 89 44 8f 04 8d 04 8d 00 .D...D...D...D...D...D...D......
8ce0 00 00 00 03 f0 03 f8 ff 24 95 f0 98 40 00 8b ff 00 99 40 00 08 99 40 00 18 99 40 00 2c 99 40 00 ........$...@.....@...@...@.,.@.
8d00 8b 45 08 5e 5f c9 c3 90 8a 46 03 88 47 03 8b 45 08 5e 5f c9 c3 8d 49 00 8a 46 03 88 47 03 8a 46 .E.^_....F..G..E.^_...I..F..G..F
8d20 02 88 47 02 8b 45 08 5e 5f c9 c3 90 8a 46 03 88 47 03 8a 46 02 88 47 02 8a 46 01 88 47 01 8b 45 ..G..E.^_....F..G..F..G..F..G..E
8d40 08 5e 5f c9 c3 8b ff 55 8b ec 8b 45 08 85 c0 74 12 83 e8 08 81 38 dd dd 00 00 75 07 50 e8 e3 9e .^_....U...E...t.....8....u.P...
8d60 ff ff 59 5d c3 8b ff 55 8b ec 83 ec 10 ff 75 08 8d 4d f0 e8 5e a9 ff ff 0f b6 45 0c 8b 4d f4 8a ..Y]...U......u..M..^.....E..M..
8d80 55 14 84 54 01 1d 75 1e 83 7d 10 00 74 12 8b 4d f0 8b 89 c8 00 00 00 0f b7 04 41 23 45 10 eb 02 U..T..u..}..t..M..........A#E...
8da0 33 c0 85 c0 74 03 33 c0 40 80 7d fc 00 74 07 8b 4d f8 83 61 70 fd c9 c3 8b ff 55 8b ec 6a 04 6a 3...t.3.@.}..t..M..ap.....U..j.j
8dc0 00 ff 75 08 6a 00 e8 9a ff ff ff 83 c4 10 5d c3 55 8b ec 57 56 8b 75 0c 8b 4d 10 8b 7d 08 8b c1 ..u.j.........].U..WV.u..M..}...
8de0 8b d1 03 c6 3b fe 76 08 3b f8 0f 82 a4 01 00 00 81 f9 00 01 00 00 72 1f 83 3d e0 e4 42 00 00 74 ....;.v.;.............r..=..B..t
8e00 16 57 56 83 e7 0f 83 e6 0f 3b fe 5e 5f 75 08 5e 5f 5d e9 c1 19 00 00 f7 c7 03 00 00 00 75 15 c1 .WV......;.^_u.^_]...........u..
8e20 e9 02 83 e2 03 83 f9 08 72 2a f3 a5 ff 24 95 44 9b 40 00 90 8b c7 ba 03 00 00 00 83 e9 04 72 0c ........r*...$.D.@............r.
8e40 83 e0 03 03 c8 ff 24 85 58 9a 40 00 ff 24 8d 54 9b 40 00 90 ff 24 8d d8 9a 40 00 90 68 9a 40 00 ......$.X.@..$.T.@...$...@..h.@.
8e60 94 9a 40 00 b8 9a 40 00 23 d1 8a 06 88 07 8a 46 01 88 47 01 8a 46 02 c1 e9 02 88 47 02 83 c6 03 ..@...@.#......F..G..F.....G....
8e80 83 c7 03 83 f9 08 72 cc f3 a5 ff 24 95 44 9b 40 00 8d 49 00 23 d1 8a 06 88 07 8a 46 01 c1 e9 02 ......r....$.D.@..I.#......F....
8ea0 88 47 01 83 c6 02 83 c7 02 83 f9 08 72 a6 f3 a5 ff 24 95 44 9b 40 00 90 23 d1 8a 06 88 07 83 c6 .G..........r....$.D.@..#.......
8ec0 01 c1 e9 02 83 c7 01 83 f9 08 72 88 f3 a5 ff 24 95 44 9b 40 00 8d 49 00 3b 9b 40 00 28 9b 40 00 ..........r....$.D.@..I.;.@.(.@.
8ee0 20 9b 40 00 18 9b 40 00 10 9b 40 00 08 9b 40 00 00 9b 40 00 f8 9a 40 00 8b 44 8e e4 89 44 8f e4 ..@...@...@...@...@...@..D...D..
8f00 8b 44 8e e8 89 44 8f e8 8b 44 8e ec 89 44 8f ec 8b 44 8e f0 89 44 8f f0 8b 44 8e f4 89 44 8f f4 .D...D...D...D...D...D...D...D..
8f20 8b 44 8e f8 89 44 8f f8 8b 44 8e fc 89 44 8f fc 8d 04 8d 00 00 00 00 03 f0 03 f8 ff 24 95 44 9b .D...D...D...D..............$.D.
8f40 40 00 8b ff 54 9b 40 00 5c 9b 40 00 68 9b 40 00 7c 9b 40 00 8b 45 08 5e 5f c9 c3 90 8a 06 88 07 @...T.@.\.@.h.@.|.@..E.^_.......
8f60 8b 45 08 5e 5f c9 c3 90 8a 06 88 07 8a 46 01 88 47 01 8b 45 08 5e 5f c9 c3 8d 49 00 8a 06 88 07 .E.^_........F..G..E.^_...I.....
8f80 8a 46 01 88 47 01 8a 46 02 88 47 02 8b 45 08 5e 5f c9 c3 90 8d 74 31 fc 8d 7c 39 fc f7 c7 03 00 .F..G..F..G..E.^_....t1..|9.....
8fa0 00 00 75 24 c1 e9 02 83 e2 03 83 f9 08 72 0d fd f3 a5 fc ff 24 95 e0 9c 40 00 8b ff f7 d9 ff 24 ..u$.........r......$...@......$
8fc0 8d 90 9c 40 00 8d 49 00 8b c7 ba 03 00 00 00 83 f9 04 72 0c 83 e0 03 2b c8 ff 24 85 e4 9b 40 00 ...@..I...........r....+..$...@.
8fe0 ff 24 8d e0 9c 40 00 90 f4 9b 40 00 18 9c 40 00 40 9c 40 00 8a 46 03 23 d1 88 47 03 83 ee 01 c1 .$...@....@...@.@.@..F.#..G.....
9000 e9 02 83 ef 01 83 f9 08 72 b2 fd f3 a5 fc ff 24 95 e0 9c 40 00 8d 49 00 8a 46 03 23 d1 88 47 03 ........r......$...@..I..F.#..G.
9020 8a 46 02 c1 e9 02 88 47 02 83 ee 02 83 ef 02 83 f9 08 72 88 fd f3 a5 fc ff 24 95 e0 9c 40 00 90 .F.....G..........r......$...@..
9040 8a 46 03 23 d1 88 47 03 8a 46 02 88 47 02 8a 46 01 c1 e9 02 88 47 01 83 ee 03 83 ef 03 83 f9 08 .F.#..G..F..G..F.....G..........
9060 0f 82 56 ff ff ff fd f3 a5 fc ff 24 95 e0 9c 40 00 8d 49 00 94 9c 40 00 9c 9c 40 00 a4 9c 40 00 ..V........$...@..I...@...@...@.
9080 ac 9c 40 00 b4 9c 40 00 bc 9c 40 00 c4 9c 40 00 d7 9c 40 00 8b 44 8e 1c 89 44 8f 1c 8b 44 8e 18 ..@...@...@...@...@..D...D...D..
90a0 89 44 8f 18 8b 44 8e 14 89 44 8f 14 8b 44 8e 10 89 44 8f 10 8b 44 8e 0c 89 44 8f 0c 8b 44 8e 08 .D...D...D...D...D...D...D...D..
90c0 89 44 8f 08 8b 44 8e 04 89 44 8f 04 8d 04 8d 00 00 00 00 03 f0 03 f8 ff 24 95 e0 9c 40 00 8b ff .D...D...D..............$...@...
90e0 f0 9c 40 00 f8 9c 40 00 08 9d 40 00 1c 9d 40 00 8b 45 08 5e 5f c9 c3 90 8a 46 03 88 47 03 8b 45 ..@...@...@...@..E.^_....F..G..E
9100 08 5e 5f c9 c3 8d 49 00 8a 46 03 88 47 03 8a 46 02 88 47 02 8b 45 08 5e 5f c9 c3 90 8a 46 03 88 .^_...I..F..G..F..G..E.^_....F..
9120 47 03 8a 46 02 88 47 02 8a 46 01 88 47 01 8b 45 08 5e 5f c9 c3 8b ff 55 8b ec 56 8b 75 08 57 56 G..F..G..F..G..E.^_....U..V.u.WV
9140 e8 dc 05 00 00 59 83 f8 ff 74 50 a1 20 e5 42 00 83 fe 01 75 09 f6 80 84 00 00 00 01 75 0b 83 fe .....Y...tP...B....u........u...
9160 02 75 1c f6 40 44 01 74 16 6a 02 e8 b1 05 00 00 6a 01 8b f8 e8 a8 05 00 00 59 59 3b c7 74 1c 56 .u..@D.t.j......j........YY;.t.V
9180 e8 9c 05 00 00 59 50 ff 15 ec c0 40 00 85 c0 75 0a ff 15 2c c0 40 00 8b f8 eb 02 33 ff 56 e8 f8 .....YP....@...u...,.@.....3.V..
91a0 04 00 00 8b c6 c1 f8 05 8b 04 85 20 e5 42 00 83 e6 1f c1 e6 06 59 c6 44 30 04 00 85 ff 74 0c 57 .............B.......Y.D0....t.W
91c0 e8 cd b3 ff ff 59 83 c8 ff eb 02 33 c0 5f 5e 5d c3 6a 10 68 b8 88 41 00 e8 db b3 ff ff 8b 45 08 .....Y.....3._^].j.h..A.......E.
91e0 83 f8 fe 75 1b e8 95 b3 ff ff 83 20 00 e8 7a b3 ff ff c7 00 09 00 00 00 83 c8 ff e9 8e 00 00 00 ...u..........z.................
9200 33 ff 3b c7 7c 08 3b 05 08 e5 42 00 72 21 e8 6c b3 ff ff 89 38 e8 52 b3 ff ff c7 00 09 00 00 00 3.;.|.;...B.r!.l....8.R.........
9220 57 57 57 57 57 e8 da b2 ff ff 83 c4 14 eb c9 8b c8 c1 f9 05 8d 1c 8d 20 e5 42 00 8b f0 83 e6 1f WWWWW....................B......
9240 c1 e6 06 8b 0b 0f be 4c 31 04 83 e1 01 74 bf 50 e8 43 05 00 00 59 89 7d fc 8b 03 f6 44 30 04 01 .......L1....t.P.C...Y.}....D0..
9260 74 0e ff 75 08 e8 cb fe ff ff 59 89 45 e4 eb 0f e8 f7 b2 ff ff c7 00 09 00 00 00 83 4d e4 ff c7 t..u......Y.E...............M...
9280 45 fc fe ff ff ff e8 09 00 00 00 8b 45 e4 e8 6a b3 ff ff c3 ff 75 08 e8 9c 05 00 00 59 c3 8b ff E...........E..j.....u......Y...
92a0 55 8b ec 56 8b 75 08 8b 46 0c a8 83 74 1e a8 08 74 1a ff 76 08 e8 8b 99 ff ff 81 66 0c f7 fb ff U..V.u..F...t...t..v.......f....
92c0 ff 33 c0 59 89 06 89 46 08 89 46 04 5e 5d c3 8b ff 55 8b ec 83 ec 10 a1 90 a2 41 00 33 c5 89 45 .3.Y...F..F.^]...U........A.3..E
92e0 fc 56 33 f6 39 35 a0 ac 41 00 74 4f 83 3d d4 ad 41 00 fe 75 05 e8 b2 16 00 00 a1 d4 ad 41 00 83 .V3.95..A.tO.=..A..u.........A..
9300 f8 ff 75 07 b8 ff ff 00 00 eb 70 56 8d 4d f0 51 6a 01 8d 4d 08 51 50 ff 15 f8 c0 40 00 85 c0 75 ..u.......pV.M.Qj..M.QP....@...u
9320 67 83 3d a0 ac 41 00 02 75 da ff 15 2c c0 40 00 83 f8 78 75 cf 89 35 a0 ac 41 00 56 56 6a 05 8d g.=..A..u...,.@...xu..5..A.VVj..
9340 45 f4 50 6a 01 8d 45 08 50 56 ff 15 f4 c0 40 00 50 ff 15 9c c0 40 00 8b 0d d4 ad 41 00 83 f9 ff E.Pj..E.PV....@.P....@.....A....
9360 74 a2 56 8d 55 f0 52 50 8d 45 f4 50 51 ff 15 f0 c0 40 00 85 c0 74 8d 66 8b 45 08 8b 4d fc 33 cd t.V.U.RP.E.PQ....@...t.f.E..M.3.
9380 5e e8 e1 8f ff ff c9 c3 c7 05 a0 ac 41 00 01 00 00 00 eb e3 8b ff 55 8b ec 83 ec 10 53 56 8b 75 ^...........A.........U.....SV.u
93a0 0c 33 db 3b f3 74 15 39 5d 10 74 10 38 1e 75 12 8b 45 08 3b c3 74 05 33 c9 66 89 08 33 c0 5e 5b .3.;.t.9].t.8.u..E.;.t.3.f..3.^[
93c0 c9 c3 ff 75 14 8d 4d f0 e8 09 a3 ff ff 8b 45 f0 39 58 14 75 1f 8b 45 08 3b c3 74 07 66 0f b6 0e ...u..M.......E.9X.u..E.;.t.f...
93e0 66 89 08 38 5d fc 74 07 8b 45 f8 83 60 70 fd 33 c0 40 eb ca 8d 45 f0 50 0f b6 06 50 e8 13 ee ff f..8].t..E..`p.3.@...E.P...P....
9400 ff 59 59 85 c0 74 7d 8b 45 f0 8b 88 ac 00 00 00 83 f9 01 7e 25 39 4d 10 7c 20 33 d2 39 5d 08 0f .YY..t}.E..........~%9M.|.3.9]..
9420 95 c2 52 ff 75 08 51 56 6a 09 ff 70 04 ff 15 fc c0 40 00 85 c0 8b 45 f0 75 10 8b 4d 10 3b 88 ac ..R.u.QVj..p.....@....E.u..M.;..
9440 00 00 00 72 20 38 5e 01 74 1b 8b 80 ac 00 00 00 38 5d fc 0f 84 65 ff ff ff 8b 4d f8 83 61 70 fd ...r.8^.t.......8]...e....M..ap.
9460 e9 59 ff ff ff e8 02 b1 ff ff c7 00 2a 00 00 00 38 5d fc 74 07 8b 45 f8 83 60 70 fd 83 c8 ff e9 .Y..........*...8].t..E..`p.....
9480 3a ff ff ff 33 c0 39 5d 08 0f 95 c0 50 ff 75 08 8b 45 f0 6a 01 56 6a 09 ff 70 04 ff 15 fc c0 40 :...3.9]....P.u..E.j.Vj..p.....@
94a0 00 85 c0 0f 85 3a ff ff ff eb ba 8b ff 55 8b ec 6a 00 ff 75 10 ff 75 0c ff 75 08 e8 d4 fe ff ff .....:.......U..j..u..u..u......
94c0 83 c4 10 5d c3 8b ff 55 8b ec 51 51 8b 45 0c 56 8b 75 08 89 45 f8 8b 45 10 57 56 89 45 fc e8 3e ...]...U..QQ.E.V.u..E..E.WV.E..>
94e0 02 00 00 83 cf ff 59 3b c7 75 11 e8 7c b0 ff ff c7 00 09 00 00 00 8b c7 8b d7 eb 4a ff 75 14 8d ......Y;.u..|..............J.u..
9500 4d fc 51 ff 75 f8 50 ff 15 00 c1 40 00 89 45 f8 3b c7 75 13 ff 15 2c c0 40 00 85 c0 74 09 50 e8 M.Q.u.P....@..E.;.u...,.@...t.P.
9520 6e b0 ff ff 59 eb cf 8b c6 c1 f8 05 8b 04 85 20 e5 42 00 83 e6 1f c1 e6 06 8d 44 30 04 80 20 fd n...Y............B........D0....
9540 8b 45 f8 8b 55 fc 5f 5e c9 c3 6a 14 68 d8 88 41 00 e8 62 b0 ff ff 83 ce ff 89 75 dc 89 75 e0 8b .E..U._^..j.h..A..b.......u..u..
9560 45 08 83 f8 fe 75 1c e8 13 b0 ff ff 83 20 00 e8 f8 af ff ff c7 00 09 00 00 00 8b c6 8b d6 e9 d0 E....u..........................
9580 00 00 00 33 ff 3b c7 7c 08 3b 05 08 e5 42 00 72 21 e8 e9 af ff ff 89 38 e8 cf af ff ff c7 00 09 ...3.;.|.;...B.r!......8........
95a0 00 00 00 57 57 57 57 57 e8 57 af ff ff 83 c4 14 eb c8 8b c8 c1 f9 05 8d 1c 8d 20 e5 42 00 8b f0 ...WWWWW.W..................B...
95c0 83 e6 1f c1 e6 06 8b 0b 0f be 4c 31 04 83 e1 01 75 26 e8 a8 af ff ff 89 38 e8 8e af ff ff c7 00 ..........L1....u&......8.......
95e0 09 00 00 00 57 57 57 57 57 e8 16 af ff ff 83 c4 14 83 ca ff 8b c2 eb 5b 50 e8 9a 01 00 00 59 89 ....WWWWW..............[P.....Y.
9600 7d fc 8b 03 f6 44 30 04 01 74 1c ff 75 14 ff 75 10 ff 75 0c ff 75 08 e8 a9 fe ff ff 83 c4 10 89 }....D0..t..u..u..u..u..........
9620 45 dc 89 55 e0 eb 1a e8 40 af ff ff c7 00 09 00 00 00 e8 48 af ff ff 89 38 83 4d dc ff 83 4d e0 E..U....@..........H....8.M...M.
9640 ff c7 45 fc fe ff ff ff e8 0c 00 00 00 8b 45 dc 8b 55 e0 e8 a5 af ff ff c3 ff 75 08 e8 d7 01 00 ..E...........E..U........u.....
9660 00 59 c3 cc cc cc cc cc cc cc cc cc cc cc cc cc 51 8d 4c 24 04 2b c8 1b c0 f7 d0 23 c8 8b c4 25 .Y..............Q.L$.+.....#...%
9680 00 f0 ff ff 3b c8 72 0a 8b c1 59 94 8b 00 89 04 24 c3 2d 00 10 00 00 85 00 eb e9 8b ff 55 8b ec ....;.r...Y.....$.-..........U..
96a0 8b 4d 08 53 33 db 3b cb 56 57 7c 5b 3b 0d 08 e5 42 00 73 53 8b c1 c1 f8 05 8b f1 8d 3c 85 20 e5 .M.S3.;.VW|[;...B.sS........<...
96c0 42 00 8b 07 83 e6 1f c1 e6 06 03 c6 f6 40 04 01 74 35 83 38 ff 74 30 83 3d 84 a2 41 00 01 75 1d B............@..t5.8.t0.=..A..u.
96e0 2b cb 74 10 49 74 08 49 75 13 53 6a f4 eb 08 53 6a f5 eb 03 53 6a f6 ff 15 04 c1 40 00 8b 07 83 +.t.It.Iu.Sj...Sj...Sj.....@....
9700 0c 06 ff 33 c0 eb 15 e8 60 ae ff ff c7 00 09 00 00 00 e8 68 ae ff ff 89 18 83 c8 ff 5f 5e 5b 5d ...3....`..........h........_^[]
9720 c3 8b ff 55 8b ec 8b 45 08 83 f8 fe 75 18 e8 4c ae ff ff 83 20 00 e8 31 ae ff ff c7 00 09 00 00 ...U...E....u..L.......1........
9740 00 83 c8 ff 5d c3 56 33 f6 3b c6 7c 22 3b 05 08 e5 42 00 73 1a 8b c8 83 e0 1f c1 f9 05 8b 0c 8d ....].V3.;.|";...B.s............
9760 20 e5 42 00 c1 e0 06 03 c1 f6 40 04 01 75 24 e8 0b ae ff ff 89 30 e8 f1 ad ff ff 56 56 56 56 56 ..B.......@..u$......0.....VVVVV
9780 c7 00 09 00 00 00 e8 79 ad ff ff 83 c4 14 83 c8 ff eb 02 8b 00 5e 5d c3 6a 0c 68 f8 88 41 00 e8 .......y.............^].j.h..A..
97a0 14 ae ff ff 8b 7d 08 8b c7 c1 f8 05 8b f7 83 e6 1f c1 e6 06 03 34 85 20 e5 42 00 c7 45 e4 01 00 .....}...............4...B..E...
97c0 00 00 33 db 39 5e 08 75 36 6a 0a e8 03 9e ff ff 59 89 5d fc 39 5e 08 75 1a 68 a0 0f 00 00 8d 46 ..3.9^.u6j......Y.].9^.u.h.....F
97e0 0c 50 e8 30 be ff ff 59 59 85 c0 75 03 89 5d e4 ff 46 08 c7 45 fc fe ff ff ff e8 30 00 00 00 39 .P.0...YY..u..]..F..E......0...9
9800 5d e4 74 1d 8b c7 c1 f8 05 83 e7 1f c1 e7 06 8b 04 85 20 e5 42 00 8d 44 38 0c 50 ff 15 10 c0 40 ].t.................B..D8.P....@
9820 00 8b 45 e4 e8 d4 ad ff ff c3 33 db 8b 7d 08 6a 0a e8 c3 9c ff ff 59 c3 8b ff 55 8b ec 8b 45 08 ..E.......3..}.j......Y...U...E.
9840 8b c8 83 e0 1f c1 f9 05 8b 0c 8d 20 e5 42 00 c1 e0 06 8d 44 01 0c 50 ff 15 14 c0 40 00 5d c3 8b .............B.....D..P....@.]..
9860 ff 55 8b ec 83 ec 14 a1 90 a2 41 00 33 c5 89 45 fc 53 56 33 db 57 8b f1 39 1d 18 e4 42 00 75 38 .U........A.3..E.SV3.W..9...B.u8
9880 53 53 33 ff 47 57 68 9c ca 40 00 68 00 01 00 00 53 ff 15 d0 c0 40 00 85 c0 74 08 89 3d 18 e4 42 SS3.GWh..@.h....S....@...t..=..B
98a0 00 eb 15 ff 15 2c c0 40 00 83 f8 78 75 0a c7 05 18 e4 42 00 02 00 00 00 39 5d 14 7e 22 8b 4d 14 .....,.@...xu.....B.....9].~".M.
98c0 8b 45 10 49 38 18 74 08 40 3b cb 75 f6 83 c9 ff 8b 45 14 2b c1 48 3b 45 14 7d 01 40 89 45 14 a1 .E.I8.t.@;.u.....E.+.H;E.}.@.E..
98e0 18 e4 42 00 83 f8 02 0f 84 ac 01 00 00 3b c3 0f 84 a4 01 00 00 83 f8 01 0f 85 cc 01 00 00 89 5d ..B..........;.................]
9900 f8 39 5d 20 75 08 8b 06 8b 40 04 89 45 20 8b 35 fc c0 40 00 33 c0 39 5d 24 53 53 ff 75 14 0f 95 .9].u....@..E..5..@.3.9]$SS.u...
9920 c0 ff 75 10 8d 04 c5 01 00 00 00 50 ff 75 20 ff d6 8b f8 3b fb 0f 84 8f 01 00 00 7e 43 6a e0 33 ..u........P.u.....;.......~Cj.3
9940 d2 58 f7 f7 83 f8 02 72 37 8d 44 3f 08 3d 00 04 00 00 77 13 e8 27 10 00 00 8b c4 3b c3 74 1c c7 .X.....r7.D?.=....w..'.....;.t..
9960 00 cc cc 00 00 eb 11 50 e8 b5 93 ff ff 59 3b c3 74 09 c7 00 dd dd 00 00 83 c0 08 89 45 f4 eb 03 .......P.....Y;.t...........E...
9980 89 5d f4 39 5d f4 0f 84 3e 01 00 00 57 ff 75 f4 ff 75 14 ff 75 10 6a 01 ff 75 20 ff d6 85 c0 0f .].9]...>...W.u..u..u.j..u......
99a0 84 e3 00 00 00 8b 35 d0 c0 40 00 53 53 57 ff 75 f4 ff 75 0c ff 75 08 ff d6 8b c8 89 4d f8 3b cb ......5..@.SSW.u..u..u......M.;.
99c0 0f 84 c2 00 00 00 f7 45 0c 00 04 00 00 74 29 39 5d 1c 0f 84 b0 00 00 00 3b 4d 1c 0f 8f a7 00 00 .......E.....t)9].......;M......
99e0 00 ff 75 1c ff 75 18 57 ff 75 f4 ff 75 0c ff 75 08 ff d6 e9 90 00 00 00 3b cb 7e 45 6a e0 33 d2 ..u..u.W.u..u..u........;.~Ej.3.
9a00 58 f7 f1 83 f8 02 72 39 8d 44 09 08 3d 00 04 00 00 77 16 e8 68 0f 00 00 8b f4 3b f3 74 6a c7 06 X.....r9.D..=....w..h.....;.tj..
9a20 cc cc 00 00 83 c6 08 eb 1a 50 e8 f3 92 ff ff 59 3b c3 74 09 c7 00 dd dd 00 00 83 c0 08 8b f0 eb .........P.....Y;.t.............
9a40 02 33 f6 3b f3 74 41 ff 75 f8 56 57 ff 75 f4 ff 75 0c ff 75 08 ff 15 d0 c0 40 00 85 c0 74 22 53 .3.;.tA.u.VW.u..u..u.....@...t"S
9a60 53 39 5d 1c 75 04 53 53 eb 06 ff 75 1c ff 75 18 ff 75 f8 56 53 ff 75 20 ff 15 9c c0 40 00 89 45 S9].u.SS...u..u..u.VS.u.....@..E
9a80 f8 56 e8 be f2 ff ff 59 ff 75 f4 e8 b5 f2 ff ff 8b 45 f8 59 e9 59 01 00 00 89 5d f4 89 5d f0 39 .V.....Y.u.......E.Y.Y....]..].9
9aa0 5d 08 75 08 8b 06 8b 40 14 89 45 08 39 5d 20 75 08 8b 06 8b 40 04 89 45 20 ff 75 08 e8 37 0f 00 ].u....@..E.9].u....@..E..u..7..
9ac0 00 59 89 45 ec 83 f8 ff 75 07 33 c0 e9 21 01 00 00 3b 45 20 0f 84 db 00 00 00 53 53 8d 4d 14 51 .Y.E....u.3..!...;E.......SS.M.Q
9ae0 ff 75 10 50 ff 75 20 e8 55 0f 00 00 83 c4 18 89 45 f4 3b c3 74 d4 8b 35 08 c1 40 00 53 53 ff 75 .u.P.u..U.......E.;.t..5..@.SS.u
9b00 14 50 ff 75 0c ff 75 08 ff d6 89 45 f8 3b c3 75 07 33 f6 e9 b7 00 00 00 7e 3d 83 f8 e0 77 38 83 .P.u..u....E.;.u.3......~=...w8.
9b20 c0 08 3d 00 04 00 00 77 16 e8 52 0e 00 00 8b fc 3b fb 74 dd c7 07 cc cc 00 00 83 c7 08 eb 1a 50 ..=....w..R.....;.t............P
9b40 e8 dd 91 ff ff 59 3b c3 74 09 c7 00 dd dd 00 00 83 c0 08 8b f8 eb 02 33 ff 3b fb 74 b4 ff 75 f8 .....Y;.t..............3.;.t..u.
9b60 53 57 e8 99 e7 ff ff 83 c4 0c ff 75 f8 57 ff 75 14 ff 75 f4 ff 75 0c ff 75 08 ff d6 89 45 f8 3b SW.........u.W.u..u..u..u....E.;
9b80 c3 75 04 33 f6 eb 25 ff 75 1c 8d 45 f8 ff 75 18 50 57 ff 75 20 ff 75 ec e8 a4 0e 00 00 8b f0 89 .u.3..%.u..E..u.PW.u..u.........
9ba0 75 f0 83 c4 18 f7 de 1b f6 23 75 f8 57 e8 93 f1 ff ff 59 eb 1a ff 75 1c ff 75 18 ff 75 14 ff 75 u........#u.W.....Y...u..u..u..u
9bc0 10 ff 75 0c ff 75 08 ff 15 08 c1 40 00 8b f0 39 5d f4 74 09 ff 75 f4 e8 69 90 ff ff 59 8b 45 f0 ..u..u.....@...9].t..u..i...Y.E.
9be0 3b c3 74 0c 39 45 18 74 07 50 e8 56 90 ff ff 59 8b c6 8d 65 e0 5f 5e 5b 8b 4d fc 33 cd e8 65 87 ;.t.9E.t.P.V...Y...e._^[.M.3..e.
9c00 ff ff c9 c3 8b ff 55 8b ec 83 ec 10 ff 75 08 8d 4d f0 e8 bf 9a ff ff ff 75 28 8d 4d f0 ff 75 24 ......U......u..M.......u(.M..u$
9c20 ff 75 20 ff 75 1c ff 75 18 ff 75 14 ff 75 10 ff 75 0c e8 28 fc ff ff 83 c4 20 80 7d fc 00 74 07 .u..u..u..u..u..u..(.......}..t.
9c40 8b 4d f8 83 61 70 fd c9 c3 8b ff 55 8b ec 51 51 a1 90 a2 41 00 33 c5 89 45 fc a1 1c e4 42 00 53 .M..ap.....U..QQ...A.3..E....B.S
9c60 56 33 db 57 8b f9 3b c3 75 3a 8d 45 f8 50 33 f6 46 56 68 9c ca 40 00 56 ff 15 08 c0 40 00 85 c0 V3.W..;.u:.E.P3.FVh..@.V....@...
9c80 74 08 89 35 1c e4 42 00 eb 34 ff 15 2c c0 40 00 83 f8 78 75 0a 6a 02 58 a3 1c e4 42 00 eb 05 a1 t..5..B..4..,.@...xu.j.X...B....
9ca0 1c e4 42 00 83 f8 02 0f 84 cf 00 00 00 3b c3 0f 84 c7 00 00 00 83 f8 01 0f 85 e8 00 00 00 89 5d ..B..........;.................]
9cc0 f8 39 5d 18 75 08 8b 07 8b 40 04 89 45 18 8b 35 fc c0 40 00 33 c0 39 5d 20 53 53 ff 75 10 0f 95 .9].u....@..E..5..@.3.9].SS.u...
9ce0 c0 ff 75 0c 8d 04 c5 01 00 00 00 50 ff 75 18 ff d6 8b f8 3b fb 0f 84 ab 00 00 00 7e 3c 81 ff f0 ..u........P.u.....;.......~<...
9d00 ff ff 7f 77 34 8d 44 3f 08 3d 00 04 00 00 77 13 e8 6b 0c 00 00 8b c4 3b c3 74 1c c7 00 cc cc 00 ...w4.D?.=....w..k.....;.t......
9d20 00 eb 11 50 e8 f9 8f ff ff 59 3b c3 74 09 c7 00 dd dd 00 00 83 c0 08 8b d8 85 db 74 69 8d 04 3f ...P.....Y;.t..............ti..?
9d40 50 6a 00 53 e8 b7 e5 ff ff 83 c4 0c 57 53 ff 75 10 ff 75 0c 6a 01 ff 75 18 ff d6 85 c0 74 11 ff Pj.S........WS.u..u.j..u.....t..
9d60 75 14 50 53 ff 75 08 ff 15 08 c0 40 00 89 45 f8 53 e8 cf ef ff ff 8b 45 f8 59 eb 75 33 f6 39 5d u.PS.u.....@..E.S......E.Y.u3.9]
9d80 1c 75 08 8b 07 8b 40 14 89 45 1c 39 5d 18 75 08 8b 07 8b 40 04 89 45 18 ff 75 1c e8 58 0c 00 00 .u....@..E.9].u....@..E..u..X...
9da0 59 83 f8 ff 75 04 33 c0 eb 47 3b 45 18 74 1e 53 53 8d 4d 10 51 ff 75 0c 50 ff 75 18 e8 80 0c 00 Y...u.3..G;E.t.SS.M.Q.u.P.u.....
9dc0 00 8b f0 83 c4 18 3b f3 74 dc 89 75 0c ff 75 14 ff 75 10 ff 75 0c ff 75 08 ff 75 1c ff 15 0c c0 ......;.t..u..u..u..u..u..u.....
9de0 40 00 8b f8 3b f3 74 07 56 e8 57 8e ff ff 59 8b c7 8d 65 ec 5f 5e 5b 8b 4d fc 33 cd e8 66 85 ff @...;.t.V.W...Y...e._^[.M.3..f..
9e00 ff c9 c3 8b ff 55 8b ec 83 ec 10 ff 75 08 8d 4d f0 e8 c0 98 ff ff ff 75 24 8d 4d f0 ff 75 20 ff .....U......u..M.......u$.M..u..
9e20 75 1c ff 75 18 ff 75 14 ff 75 10 ff 75 0c e8 16 fe ff ff 83 c4 1c 80 7d fc 00 74 07 8b 4d f8 83 u..u..u..u..u..........}..t..M..
9e40 61 70 fd c9 c3 8b ff 55 8b ec 56 8b 75 08 85 f6 0f 84 81 01 00 00 ff 76 04 e8 e7 8d ff ff ff 76 ap.....U..V.u..........v.......v
9e60 08 e8 df 8d ff ff ff 76 0c e8 d7 8d ff ff ff 76 10 e8 cf 8d ff ff ff 76 14 e8 c7 8d ff ff ff 76 .......v.......v.......v.......v
9e80 18 e8 bf 8d ff ff ff 36 e8 b8 8d ff ff ff 76 20 e8 b0 8d ff ff ff 76 24 e8 a8 8d ff ff ff 76 28 .......6......v.......v$......v(
9ea0 e8 a0 8d ff ff ff 76 2c e8 98 8d ff ff ff 76 30 e8 90 8d ff ff ff 76 34 e8 88 8d ff ff ff 76 1c ......v,......v0......v4......v.
9ec0 e8 80 8d ff ff ff 76 38 e8 78 8d ff ff ff 76 3c e8 70 8d ff ff 83 c4 40 ff 76 40 e8 65 8d ff ff ......v8.x....v<.p.....@.v@.e...
9ee0 ff 76 44 e8 5d 8d ff ff ff 76 48 e8 55 8d ff ff ff 76 4c e8 4d 8d ff ff ff 76 50 e8 45 8d ff ff .vD.]....vH.U....vL.M....vP.E...
9f00 ff 76 54 e8 3d 8d ff ff ff 76 58 e8 35 8d ff ff ff 76 5c e8 2d 8d ff ff ff 76 60 e8 25 8d ff ff .vT.=....vX.5....v\.-....v`.%...
9f20 ff 76 64 e8 1d 8d ff ff ff 76 68 e8 15 8d ff ff ff 76 6c e8 0d 8d ff ff ff 76 70 e8 05 8d ff ff .vd......vh......vl......vp.....
9f40 ff 76 74 e8 fd 8c ff ff ff 76 78 e8 f5 8c ff ff ff 76 7c e8 ed 8c ff ff 83 c4 40 ff b6 80 00 00 .vt......vx......v|.......@.....
9f60 00 e8 df 8c ff ff ff b6 84 00 00 00 e8 d4 8c ff ff ff b6 88 00 00 00 e8 c9 8c ff ff ff b6 8c 00 ................................
9f80 00 00 e8 be 8c ff ff ff b6 90 00 00 00 e8 b3 8c ff ff ff b6 94 00 00 00 e8 a8 8c ff ff ff b6 98 ................................
9fa0 00 00 00 e8 9d 8c ff ff ff b6 9c 00 00 00 e8 92 8c ff ff ff b6 a0 00 00 00 e8 87 8c ff ff ff b6 ................................
9fc0 a4 00 00 00 e8 7c 8c ff ff ff b6 a8 00 00 00 e8 71 8c ff ff 83 c4 2c 5e 5d c3 8b ff 55 8b ec 56 .....|..........q.....,^]...U..V
9fe0 8b 75 08 85 f6 74 35 8b 06 3b 05 78 ad 41 00 74 07 50 e8 4e 8c ff ff 59 8b 46 04 3b 05 7c ad 41 .u...t5..;.x.A.t.P.N...Y.F.;.|.A
a000 00 74 07 50 e8 3c 8c ff ff 59 8b 76 08 3b 35 80 ad 41 00 74 07 56 e8 2a 8c ff ff 59 5e 5d c3 8b .t.P.<...Y.v.;5..A.t.V.*...Y^]..
a020 ff 55 8b ec 56 8b 75 08 85 f6 74 7e 8b 46 0c 3b 05 84 ad 41 00 74 07 50 e8 08 8c ff ff 59 8b 46 .U..V.u...t~.F.;...A.t.P.....Y.F
a040 10 3b 05 88 ad 41 00 74 07 50 e8 f6 8b ff ff 59 8b 46 14 3b 05 8c ad 41 00 74 07 50 e8 e4 8b ff .;...A.t.P.....Y.F.;...A.t.P....
a060 ff 59 8b 46 18 3b 05 90 ad 41 00 74 07 50 e8 d2 8b ff ff 59 8b 46 1c 3b 05 94 ad 41 00 74 07 50 .Y.F.;...A.t.P.....Y.F.;...A.t.P
a080 e8 c0 8b ff ff 59 8b 46 20 3b 05 98 ad 41 00 74 07 50 e8 ae 8b ff ff 59 8b 76 24 3b 35 9c ad 41 .....Y.F.;...A.t.P.....Y.v$;5..A
a0a0 00 74 07 56 e8 9c 8b ff ff 59 5e 5d c3 cc cc cc 55 8b ec 56 33 c0 50 50 50 50 50 50 50 50 8b 55 .t.V.....Y^]....U..V3.PPPPPPPP.U
a0c0 0c 8d 49 00 8a 02 0a c0 74 09 83 c2 01 0f ab 04 24 eb f1 8b 75 08 83 c9 ff 8d 49 00 83 c1 01 8a ..I.....t.......$...u.....I.....
a0e0 06 0a c0 74 09 83 c6 01 0f a3 04 24 73 ee 8b c1 83 c4 20 5e c9 c3 cc cc cc cc cc cc cc cc cc cc ...t.......$s......^............
a100 8b 54 24 04 8b 4c 24 08 f7 c2 03 00 00 00 75 3c 8b 02 3a 01 75 2e 0a c0 74 26 3a 61 01 75 25 0a .T$..L$.......u<..:.u...t&:a.u%.
a120 e4 74 1d c1 e8 10 3a 41 02 75 19 0a c0 74 11 3a 61 03 75 10 83 c1 04 83 c2 04 0a e4 75 d2 8b ff .t....:A.u...t.:a.u.........u...
a140 33 c0 c3 90 1b c0 d1 e0 83 c0 01 c3 f7 c2 01 00 00 00 74 18 8a 02 83 c2 01 3a 01 75 e7 83 c1 01 3.................t......:.u....
a160 0a c0 74 dc f7 c2 02 00 00 00 74 a4 66 8b 02 83 c2 02 3a 01 75 ce 0a c0 74 c6 3a 61 01 75 c5 0a ..t.......t.f.....:.u...t.:a.u..
a180 e4 74 bd 83 c1 02 eb 88 cc cc cc cc cc cc cc cc 55 8b ec 56 33 c0 50 50 50 50 50 50 50 50 8b 55 .t..............U..V3.PPPPPPPP.U
a1a0 0c 8d 49 00 8a 02 0a c0 74 09 83 c2 01 0f ab 04 24 eb f1 8b 75 08 8b ff 8a 06 0a c0 74 0c 83 c6 ..I.....t.......$...u.......t...
a1c0 01 0f a3 04 24 73 f1 8d 46 ff 83 c4 20 5e c9 c3 8b ff 55 8b ec ff 05 80 da 42 00 68 00 10 00 00 ....$s..F....^....U......B.h....
a1e0 e8 61 8f ff ff 59 8b 4d 08 89 41 08 85 c0 74 0d 83 49 0c 08 c7 41 18 00 10 00 00 eb 11 83 49 0c .a...Y.M..A...t..I...A........I.
a200 04 8d 41 14 89 41 08 c7 41 18 02 00 00 00 8b 41 08 83 61 04 00 89 01 5d c3 55 8b ec 83 ec 04 89 ..A..A..A......A..a....].U......
a220 7d fc 8b 7d 08 8b 4d 0c c1 e9 07 66 0f ef c0 eb 08 8d a4 24 00 00 00 00 90 66 0f 7f 07 66 0f 7f }..}..M....f.......$.....f...f..
a240 47 10 66 0f 7f 47 20 66 0f 7f 47 30 66 0f 7f 47 40 66 0f 7f 47 50 66 0f 7f 47 60 66 0f 7f 47 70 G.f..G.f..G0f..G@f..GPf..G`f..Gp
a260 8d bf 80 00 00 00 49 75 d0 8b 7d fc 8b e5 5d c3 55 8b ec 83 ec 10 89 7d fc 8b 45 08 99 8b f8 33 ......Iu..}...].U......}..E....3
a280 fa 2b fa 83 e7 0f 33 fa 2b fa 85 ff 75 3c 8b 4d 10 8b d1 83 e2 7f 89 55 f4 3b ca 74 12 2b ca 51 .+....3.+...u<.M.......U.;.t.+.Q
a2a0 50 e8 73 ff ff ff 83 c4 08 8b 45 08 8b 55 f4 85 d2 74 45 03 45 10 2b c2 89 45 f8 33 c0 8b 7d f8 P.s.......E..U...tE.E.+..E.3..}.
a2c0 8b 4d f4 f3 aa 8b 45 08 eb 2e f7 df 83 c7 10 89 7d f0 33 c0 8b 7d 08 8b 4d f0 f3 aa 8b 45 f0 8b .M....E.........}.3..}..M....E..
a2e0 4d 08 8b 55 10 03 c8 2b d0 52 6a 00 51 e8 7e ff ff ff 83 c4 0c 8b 45 08 8b 7d fc 8b e5 5d c3 6a M..U...+.Rj.Q.~.......E..}...].j
a300 0c 68 18 89 41 00 e8 ad a2 ff ff 83 65 fc 00 66 0f 28 c1 c7 45 e4 01 00 00 00 eb 23 8b 45 ec 8b .h..A.......e..f.(..E......#.E..
a320 00 8b 00 3d 05 00 00 c0 74 0a 3d 1d 00 00 c0 74 03 33 c0 c3 33 c0 40 c3 8b 65 e8 83 65 e4 00 c7 ...=....t.=....t.3..3.@..e..e...
a340 45 fc fe ff ff ff 8b 45 e4 e8 af a2 ff ff c3 8b ff 55 8b ec 83 ec 18 33 c0 53 89 45 fc 89 45 f4 E......E.........U.....3.S.E..E.
a360 89 45 f8 53 9c 58 8b c8 35 00 00 20 00 50 9d 9c 5a 2b d1 74 1f 51 9d 33 c0 0f a2 89 45 f4 89 5d .E.S.X..5....P..Z+.t.Q.3....E..]
a380 e8 89 55 ec 89 4d f0 b8 01 00 00 00 0f a2 89 55 fc 89 45 f8 5b f7 45 fc 00 00 00 04 74 0e e8 5c ..U..M.........U..E.[.E.....t..\
a3a0 ff ff ff 85 c0 74 05 33 c0 40 eb 02 33 c0 5b c9 c3 e8 99 ff ff ff a3 e0 e4 42 00 33 c0 c3 cc cc .....t.3.@..3.[..........B.3....
a3c0 55 8b ec 53 56 57 55 6a 00 6a 00 68 d8 af 40 00 ff 75 08 e8 b6 09 00 00 5d 5f 5e 5b 8b e5 5d c3 U..SVWUj.j.h..@..u......]_^[..].
a3e0 8b 4c 24 04 f7 41 04 06 00 00 00 b8 01 00 00 00 74 32 8b 44 24 14 8b 48 fc 33 c8 e8 67 7f ff ff .L$..A..........t2.D$..H.3..g...
a400 55 8b 68 10 8b 50 28 52 8b 50 24 52 e8 14 00 00 00 83 c4 08 5d 8b 44 24 08 8b 54 24 10 89 02 b8 U.h..P(R.P$R........].D$..T$....
a420 03 00 00 00 c3 53 56 57 8b 44 24 10 55 50 6a fe 68 e0 af 40 00 64 ff 35 00 00 00 00 a1 90 a2 41 .....SVW.D$.UPj.h..@.d.5.......A
a440 00 33 c4 50 8d 44 24 04 64 a3 00 00 00 00 8b 44 24 28 8b 58 08 8b 70 0c 83 fe ff 74 3a 83 7c 24 .3.P.D$.d......D$(.X..p....t:.|$
a460 2c ff 74 06 3b 74 24 2c 76 2d 8d 34 76 8b 0c b3 89 4c 24 0c 89 48 0c 83 7c b3 04 00 75 17 68 01 ,.t.;t$,v-.4v....L$..H..|...u.h.
a480 01 00 00 8b 44 b3 08 e8 49 00 00 00 8b 44 b3 08 e8 5f 00 00 00 eb b7 8b 4c 24 04 64 89 0d 00 00 ....D...I....D..._......L$.d....
a4a0 00 00 83 c4 18 5f 5e 5b c3 33 c0 64 8b 0d 00 00 00 00 81 79 04 e0 af 40 00 75 10 8b 51 0c 8b 52 ....._^[.3.d.......y...@.u..Q..R
a4c0 0c 39 51 08 75 05 b8 01 00 00 00 c3 53 51 bb c0 ad 41 00 eb 0b 53 51 bb c0 ad 41 00 8b 4c 24 0c .9Q.u.......SQ...A...SQ...A..L$.
a4e0 89 4b 08 89 43 04 89 6b 0c 55 51 50 58 59 5d 59 5b c2 04 00 ff d0 c3 8b ff 55 8b ec 83 ec 14 56 .K..C..k.UQPXY]Y[........U.....V
a500 57 ff 75 08 8d 4d ec e8 ca 91 ff ff 8b 45 10 8b 75 0c 33 ff 3b c7 74 02 89 30 3b f7 75 2c e8 49 W.u..M.......E..u.3.;.t..0;.u,.I
a520 a0 ff ff 57 57 57 57 57 c7 00 16 00 00 00 e8 d1 9f ff ff 83 c4 14 80 7d f8 00 74 07 8b 45 f4 83 ...WWWWW...............}..t..E..
a540 60 70 fd 33 c0 e9 d8 01 00 00 39 7d 14 74 0c 83 7d 14 02 7c c9 83 7d 14 24 7f c3 8b 4d ec 53 8a `p.3......9}.t..}..|..}.$...M.S.
a560 1e 89 7d fc 8d 7e 01 83 b9 ac 00 00 00 01 7e 17 8d 45 ec 50 0f b6 c3 6a 08 50 e8 3c 03 00 00 8b ..}..~........~..E.P...j.P.<....
a580 4d ec 83 c4 0c eb 10 8b 91 c8 00 00 00 0f b6 c3 0f b7 04 42 83 e0 08 85 c0 74 05 8a 1f 47 eb c7 M..................B.....t...G..
a5a0 80 fb 2d 75 06 83 4d 18 02 eb 05 80 fb 2b 75 03 8a 1f 47 8b 45 14 85 c0 0f 8c 4b 01 00 00 83 f8 ..-u..M......+u...G.E.....K.....
a5c0 01 0f 84 42 01 00 00 83 f8 24 0f 8f 39 01 00 00 85 c0 75 2a 80 fb 30 74 09 c7 45 14 0a 00 00 00 ...B.....$..9.....u*..0t..E.....
a5e0 eb 34 8a 07 3c 78 74 0d 3c 58 74 09 c7 45 14 08 00 00 00 eb 21 c7 45 14 10 00 00 00 eb 0a 83 f8 .4..<xt.<Xt..E......!.E.........
a600 10 75 13 80 fb 30 75 0e 8a 07 3c 78 74 04 3c 58 75 04 47 8a 1f 47 8b b1 c8 00 00 00 b8 ff ff ff .u...0u...<xt.<Xu.G..G..........
a620 ff 33 d2 f7 75 14 0f b6 cb 0f b7 0c 4e f6 c1 04 74 08 0f be cb 83 e9 30 eb 1b f7 c1 03 01 00 00 .3..u.......N...t......0........
a640 74 31 8a cb 80 e9 61 80 f9 19 0f be cb 77 03 83 e9 20 83 c1 c9 3b 4d 14 73 19 83 4d 18 08 39 45 t1....a......w.......;M.s..M..9E
a660 fc 72 27 75 04 3b ca 76 21 83 4d 18 04 83 7d 10 00 75 23 8b 45 18 4f a8 08 75 20 83 7d 10 00 74 .r'u.;.v!.M...}..u#.E.O..u..}..t
a680 03 8b 7d 0c 83 65 fc 00 eb 5b 8b 5d fc 0f af 5d 14 03 d9 89 5d fc 8a 1f 47 eb 8b be ff ff ff 7f ..}..e...[.]...]....]...G.......
a6a0 a8 04 75 1b a8 01 75 3d 83 e0 02 74 09 81 7d fc 00 00 00 80 77 09 85 c0 75 2b 39 75 fc 76 26 e8 ..u...u=...t..}.....w...u+9u.v&.
a6c0 a8 9e ff ff f6 45 18 01 c7 00 22 00 00 00 74 06 83 4d fc ff eb 0f f6 45 18 02 6a 00 58 0f 95 c0 .....E...."...t..M.....E..j.X...
a6e0 03 c6 89 45 fc 8b 45 10 85 c0 74 02 89 38 f6 45 18 02 74 03 f7 5d fc 80 7d f8 00 74 07 8b 45 f4 ...E..E...t..8.E..t..]..}..t..E.
a700 83 60 70 fd 8b 45 fc eb 18 8b 45 10 85 c0 74 02 89 30 80 7d f8 00 74 07 8b 45 f4 83 60 70 fd 33 .`p..E....E...t..0.}..t..E..`p.3
a720 c0 5b 5f 5e c9 c3 8b ff 55 8b ec 33 c0 50 ff 75 10 ff 75 0c ff 75 08 39 05 dc e3 42 00 75 07 68 .[_^....U..3.P.u..u..u.9...B.u.h
a740 80 ac 41 00 eb 01 50 e8 ab fd ff ff 83 c4 14 5d c3 55 8b ec 83 ec 08 89 7d fc 89 75 f8 8b 75 0c ..A...P........].U......}..u..u.
a760 8b 7d 08 8b 4d 10 c1 e9 07 eb 06 8d 9b 00 00 00 00 66 0f 6f 06 66 0f 6f 4e 10 66 0f 6f 56 20 66 .}..M............f.o.f.oN.f.oV.f
a780 0f 6f 5e 30 66 0f 7f 07 66 0f 7f 4f 10 66 0f 7f 57 20 66 0f 7f 5f 30 66 0f 6f 66 40 66 0f 6f 6e .o^0f...f..O.f..W.f.._0f.of@f.on
a7a0 50 66 0f 6f 76 60 66 0f 6f 7e 70 66 0f 7f 67 40 66 0f 7f 6f 50 66 0f 7f 77 60 66 0f 7f 7f 70 8d Pf.ov`f.o~pf..g@f..oPf..w`f...p.
a7c0 b6 80 00 00 00 8d bf 80 00 00 00 49 75 a3 8b 75 f8 8b 7d fc 8b e5 5d c3 55 8b ec 83 ec 1c 89 7d ...........Iu..u..}...].U......}
a7e0 f4 89 75 f8 89 5d fc 8b 5d 0c 8b c3 99 8b c8 8b 45 08 33 ca 2b ca 83 e1 0f 33 ca 2b ca 99 8b f8 ..u..]..].......E.3.+....3.+....
a800 33 fa 2b fa 83 e7 0f 33 fa 2b fa 8b d1 0b d7 75 4a 8b 75 10 8b ce 83 e1 7f 89 4d e8 3b f1 74 13 3.+....3.+.....uJ.u.......M.;.t.
a820 2b f1 56 53 50 e8 27 ff ff ff 83 c4 0c 8b 45 08 8b 4d e8 85 c9 74 77 8b 5d 10 8b 55 0c 03 d3 2b +.VSP.'.......E..M...tw.]..U...+
a840 d1 89 55 ec 03 d8 2b d9 89 5d f0 8b 75 ec 8b 7d f0 8b 4d e8 f3 a4 8b 45 08 eb 53 3b cf 75 35 f7 ..U...+..]..u..}..M....E..S;.u5.
a860 d9 83 c1 10 89 4d e4 8b 75 0c 8b 7d 08 8b 4d e4 f3 a4 8b 4d 08 03 4d e4 8b 55 0c 03 55 e4 8b 45 .....M..u..}..M....M..M..U..U..E
a880 10 2b 45 e4 50 52 51 e8 4c ff ff ff 83 c4 0c 8b 45 08 eb 1a 8b 75 0c 8b 7d 08 8b 4d 10 8b d1 c1 .+E.PRQ.L.......E....u..}..M....
a8a0 e9 02 f3 a5 8b ca 83 e1 03 f3 a4 8b 45 08 8b 5d fc 8b 75 f8 8b 7d f4 8b e5 5d c3 8b ff 55 8b ec ............E..]..u..}...]...U..
a8c0 83 ec 18 53 ff 75 10 8d 4d e8 e8 07 8e ff ff 8b 5d 08 8d 43 01 3d 00 01 00 00 77 0f 8b 45 e8 8b ...S.u..M.......]..C.=....w..E..
a8e0 80 c8 00 00 00 0f b7 04 58 eb 75 89 5d 08 c1 7d 08 08 8d 45 e8 50 8b 45 08 25 ff 00 00 00 50 e8 ........X.u.]..}...E.P.E.%....P.
a900 10 d9 ff ff 59 59 85 c0 74 12 8a 45 08 6a 02 88 45 f8 88 5d f9 c6 45 fa 00 59 eb 0a 33 c9 88 5d ....YY..t..E.j..E..]..E..Y..3..]
a920 f8 c6 45 f9 00 41 8b 45 e8 6a 01 ff 70 14 ff 70 04 8d 45 fc 50 51 8d 45 f8 50 8d 45 e8 6a 01 50 ..E..A.E.j..p..p..E.PQ.E.P.E.j.P
a940 e8 be f4 ff ff 83 c4 20 85 c0 75 10 38 45 f4 74 07 8b 45 f0 83 60 70 fd 33 c0 eb 14 0f b7 45 fc ..........u.8E.t..E..`p.3.....E.
a960 23 45 0c 80 7d f4 00 74 07 8b 4d f0 83 61 70 fd 5b c9 c3 cc cc cc cc cc cc cc cc cc cc cc cc cc #E..}..t..M..ap.[...............
a980 51 8d 4c 24 08 2b c8 83 e1 0f 03 c1 1b c9 0b c1 59 e9 da ec ff ff 51 8d 4c 24 08 2b c8 83 e1 07 Q.L$.+..........Y.....Q.L$.+....
a9a0 03 c1 1b c9 0b c1 59 e9 c4 ec ff ff 33 c0 50 50 6a 03 50 6a 03 68 00 00 00 40 68 d4 d3 40 00 ff ......Y.....3.PPj.Pj.h...@h..@..
a9c0 15 04 c0 40 00 a3 d4 ad 41 00 c3 a1 d4 ad 41 00 56 8b 35 ec c0 40 00 83 f8 ff 74 08 83 f8 fe 74 ...@....A.....A.V.5..@....t....t
a9e0 03 50 ff d6 a1 d0 ad 41 00 83 f8 ff 74 08 83 f8 fe 74 03 50 ff d6 5e c3 8b ff 55 8b ec 83 ec 0c .P.....A....t....t.P..^...U.....
aa00 a1 90 a2 41 00 33 c5 89 45 fc 6a 06 8d 45 f4 50 68 04 10 00 00 ff 75 08 c6 45 fa 00 ff 15 e8 c0 ...A.3..E.j..E.Ph.....u..E......
aa20 40 00 85 c0 75 05 83 c8 ff eb 0a 8d 45 f4 50 e8 c1 01 00 00 59 8b 4d fc 33 cd e8 28 79 ff ff c9 @...u.......E.P.....Y.M.3..(y...
aa40 c3 8b ff 55 8b ec 83 ec 34 a1 90 a2 41 00 33 c5 89 45 fc 8b 45 10 8b 4d 18 89 45 d8 8b 45 14 53 ...U....4...A.3..E..E..M..E..E.S
aa60 89 45 d0 8b 00 56 89 45 dc 8b 45 08 57 33 ff 89 4d cc 89 7d e0 89 7d d4 3b 45 0c 0f 84 5f 01 00 .E...V.E..E.W3..M..}..}.;E..._..
aa80 00 8b 35 00 c0 40 00 8d 4d e8 51 50 ff d6 8b 1d fc c0 40 00 85 c0 74 5e 83 7d e8 01 75 58 8d 45 ..5..@..M.QP......@...t^.}..uX.E
aaa0 e8 50 ff 75 0c ff d6 85 c0 74 4b 83 7d e8 01 75 45 8b 75 dc c7 45 d4 01 00 00 00 83 fe ff 75 0c .P.u.....tK.}..uE.u..E........u.
aac0 ff 75 d8 e8 38 d5 ff ff 8b f0 59 46 3b f7 7e 5b 81 fe f0 ff ff 7f 77 53 8d 44 36 08 3d 00 04 00 .u..8.....YF;.~[......wS.D6.=...
aae0 00 77 2f e8 98 fe ff ff 8b c4 3b c7 74 38 c7 00 cc cc 00 00 eb 2d 57 57 ff 75 dc ff 75 d8 6a 01 .w/.......;.t8.......-WW.u..u.j.
ab00 ff 75 08 ff d3 8b f0 3b f7 75 c3 33 c0 e9 d1 00 00 00 50 e8 0a 82 ff ff 59 3b c7 74 09 c7 00 dd .u.....;.u.3......P.....Y;.t....
ab20 dd 00 00 83 c0 08 89 45 e4 eb 03 89 7d e4 39 7d e4 74 d8 8d 04 36 50 57 ff 75 e4 e8 c0 d7 ff ff .......E....}.9}.t...6PW.u......
ab40 83 c4 0c 56 ff 75 e4 ff 75 dc ff 75 d8 6a 01 ff 75 08 ff d3 85 c0 74 7f 8b 5d cc 3b df 74 1d 57 ...V.u..u..u.j..u.....t..].;.t.W
ab60 57 ff 75 1c 53 56 ff 75 e4 57 ff 75 0c ff 15 9c c0 40 00 85 c0 74 60 89 5d e0 eb 5b 8b 1d 9c c0 W.u.SV.u.W.u.....@...t`.]..[....
ab80 40 00 39 7d d4 75 14 57 57 57 57 56 ff 75 e4 57 ff 75 0c ff d3 8b f0 3b f7 74 3c 56 6a 01 e8 e8 @.9}.u.WWWWV.u.W.u.....;.t<Vj...
aba0 85 ff ff 59 59 89 45 e0 3b c7 74 2b 57 57 56 50 56 ff 75 e4 57 ff 75 0c ff d3 3b c7 75 0e ff 75 ...YY.E.;.t+WWVPV.u.W.u...;.u..u
abc0 e0 e8 7f 80 ff ff 59 89 7d e0 eb 0b 83 7d dc ff 74 05 8b 4d d0 89 01 ff 75 e4 e8 66 e1 ff ff 59 ......Y.}....}..t..M....u..f...Y
abe0 8b 45 e0 8d 65 c0 5f 5e 5b 8b 4d fc 33 cd e8 74 77 ff ff c9 c3 8b ff 55 8b ec 6a 0a 6a 00 ff 75 .E..e._^[.M.3..tw......U..j.j..u
ac00 08 e8 20 fb ff ff 83 c4 0c 5d c3 cc cc cc cc cc 55 8b ec 57 56 53 8b 4d 10 0b c9 74 4d 8b 75 08 .........]......U..WVS.M...tM.u.
ac20 8b 7d 0c b7 41 b3 5a b6 20 8d 49 00 8a 26 0a e4 8a 07 74 27 0a c0 74 23 83 c6 01 83 c7 01 3a e7 .}..A.Z...I..&....t'..t#......:.
ac40 72 06 3a e3 77 02 02 e6 3a c7 72 06 3a c3 77 02 02 c6 3a e0 75 0b 83 e9 01 75 d1 33 c9 3a e0 74 r.:.w...:.r.:.w...:.u....u.3.:.t
ac60 09 b9 ff ff ff ff 72 02 f7 d9 8b c1 5b 5e 5f c9 c3 cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc ......r.....[^_.................
ac80 8b 44 24 08 8b 4c 24 10 0b c8 8b 4c 24 0c 75 09 8b 44 24 04 f7 e1 c2 10 00 53 f7 e1 8b d8 8b 44 .D$..L$....L$.u..D$......S.....D
aca0 24 08 f7 64 24 14 03 d8 8b 44 24 08 f7 e1 03 d3 5b c2 10 00 cc cc cc cc cc cc cc cc cc cc cc cc $..d$....D$.....[...............
acc0 8d 42 ff 5b c3 8d a4 24 00 00 00 00 8d 64 24 00 33 c0 8a 44 24 08 53 8b d8 c1 e0 08 8b 54 24 08 .B.[...$.....d$.3..D$.S......T$.
ace0 f7 c2 03 00 00 00 74 15 8a 0a 83 c2 01 3a cb 74 cf 84 c9 74 51 f7 c2 03 00 00 00 75 eb 0b d8 57 ......t......:.t...tQ......u...W
ad00 8b c3 c1 e3 10 56 0b d8 8b 0a bf ff fe fe 7e 8b c1 8b f7 33 cb 03 f0 03 f9 83 f1 ff 83 f0 ff 33 .....V........~....3...........3
ad20 cf 33 c6 83 c2 04 81 e1 00 01 01 81 75 1c 25 00 01 01 81 74 d3 25 00 01 01 01 75 08 81 e6 00 00 .3..........u.%....t.%....u.....
ad40 00 80 75 c4 5e 5f 5b 33 c0 c3 8b 42 fc 3a c3 74 36 84 c0 74 ef 3a e3 74 27 84 e4 74 e7 c1 e8 10 ..u.^_[3...B.:.t6..t.:.t'..t....
ad60 3a c3 74 15 84 c0 74 dc 3a e3 74 06 84 e4 74 d4 eb 96 5e 5f 8d 42 ff 5b c3 8d 42 fe 5e 5f 5b c3 :.t...t.:.t...t...^_.B.[..B.^_[.
ad80 8d 42 fd 5e 5f 5b c3 8d 42 fc 5e 5f 5b c3 ff 25 e0 c0 40 00 00 00 00 00 00 00 00 00 00 00 00 00 .B.^_[..B.^_[..%..@.............
ada0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
adc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ade0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ae00 a0 8f 01 00 be 90 01 00 ac 90 01 00 9a 90 01 00 02 8c 01 00 1a 8c 01 00 32 8c 01 00 46 8c 01 00 ........................2...F...
ae20 4e 8c 01 00 60 8c 01 00 6e 8c 01 00 80 8c 01 00 90 8c 01 00 9c 8c 01 00 a8 8c 01 00 bc 8c 01 00 N...`...n.......................
ae40 d0 8c 01 00 ec 8c 01 00 0a 8d 01 00 1e 8d 01 00 30 8d 01 00 40 8d 01 00 4e 8d 01 00 60 8d 01 00 ................0...@...N...`...
ae60 78 8d 01 00 86 8d 01 00 92 8d 01 00 a0 8d 01 00 aa 8d 01 00 c2 8d 01 00 d2 8d 01 00 e8 8d 01 00 x...............................
ae80 00 8e 01 00 0c 8e 01 00 22 8e 01 00 32 8e 01 00 5a 8e 01 00 74 8e 01 00 8c 8e 01 00 a6 8e 01 00 ........"...2...Z...t...........
aea0 bc 8e 01 00 d6 8e 01 00 e4 8e 01 00 f2 8e 01 00 0c 8f 01 00 1c 8f 01 00 32 8f 01 00 4c 8f 01 00 ........................2...L...
aec0 5c 8f 01 00 6a 8f 01 00 7a 8f 01 00 8c 8f 01 00 8a 90 01 00 ac 8f 01 00 b6 8f 01 00 c2 8f 01 00 \...j...z.......................
aee0 d4 8f 01 00 e0 8f 01 00 ec 8f 01 00 fe 8f 01 00 0c 90 01 00 1c 90 01 00 32 90 01 00 42 90 01 00 ........................2...B...
af00 58 90 01 00 6a 90 01 00 7a 90 01 00 00 00 00 00 ea 8b 01 00 dc 8b 01 00 ce 8b 01 00 be 8b 01 00 X...j...z.......................
af20 ae 8b 01 00 9e 8b 01 00 8c 8b 01 00 7e 8b 01 00 6e 8b 01 00 5e 8b 01 00 4c 8b 01 00 3c 8b 01 00 ............~...n...^...L...<...
af40 da 90 01 00 e8 90 01 00 fc 90 01 00 0c 91 01 00 18 91 01 00 2a 91 01 00 3e 91 01 00 4a 91 01 00 ....................*...>...J...
af60 58 91 01 00 6c 91 01 00 7a 91 01 00 88 91 01 00 92 91 01 00 a6 91 01 00 b4 91 01 00 c2 91 01 00 X...l...z.......................
af80 d4 91 01 00 e6 91 01 00 f2 91 01 00 00 92 01 00 18 92 01 00 2a 92 01 00 3c 92 01 00 4c 92 01 00 ....................*...<...L...
afa0 5c 92 01 00 6c 92 01 00 78 92 01 00 88 92 01 00 96 92 01 00 a8 92 01 00 ba 92 01 00 ca 92 01 00 \...l...x.......................
afc0 d8 92 01 00 e6 92 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7e 2f 40 00 e7 5b 40 00 ........................~/@..[@.
afe0 3f 87 40 00 b1 af 40 00 f0 62 40 00 00 00 00 00 00 00 00 00 cb b5 40 00 2f 30 40 00 00 00 00 00 ?.@...@..b@...........@./0@.....
b000 00 00 00 00 00 00 00 00 43 6f 72 45 78 69 74 50 72 6f 63 65 73 73 00 00 6d 00 73 00 63 00 6f 00 ........CorExitProcess..m.s.c.o.
b020 72 00 65 00 65 00 2e 00 64 00 6c 00 6c 00 00 00 c8 da 42 00 20 db 42 00 28 00 6e 00 75 00 6c 00 r.e.e...d.l.l.....B...B.(.n.u.l.
b040 6c 00 29 00 00 00 00 00 28 6e 75 6c 6c 29 00 00 06 00 00 06 00 01 00 00 10 00 03 06 00 06 02 10 l.).....(null)..................
b060 04 45 45 45 05 05 05 05 05 35 30 00 50 00 00 00 00 28 20 38 50 58 07 08 00 37 30 30 57 50 07 00 .EEE.....50.P....(.8PX...700WP..
b080 00 20 20 08 00 00 00 00 08 60 68 60 60 60 60 00 00 78 70 78 78 78 78 08 07 08 00 00 07 00 08 08 .........`h````..xpxxxx.........
b0a0 08 00 00 08 00 08 00 07 08 00 00 00 45 6e 63 6f 64 65 50 6f 69 6e 74 65 72 00 00 00 4b 00 45 00 ............EncodePointer...K.E.
b0c0 52 00 4e 00 45 00 4c 00 33 00 32 00 2e 00 44 00 4c 00 4c 00 00 00 00 00 44 65 63 6f 64 65 50 6f R.N.E.L.3.2...D.L.L.....DecodePo
b0e0 69 6e 74 65 72 00 00 00 46 6c 73 46 72 65 65 00 46 6c 73 53 65 74 56 61 6c 75 65 00 46 6c 73 47 inter...FlsFree.FlsSetValue.FlsG
b100 65 74 56 61 6c 75 65 00 46 6c 73 41 6c 6c 6f 63 00 00 00 00 72 75 6e 74 69 6d 65 20 65 72 72 6f etValue.FlsAlloc....runtime.erro
b120 72 20 00 00 0d 0a 00 00 54 4c 4f 53 53 20 65 72 72 6f 72 0d 0a 00 00 00 53 49 4e 47 20 65 72 72 r.......TLOSS.error.....SING.err
b140 6f 72 0d 0a 00 00 00 00 44 4f 4d 41 49 4e 20 65 72 72 6f 72 0d 0a 00 00 52 36 30 33 34 0d 0a 41 or......DOMAIN.error....R6034..A
b160 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 68 61 73 20 6d 61 64 65 20 61 6e 20 61 74 74 65 6d 70 n.application.has.made.an.attemp
b180 74 20 74 6f 20 6c 6f 61 64 20 74 68 65 20 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 t.to.load.the.C.runtime.library.
b1a0 69 6e 63 6f 72 72 65 63 74 6c 79 2e 0a 50 6c 65 61 73 65 20 63 6f 6e 74 61 63 74 20 74 68 65 20 incorrectly..Please.contact.the.
b1c0 61 70 70 6c 69 63 61 74 69 6f 6e 27 73 20 73 75 70 70 6f 72 74 20 74 65 61 6d 20 66 6f 72 20 6d application's.support.team.for.m
b1e0 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0d 0a 00 00 00 00 00 00 52 36 30 33 33 0d 0a 2d ore.information.........R6033..-
b200 20 41 74 74 65 6d 70 74 20 74 6f 20 75 73 65 20 4d 53 49 4c 20 63 6f 64 65 20 66 72 6f 6d 20 74 .Attempt.to.use.MSIL.code.from.t
b220 68 69 73 20 61 73 73 65 6d 62 6c 79 20 64 75 72 69 6e 67 20 6e 61 74 69 76 65 20 63 6f 64 65 20 his.assembly.during.native.code.
b240 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 0a 54 68 69 73 20 69 6e 64 69 63 61 74 65 73 20 61 20 initialization.This.indicates.a.
b260 62 75 67 20 69 6e 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 20 49 74 20 69 73 20 6d bug.in.your.application..It.is.m
b280 6f 73 74 20 6c 69 6b 65 6c 79 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 63 61 6c 6c 69 6e 67 ost.likely.the.result.of.calling
b2a0 20 61 6e 20 4d 53 49 4c 2d 63 6f 6d 70 69 6c 65 64 20 28 2f 63 6c 72 29 20 66 75 6e 63 74 69 6f .an.MSIL-compiled.(/clr).functio
b2c0 6e 20 66 72 6f 6d 20 61 20 6e 61 74 69 76 65 20 63 6f 6e 73 74 72 75 63 74 6f 72 20 6f 72 20 66 n.from.a.native.constructor.or.f
b2e0 72 6f 6d 20 44 6c 6c 4d 61 69 6e 2e 0d 0a 00 00 52 36 30 33 32 0d 0a 2d 20 6e 6f 74 20 65 6e 6f rom.DllMain.....R6032..-.not.eno
b300 75 67 68 20 73 70 61 63 65 20 66 6f 72 20 6c 6f 63 61 6c 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e ugh.space.for.locale.information
b320 0d 0a 00 00 00 00 00 00 52 36 30 33 31 0d 0a 2d 20 41 74 74 65 6d 70 74 20 74 6f 20 69 6e 69 74 ........R6031..-.Attempt.to.init
b340 69 61 6c 69 7a 65 20 74 68 65 20 43 52 54 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 63 65 2e 0a 54 ialize.the.CRT.more.than.once..T
b360 68 69 73 20 69 6e 64 69 63 61 74 65 73 20 61 20 62 75 67 20 69 6e 20 79 6f 75 72 20 61 70 70 6c his.indicates.a.bug.in.your.appl
b380 69 63 61 74 69 6f 6e 2e 0d 0a 00 00 52 36 30 33 30 0d 0a 2d 20 43 52 54 20 6e 6f 74 20 69 6e 69 ication.....R6030..-.CRT.not.ini
b3a0 74 69 61 6c 69 7a 65 64 0d 0a 00 00 52 36 30 32 38 0d 0a 2d 20 75 6e 61 62 6c 65 20 74 6f 20 69 tialized....R6028..-.unable.to.i
b3c0 6e 69 74 69 61 6c 69 7a 65 20 68 65 61 70 0d 0a 00 00 00 00 52 36 30 32 37 0d 0a 2d 20 6e 6f 74 nitialize.heap......R6027..-.not
b3e0 20 65 6e 6f 75 67 68 20 73 70 61 63 65 20 66 6f 72 20 6c 6f 77 69 6f 20 69 6e 69 74 69 61 6c 69 .enough.space.for.lowio.initiali
b400 7a 61 74 69 6f 6e 0d 0a 00 00 00 00 52 36 30 32 36 0d 0a 2d 20 6e 6f 74 20 65 6e 6f 75 67 68 20 zation......R6026..-.not.enough.
b420 73 70 61 63 65 20 66 6f 72 20 73 74 64 69 6f 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 0d 0a space.for.stdio.initialization..
b440 00 00 00 00 52 36 30 32 35 0d 0a 2d 20 70 75 72 65 20 76 69 72 74 75 61 6c 20 66 75 6e 63 74 69 ....R6025..-.pure.virtual.functi
b460 6f 6e 20 63 61 6c 6c 0d 0a 00 00 00 52 36 30 32 34 0d 0a 2d 20 6e 6f 74 20 65 6e 6f 75 67 68 20 on.call.....R6024..-.not.enough.
b480 73 70 61 63 65 20 66 6f 72 20 5f 6f 6e 65 78 69 74 2f 61 74 65 78 69 74 20 74 61 62 6c 65 0d 0a space.for._onexit/atexit.table..
b4a0 00 00 00 00 52 36 30 31 39 0d 0a 2d 20 75 6e 61 62 6c 65 20 74 6f 20 6f 70 65 6e 20 63 6f 6e 73 ....R6019..-.unable.to.open.cons
b4c0 6f 6c 65 20 64 65 76 69 63 65 0d 0a 00 00 00 00 52 36 30 31 38 0d 0a 2d 20 75 6e 65 78 70 65 63 ole.device......R6018..-.unexpec
b4e0 74 65 64 20 68 65 61 70 20 65 72 72 6f 72 0d 0a 00 00 00 00 52 36 30 31 37 0d 0a 2d 20 75 6e 65 ted.heap.error......R6017..-.une
b500 78 70 65 63 74 65 64 20 6d 75 6c 74 69 74 68 72 65 61 64 20 6c 6f 63 6b 20 65 72 72 6f 72 0d 0a xpected.multithread.lock.error..
b520 00 00 00 00 52 36 30 31 36 0d 0a 2d 20 6e 6f 74 20 65 6e 6f 75 67 68 20 73 70 61 63 65 20 66 6f ....R6016..-.not.enough.space.fo
b540 72 20 74 68 72 65 61 64 20 64 61 74 61 0d 0a 00 0d 0a 54 68 69 73 20 61 70 70 6c 69 63 61 74 69 r.thread.data.....This.applicati
b560 6f 6e 20 68 61 73 20 72 65 71 75 65 73 74 65 64 20 74 68 65 20 52 75 6e 74 69 6d 65 20 74 6f 20 on.has.requested.the.Runtime.to.
b580 74 65 72 6d 69 6e 61 74 65 20 69 74 20 69 6e 20 61 6e 20 75 6e 75 73 75 61 6c 20 77 61 79 2e 0a terminate.it.in.an.unusual.way..
b5a0 50 6c 65 61 73 65 20 63 6f 6e 74 61 63 74 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 27 73 Please.contact.the.application's
b5c0 20 73 75 70 70 6f 72 74 20 74 65 61 6d 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 .support.team.for.more.informati
b5e0 6f 6e 2e 0d 0a 00 00 00 52 36 30 30 39 0d 0a 2d 20 6e 6f 74 20 65 6e 6f 75 67 68 20 73 70 61 63 on......R6009..-.not.enough.spac
b600 65 20 66 6f 72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0d 0a 00 52 36 30 30 38 0d 0a 2d 20 6e 6f 74 e.for.environment...R6008..-.not
b620 20 65 6e 6f 75 67 68 20 73 70 61 63 65 20 66 6f 72 20 61 72 67 75 6d 65 6e 74 73 0d 0a 00 00 00 .enough.space.for.arguments.....
b640 52 36 30 30 32 0d 0a 2d 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 73 75 70 70 6f 72 74 20 R6002..-.floating.point.support.
b660 6e 6f 74 20 6c 6f 61 64 65 64 0d 0a 00 00 00 00 4d 69 63 72 6f 73 6f 66 74 20 56 69 73 75 61 6c not.loaded......Microsoft.Visual
b680 20 43 2b 2b 20 52 75 6e 74 69 6d 65 20 4c 69 62 72 61 72 79 00 00 00 00 0a 0a 00 00 2e 2e 2e 00 .C++.Runtime.Library............
b6a0 3c 70 72 6f 67 72 61 6d 20 6e 61 6d 65 20 75 6e 6b 6e 6f 77 6e 3e 00 00 52 75 6e 74 69 6d 65 20 <program.name.unknown>..Runtime.
b6c0 45 72 72 6f 72 21 0a 0a 50 72 6f 67 72 61 6d 3a 20 00 00 00 00 00 00 00 05 00 00 c0 0b 00 00 00 Error!..Program:................
b6e0 00 00 00 00 1d 00 00 c0 04 00 00 00 00 00 00 00 96 00 00 c0 04 00 00 00 00 00 00 00 8d 00 00 c0 ................................
b700 08 00 00 00 00 00 00 00 8e 00 00 c0 08 00 00 00 00 00 00 00 8f 00 00 c0 08 00 00 00 00 00 00 00 ................................
b720 90 00 00 c0 08 00 00 00 00 00 00 00 91 00 00 c0 08 00 00 00 00 00 00 00 92 00 00 c0 08 00 00 00 ................................
b740 00 00 00 00 93 00 00 c0 08 00 00 00 00 00 00 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 ................................
b760 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 ................!"#$%&'()*+,-./0
b780 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 123456789:;<=>?@ABCDEFGHIJKLMNOP
b7a0 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 QRSTUVWXYZ[\]^_`abcdefghijklmnop
b7c0 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f 00 06 80 80 86 80 81 80 00 00 10 03 86 80 86 82 80 qrstuvwxyz{|}~..................
b7e0 14 05 05 45 45 45 85 85 85 05 00 00 30 30 80 50 80 88 00 08 00 28 27 38 50 57 80 00 07 00 37 30 ...EEE......00.P.....('8PW....70
b800 30 50 50 88 00 00 00 20 28 80 88 80 80 00 00 00 60 68 60 68 68 68 08 08 07 78 70 70 77 70 70 08 0PP.....(.......`h`hhh...xppwpp.
b820 08 00 00 08 00 08 00 07 08 00 00 00 47 65 74 50 72 6f 63 65 73 73 57 69 6e 64 6f 77 53 74 61 74 ............GetProcessWindowStat
b840 69 6f 6e 00 47 65 74 55 73 65 72 4f 62 6a 65 63 74 49 6e 66 6f 72 6d 61 74 69 6f 6e 41 00 00 00 ion.GetUserObjectInformationA...
b860 47 65 74 4c 61 73 74 41 63 74 69 76 65 50 6f 70 75 70 00 00 47 65 74 41 63 74 69 76 65 57 69 6e GetLastActivePopup..GetActiveWin
b880 64 6f 77 00 4d 65 73 73 61 67 65 42 6f 78 41 00 55 53 45 52 33 32 2e 44 4c 4c 00 00 00 00 00 00 dow.MessageBoxA.USER32.DLL......
b8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b9a0 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 28 00 28 00 28 00 28 00 28 00 20 00 20 00 ..................(.(.(.(.(.....
b9c0 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 ................................
b9e0 48 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 H...............................
ba00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 10 00 10 00 10 00 10 00 10 00 10 00 ................................
ba20 10 00 81 00 81 00 81 00 81 00 81 00 81 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 ................................
ba40 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 10 00 10 00 10 00 10 00 10 00 ................................
ba60 10 00 82 00 82 00 82 00 82 00 82 00 82 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 ................................
ba80 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 10 00 10 00 10 00 10 00 20 00 ................................
baa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bba0 00 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 68 00 28 00 28 00 28 00 28 00 20 00 ....................h.(.(.(.(...
bbc0 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 ................................
bbe0 20 00 48 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 ..H.............................
bc00 10 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 84 00 10 00 10 00 10 00 10 00 10 00 ................................
bc20 10 00 10 00 81 01 81 01 81 01 81 01 81 01 81 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 ................................
bc40 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 10 00 10 00 10 00 10 00 ................................
bc60 10 00 10 00 82 01 82 01 82 01 82 01 82 01 82 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 ................................
bc80 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 10 00 10 00 10 00 10 00 ................................
bca0 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 ................................
bcc0 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 ................................
bce0 20 00 48 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 ..H.............................
bd00 10 00 10 00 10 00 14 00 14 00 10 00 10 00 10 00 10 00 10 00 14 00 10 00 10 00 10 00 10 00 10 00 ................................
bd20 10 00 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 ................................
bd40 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 10 00 01 01 01 01 01 01 01 01 01 01 01 01 01 01 ................................
bd60 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 ................................
bd80 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 01 10 00 02 01 02 01 02 01 02 01 02 01 02 01 02 01 ................................
bda0 02 01 01 01 00 00 00 00 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 ................................
bdc0 98 99 9a 9b 9c 9d 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 ................................
bde0 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d7 ................................
be00 d8 d9 da db dc dd de df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f7 ................................
be20 f8 f9 fa fb fc fd fe ff 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 ................................
be40 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 .........!"#$%&'()*+,-./01234567
be60 38 39 3a 3b 3c 3d 3e 3f 40 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 89:;<=>?@abcdefghijklmnopqrstuvw
be80 78 79 7a 5b 5c 5d 5e 5f 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 xyz[\]^_`abcdefghijklmnopqrstuvw
bea0 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 xyz{|}~.........................
bec0 98 99 9a 9b 9c 9d 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 ................................
bee0 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d7 ................................
bf00 d8 d9 da db dc dd de df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f7 ................................
bf20 f8 f9 fa fb fc fd fe ff 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 ................................
bf40 98 99 9a 9b 9c 9d 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 ................................
bf60 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d7 ................................
bf80 d8 d9 da db dc dd de df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f7 ................................
bfa0 f8 f9 fa fb fc fd fe ff 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 ................................
bfc0 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 .........!"#$%&'()*+,-./01234567
bfe0 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW
c000 58 59 5a 5b 5c 5d 5e 5f 60 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 XYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVW
c020 58 59 5a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 XYZ{|}~.........................
c040 98 99 9a 9b 9c 9d 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 b4 b5 b6 b7 ................................
c060 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d7 ................................
c080 d8 d9 da db dc dd de df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f7 ................................
c0a0 f8 f9 fa fb fc fd fe ff 48 48 3a 6d 6d 3a 73 73 00 00 00 00 64 64 64 64 2c 20 4d 4d 4d 4d 20 64 ........HH:mm:ss....dddd,.MMMM.d
c0c0 64 2c 20 79 79 79 79 00 4d 4d 2f 64 64 2f 79 79 00 00 00 00 50 4d 00 00 41 4d 00 00 44 65 63 65 d,.yyyy.MM/dd/yy....PM..AM..Dece
c0e0 6d 62 65 72 00 00 00 00 4e 6f 76 65 6d 62 65 72 00 00 00 00 4f 63 74 6f 62 65 72 00 53 65 70 74 mber....November....October.Sept
c100 65 6d 62 65 72 00 00 00 41 75 67 75 73 74 00 00 4a 75 6c 79 00 00 00 00 4a 75 6e 65 00 00 00 00 ember...August..July....June....
c120 41 70 72 69 6c 00 00 00 4d 61 72 63 68 00 00 00 46 65 62 72 75 61 72 79 00 00 00 00 4a 61 6e 75 April...March...February....Janu
c140 61 72 79 00 44 65 63 00 4e 6f 76 00 4f 63 74 00 53 65 70 00 41 75 67 00 4a 75 6c 00 4a 75 6e 00 ary.Dec.Nov.Oct.Sep.Aug.Jul.Jun.
c160 4d 61 79 00 41 70 72 00 4d 61 72 00 46 65 62 00 4a 61 6e 00 53 61 74 75 72 64 61 79 00 00 00 00 May.Apr.Mar.Feb.Jan.Saturday....
c180 46 72 69 64 61 79 00 00 54 68 75 72 73 64 61 79 00 00 00 00 57 65 64 6e 65 73 64 61 79 00 00 00 Friday..Thursday....Wednesday...
c1a0 54 75 65 73 64 61 79 00 4d 6f 6e 64 61 79 00 00 53 75 6e 64 61 79 00 00 53 61 74 00 46 72 69 00 Tuesday.Monday..Sunday..Sat.Fri.
c1c0 54 68 75 00 57 65 64 00 54 75 65 00 4d 6f 6e 00 53 75 6e 00 43 4f 4e 4f 55 54 24 00 53 75 6e 4d Thu.Wed.Tue.Mon.Sun.CONOUT$.SunM
c1e0 6f 6e 54 75 65 57 65 64 54 68 75 46 72 69 53 61 74 00 00 00 4a 61 6e 46 65 62 4d 61 72 41 70 72 onTueWedThuFriSat...JanFebMarApr
c200 4d 61 79 4a 75 6e 4a 75 6c 41 75 67 53 65 70 4f 63 74 4e 6f 76 44 65 63 00 00 00 00 00 00 00 00 MayJunJulAugSepOctNovDec........
c220 0a 75 73 61 67 65 3a 20 74 6f 6c 75 61 2b 2b 20 5b 6f 70 74 69 6f 6e 73 5d 20 69 6e 70 75 74 5f .usage:.tolua++.[options].input_
c240 66 69 6c 65 0a 0a 43 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 20 61 72 65 3a 0a file..Command.line.options.are:.
c260 20 20 2d 76 20 20 20 20 20 20 20 3a 20 70 72 69 6e 74 20 76 65 72 73 69 6f 6e 20 69 6e 66 6f 72 ..-v.......:.print.version.infor
c280 6d 61 74 69 6f 6e 2e 0a 20 20 2d 6f 20 20 66 69 6c 65 20 3a 20 73 65 74 20 6f 75 74 70 75 74 20 mation....-o..file.:.set.output.
c2a0 66 69 6c 65 3b 20 64 65 66 61 75 6c 74 20 69 73 20 73 74 64 6f 75 74 2e 0a 20 20 2d 48 20 20 66 file;.default.is.stdout....-H..f
c2c0 69 6c 65 20 3a 20 63 72 65 61 74 65 20 69 6e 63 6c 75 64 65 20 66 69 6c 65 2e 0a 20 20 2d 6e 20 ile.:.create.include.file....-n.
c2e0 20 6e 61 6d 65 20 3a 20 73 65 74 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 3b 20 64 65 66 61 75 6c .name.:.set.package.name;.defaul
c300 74 20 69 73 20 69 6e 70 75 74 20 66 69 6c 65 20 72 6f 6f 74 20 6e 61 6d 65 2e 0a 20 20 2d 70 20 t.is.input.file.root.name....-p.
c320 20 20 20 20 20 20 3a 20 70 61 72 73 65 20 6f 6e 6c 79 2e 0a 20 20 2d 50 20 20 20 20 20 20 20 3a ......:.parse.only....-P.......:
c340 20 70 61 72 73 65 20 61 6e 64 20 70 72 69 6e 74 20 73 74 72 75 63 74 75 72 65 20 69 6e 66 6f 72 .parse.and.print.structure.infor
c360 6d 61 74 69 6f 6e 20 28 66 6f 72 20 64 65 62 75 67 29 2e 0a 20 20 2d 53 20 20 20 20 20 20 20 3a mation.(for.debug)....-S.......:
c380 20 64 69 73 61 62 6c 65 20 73 75 70 70 6f 72 74 20 66 6f 72 20 63 2b 2b 20 73 74 72 69 6e 67 73 .disable.support.for.c++.strings
c3a0 2e 0a 20 20 2d 31 20 20 20 20 20 20 20 3a 20 73 75 62 73 74 72 61 63 74 20 31 20 74 6f 20 6f 70 ....-1.......:.substract.1.to.op
c3c0 65 72 61 74 6f 72 5b 5d 20 69 6e 64 65 78 20 28 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 erator[].index.(for.compatibilit
c3e0 79 20 77 69 74 68 20 74 6f 6c 75 61 35 29 2e 0a 20 20 2d 4c 20 20 66 69 6c 65 20 3a 20 72 75 6e y.with.tolua5)....-L..file.:.run
c400 20 6c 75 61 20 66 69 6c 65 20 28 77 69 74 68 20 64 6f 66 69 6c 65 28 29 29 20 62 65 66 6f 72 65 .lua.file.(with.dofile()).before
c420 20 64 6f 69 6e 67 20 61 6e 79 74 68 69 6e 67 2e 0a 20 20 2d 44 20 20 20 20 20 20 20 3a 20 64 69 .doing.anything....-D.......:.di
c440 73 61 62 6c 65 20 61 75 74 6f 6d 61 74 69 63 20 65 78 70 6f 72 74 69 6e 67 20 6f 66 20 64 65 73 sable.automatic.exporting.of.des
c460 74 72 75 63 74 6f 72 73 20 66 6f 72 20 63 6c 61 73 73 65 73 20 74 68 61 74 20 68 61 76 65 0a 20 tructors.for.classes.that.have..
c480 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 73 20 28 66 6f 72 20 63 6f ............constructors.(for.co
c4a0 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 74 6f 6c 75 61 35 29 0a 20 20 2d 57 20 20 20 mpatibility.with.tolua5)...-W...
c4c0 20 20 20 20 3a 20 64 69 73 61 62 6c 65 20 77 61 72 6e 69 6e 67 73 20 66 6f 72 20 75 6e 73 75 70 ....:.disable.warnings.for.unsup
c4e0 70 6f 72 74 65 64 20 66 65 61 74 75 72 65 73 20 28 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 ported.features.(for.compatibili
c500 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 74 6f 6c 75 61 35 29 0a 20 20 2d ty..............with.tolua5)...-
c520 43 20 20 20 20 20 20 20 3a 20 64 69 73 61 62 6c 65 20 63 6c 65 61 6e 75 70 20 6f 66 20 69 6e 63 C.......:.disable.cleanup.of.inc
c540 6c 75 64 65 64 20 6c 75 61 20 63 6f 64 65 20 28 66 6f 72 20 65 61 73 69 65 72 20 64 65 62 75 67 luded.lua.code.(for.easier.debug
c560 67 69 6e 67 29 0a 20 20 2d 45 20 20 76 61 6c 75 65 5b 3d 76 61 6c 75 65 5d 20 3a 20 61 64 64 20 ging)...-E..value[=value].:.add.
c580 65 78 74 72 61 20 76 61 6c 75 65 73 20 74 6f 20 74 68 65 20 6c 75 61 73 74 61 74 65 0a 20 20 2d extra.values.to.the.luastate...-
c5a0 74 20 20 20 20 20 20 20 3a 20 65 78 70 6f 72 74 20 61 20 6c 69 73 74 20 6f 66 20 74 79 70 65 73 t.......:.export.a.list.of.types
c5c0 20 61 73 6f 63 69 61 74 65 73 20 77 69 74 68 20 74 68 65 20 43 2b 2b 20 74 79 70 65 69 64 20 6e .asociates.with.the.C++.typeid.n
c5e0 61 6d 65 0a 20 20 2d 71 20 20 20 20 20 20 20 3a 20 64 6f 6e 27 74 20 70 72 69 6e 74 20 77 61 72 ame...-q.......:.don't.print.war
c600 6e 69 6e 67 73 20 74 6f 20 74 68 65 20 63 6f 6e 73 6f 6c 65 0a 20 20 2d 68 20 20 20 20 20 20 20 nings.to.the.console...-h.......
c620 3a 20 70 72 69 6e 74 20 74 68 69 73 20 6d 65 73 73 61 67 65 2e 0a 53 68 6f 75 6c 64 20 74 68 65 :.print.this.message..Should.the
c640 20 69 6e 70 75 74 20 66 69 6c 65 20 62 65 20 6f 6d 69 74 74 65 64 2c 20 73 74 64 69 6e 20 69 73 .input.file.be.omitted,.stdin.is
c660 20 61 73 73 75 6d 65 64 3b 0a 69 6e 20 74 68 61 74 20 63 61 73 65 2c 20 74 68 65 20 70 61 63 6b .assumed;.in.that.case,.the.pack
c680 61 67 65 20 6e 61 6d 65 20 6d 75 73 74 20 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 74 2e age.name.must.be.explicitly.set.
c6a0 0a 0a 00 00 74 6f 6c 75 61 2b 2b 2d 31 2e 30 2e 39 32 00 00 25 73 20 28 77 72 69 74 74 65 6e 20 ....tolua++-1.0.92..%s.(written.
c6c0 62 79 20 57 2e 20 43 65 6c 65 73 2c 20 41 2e 20 4d 61 6e 7a 75 72 29 0a 00 00 00 00 5f 65 78 74 by.W..Celes,.A..Manzur)....._ext
c6e0 72 61 5f 70 61 72 61 6d 65 74 65 72 73 00 00 00 74 6f 6c 75 61 3a 20 75 6e 6b 6e 6f 77 6e 20 6f ra_parameters...tolua:.unknown.o
c700 70 74 69 6f 6e 20 27 25 73 27 0a 00 54 4f 4c 55 41 5f 56 45 52 53 49 4f 4e 00 00 00 4c 75 61 20 ption.'%s'..TOLUA_VERSION...Lua.
c720 35 2e 31 00 54 4f 4c 55 41 5f 4c 55 41 5f 56 45 52 53 49 4f 4e 00 00 00 66 6c 61 67 73 00 00 00 5.1.TOLUA_LUA_VERSION...flags...
c740 70 00 00 00 50 00 00 00 6f 00 00 00 6e 00 00 00 48 00 00 00 53 00 00 00 31 00 00 00 4c 00 00 00 p...P...o...n...H...S...1...L...
c760 44 00 00 00 57 00 00 00 43 00 00 00 74 00 00 00 71 00 00 00 66 00 00 00 74 6f 6c 75 61 20 65 6d D...W...C...t...q...f...tolua.em
c780 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 63 6f 6d 70 61 74 2d 35 2e 31 2e 6c bedded:.src/bin/lua/compat-5.1.l
c7a0 75 61 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f ua..tolua.embedded:.src/bin/lua/
c7c0 63 6f 6d 70 61 74 2e 6c 75 61 00 00 00 00 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 62 61 73 69 63 20 compat.lua......--.tolua:.basic.
c7e0 75 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 utility.functions.--.Written.by.
c800 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 Waldemar.Celes.--.TeCGraf/PUC-Ri
c820 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 4c 61 73 74 20 75 70 64 61 74 65 3a 20 41 70 o.--.Jul.1998.--.Last.update:.Ap
c840 72 20 32 30 30 33 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 r.2003.--.$Id:.$..--.This.code.i
c860 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 s.free.software;.you.can.redistr
c880 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 ibute.it.and/or.modify.it..--.Th
c8a0 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 e.software.provided.hereunder.is
c8c0 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 .on.an."as.is".basis,.and.--.the
c8e0 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f .author.has.no.obligation.to.pro
c900 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 vide.maintenance,.support,.updat
c920 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 es,.--.enhancements,.or.modifica
c940 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 42 61 73 69 63 20 43 20 74 79 70 65 73 20 61 6e 64 20 74 68 tions....--.Basic.C.types.and.th
c960 65 69 72 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c 75 61 20 74 79 70 65 73 0a 2d 2d 20 41 eir.corresponding.Lua.types.--.A
c980 6c 6c 20 6f 63 63 75 72 72 65 6e 63 65 73 20 6f 66 20 22 63 68 61 72 2a 22 20 77 69 6c 6c 20 62 ll.occurrences.of."char*".will.b
c9a0 65 20 72 65 70 6c 61 63 65 64 20 62 79 20 22 5f 63 73 74 72 69 6e 67 22 2c 0a 2d 2d 20 61 6e 64 e.replaced.by."_cstring",.--.and
c9c0 20 61 6c 6c 20 6f 63 63 75 72 72 65 6e 63 65 73 20 6f 66 20 22 76 6f 69 64 2a 22 20 77 69 6c 6c .all.occurrences.of."void*".will
c9e0 20 62 65 20 72 65 70 6c 61 63 65 64 20 62 79 20 22 5f 75 73 65 72 64 61 74 61 22 0a 5f 62 61 73 .be.replaced.by."_userdata"._bas
ca00 69 63 20 3d 20 7b 0a 20 5b 27 76 6f 69 64 27 5d 20 3d 20 27 27 2c 0a 20 5b 27 63 68 61 72 27 5d ic.=.{..['void'].=.'',..['char']
ca20 20 3d 20 27 6e 75 6d 62 65 72 27 2c 0a 20 5b 27 69 6e 74 27 5d 20 3d 20 27 6e 75 6d 62 65 72 27 .=.'number',..['int'].=.'number'
ca40 2c 0a 20 5b 27 73 68 6f 72 74 27 5d 20 3d 20 27 6e 75 6d 62 65 72 27 2c 0a 20 5b 27 6c 6f 6e 67 ,..['short'].=.'number',..['long
ca60 27 5d 20 3d 20 27 6e 75 6d 62 65 72 27 2c 0a 20 5b 27 75 6e 73 69 67 6e 65 64 27 5d 20 3d 20 27 '].=.'number',..['unsigned'].=.'
ca80 6e 75 6d 62 65 72 27 2c 0a 20 5b 27 66 6c 6f 61 74 27 5d 20 3d 20 27 6e 75 6d 62 65 72 27 2c 0a number',..['float'].=.'number',.
caa0 20 5b 27 64 6f 75 62 6c 65 27 5d 20 3d 20 27 6e 75 6d 62 65 72 27 2c 0a 20 5b 27 5f 63 73 74 72 .['double'].=.'number',..['_cstr
cac0 69 6e 67 27 5d 20 3d 20 27 73 74 72 69 6e 67 27 2c 0a 20 5b 27 5f 75 73 65 72 64 61 74 61 27 5d ing'].=.'string',..['_userdata']
cae0 20 3d 20 27 75 73 65 72 64 61 74 61 27 2c 0a 20 5b 27 63 68 61 72 2a 27 5d 20 3d 20 27 73 74 72 .=.'userdata',..['char*'].=.'str
cb00 69 6e 67 27 2c 0a 20 5b 27 76 6f 69 64 2a 27 5d 20 3d 20 27 75 73 65 72 64 61 74 61 27 2c 0a 20 ing',..['void*'].=.'userdata',..
cb20 5b 27 62 6f 6f 6c 27 5d 20 3d 20 27 62 6f 6f 6c 65 61 6e 27 2c 0a 20 5b 27 6c 75 61 5f 4f 62 6a ['bool'].=.'boolean',..['lua_Obj
cb40 65 63 74 27 5d 20 3d 20 27 76 61 6c 75 65 27 2c 0a 20 5b 27 4c 55 41 5f 56 41 4c 55 45 27 5d 20 ect'].=.'value',..['LUA_VALUE'].
cb60 3d 20 27 76 61 6c 75 65 27 2c 20 20 20 20 2d 2d 20 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 =.'value',....--.for.compatibili
cb80 74 79 20 77 69 74 68 20 74 6f 6c 75 61 20 34 2e 30 0a 20 5b 27 6c 75 61 5f 53 74 61 74 65 2a 27 ty.with.tolua.4.0..['lua_State*'
cba0 5d 20 3d 20 27 73 74 61 74 65 27 2c 0a 20 5b 27 5f 6c 73 74 61 74 65 27 5d 20 3d 20 27 73 74 61 ].=.'state',..['_lstate'].=.'sta
cbc0 74 65 27 2c 0a 20 5b 27 6c 75 61 5f 46 75 6e 63 74 69 6f 6e 27 5d 20 3d 20 27 76 61 6c 75 65 27 te',..['lua_Function'].=.'value'
cbe0 2c 0a 7d 0a 0a 5f 62 61 73 69 63 5f 63 74 79 70 65 20 3d 20 7b 0a 20 6e 75 6d 62 65 72 20 3d 20 ,.}.._basic_ctype.=.{..number.=.
cc00 22 6c 75 61 5f 4e 75 6d 62 65 72 22 2c 0a 20 73 74 72 69 6e 67 20 3d 20 22 63 6f 6e 73 74 20 63 "lua_Number",..string.=."const.c
cc20 68 61 72 2a 22 2c 0a 20 75 73 65 72 64 61 74 61 20 3d 20 22 76 6f 69 64 2a 22 2c 0a 20 62 6f 6f har*",..userdata.=."void*",..boo
cc40 6c 65 61 6e 20 3d 20 22 62 6f 6f 6c 22 2c 0a 20 76 61 6c 75 65 20 3d 20 22 69 6e 74 22 2c 0a 20 lean.=."bool",..value.=."int",..
cc60 73 74 61 74 65 20 3d 20 22 6c 75 61 5f 53 74 61 74 65 2a 22 2c 0a 7d 0a 0a 2d 2d 20 66 75 6e 63 state.=."lua_State*",.}..--.func
cc80 74 69 6f 6e 73 20 74 68 65 20 61 72 65 20 75 73 65 64 20 74 6f 20 64 6f 20 61 20 27 72 61 77 20 tions.the.are.used.to.do.a.'raw.
cca0 70 75 73 68 27 20 6f 66 20 62 61 73 69 63 20 74 79 70 65 73 0a 5f 62 61 73 69 63 5f 72 61 77 5f push'.of.basic.types._basic_raw_
ccc0 70 75 73 68 20 3d 20 7b 7d 0a 0a 2d 2d 20 4c 69 73 74 20 6f 66 20 75 73 65 72 20 64 65 66 69 6e push.=.{}..--.List.of.user.defin
cce0 65 64 20 74 79 70 65 73 0a 2d 2d 20 45 61 63 68 20 74 79 70 65 20 63 6f 72 72 65 73 70 6f 6e 64 ed.types.--.Each.type.correspond
cd00 73 20 74 6f 20 61 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 20 74 68 61 74 20 73 74 6f 72 65 73 s.to.a.variable.name.that.stores
cd20 20 69 74 73 20 74 61 67 20 76 61 6c 75 65 2e 0a 5f 75 73 65 72 74 79 70 65 20 3d 20 7b 7d 0a 0a .its.tag.value.._usertype.=.{}..
cd40 2d 2d 20 4c 69 73 74 20 6f 66 20 74 79 70 65 73 20 74 68 61 74 20 68 61 76 65 20 74 6f 20 62 65 --.List.of.types.that.have.to.be
cd60 20 63 6f 6c 6c 65 63 74 65 64 0a 5f 63 6f 6c 6c 65 63 74 20 3d 20 7b 7d 0a 0a 2d 2d 20 4c 69 73 .collected._collect.=.{}..--.Lis
cd80 74 20 6f 66 20 74 79 70 65 73 0a 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 73 20 3d 20 7b 6e 3d 30 7d t.of.types._global_types.=.{n=0}
cda0 0a 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 73 5f 68 61 73 68 20 3d 20 7b 7d 0a 0a 2d 2d 20 6c 69 73 ._global_types_hash.=.{}..--.lis
cdc0 74 20 6f 66 20 63 6c 61 73 73 65 73 0a 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 20 3d 20 7b t.of.classes._global_classes.=.{
cde0 7d 0a 0a 2d 2d 20 4c 69 73 74 20 6f 66 20 65 6e 75 6d 20 63 6f 6e 73 74 61 6e 74 73 0a 5f 67 6c }..--.List.of.enum.constants._gl
ce00 6f 62 61 6c 5f 65 6e 75 6d 73 20 3d 20 7b 7d 0a 0a 2d 2d 20 4c 69 73 74 20 6f 66 20 61 75 74 6f obal_enums.=.{}..--.List.of.auto
ce20 20 72 65 6e 61 6d 69 6e 67 0a 5f 72 65 6e 61 6d 69 6e 67 20 3d 20 7b 7d 0a 0a 5f 65 6e 75 6d 73 .renaming._renaming.=.{}.._enums
ce40 20 3d 20 7b 7d 0a 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 72 65 6e 61 6d 69 6e 67 20 28 73 .=.{}.function.appendrenaming.(s
ce60 29 0a 20 6c 6f 63 61 6c 20 62 2c 65 2c 6f 6c 64 2c 6e 65 77 20 3d 20 73 74 72 66 69 6e 64 28 73 )..local.b,e,old,new.=.strfind(s
ce80 2c 22 25 73 2a 28 2e 2d 29 25 73 2a 40 25 73 2a 28 2e 2d 29 25 73 2a 24 22 29 0a 09 69 66 20 6e ,"%s*(.-)%s*@%s*(.-)%s*$")..if.n
cea0 6f 74 20 62 20 74 68 65 6e 0a 09 20 65 72 72 6f 72 28 22 23 49 6e 76 61 6c 69 64 20 72 65 6e 61 ot.b.then...error("#Invalid.rena
cec0 6d 69 6e 67 20 73 79 6e 74 61 78 3b 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 6f 66 20 74 68 65 ming.syntax;.it.should.be.of.the
cee0 20 66 6f 72 6d 3a 20 70 61 74 74 65 72 6e 40 70 61 74 74 65 72 6e 22 29 0a 09 65 6e 64 0a 09 74 .form:.pattern@pattern")..end..t
cf00 69 6e 73 65 72 74 28 5f 72 65 6e 61 6d 69 6e 67 2c 7b 6f 6c 64 3d 6f 6c 64 2c 20 6e 65 77 3d 6e insert(_renaming,{old=old,.new=n
cf20 65 77 7d 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 72 65 6e 61 6d 69 6e 67 ew}).end..function.applyrenaming
cf40 20 28 73 29 0a 09 66 6f 72 20 69 3d 31 2c 67 65 74 6e 28 5f 72 65 6e 61 6d 69 6e 67 29 20 64 6f .(s)..for.i=1,getn(_renaming).do
cf60 0a 09 20 6c 6f 63 61 6c 20 6d 2c 6e 20 3d 20 67 73 75 62 28 73 2c 5f 72 65 6e 61 6d 69 6e 67 5b ...local.m,n.=.gsub(s,_renaming[
cf80 69 5d 2e 6f 6c 64 2c 5f 72 65 6e 61 6d 69 6e 67 5b 69 5d 2e 6e 65 77 29 0a 09 09 69 66 20 6e 20 i].old,_renaming[i].new)...if.n.
cfa0 7e 3d 20 30 20 74 68 65 6e 0a 09 09 20 72 65 74 75 72 6e 20 6d 0a 09 09 65 6e 64 0a 09 65 6e 64 ~=.0.then....return.m...end..end
cfc0 0a 09 72 65 74 75 72 6e 20 6e 69 6c 0a 65 6e 64 0a 0a 2d 2d 20 45 72 72 6f 72 20 68 61 6e 64 6c ..return.nil.end..--.Error.handl
cfe0 65 72 0a 66 75 6e 63 74 69 6f 6e 20 74 6f 6c 75 61 5f 65 72 72 6f 72 20 28 73 2c 66 29 0a 69 66 er.function.tolua_error.(s,f).if
d000 20 5f 63 75 72 72 5f 63 6f 64 65 20 74 68 65 6e 0a 09 70 72 69 6e 74 28 22 2a 2a 2a 63 75 72 72 ._curr_code.then..print("***curr
d020 20 63 6f 64 65 20 66 6f 72 20 65 72 72 6f 72 20 69 73 20 22 2e 2e 74 6f 73 74 72 69 6e 67 28 5f .code.for.error.is."..tostring(_
d040 63 75 72 72 5f 63 6f 64 65 29 29 0a 09 70 72 69 6e 74 28 64 65 62 75 67 2e 74 72 61 63 65 62 61 curr_code))..print(debug.traceba
d060 63 6b 28 29 29 0a 65 6e 64 0a 20 6c 6f 63 61 6c 20 6f 75 74 20 3d 20 5f 4f 55 54 50 55 54 0a 20 ck()).end..local.out.=._OUTPUT..
d080 5f 4f 55 54 50 55 54 20 3d 20 5f 53 54 44 45 52 52 0a 20 69 66 20 73 74 72 73 75 62 28 73 2c 31 _OUTPUT.=._STDERR..if.strsub(s,1
d0a0 2c 31 29 20 3d 3d 20 27 23 27 20 74 68 65 6e 0a 20 20 77 72 69 74 65 28 22 5c 6e 2a 2a 20 74 6f ,1).==.'#'.then...write("\n**.to
d0c0 6c 75 61 3a 20 22 2e 2e 73 74 72 73 75 62 28 73 2c 32 29 2e 2e 22 2e 5c 6e 5c 6e 22 29 0a 20 20 lua:."..strsub(s,2)..".\n\n")...
d0e0 69 66 20 5f 63 75 72 72 5f 63 6f 64 65 20 74 68 65 6e 0a 20 20 20 6c 6f 63 61 6c 20 5f 2c 5f 2c if._curr_code.then....local._,_,
d100 73 20 3d 20 73 74 72 66 69 6e 64 28 5f 63 75 72 72 5f 63 6f 64 65 2c 22 5e 25 73 2a 28 2e 2d 5c s.=.strfind(_curr_code,"^%s*(.-\
d120 6e 29 22 29 20 2d 2d 20 65 78 74 72 61 63 74 20 66 69 72 73 74 20 6c 69 6e 65 0a 20 20 20 69 66 n)").--.extract.first.line....if
d140 20 73 3d 3d 6e 69 6c 20 74 68 65 6e 20 73 20 3d 20 5f 63 75 72 72 5f 63 6f 64 65 20 65 6e 64 0a .s==nil.then.s.=._curr_code.end.
d160 20 20 20 73 20 3d 20 67 73 75 62 28 73 2c 22 5f 75 73 65 72 64 61 74 61 22 2c 22 76 6f 69 64 2a ...s.=.gsub(s,"_userdata","void*
d180 22 29 20 2d 2d 20 72 65 74 75 72 6e 20 77 69 74 68 20 27 76 6f 69 64 2a 27 0a 20 20 20 73 20 3d ").--.return.with.'void*'....s.=
d1a0 20 67 73 75 62 28 73 2c 22 5f 63 73 74 72 69 6e 67 22 2c 22 63 68 61 72 2a 22 29 20 20 2d 2d 20 .gsub(s,"_cstring","char*")..--.
d1c0 72 65 74 75 72 6e 20 77 69 74 68 20 27 63 68 61 72 2a 27 0a 20 20 20 73 20 3d 20 67 73 75 62 28 return.with.'char*'....s.=.gsub(
d1e0 73 2c 22 5f 6c 73 74 61 74 65 22 2c 22 6c 75 61 5f 53 74 61 74 65 2a 22 29 20 20 2d 2d 20 72 65 s,"_lstate","lua_State*")..--.re
d200 74 75 72 6e 20 77 69 74 68 20 27 6c 75 61 5f 53 74 61 74 65 2a 27 0a 20 20 20 77 72 69 74 65 28 turn.with.'lua_State*'....write(
d220 22 43 6f 64 65 20 62 65 69 6e 67 20 70 72 6f 63 65 73 73 65 64 3a 5c 6e 22 2e 2e 73 2e 2e 22 5c "Code.being.processed:\n"..s.."\
d240 6e 22 29 0a 20 20 65 6e 64 0a 20 65 6c 73 65 0a 20 69 66 20 6e 6f 74 20 66 20 74 68 65 6e 20 66 n")...end..else..if.not.f.then.f
d260 20 3d 20 22 28 66 20 69 73 20 6e 69 6c 29 22 20 65 6e 64 0a 20 20 70 72 69 6e 74 28 22 5c 6e 2a .=."(f.is.nil)".end...print("\n*
d280 2a 20 74 6f 6c 75 61 20 69 6e 74 65 72 6e 61 6c 20 65 72 72 6f 72 3a 20 22 2e 2e 66 2e 2e 73 2e *.tolua.internal.error:."..f..s.
d2a0 2e 22 2e 5c 6e 5c 6e 22 29 0a 20 20 72 65 74 75 72 6e 0a 20 65 6e 64 0a 20 5f 4f 55 54 50 55 54 .".\n\n")...return..end.._OUTPUT
d2c0 20 3d 20 6f 75 74 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 77 61 72 6e 69 6e 67 20 28 6d 73 .=.out.end..function.warning.(ms
d2e0 67 29 0a 20 69 66 20 66 6c 61 67 73 2e 71 20 74 68 65 6e 20 72 65 74 75 72 6e 20 65 6e 64 0a 20 g)..if.flags.q.then.return.end..
d300 6c 6f 63 61 6c 20 6f 75 74 20 3d 20 5f 4f 55 54 50 55 54 0a 20 5f 4f 55 54 50 55 54 20 3d 20 5f local.out.=._OUTPUT.._OUTPUT.=._
d320 53 54 44 45 52 52 0a 20 77 72 69 74 65 28 22 5c 6e 2a 2a 20 74 6f 6c 75 61 20 77 61 72 6e 69 6e STDERR..write("\n**.tolua.warnin
d340 67 3a 20 22 2e 2e 6d 73 67 2e 2e 22 2e 5c 6e 5c 6e 22 29 0a 20 5f 4f 55 54 50 55 54 20 3d 20 6f g:."..msg..".\n\n").._OUTPUT.=.o
d360 75 74 0a 65 6e 64 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 61 6e 20 75 73 65 72 20 64 65 66 69 ut.end..--.register.an.user.defi
d380 6e 65 64 20 74 79 70 65 3a 20 72 65 74 75 72 6e 73 20 66 75 6c 6c 20 74 79 70 65 0a 66 75 6e 63 ned.type:.returns.full.type.func
d3a0 74 69 6f 6e 20 72 65 67 74 79 70 65 20 28 74 29 0a 09 2d 2d 69 66 20 69 73 62 61 73 69 63 28 74 tion.regtype.(t)..--if.isbasic(t
d3c0 29 20 74 68 65 6e 0a 09 2d 2d 09 72 65 74 75 72 6e 20 74 0a 09 2d 2d 65 6e 64 0a 09 6c 6f 63 61 ).then..--.return.t..--end..loca
d3e0 6c 20 66 74 20 3d 20 66 69 6e 64 74 79 70 65 28 74 29 0a 0a 09 69 66 20 6e 6f 74 20 5f 75 73 65 l.ft.=.findtype(t)...if.not._use
d400 72 74 79 70 65 5b 66 74 5d 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 61 70 70 65 6e 64 75 73 rtype[ft].then...return.appendus
d420 65 72 74 79 70 65 28 74 29 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 66 74 0a 65 6e 64 0a 0a 2d ertype(t)..end..return.ft.end..-
d440 2d 20 72 65 74 75 72 6e 20 74 79 70 65 20 6e 61 6d 65 3a 20 72 65 74 75 72 6e 73 20 66 75 6c 6c -.return.type.name:.returns.full
d460 20 74 79 70 65 0a 66 75 6e 63 74 69 6f 6e 20 74 79 70 65 76 61 72 28 74 79 70 65 29 0a 09 69 66 .type.function.typevar(type)..if
d480 20 74 79 70 65 20 3d 3d 20 27 27 20 6f 72 20 74 79 70 65 20 3d 3d 20 27 76 6f 69 64 27 20 74 68 .type.==.''.or.type.==.'void'.th
d4a0 65 6e 0a 09 09 72 65 74 75 72 6e 20 74 79 70 65 0a 09 65 6c 73 65 0a 09 09 6c 6f 63 61 6c 20 66 en...return.type..else...local.f
d4c0 74 20 3d 20 66 69 6e 64 74 79 70 65 28 74 79 70 65 29 0a 09 09 69 66 20 66 74 20 74 68 65 6e 0a t.=.findtype(type)...if.ft.then.
d4e0 09 09 09 72 65 74 75 72 6e 20 66 74 0a 09 09 65 6e 64 0a 09 09 5f 75 73 65 72 74 79 70 65 5b 74 ...return.ft...end..._usertype[t
d500 79 70 65 5d 20 3d 20 74 79 70 65 0a 09 09 72 65 74 75 72 6e 20 74 79 70 65 0a 09 65 6e 64 0a 65 ype].=.type...return.type..end.e
d520 6e 64 0a 0a 2d 2d 20 69 73 20 65 6e 75 6d 0a 66 75 6e 63 74 69 6f 6e 20 69 73 65 6e 75 6d 74 79 nd..--.is.enum.function.isenumty
d540 70 65 20 28 74 79 70 65 29 20 0a 20 20 72 65 74 75 72 6e 20 5f 65 6e 75 6d 73 5b 74 79 70 65 5d pe.(type)....return._enums[type]
d560 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 62 61 73 69 63 20 74 79 70 65 0a 66 75 6e .end..--.check.if.basic.type.fun
d580 63 74 69 6f 6e 20 69 73 62 61 73 69 63 20 28 74 79 70 65 29 0a 20 6c 6f 63 61 6c 20 74 20 3d 20 ction.isbasic.(type)..local.t.=.
d5a0 67 73 75 62 28 74 79 70 65 2c 27 63 6f 6e 73 74 20 27 2c 27 27 29 0a 20 6c 6f 63 61 6c 20 6d 2c gsub(type,'const.','')..local.m,
d5c0 74 20 3d 20 61 70 70 6c 79 74 79 70 65 64 65 66 28 27 27 2c 20 74 29 0a 20 6c 6f 63 61 6c 20 62 t.=.applytypedef('',.t)..local.b
d5e0 20 3d 20 5f 62 61 73 69 63 5b 74 5d 0a 20 69 66 20 62 20 74 68 65 6e 0a 20 20 72 65 74 75 72 6e .=._basic[t]..if.b.then...return
d600 20 62 2c 5f 62 61 73 69 63 5f 63 74 79 70 65 5b 62 5d 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 .b,_basic_ctype[b]..end..return.
d620 6e 69 6c 0a 65 6e 64 0a 0a 2d 2d 20 73 70 6c 69 74 20 73 74 72 69 6e 67 20 75 73 69 6e 67 20 61 nil.end..--.split.string.using.a
d640 20 74 6f 6b 65 6e 0a 66 75 6e 63 74 69 6f 6e 20 73 70 6c 69 74 20 28 73 2c 74 29 0a 20 6c 6f 63 .token.function.split.(s,t)..loc
d660 61 6c 20 6c 20 3d 20 7b 6e 3d 30 7d 0a 20 6c 6f 63 61 6c 20 66 20 3d 20 66 75 6e 63 74 69 6f 6e al.l.=.{n=0}..local.f.=.function
d680 20 28 73 29 0a 20 20 6c 2e 6e 20 3d 20 6c 2e 6e 20 2b 20 31 0a 20 20 6c 5b 6c 2e 6e 5d 20 3d 20 .(s)...l.n.=.l.n.+.1...l[l.n].=.
d6a0 73 0a 20 20 72 65 74 75 72 6e 20 22 22 0a 20 65 6e 64 0a 20 6c 6f 63 61 6c 20 70 20 3d 20 22 25 s...return.""..end..local.p.=."%
d6c0 73 2a 28 2e 2d 29 25 73 2a 22 2e 2e 74 2e 2e 22 25 73 2a 22 0a 20 73 20 3d 20 67 73 75 62 28 73 s*(.-)%s*"..t.."%s*"..s.=.gsub(s
d6e0 2c 22 5e 25 73 2b 22 2c 22 22 29 0a 20 73 20 3d 20 67 73 75 62 28 73 2c 22 25 73 2b 24 22 2c 22 ,"^%s+","")..s.=.gsub(s,"%s+$","
d700 22 29 0a 20 73 20 3d 20 67 73 75 62 28 73 2c 70 2c 66 29 0a 20 6c 2e 6e 20 3d 20 6c 2e 6e 20 2b ")..s.=.gsub(s,p,f)..l.n.=.l.n.+
d720 20 31 0a 20 6c 5b 6c 2e 6e 5d 20 3d 20 67 73 75 62 28 73 2c 22 28 25 73 25 73 2a 29 24 22 2c 22 .1..l[l.n].=.gsub(s,"(%s%s*)$","
d740 22 29 0a 20 72 65 74 75 72 6e 20 6c 0a 65 6e 64 0a 0a 2d 2d 20 73 70 6c 69 74 73 20 61 20 73 74 ")..return.l.end..--.splits.a.st
d760 72 69 6e 67 20 75 73 69 6e 67 20 61 20 70 61 74 74 65 72 6e 2c 20 63 6f 6e 73 69 64 65 72 69 6e ring.using.a.pattern,.considerin
d780 67 20 74 68 65 20 73 70 61 63 69 61 6c 20 63 61 73 65 73 20 6f 66 20 43 20 63 6f 64 65 20 28 74 g.the.spacial.cases.of.C.code.(t
d7a0 65 6d 70 6c 61 74 65 73 2c 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 2c 20 65 emplates,.function.parameters,.e
d7c0 74 63 29 0a 2d 2d 20 70 61 74 74 65 72 6e 20 63 61 6e 27 74 20 63 6f 6e 74 61 69 6e 20 74 68 65 tc).--.pattern.can't.contain.the
d7e0 20 27 5e 27 20 28 61 73 20 75 73 65 64 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 68 65 20 62 65 .'^'.(as.used.to.identify.the.be
d800 67 69 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c 69 6e 65 29 0a 2d 2d 20 61 6c 73 6f 20 73 74 72 69 gining.of.the.line).--.also.stri
d820 70 73 20 77 68 69 74 65 73 70 61 63 65 0a 66 75 6e 63 74 69 6f 6e 20 73 70 6c 69 74 5f 63 5f 74 ps.whitespace.function.split_c_t
d840 6f 6b 65 6e 73 28 73 2c 20 70 61 74 29 0a 0a 09 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 okens(s,.pat)...s.=.string.gsub(
d860 73 2c 20 22 5e 25 73 2a 22 2c 20 22 22 29 0a 09 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 s,."^%s*",."")..s.=.string.gsub(
d880 73 2c 20 22 25 73 2a 24 22 2c 20 22 22 29 0a 0a 09 6c 6f 63 61 6c 20 74 6f 6b 65 6e 5f 62 65 67 s,."%s*$",."")...local.token_beg
d8a0 69 6e 20 3d 20 31 0a 09 6c 6f 63 61 6c 20 74 6f 6b 65 6e 5f 65 6e 64 20 3d 20 31 0a 09 6c 6f 63 in.=.1..local.token_end.=.1..loc
d8c0 61 6c 20 6f 66 73 20 3d 20 31 0a 09 6c 6f 63 61 6c 20 72 65 74 20 3d 20 7b 6e 3d 30 7d 0a 0a 09 al.ofs.=.1..local.ret.=.{n=0}...
d8e0 66 75 6e 63 74 69 6f 6e 20 61 64 64 5f 74 6f 6b 65 6e 28 6f 66 73 29 0a 0a 09 09 6c 6f 63 61 6c function.add_token(ofs)....local
d900 20 74 20 3d 20 73 74 72 69 6e 67 2e 73 75 62 28 73 2c 20 74 6f 6b 65 6e 5f 62 65 67 69 6e 2c 20 .t.=.string.sub(s,.token_begin,.
d920 6f 66 73 29 0a 09 09 74 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2c 20 22 5e 25 73 2a 22 ofs)...t.=.string.gsub(t,."^%s*"
d940 2c 20 22 22 29 0a 09 09 74 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2c 20 22 25 73 2a 24 ,."")...t.=.string.gsub(t,."%s*$
d960 22 2c 20 22 22 29 0a 09 09 72 65 74 2e 6e 20 3d 20 72 65 74 2e 6e 20 2b 20 31 0a 09 09 72 65 74 ",."")...ret.n.=.ret.n.+.1...ret
d980 5b 72 65 74 2e 6e 5d 20 3d 20 74 0a 09 65 6e 64 0a 0a 09 77 68 69 6c 65 20 6f 66 73 20 3c 3d 20 [ret.n].=.t..end...while.ofs.<=.
d9a0 73 74 72 69 6e 67 2e 6c 65 6e 28 73 29 20 64 6f 0a 0a 09 09 6c 6f 63 61 6c 20 73 75 62 20 3d 20 string.len(s).do....local.sub.=.
d9c0 73 74 72 69 6e 67 2e 73 75 62 28 73 2c 20 6f 66 73 2c 20 2d 31 29 0a 09 09 6c 6f 63 61 6c 20 62 string.sub(s,.ofs,.-1)...local.b
d9e0 2c 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 75 62 2c 20 22 5e 22 2e 2e 70 61 74 29 0a ,e.=.string.find(sub,."^"..pat).
da00 09 09 69 66 20 62 20 74 68 65 6e 0a 09 09 09 61 64 64 5f 74 6f 6b 65 6e 28 6f 66 73 2d 31 29 0a ..if.b.then....add_token(ofs-1).
da20 09 09 09 6f 66 73 20 3d 20 6f 66 73 2b 65 0a 09 09 09 74 6f 6b 65 6e 5f 62 65 67 69 6e 20 3d 20 ...ofs.=.ofs+e....token_begin.=.
da40 6f 66 73 0a 09 09 65 6c 73 65 0a 09 09 09 6c 6f 63 61 6c 20 63 68 61 72 20 3d 20 73 74 72 69 6e ofs...else....local.char.=.strin
da60 67 2e 73 75 62 28 73 2c 20 6f 66 73 2c 20 6f 66 73 29 0a 09 09 09 69 66 20 63 68 61 72 20 3d 3d g.sub(s,.ofs,.ofs)....if.char.==
da80 20 22 28 22 20 6f 72 20 63 68 61 72 20 3d 3d 20 22 3c 22 20 74 68 65 6e 0a 0a 09 09 09 09 6c 6f ."(".or.char.==."<".then......lo
daa0 63 61 6c 20 62 6c 6f 63 6b 0a 09 09 09 09 69 66 20 63 68 61 72 20 3d 3d 20 22 28 22 20 74 68 65 cal.block.....if.char.==."(".the
dac0 6e 20 62 6c 6f 63 6b 20 3d 20 22 5e 25 62 28 29 22 20 65 6e 64 0a 09 09 09 09 69 66 20 63 68 61 n.block.=."^%b()".end.....if.cha
dae0 72 20 3d 3d 20 22 3c 22 20 74 68 65 6e 20 62 6c 6f 63 6b 20 3d 20 22 5e 25 62 3c 3e 22 20 65 6e r.==."<".then.block.=."^%b<>".en
db00 64 0a 0a 09 09 09 09 62 2c 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 75 62 2c 20 62 6c d......b,e.=.string.find(sub,.bl
db20 6f 63 6b 29 0a 09 09 09 09 69 66 20 6e 6f 74 20 62 20 74 68 65 6e 0a 09 09 09 09 09 2d 2d 20 75 ock).....if.not.b.then......--.u
db40 6e 74 65 72 6d 69 6e 61 74 65 64 20 62 6c 6f 63 6b 3f 0a 09 09 09 09 09 6f 66 73 20 3d 20 6f 66 nterminated.block?......ofs.=.of
db60 73 2b 31 0a 09 09 09 09 65 6c 73 65 0a 09 09 09 09 09 6f 66 73 20 3d 20 6f 66 73 20 2b 20 65 0a s+1.....else......ofs.=.ofs.+.e.
db80 09 09 09 09 65 6e 64 0a 0a 09 09 09 65 6c 73 65 0a 09 09 09 09 6f 66 73 20 3d 20 6f 66 73 2b 31 ....end.....else.....ofs.=.ofs+1
dba0 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 0a 09 65 6e 64 0a 09 61 64 64 5f 74 6f 6b 65 6e 28 6f ....end...end...end..add_token(o
dbc0 66 73 29 0a 09 2d 2d 69 66 20 72 65 74 2e 6e 20 3d 3d 20 30 20 74 68 65 6e 0a 0a 09 2d 2d 09 72 fs)..--if.ret.n.==.0.then...--.r
dbe0 65 74 2e 6e 3d 31 0a 09 2d 2d 09 72 65 74 5b 31 5d 20 3d 20 22 22 0a 09 2d 2d 65 6e 64 0a 0a 09 et.n=1..--.ret[1].=.""..--end...
dc00 72 65 74 75 72 6e 20 72 65 74 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 6f 6e 63 61 74 65 6e 61 74 65 20 return.ret..end..--.concatenate.
dc20 73 74 72 69 6e 67 73 20 6f 66 20 61 20 74 61 62 6c 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 63 strings.of.a.table.function.conc
dc40 61 74 20 28 74 2c 66 2c 6c 2c 6a 73 74 72 29 0a 09 6a 73 74 72 20 3d 20 6a 73 74 72 20 6f 72 20 at.(t,f,l,jstr)..jstr.=.jstr.or.
dc60 22 20 22 0a 20 6c 6f 63 61 6c 20 73 20 3d 20 27 27 0a 20 6c 6f 63 61 6c 20 69 3d 66 0a 20 77 68 "."..local.s.=.''..local.i=f..wh
dc80 69 6c 65 20 69 3c 3d 6c 20 64 6f 0a 20 20 73 20 3d 20 73 2e 2e 74 5b 69 5d 0a 20 20 69 20 3d 20 ile.i<=l.do...s.=.s..t[i]...i.=.
dca0 69 2b 31 0a 20 20 69 66 20 69 20 3c 3d 20 6c 20 74 68 65 6e 20 73 20 3d 20 73 2e 2e 6a 73 74 72 i+1...if.i.<=.l.then.s.=.s..jstr
dcc0 20 65 6e 64 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 73 0a 65 6e 64 0a 0a 2d 2d 20 63 6f 6e 63 .end..end..return.s.end..--.conc
dce0 61 74 65 6e 61 74 65 20 61 6c 6c 20 70 61 72 61 6d 65 74 65 72 73 2c 20 66 6f 6c 6c 6f 77 69 6e atenate.all.parameters,.followin
dd00 67 20 6f 75 74 70 75 74 20 72 75 6c 65 73 0a 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 63 61 74 70 61 g.output.rules.function.concatpa
dd20 72 61 6d 20 28 6c 69 6e 65 2c 20 2e 2e 2e 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c ram.(line,....)..local.i=1..whil
dd40 65 20 69 3c 3d 61 72 67 2e 6e 20 64 6f 0a 20 20 69 66 20 5f 63 6f 6e 74 20 61 6e 64 20 6e 6f 74 e.i<=arg.n.do...if._cont.and.not
dd60 20 73 74 72 66 69 6e 64 28 5f 63 6f 6e 74 2c 27 5b 25 28 2c 22 5d 27 29 20 61 6e 64 0a 20 20 20 .strfind(_cont,'[%(,"]').and....
dd80 20 20 73 74 72 66 69 6e 64 28 61 72 67 5b 69 5d 2c 22 5e 5b 25 61 5f 7e 5d 22 29 20 74 68 65 6e ..strfind(arg[i],"^[%a_~]").then
dda0 0a 09 20 20 20 20 6c 69 6e 65 20 3d 20 6c 69 6e 65 20 2e 2e 20 27 20 27 0a 20 20 65 6e 64 0a 20 ......line.=.line....'.'...end..
ddc0 20 6c 69 6e 65 20 3d 20 6c 69 6e 65 20 2e 2e 20 61 72 67 5b 69 5d 0a 20 20 69 66 20 61 72 67 5b .line.=.line....arg[i]...if.arg[
dde0 69 5d 20 7e 3d 20 27 27 20 74 68 65 6e 0a 20 20 20 5f 63 6f 6e 74 20 3d 20 73 74 72 73 75 62 28 i].~=.''.then...._cont.=.strsub(
de00 61 72 67 5b 69 5d 2c 2d 31 2c 2d 31 29 0a 20 20 65 6e 64 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 arg[i],-1,-1)...end...i.=.i+1..e
de20 6e 64 0a 20 69 66 20 73 74 72 66 69 6e 64 28 61 72 67 5b 61 72 67 2e 6e 5d 2c 22 5b 25 2f 25 29 nd..if.strfind(arg[arg.n],"[%/%)
de40 25 3b 25 7b 25 7d 5d 24 22 29 20 74 68 65 6e 0a 20 20 5f 63 6f 6e 74 3d 6e 69 6c 20 6c 69 6e 65 %;%{%}]$").then..._cont=nil.line
de60 20 3d 20 6c 69 6e 65 20 2e 2e 20 27 5c 6e 27 0a 20 65 6e 64 0a 09 72 65 74 75 72 6e 20 6c 69 6e .=.line....'\n'..end..return.lin
de80 65 0a 65 6e 64 0a 0a 2d 2d 20 6f 75 74 70 75 74 20 6c 69 6e 65 0a 66 75 6e 63 74 69 6f 6e 20 6f e.end..--.output.line.function.o
dea0 75 74 70 75 74 20 28 2e 2e 2e 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 69 3c utput.(...)..local.i=1..while.i<
dec0 3d 61 72 67 2e 6e 20 64 6f 0a 20 20 69 66 20 5f 63 6f 6e 74 20 61 6e 64 20 6e 6f 74 20 73 74 72 =arg.n.do...if._cont.and.not.str
dee0 66 69 6e 64 28 5f 63 6f 6e 74 2c 27 5b 25 28 2c 22 5d 27 29 20 61 6e 64 0a 20 20 20 20 20 73 74 find(_cont,'[%(,"]').and......st
df00 72 66 69 6e 64 28 61 72 67 5b 69 5d 2c 22 5e 5b 25 61 5f 7e 5d 22 29 20 74 68 65 6e 0a 09 20 20 rfind(arg[i],"^[%a_~]").then....
df20 20 20 77 72 69 74 65 28 27 20 27 29 0a 20 20 65 6e 64 0a 20 20 77 72 69 74 65 28 61 72 67 5b 69 ..write('.')...end...write(arg[i
df40 5d 29 0a 20 20 69 66 20 61 72 67 5b 69 5d 20 7e 3d 20 27 27 20 74 68 65 6e 0a 20 20 20 5f 63 6f ])...if.arg[i].~=.''.then...._co
df60 6e 74 20 3d 20 73 74 72 73 75 62 28 61 72 67 5b 69 5d 2c 2d 31 2c 2d 31 29 0a 20 20 65 6e 64 0a nt.=.strsub(arg[i],-1,-1)...end.
df80 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 69 66 20 73 74 72 66 69 6e 64 28 61 72 67 5b 61 ..i.=.i+1..end..if.strfind(arg[a
dfa0 72 67 2e 6e 5d 2c 22 5b 25 2f 25 29 25 3b 25 7b 25 7d 5d 24 22 29 20 74 68 65 6e 0a 20 20 5f 63 rg.n],"[%/%)%;%{%}]$").then..._c
dfc0 6f 6e 74 3d 6e 69 6c 20 77 72 69 74 65 28 27 5c 6e 27 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 ont=nil.write('\n')..end.end..fu
dfe0 6e 63 74 69 6f 6e 20 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 6d 65 74 68 6f 64 73 28 70 74 79 70 nction.get_property_methods(ptyp
e000 65 2c 20 6e 61 6d 65 29 0a 0a 09 69 66 20 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 6d 65 74 68 6f e,.name)...if.get_property_metho
e020 64 73 5f 68 6f 6f 6b 20 61 6e 64 20 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 6d 65 74 68 6f 64 73 ds_hook.and.get_property_methods
e040 5f 68 6f 6f 6b 28 70 74 79 70 65 2c 6e 61 6d 65 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 _hook(ptype,name).then...return.
e060 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 6d 65 74 68 6f 64 73 5f 68 6f 6f 6b 28 70 74 79 70 65 2c get_property_methods_hook(ptype,
e080 20 6e 61 6d 65 29 0a 09 65 6e 64 0a 0a 09 69 66 20 70 74 79 70 65 20 3d 3d 20 22 64 65 66 61 75 .name)..end...if.ptype.==."defau
e0a0 6c 74 22 20 74 68 65 6e 20 2d 2d 20 67 65 74 5f 6e 61 6d 65 2c 20 73 65 74 5f 6e 61 6d 65 0a 09 lt".then.--.get_name,.set_name..
e0c0 09 72 65 74 75 72 6e 20 22 67 65 74 5f 22 2e 2e 6e 61 6d 65 2c 20 22 73 65 74 5f 22 2e 2e 6e 61 .return."get_"..name,."set_"..na
e0e0 6d 65 0a 09 65 6e 64 0a 0a 09 69 66 20 70 74 79 70 65 20 3d 3d 20 22 71 74 22 20 74 68 65 6e 20 me..end...if.ptype.==."qt".then.
e100 2d 2d 20 6e 61 6d 65 2c 20 73 65 74 4e 61 6d 65 0a 09 09 72 65 74 75 72 6e 20 6e 61 6d 65 2c 20 --.name,.setName...return.name,.
e120 22 73 65 74 22 2e 2e 73 74 72 69 6e 67 2e 75 70 70 65 72 28 73 74 72 69 6e 67 2e 73 75 62 28 6e "set"..string.upper(string.sub(n
e140 61 6d 65 2c 20 31 2c 20 31 29 29 2e 2e 73 74 72 69 6e 67 2e 73 75 62 28 6e 61 6d 65 2c 20 32 2c ame,.1,.1))..string.sub(name,.2,
e160 20 2d 31 29 0a 09 65 6e 64 0a 0a 09 69 66 20 70 74 79 70 65 20 3d 3d 20 22 6f 76 65 72 6c 6f 61 .-1)..end...if.ptype.==."overloa
e180 64 22 20 74 68 65 6e 20 2d 2d 20 6e 61 6d 65 2c 20 6e 61 6d 65 0a 09 09 72 65 74 75 72 6e 20 6e d".then.--.name,.name...return.n
e1a0 61 6d 65 2c 6e 61 6d 65 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 6e 69 6c 0a 65 6e 64 0a 0a ame,name..end...return.nil.end..
e1c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 74 68 65 20 68 6f 6f 6b 73 0a 0a 2d 2d 20 63 61 6c --------------.the.hooks..--.cal
e1e0 6c 65 64 20 72 69 67 68 74 20 61 66 74 65 72 20 70 72 6f 63 65 73 73 69 6e 67 20 74 68 65 20 24 led.right.after.processing.the.$
e200 5b 69 63 68 6c 5d 66 69 6c 65 20 64 69 72 65 63 74 69 76 65 73 2c 0a 2d 2d 20 72 69 67 68 74 20 [ichl]file.directives,.--.right.
e220 62 65 66 6f 72 65 20 70 72 6f 63 65 73 73 69 6e 67 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 0a before.processing.anything.else.
e240 2d 2d 20 74 61 6b 65 73 20 74 68 65 20 70 61 63 6b 61 67 65 20 6f 62 6a 65 63 74 20 61 73 20 74 --.takes.the.package.object.as.t
e260 68 65 20 70 61 72 61 6d 65 74 65 72 0a 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 72 6f 63 65 73 73 he.parameter.function.preprocess
e280 5f 68 6f 6f 6b 28 70 29 0a 09 2d 2d 20 70 2e 63 6f 64 65 20 68 61 73 20 61 6c 6c 20 74 68 65 20 _hook(p)..--.p.code.has.all.the.
e2a0 69 6e 70 75 74 20 63 6f 64 65 20 66 72 6f 6d 20 74 68 65 20 70 6b 67 0a 65 6e 64 0a 0a 0a 2d 2d input.code.from.the.pkg.end...--
e2c0 20 63 61 6c 6c 65 64 20 66 6f 72 20 65 76 65 72 79 20 24 69 66 69 6c 65 20 64 69 72 65 63 74 69 .called.for.every.$ifile.directi
e2e0 76 65 0a 2d 2d 20 74 61 6b 65 73 20 61 20 74 61 62 6c 65 20 77 69 74 68 20 61 20 73 74 72 69 6e ve.--.takes.a.table.with.a.strin
e300 67 20 63 61 6c 6c 65 64 20 27 63 6f 64 65 27 20 69 6e 73 69 64 65 2c 20 74 68 65 20 66 69 6c 65 g.called.'code'.inside,.the.file
e320 6e 61 6d 65 2c 20 61 6e 64 20 61 6e 79 20 65 78 74 72 61 20 61 72 67 75 6d 65 6e 74 73 0a 2d 2d name,.and.any.extra.arguments.--
e340 20 70 61 73 73 65 64 20 74 6f 20 24 69 66 69 6c 65 2e 20 6e 6f 20 72 65 74 75 72 6e 20 76 61 6c .passed.to.$ifile..no.return.val
e360 75 65 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 5f 66 69 6c 65 5f 68 6f 6f 6b 28 74 2c ue.function.include_file_hook(t,
e380 20 66 69 6c 65 6e 61 6d 65 2c 20 2e 2e 2e 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c 65 64 20 .filename,....)..end..--.called.
e3a0 61 66 74 65 72 20 70 72 6f 63 65 73 73 69 6e 67 20 61 6e 79 74 68 69 6e 67 20 74 68 61 74 27 73 after.processing.anything.that's
e3c0 20 6e 6f 74 20 63 6f 64 65 20 28 6c 69 6b 65 20 27 24 72 65 6e 61 6d 69 6e 67 27 2c 20 63 6f 6d .not.code.(like.'$renaming',.com
e3e0 6d 65 6e 74 73 2c 20 65 74 63 29 0a 2d 2d 20 61 6e 64 20 72 69 67 68 74 20 62 65 66 6f 72 65 20 ments,.etc).--.and.right.before.
e400 70 61 72 73 69 6e 67 20 74 68 65 20 61 63 74 75 61 6c 20 63 6f 64 65 2e 0a 2d 2d 20 74 61 6b 65 parsing.the.actual.code..--.take
e420 73 20 74 68 65 20 50 61 63 6b 61 67 65 20 6f 62 6a 65 63 74 20 77 69 74 68 20 61 6c 6c 20 74 68 s.the.Package.object.with.all.th
e440 65 20 63 6f 64 65 20 6f 6e 20 74 68 65 20 27 63 6f 64 65 27 20 6b 65 79 2e 20 6e 6f 20 72 65 74 e.code.on.the.'code'.key..no.ret
e460 75 72 6e 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 61 72 73 65 5f 68 6f 6f 6b urn.value.function.preparse_hook
e480 28 70 61 63 6b 61 67 65 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c 65 64 20 62 65 66 6f 72 65 (package)..end..--.called.before
e4a0 20 73 74 61 72 74 69 6e 67 20 6f 75 74 70 75 74 0a 66 75 6e 63 74 69 6f 6e 20 70 72 65 5f 6f 75 .starting.output.function.pre_ou
e4c0 74 70 75 74 5f 68 6f 6f 6b 28 70 61 63 6b 61 67 65 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c tput_hook(package)..end..--.call
e4e0 65 64 20 61 66 74 65 72 20 77 72 69 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 6f 75 74 70 75 74 2e ed.after.writing.all.the.output.
e500 0a 2d 2d 20 74 61 6b 65 73 20 74 68 65 20 50 61 63 6b 61 67 65 20 6f 62 6a 65 63 74 0a 66 75 6e .--.takes.the.Package.object.fun
e520 63 74 69 6f 6e 20 70 6f 73 74 5f 6f 75 74 70 75 74 5f 68 6f 6f 6b 28 70 61 63 6b 61 67 65 29 0a ction.post_output_hook(package).
e540 0a 65 6e 64 0a 0a 0a 2d 2d 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 27 67 65 74 5f 70 72 6f 70 65 .end...--.called.from.'get_prope
e560 72 74 79 5f 6d 65 74 68 6f 64 73 27 20 74 6f 20 67 65 74 20 74 68 65 20 6d 65 74 68 6f 64 73 20 rty_methods'.to.get.the.methods.
e580 74 6f 20 72 65 74 72 69 65 76 65 20 61 20 70 72 6f 70 65 72 74 79 0a 2d 2d 20 61 63 63 6f 72 64 to.retrieve.a.property.--.accord
e5a0 69 6e 67 20 74 6f 20 69 74 73 20 74 79 70 65 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 5f 70 72 6f ing.to.its.type.function.get_pro
e5c0 70 65 72 74 79 5f 6d 65 74 68 6f 64 73 5f 68 6f 6f 6b 28 70 72 6f 70 65 72 74 79 5f 74 79 70 65 perty_methods_hook(property_type
e5e0 2c 20 6e 61 6d 65 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 43 6c 61 ,.name)..end..--.called.from.Cla
e600 73 73 43 6f 6e 74 61 69 6e 65 72 3a 64 6f 70 61 72 73 65 20 77 69 74 68 20 74 68 65 20 73 74 72 ssContainer:doparse.with.the.str
e620 69 6e 67 20 62 65 69 6e 67 20 70 61 72 73 65 64 0a 2d 2d 20 72 65 74 75 72 6e 20 6e 69 6c 2c 20 ing.being.parsed.--.return.nil,.
e640 6f 72 20 61 20 73 75 62 73 74 72 69 6e 67 0a 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 72 5f 68 or.a.substring.function.parser_h
e660 6f 6f 6b 28 73 29 0a 0a 09 72 65 74 75 72 6e 20 6e 69 6c 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c ook(s)...return.nil.end..--.call
e680 65 64 20 66 72 6f 6d 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 3a 73 75 70 63 6f 64 65 2c 20 62 ed.from.classFunction:supcode,.b
e6a0 65 66 6f 72 65 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 efore.the.call.to.the.function.i
e6c0 73 20 6f 75 74 70 75 74 0a 66 75 6e 63 74 69 6f 6e 20 70 72 65 5f 63 61 6c 6c 5f 68 6f 6f 6b 28 s.output.function.pre_call_hook(
e6e0 66 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 63 6c 61 73 73 46 75 6e f)..end..--.called.from.classFun
e700 63 74 69 6f 6e 3a 73 75 70 63 6f 64 65 2c 20 61 66 74 65 72 20 74 68 65 20 63 61 6c 6c 20 74 6f ction:supcode,.after.the.call.to
e720 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 75 74 70 75 74 0a 66 75 6e 63 74 69 6f 6e .the.function.is.output.function
e740 20 70 6f 73 74 5f 63 61 6c 6c 5f 68 6f 6f 6b 28 66 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c .post_call_hook(f)..end..--.call
e760 65 64 20 62 65 66 6f 72 65 20 74 68 65 20 72 65 67 69 73 74 65 72 20 63 6f 64 65 20 69 73 20 6f ed.before.the.register.code.is.o
e780 75 74 70 75 74 0a 66 75 6e 63 74 69 6f 6e 20 70 72 65 5f 72 65 67 69 73 74 65 72 5f 68 6f 6f 6b utput.function.pre_register_hook
e7a0 28 70 61 63 6b 61 67 65 29 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 61 6c 6c 65 64 20 74 6f 20 6f 75 74 (package)..end..--.called.to.out
e7c0 70 75 74 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 0a 66 75 6e 63 74 69 6f 6e 20 6f 75 put.an.error.message.function.ou
e7e0 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 2e 2e 2e 29 0a 09 72 65 74 75 72 6e 20 73 74 72 tput_error_hook(...)..return.str
e800 69 6e 67 2e 66 6f 72 6d 61 74 28 2e 2e 2e 29 0a 65 6e 64 0a 0a 2d 2d 20 63 75 73 74 6f 6d 20 70 ing.format(...).end..--.custom.p
e820 75 73 68 65 72 73 0a 0a 5f 70 75 73 68 5f 66 75 6e 63 74 69 6f 6e 73 20 3d 20 7b 7d 0a 5f 69 73 ushers.._push_functions.=.{}._is
e840 5f 66 75 6e 63 74 69 6f 6e 73 20 3d 20 7b 7d 0a 5f 65 6e 75 6d 73 20 3d 20 7b 7d 0a 5f 74 6f 5f _functions.=.{}._enums.=.{}._to_
e860 66 75 6e 63 74 69 6f 6e 73 20 3d 20 7b 7d 0a 0a 5f 62 61 73 65 5f 70 75 73 68 5f 66 75 6e 63 74 functions.=.{}.._base_push_funct
e880 69 6f 6e 73 20 3d 20 7b 7d 0a 5f 62 61 73 65 5f 69 73 5f 66 75 6e 63 74 69 6f 6e 73 20 3d 20 7b ions.=.{}._base_is_functions.=.{
e8a0 7d 0a 5f 62 61 73 65 5f 74 6f 5f 66 75 6e 63 74 69 6f 6e 73 20 3d 20 7b 7d 0a 0a 6c 6f 63 61 6c }._base_to_functions.=.{}..local
e8c0 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 5f 62 61 73 65 28 74 2c 20 66 75 6e 63 73 29 0a .function.search_base(t,.funcs).
e8e0 0a 09 6c 6f 63 61 6c 20 63 6c 61 73 73 20 3d 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b ..local.class.=._global_classes[
e900 74 5d 0a 0a 09 77 68 69 6c 65 20 63 6c 61 73 73 20 64 6f 0a 09 09 69 66 20 66 75 6e 63 73 5b 63 t]...while.class.do...if.funcs[c
e920 6c 61 73 73 2e 74 79 70 65 5d 20 74 68 65 6e 0a 09 09 09 72 65 74 75 72 6e 20 66 75 6e 63 73 5b lass.type].then....return.funcs[
e940 63 6c 61 73 73 2e 74 79 70 65 5d 0a 09 09 65 6e 64 0a 09 09 63 6c 61 73 73 20 3d 20 5f 67 6c 6f class.type]...end...class.=._glo
e960 62 61 6c 5f 63 6c 61 73 73 65 73 5b 63 6c 61 73 73 2e 62 74 79 70 65 5d 0a 09 65 6e 64 0a 09 72 bal_classes[class.btype]..end..r
e980 65 74 75 72 6e 20 6e 69 6c 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 5f 70 75 73 68 eturn.nil.end..function.get_push
e9a0 5f 66 75 6e 63 74 69 6f 6e 28 74 29 0a 09 72 65 74 75 72 6e 20 5f 70 75 73 68 5f 66 75 6e 63 74 _function(t)..return._push_funct
e9c0 69 6f 6e 73 5b 74 5d 20 6f 72 20 73 65 61 72 63 68 5f 62 61 73 65 28 74 2c 20 5f 62 61 73 65 5f ions[t].or.search_base(t,._base_
e9e0 70 75 73 68 5f 66 75 6e 63 74 69 6f 6e 73 29 20 6f 72 20 22 74 6f 6c 75 61 5f 70 75 73 68 75 73 push_functions).or."tolua_pushus
ea00 65 72 74 79 70 65 22 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 5f 74 6f 5f 66 75 6e ertype".end..function.get_to_fun
ea20 63 74 69 6f 6e 28 74 29 0a 09 72 65 74 75 72 6e 20 5f 74 6f 5f 66 75 6e 63 74 69 6f 6e 73 5b 74 ction(t)..return._to_functions[t
ea40 5d 20 6f 72 20 73 65 61 72 63 68 5f 62 61 73 65 28 74 2c 20 5f 62 61 73 65 5f 74 6f 5f 66 75 6e ].or.search_base(t,._base_to_fun
ea60 63 74 69 6f 6e 73 29 20 6f 72 20 22 74 6f 6c 75 61 5f 74 6f 75 73 65 72 74 79 70 65 22 0a 65 6e ctions).or."tolua_tousertype".en
ea80 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 5f 69 73 5f 66 75 6e 63 74 69 6f 6e 28 74 29 0a 09 d..function.get_is_function(t)..
eaa0 69 66 20 5f 65 6e 75 6d 73 5b 74 5d 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 22 74 6f 6c 75 if._enums[t].then...return."tolu
eac0 61 5f 69 73 22 20 2e 2e 20 74 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 5f 69 73 5f 66 75 6e 63 a_is"....t..end..return._is_func
eae0 74 69 6f 6e 73 5b 74 5d 20 6f 72 20 73 65 61 72 63 68 5f 62 61 73 65 28 74 2c 20 5f 62 61 73 65 tions[t].or.search_base(t,._base
eb00 5f 69 73 5f 66 75 6e 63 74 69 6f 6e 73 29 20 6f 72 20 22 74 6f 6c 75 61 5f 69 73 75 73 65 72 74 _is_functions).or."tolua_isusert
eb20 79 70 65 22 0a 65 6e 64 0a 00 00 00 00 00 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 65 6e 75 6d 65 72 ype".end........--.tolua:.enumer
eb40 61 74 65 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 ate.class.--.Written.by.Waldemar
eb60 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c .Celes.--.TeCGraf/PUC-Rio.--.Jul
eb80 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 65 6e 75 6d 65 72 61 74 65 2e 6c 75 61 2c 76 20 31 2e .1998.--.$Id:.enumerate.lua,v.1.
eba0 33 20 32 30 30 30 2f 30 31 2f 32 34 20 32 30 3a 34 31 3a 31 35 20 63 65 6c 65 73 20 45 78 70 20 3.2000/01/24.20:41:15.celes.Exp.
ebc0 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 $..--.This.code.is.free.software
ebe0 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 ;.you.can.redistribute.it.and/or
ec00 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 .modify.it..--.The.software.prov
ec20 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 ided.hereunder.is.on.an."as.is".
ec40 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 basis,.and.--.the.author.has.no.
ec60 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 obligation.to.provide.maintenanc
ec80 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d e,.support,.updates,.--.enhancem
eca0 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 45 6e 75 ents,.or.modifications....--.Enu
ecc0 6d 65 72 61 74 65 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 65 6e 75 6d 65 merate.class.--.Represents.enume
ece0 72 61 74 69 6f 6e 0a 2d 2d 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 20 61 ration.--.The.following.fields.a
ed00 72 65 20 73 74 6f 72 65 64 3a 0a 2d 2d 20 20 20 20 7b 69 7d 20 3d 20 6c 69 73 74 20 6f 66 20 63 re.stored:.--....{i}.=.list.of.c
ed20 6f 6e 73 74 61 6e 74 20 6e 61 6d 65 73 0a 63 6c 61 73 73 45 6e 75 6d 65 72 61 74 65 20 3d 20 7b onstant.names.classEnumerate.=.{
ed40 0a 7d 0a 63 6c 61 73 73 45 6e 75 6d 65 72 61 74 65 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 .}.classEnumerate.__index.=.clas
ed60 73 45 6e 75 6d 65 72 61 74 65 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 45 6e 75 sEnumerate.setmetatable(classEnu
ed80 6d 65 72 61 74 65 2c 63 6c 61 73 73 46 65 61 74 75 72 65 29 0a 0a 2d 2d 20 72 65 67 69 73 74 65 merate,classFeature)..--.registe
eda0 72 20 65 6e 75 6d 65 72 61 74 69 6f 6e 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 45 6e 75 6d r.enumeration.function.classEnum
edc0 65 72 61 74 65 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 09 69 66 20 6e 6f 74 20 73 65 6c erate:register.(pre)..if.not.sel
ede0 66 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 72 f:check_public_access().then...r
ee00 65 74 75 72 6e 0a 09 65 6e 64 0a 20 70 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 6c 6f 63 eturn..end..pre.=.pre.or.''..loc
ee20 61 6c 20 6e 73 70 61 63 65 20 3d 20 67 65 74 6e 61 6d 65 73 70 61 63 65 28 63 6c 61 73 73 43 6f al.nspace.=.getnamespace(classCo
ee40 6e 74 61 69 6e 65 72 2e 63 75 72 72 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 ntainer.curr)..local.i=1..while.
ee60 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 09 69 66 20 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 69 5d 20 61 self[i].do...if.self.lnames[i].a
ee80 6e 64 20 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 69 5d 20 7e 3d 20 22 22 20 74 68 65 6e 0a 09 0a 09 nd.self.lnames[i].~=."".then....
eea0 09 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 63 6f 6e 73 74 61 6e 74 28 74 6f 6c .output(pre..'tolua_constant(tol
eec0 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 69 5d 2e 2e 27 22 2c 27 2e 2e 6e ua_S,"'..self.lnames[i]..'",'..n
eee0 73 70 61 63 65 2e 2e 73 65 6c 66 5b 69 5d 2e 2e 27 29 3b 27 29 0a 09 65 6e 64 0a 20 20 69 20 3d space..self[i]..');')..end...i.=
ef00 20 69 2b 31 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 .i+1..end.end..--.Print.method.f
ef20 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 45 6e 75 6d 65 72 61 74 65 3a 70 72 69 6e 74 20 28 69 64 unction.classEnumerate:print.(id
ef40 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 45 6e 75 6d 65 72 ent,close)..print(ident.."Enumer
ef60 61 74 65 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 22 2e ate{")..print(ident..".name.=.".
ef80 2e 73 65 6c 66 2e 6e 61 6d 65 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 .self.name)..local.i=1..while.se
efa0 6c 66 5b 69 5d 20 64 6f 0a 20 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 27 22 2e 2e 73 65 lf[i].do...print(ident..".'"..se
efc0 6c 66 5b 69 5d 2e 2e 22 27 28 22 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 69 5d 2e 2e 22 29 2c lf[i].."'("..self.lnames[i].."),
efe0 22 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e ")...i.=.i+1..end..print(ident..
f000 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 65 6d 69 74 65 6e "}"..close).end..function.emiten
f020 75 6d 70 72 6f 74 6f 74 79 70 65 28 74 79 70 65 29 0a 20 6f 75 74 70 75 74 28 22 69 6e 74 20 74 umprototype(type)..output("int.t
f040 6f 6c 75 61 5f 69 73 22 20 2e 2e 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 79 70 65 2c 22 3a 3a olua_is"....string.gsub(type,"::
f060 22 2c 22 5f 22 29 20 2e 2e 20 22 20 28 6c 75 61 5f 53 74 61 74 65 2a 20 4c 2c 20 69 6e 74 20 6c ","_")....".(lua_State*.L,.int.l
f080 6f 2c 20 69 6e 74 20 64 65 66 2c 20 74 6f 6c 75 61 5f 45 72 72 6f 72 2a 20 65 72 72 29 3b 22 29 o,.int.def,.tolua_Error*.err);")
f0a0 0a 65 6e 64 0a 0a 5f 67 6c 6f 62 61 6c 5f 6f 75 74 70 75 74 5f 65 6e 75 6d 73 20 3d 20 7b 7d 0a .end.._global_output_enums.=.{}.
f0c0 0a 2d 2d 20 77 72 69 74 65 20 73 75 70 70 6f 72 74 20 63 6f 64 65 0a 66 75 6e 63 74 69 6f 6e 20 .--.write.support.code.function.
f0e0 63 6c 61 73 73 45 6e 75 6d 65 72 61 74 65 3a 73 75 70 63 6f 64 65 20 28 29 0a 09 69 66 20 5f 67 classEnumerate:supcode.()..if._g
f100 6c 6f 62 61 6c 5f 6f 75 74 70 75 74 5f 65 6e 75 6d 73 5b 73 65 6c 66 2e 6e 61 6d 65 5d 20 3d 3d lobal_output_enums[self.name].==
f120 20 6e 69 6c 20 74 68 65 6e 0a 09 09 5f 67 6c 6f 62 61 6c 5f 6f 75 74 70 75 74 5f 65 6e 75 6d 73 .nil.then..._global_output_enums
f140 5b 73 65 6c 66 2e 6e 61 6d 65 5d 20 3d 20 31 0a 09 09 6f 75 74 70 75 74 28 22 69 6e 74 20 74 6f [self.name].=.1...output("int.to
f160 6c 75 61 5f 69 73 22 20 2e 2e 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 65 6c 66 2e 6e 61 6d 65 lua_is"....string.gsub(self.name
f180 2c 22 3a 3a 22 2c 22 5f 22 29 20 2e 2e 20 22 20 28 6c 75 61 5f 53 74 61 74 65 2a 20 4c 2c 20 69 ,"::","_")....".(lua_State*.L,.i
f1a0 6e 74 20 6c 6f 2c 20 69 6e 74 20 64 65 66 2c 20 74 6f 6c 75 61 5f 45 72 72 6f 72 2a 20 65 72 72 nt.lo,.int.def,.tolua_Error*.err
f1c0 29 22 29 0a 09 09 6f 75 74 70 75 74 28 22 7b 22 29 0a 09 09 6f 75 74 70 75 74 28 22 69 66 20 28 )")...output("{")...output("if.(
f1e0 21 74 6f 6c 75 61 5f 69 73 6e 75 6d 62 65 72 28 4c 2c 6c 6f 2c 64 65 66 2c 65 72 72 29 29 20 72 !tolua_isnumber(L,lo,def,err)).r
f200 65 74 75 72 6e 20 30 3b 22 29 0a 09 09 6f 75 74 70 75 74 28 22 6c 75 61 5f 4e 75 6d 62 65 72 20 eturn.0;")...output("lua_Number.
f220 76 61 6c 20 3d 20 74 6f 6c 75 61 5f 74 6f 6e 75 6d 62 65 72 28 4c 2c 6c 6f 2c 64 65 66 29 3b 22 val.=.tolua_tonumber(L,lo,def);"
f240 29 0a 09 09 6f 75 74 70 75 74 28 22 72 65 74 75 72 6e 20 76 61 6c 20 3e 3d 20 22 20 2e 2e 20 73 )...output("return.val.>=."....s
f260 65 6c 66 2e 6d 69 6e 20 2e 2e 20 22 2e 30 20 26 26 20 76 61 6c 20 3c 3d 20 22 20 2e 2e 73 65 6c elf.min....".0.&&.val.<=."...sel
f280 66 2e 6d 61 78 20 2e 2e 20 22 2e 30 3b 22 29 0a 09 09 6f 75 74 70 75 74 28 22 7d 22 29 0a 09 65 f.max....".0;")...output("}")..e
f2a0 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 74 6f 72 0a nd.end..--.Internal.constructor.
f2c0 66 75 6e 63 74 69 6f 6e 20 5f 45 6e 75 6d 65 72 61 74 65 20 28 74 2c 76 61 72 6e 61 6d 65 29 0a function._Enumerate.(t,varname).
f2e0 20 73 65 74 6d 65 74 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 45 6e 75 6d 65 72 61 74 65 29 0a .setmetatable(t,classEnumerate).
f300 20 61 70 70 65 6e 64 28 74 29 0a 20 61 70 70 65 6e 64 65 6e 75 6d 28 74 29 0a 09 20 69 66 20 76 .append(t)..appendenum(t)...if.v
f320 61 72 6e 61 6d 65 20 61 6e 64 20 76 61 72 6e 61 6d 65 20 7e 3d 20 22 22 20 74 68 65 6e 0a 09 09 arname.and.varname.~=."".then...
f340 69 66 20 74 2e 6e 61 6d 65 20 7e 3d 20 22 22 20 74 68 65 6e 0a 09 09 09 56 61 72 69 61 62 6c 65 if.t.name.~=."".then....Variable
f360 28 74 2e 6e 61 6d 65 2e 2e 22 20 22 2e 2e 76 61 72 6e 61 6d 65 29 0a 09 09 65 6c 73 65 0a 09 09 (t.name.."."..varname)...else...
f380 09 6c 6f 63 61 6c 20 6e 73 20 3d 20 67 65 74 63 75 72 72 6e 61 6d 65 73 70 61 63 65 28 29 0a 09 .local.ns.=.getcurrnamespace()..
f3a0 09 09 77 61 72 6e 69 6e 67 28 22 56 61 72 69 61 62 6c 65 20 22 2e 2e 6e 73 2e 2e 76 61 72 6e 61 ..warning("Variable."..ns..varna
f3c0 6d 65 2e 2e 22 20 6f 66 20 74 79 70 65 20 3c 61 6e 6f 6e 79 6d 6f 75 73 20 65 6e 75 6d 3e 20 69 me..".of.type.<anonymous.enum>.i
f3e0 73 20 64 65 63 6c 61 72 65 64 20 61 73 20 72 65 61 64 2d 6f 6e 6c 79 22 29 0a 09 09 09 56 61 72 s.declared.as.read-only")....Var
f400 69 61 62 6c 65 28 22 74 6f 6c 75 61 5f 72 65 61 64 6f 6e 6c 79 20 69 6e 74 20 22 2e 2e 76 61 72 iable("tolua_readonly.int."..var
f420 6e 61 6d 65 29 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 09 20 6c 6f 63 61 6c 20 70 61 72 65 6e 74 20 name)...end..end...local.parent.
f440 3d 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 0a 09 20 69 66 20 70 61 72 65 6e =.classContainer.curr...if.paren
f460 74 20 74 68 65 6e 0a 09 09 74 2e 61 63 63 65 73 73 20 3d 20 70 61 72 65 6e 74 2e 63 75 72 72 5f t.then...t.access.=.parent.curr_
f480 6d 65 6d 62 65 72 5f 61 63 63 65 73 73 0a 09 09 74 2e 67 6c 6f 62 61 6c 5f 61 63 63 65 73 73 20 member_access...t.global_access.
f4a0 3d 20 74 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 0a 09 20 65 6e 64 0a =.t:check_public_access()...end.
f4c0 09 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d .return.t.end..--.Constructor.--
f4e0 20 45 78 70 65 63 74 73 20 61 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 .Expects.a.string.representing.t
f500 68 65 20 65 6e 75 6d 65 72 61 74 65 20 62 6f 64 79 0a 66 75 6e 63 74 69 6f 6e 20 45 6e 75 6d 65 he.enumerate.body.function.Enume
f520 72 61 74 65 20 28 6e 2c 62 2c 76 61 72 6e 61 6d 65 29 0a 09 62 20 3d 20 73 74 72 69 6e 67 2e 67 rate.(n,b,varname)..b.=.string.g
f540 73 75 62 28 62 2c 20 22 2c 5b 25 73 5c 6e 5d 2a 7d 22 2c 20 22 5c 6e 7d 22 29 20 2d 2d 20 65 6c sub(b,.",[%s\n]*}",."\n}").--.el
f560 69 6d 69 6e 61 74 65 20 6c 61 73 74 20 27 2c 27 0a 09 6c 6f 63 61 6c 20 74 20 3d 20 73 70 6c 69 iminate.last.','..local.t.=.spli
f580 74 28 73 74 72 73 75 62 28 62 2c 32 2c 2d 32 29 2c 27 2c 27 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 t(strsub(b,2,-2),',').--.elimina
f5a0 74 65 20 62 72 61 63 65 73 0a 09 6c 6f 63 61 6c 20 69 20 3d 20 31 0a 09 6c 6f 63 61 6c 20 65 20 te.braces..local.i.=.1..local.e.
f5c0 3d 20 7b 6e 3d 30 7d 0a 09 6c 6f 63 61 6c 20 76 61 6c 75 65 20 3d 20 30 0a 09 6c 6f 63 61 6c 20 =.{n=0}..local.value.=.0..local.
f5e0 6d 69 6e 20 3d 20 30 0a 09 6c 6f 63 61 6c 20 6d 61 78 20 3d 20 30 0a 09 77 68 69 6c 65 20 74 5b min.=.0..local.max.=.0..while.t[
f600 69 5d 20 64 6f 0a 09 09 6c 6f 63 61 6c 20 74 74 20 3d 20 73 70 6c 69 74 28 74 5b 69 5d 2c 27 3d i].do...local.tt.=.split(t[i],'=
f620 27 29 20 20 2d 2d 20 64 69 73 63 61 72 64 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 0a 09 09 65 ')..--.discard.initial.value...e
f640 2e 6e 20 3d 20 65 2e 6e 20 2b 20 31 0a 09 09 65 5b 65 2e 6e 5d 20 3d 20 74 74 5b 31 5d 0a 09 09 .n.=.e.n.+.1...e[e.n].=.tt[1]...
f660 74 74 5b 32 5d 20 3d 20 74 6f 6e 75 6d 62 65 72 28 74 74 5b 32 5d 29 0a 09 09 69 66 20 74 74 5b tt[2].=.tonumber(tt[2])...if.tt[
f680 32 5d 20 3d 3d 20 6e 69 6c 20 74 68 65 6e 0a 09 09 09 74 74 5b 32 5d 20 3d 20 76 61 6c 75 65 0a 2].==.nil.then....tt[2].=.value.
f6a0 09 09 65 6e 64 20 0a 20 20 09 09 76 61 6c 75 65 20 3d 20 74 74 5b 32 5d 20 2b 20 31 20 2d 2d 20 ..end......value.=.tt[2].+.1.--.
f6c0 61 64 76 61 6e 63 65 20 74 68 65 20 73 65 6c 65 63 74 65 64 20 76 61 6c 75 65 0a 09 09 69 66 20 advance.the.selected.value...if.
f6e0 74 74 5b 32 5d 20 3e 20 6d 61 78 20 74 68 65 6e 0a 09 09 09 6d 61 78 20 3d 20 74 74 5b 32 5d 0a tt[2].>.max.then....max.=.tt[2].
f700 09 09 65 6e 64 0a 09 09 69 66 20 74 74 5b 32 5d 20 3c 20 6d 69 6e 20 74 68 65 6e 0a 09 09 09 6d ..end...if.tt[2].<.min.then....m
f720 69 6e 20 3d 20 74 74 5b 32 5d 0a 09 09 65 6e 64 0a 09 09 69 20 3d 20 69 2b 31 0a 09 65 6e 64 0a in.=.tt[2]...end...i.=.i+1..end.
f740 09 2d 2d 20 73 65 74 20 6c 75 61 20 6e 61 6d 65 73 0a 09 69 20 20 3d 20 31 0a 09 65 2e 6c 6e 61 .--.set.lua.names..i..=.1..e.lna
f760 6d 65 73 20 3d 20 7b 7d 0a 09 6c 6f 63 61 6c 20 6e 73 20 3d 20 67 65 74 63 75 72 72 6e 61 6d 65 mes.=.{}..local.ns.=.getcurrname
f780 73 70 61 63 65 28 29 0a 09 77 68 69 6c 65 20 65 5b 69 5d 20 64 6f 0a 09 09 6c 6f 63 61 6c 20 74 space()..while.e[i].do...local.t
f7a0 20 3d 20 73 70 6c 69 74 28 65 5b 69 5d 2c 27 40 27 29 0a 09 09 65 5b 69 5d 20 3d 20 74 5b 31 5d .=.split(e[i],'@')...e[i].=.t[1]
f7c0 0a 09 09 69 66 20 6e 6f 74 20 74 5b 32 5d 20 74 68 65 6e 0a 09 09 09 74 5b 32 5d 20 3d 20 61 70 ...if.not.t[2].then....t[2].=.ap
f7e0 70 6c 79 72 65 6e 61 6d 69 6e 67 28 74 5b 31 5d 29 0a 09 09 65 6e 64 0a 09 09 65 2e 6c 6e 61 6d plyrenaming(t[1])...end...e.lnam
f800 65 73 5b 69 5d 20 3d 20 74 5b 32 5d 20 6f 72 20 74 5b 31 5d 0a 09 09 5f 67 6c 6f 62 61 6c 5f 65 es[i].=.t[2].or.t[1]..._global_e
f820 6e 75 6d 73 5b 20 6e 73 2e 2e 65 5b 69 5d 20 5d 20 3d 20 28 6e 73 2e 2e 65 5b 69 5d 29 0a 09 09 nums[.ns..e[i].].=.(ns..e[i])...
f840 69 20 3d 20 69 2b 31 0a 09 65 6e 64 0a 09 65 2e 6e 61 6d 65 20 3d 20 6e 0a 09 65 2e 6d 69 6e 20 i.=.i+1..end..e.name.=.n..e.min.
f860 3d 20 6d 69 6e 0a 09 65 2e 6d 61 78 20 3d 20 6d 61 78 0a 09 69 66 20 6e 20 7e 3d 20 22 22 20 74 =.min..e.max.=.max..if.n.~=."".t
f880 68 65 6e 0a 09 09 5f 65 6e 75 6d 73 5b 6e 5d 20 3d 20 74 72 75 65 0a 09 09 54 79 70 65 64 65 66 hen..._enums[n].=.true...Typedef
f8a0 28 22 69 6e 74 20 22 2e 2e 6e 29 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 5f 45 6e 75 6d 65 72 ("int."..n)..end..return._Enumer
f8c0 61 74 65 28 65 2c 20 76 61 72 6e 61 6d 65 29 0a 65 6e 64 0a 0a 00 00 00 2d 2d 20 74 6f 6c 75 61 ate(e,.varname).end.....--.tolua
f8e0 3a 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 :.declaration.class.--.Written.b
f900 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d y.Waldemar.Celes.--.TeCGraf/PUC-
f920 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 Rio.--.Jul.1998.--.$Id:.$..--.Th
f940 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 is.code.is.free.software;.you.ca
f960 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 n.redistribute.it.and/or.modify.
f980 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 it..--.The.software.provided.her
f9a0 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 eunder.is.on.an."as.is".basis,.a
f9c0 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 nd.--.the.author.has.no.obligati
f9e0 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f on.to.provide.maintenance,.suppo
fa00 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 rt,.updates,.--.enhancements,.or
fa20 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 44 65 63 6c 61 72 61 74 69 6f 6e .modifications....--.Declaration
fa40 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 76 61 72 69 61 62 6c 65 2c 20 66 .class.--.Represents.variable,.f
fa60 75 6e 63 74 69 6f 6e 2c 20 6f 72 20 61 72 67 75 6d 65 6e 74 20 64 65 63 6c 61 72 61 74 69 6f 6e unction,.or.argument.declaration
fa80 2e 0a 2d 2d 20 53 74 6f 72 65 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 ..--.Stores.the.following.fields
faa0 3a 0a 2d 2d 20 20 6d 6f 64 20 20 3d 20 74 79 70 65 20 6d 6f 64 69 66 69 65 72 73 0a 2d 2d 20 20 :.--..mod..=.type.modifiers.--..
fac0 74 79 70 65 20 3d 20 74 79 70 65 0a 2d 2d 20 20 70 74 72 20 20 3d 20 22 2a 22 20 6f 72 20 22 26 type.=.type.--..ptr..=."*".or."&
fae0 22 2c 20 69 66 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 6f 72 20 ",.if.representing.a.pointer.or.
fb00 61 20 72 65 66 65 72 65 6e 63 65 0a 2d 2d 20 20 6e 61 6d 65 20 3d 20 6e 61 6d 65 0a 2d 2d 20 20 a.reference.--..name.=.name.--..
fb20 64 69 6d 20 20 3d 20 64 69 6d 65 6e 73 69 6f 6e 2c 20 69 66 20 61 20 76 65 63 74 6f 72 0a 2d 2d dim..=.dimension,.if.a.vector.--
fb40 20 20 64 65 66 20 20 3d 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 2c 20 69 66 20 61 6e 79 20 28 ..def..=.default.value,.if.any.(
fb60 6f 6e 6c 79 20 66 6f 72 20 61 72 67 75 6d 65 6e 74 73 29 0a 2d 2d 20 20 72 65 74 20 20 3d 20 22 only.for.arguments).--..ret..=."
fb80 2a 22 20 6f 72 20 22 26 22 2c 20 69 66 20 76 61 6c 75 65 20 69 73 20 74 6f 20 62 65 20 72 65 74 *".or."&",.if.value.is.to.be.ret
fba0 75 72 6e 65 64 20 28 6f 6e 6c 79 20 66 6f 72 20 61 72 67 75 6d 65 6e 74 73 29 0a 63 6c 61 73 73 urned.(only.for.arguments).class
fbc0 44 65 63 6c 61 72 61 74 69 6f 6e 20 3d 20 7b 0a 20 6d 6f 64 20 3d 20 27 27 2c 0a 20 74 79 70 65 Declaration.=.{..mod.=.'',..type
fbe0 20 3d 20 27 27 2c 0a 20 70 74 72 20 3d 20 27 27 2c 0a 20 6e 61 6d 65 20 3d 20 27 27 2c 0a 20 64 .=.'',..ptr.=.'',..name.=.'',..d
fc00 69 6d 20 3d 20 27 27 2c 0a 20 72 65 74 20 3d 20 27 27 2c 0a 20 64 65 66 20 3d 20 27 27 0a 7d 0a im.=.'',..ret.=.'',..def.=.''.}.
fc20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 classDeclaration.__index.=.class
fc40 44 65 63 6c 61 72 61 74 69 6f 6e 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 44 65 Declaration.setmetatable(classDe
fc60 63 6c 61 72 61 74 69 6f 6e 2c 63 6c 61 73 73 46 65 61 74 75 72 65 29 0a 0a 2d 2d 20 43 72 65 61 claration,classFeature)..--.Crea
fc80 74 65 20 61 6e 20 75 6e 69 71 75 65 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 0a 66 75 6e 63 74 te.an.unique.variable.name.funct
fca0 69 6f 6e 20 63 72 65 61 74 65 5f 76 61 72 6e 61 6d 65 20 28 29 0a 20 69 66 20 6e 6f 74 20 5f 76 ion.create_varname.()..if.not._v
fcc0 61 72 6e 75 6d 62 65 72 20 74 68 65 6e 20 5f 76 61 72 6e 75 6d 62 65 72 20 3d 20 30 20 65 6e 64 arnumber.then._varnumber.=.0.end
fce0 0a 20 5f 76 61 72 6e 75 6d 62 65 72 20 3d 20 5f 76 61 72 6e 75 6d 62 65 72 20 2b 20 31 0a 20 72 .._varnumber.=._varnumber.+.1..r
fd00 65 74 75 72 6e 20 22 74 6f 6c 75 61 5f 76 61 72 5f 22 2e 2e 5f 76 61 72 6e 75 6d 62 65 72 0a 65 eturn."tolua_var_".._varnumber.e
fd20 6e 64 0a 0a 2d 2d 20 43 68 65 63 6b 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6e 61 6d 65 0a 2d 2d nd..--.Check.declaration.name.--
fd40 20 49 74 20 61 6c 73 6f 20 69 64 65 6e 74 69 66 69 65 73 20 64 65 66 61 75 6c 74 20 76 61 6c 75 .It.also.identifies.default.valu
fd60 65 73 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 63 68 65 es.function.classDeclaration:che
fd80 63 6b 6e 61 6d 65 20 28 29 0a 0a 20 69 66 20 73 74 72 73 75 62 28 73 65 6c 66 2e 6e 61 6d 65 2c ckname.()...if.strsub(self.name,
fda0 31 2c 31 29 20 3d 3d 20 27 5b 27 20 61 6e 64 20 6e 6f 74 20 66 69 6e 64 74 79 70 65 28 73 65 6c 1,1).==.'['.and.not.findtype(sel
fdc0 66 2e 74 79 70 65 29 20 74 68 65 6e 0a 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 73 65 6c 66 2e f.type).then...self.name.=.self.
fde0 74 79 70 65 2e 2e 73 65 6c 66 2e 6e 61 6d 65 0a 20 20 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 type..self.name...local.m.=.spli
fe00 74 28 73 65 6c 66 2e 6d 6f 64 2c 27 25 73 25 73 2a 27 29 0a 20 20 73 65 6c 66 2e 74 79 70 65 20 t(self.mod,'%s%s*')...self.type.
fe20 3d 20 6d 5b 6d 2e 6e 5d 0a 20 20 73 65 6c 66 2e 6d 6f 64 20 3d 20 63 6f 6e 63 61 74 28 6d 2c 31 =.m[m.n]...self.mod.=.concat(m,1
fe40 2c 6d 2e 6e 2d 31 29 0a 20 65 6e 64 0a 0a 20 6c 6f 63 61 6c 20 74 20 3d 20 73 70 6c 69 74 28 73 ,m.n-1)..end...local.t.=.split(s
fe60 65 6c 66 2e 6e 61 6d 65 2c 27 3d 27 29 0a 20 69 66 20 74 2e 6e 3d 3d 32 20 74 68 65 6e 0a 20 20 elf.name,'=')..if.t.n==2.then...
fe80 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 74 5b 31 5d 0a 20 20 73 65 6c 66 2e 64 65 66 20 3d 20 66 69 self.name.=.t[1]...self.def.=.fi
fea0 6e 64 5f 65 6e 75 6d 5f 76 61 72 28 74 5b 74 2e 6e 5d 29 0a 20 65 6e 64 0a 0a 20 6c 6f 63 61 6c nd_enum_var(t[t.n])..end...local
fec0 20 62 2c 65 2c 64 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6e 61 6d 65 2c 22 25 5b 28 2e .b,e,d.=.strfind(self.name,"%[(.
fee0 2d 29 25 5d 22 29 0a 20 69 66 20 62 20 74 68 65 6e 0a 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 -)%]")..if.b.then...self.name.=.
ff00 73 74 72 73 75 62 28 73 65 6c 66 2e 6e 61 6d 65 2c 31 2c 62 2d 31 29 0a 20 20 73 65 6c 66 2e 64 strsub(self.name,1,b-1)...self.d
ff20 69 6d 20 3d 20 66 69 6e 64 5f 65 6e 75 6d 5f 76 61 72 28 64 29 0a 20 65 6e 64 0a 0a 0a 20 69 66 im.=.find_enum_var(d)..end....if
ff40 20 73 65 6c 66 2e 74 79 70 65 20 7e 3d 20 27 27 20 61 6e 64 20 73 65 6c 66 2e 74 79 70 65 20 7e .self.type.~=.''.and.self.type.~
ff60 3d 20 27 76 6f 69 64 27 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 3d 20 27 27 20 74 68 65 =.'void'.and.self.name.==.''.the
ff80 6e 0a 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 63 72 65 61 74 65 5f 76 61 72 6e 61 6d 65 28 29 n...self.name.=.create_varname()
ffa0 0a 20 65 6c 73 65 69 66 20 73 65 6c 66 2e 6b 69 6e 64 3d 3d 27 76 61 72 27 20 74 68 65 6e 0a 20 ..elseif.self.kind=='var'.then..
ffc0 20 69 66 20 73 65 6c 66 2e 74 79 70 65 3d 3d 27 27 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 7e .if.self.type==''.and.self.name~
ffe0 3d 27 27 20 74 68 65 6e 0a 20 20 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 73 65 6c 66 2e 74 79 70 =''.then....self.type.=.self.typ
10000 65 2e 2e 73 65 6c 66 2e 6e 61 6d 65 0a 20 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 63 72 65 61 e..self.name....self.name.=.crea
10020 74 65 5f 76 61 72 6e 61 6d 65 28 29 0a 20 20 65 6c 73 65 69 66 20 66 69 6e 64 74 79 70 65 28 73 te_varname()...elseif.findtype(s
10040 65 6c 66 2e 6e 61 6d 65 29 20 74 68 65 6e 0a 20 20 20 69 66 20 73 65 6c 66 2e 74 79 70 65 3d 3d elf.name).then....if.self.type==
10060 27 27 20 74 68 65 6e 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 73 65 6c 66 2e 6e 61 6d 65 0a 20 20 ''.then.self.type.=.self.name...
10080 20 65 6c 73 65 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 73 65 6c 66 2e 74 79 70 65 2e 2e 27 20 27 .else.self.type.=.self.type..'.'
100a0 2e 2e 73 65 6c 66 2e 6e 61 6d 65 20 65 6e 64 0a 20 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 63 ..self.name.end....self.name.=.c
100c0 72 65 61 74 65 5f 76 61 72 6e 61 6d 65 28 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 reate_varname()...end..end...--.
100e0 61 64 6a 75 73 74 20 74 79 70 65 20 6f 66 20 73 74 72 69 6e 67 0a 20 69 66 20 73 65 6c 66 2e 74 adjust.type.of.string..if.self.t
10100 79 70 65 20 3d 3d 20 27 63 68 61 72 27 20 61 6e 64 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 ype.==.'char'.and.self.dim.~=.''
10120 20 74 68 65 6e 0a 09 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 27 63 68 61 72 2a 27 0a 20 65 6e 64 .then...self.type.=.'char*'..end
10140 0a 0a 09 69 66 20 73 65 6c 66 2e 6b 69 6e 64 20 61 6e 64 20 73 65 6c 66 2e 6b 69 6e 64 20 3d 3d ...if.self.kind.and.self.kind.==
10160 20 27 76 61 72 27 20 74 68 65 6e 0a 09 09 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 73 74 72 69 6e 67 .'var'.then...self.name.=.string
10180 2e 67 73 75 62 28 73 65 6c 66 2e 6e 61 6d 65 2c 20 22 3a 2e 2a 24 22 2c 20 22 22 29 20 2d 2d 20 .gsub(self.name,.":.*$",."").--.
101a0 3f 3f 3f 0a 09 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 43 68 65 63 6b 20 64 65 63 6c 61 72 61 74 69 ???..end.end..--.Check.declarati
101c0 6f 6e 20 74 79 70 65 0a 2d 2d 20 53 75 62 73 74 69 74 75 74 65 73 20 74 79 70 65 64 65 66 27 73 on.type.--.Substitutes.typedef's
101e0 2e 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 63 68 65 63 ..function.classDeclaration:chec
10200 6b 74 79 70 65 20 28 29 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 69 66 20 74 68 65 72 65 20 69 73 20 ktype.()...--.check.if.there.is.
10220 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 62 61 73 69 63 20 74 79 70 65 0a 20 6c 6f 63 61 6c 20 62 a.pointer.to.basic.type..local.b
10240 61 73 69 63 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 69 66 20 73 65 asic.=.isbasic(self.type)..if.se
10260 6c 66 2e 6b 69 6e 64 20 3d 3d 20 27 66 75 6e 63 27 20 61 6e 64 20 62 61 73 69 63 3d 3d 27 6e 75 lf.kind.==.'func'.and.basic=='nu
10280 6d 62 65 72 27 20 61 6e 64 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 65 6c 66 2e 70 74 72 2c 20 mber'.and.string.find(self.ptr,.
102a0 22 25 2a 22 29 20 74 68 65 6e 0a 20 09 73 65 6c 66 2e 74 79 70 65 20 3d 20 27 5f 75 73 65 72 64 "%*").then...self.type.=.'_userd
102c0 61 74 61 27 0a 20 09 73 65 6c 66 2e 70 74 72 20 3d 20 22 22 0a 20 65 6e 64 0a 20 69 66 20 62 61 ata'...self.ptr.=.""..end..if.ba
102e0 73 69 63 20 61 6e 64 20 73 65 6c 66 2e 70 74 72 7e 3d 27 27 20 74 68 65 6e 0a 20 20 73 65 6c 66 sic.and.self.ptr~=''.then...self
10300 2e 72 65 74 20 3d 20 73 65 6c 66 2e 70 74 72 0a 20 20 73 65 6c 66 2e 70 74 72 20 3d 20 6e 69 6c .ret.=.self.ptr...self.ptr.=.nil
10320 0a 20 20 69 66 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 20 3d 3d 20 27 6e 75 6d ...if.isbasic(self.type).==.'num
10340 62 65 72 27 20 74 68 65 6e 0a 20 20 09 73 65 6c 66 2e 72 65 74 75 72 6e 5f 75 73 65 72 64 61 74 ber'.then....self.return_userdat
10360 61 20 3d 20 74 72 75 65 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 69 a.=.true...end..end...--.check.i
10380 66 20 74 68 65 72 65 20 69 73 20 61 72 72 61 79 20 74 6f 20 62 65 20 72 65 74 75 72 6e 65 64 0a f.there.is.array.to.be.returned.
103a0 20 69 66 20 73 65 6c 66 2e 64 69 6d 7e 3d 27 27 20 61 6e 64 20 73 65 6c 66 2e 72 65 74 7e 3d 27 .if.self.dim~=''.and.self.ret~='
103c0 27 20 74 68 65 6e 0a 20 20 20 65 72 72 6f 72 28 27 23 69 6e 76 61 6c 69 64 20 70 61 72 61 6d 65 '.then....error('#invalid.parame
103e0 74 65 72 3a 20 63 61 6e 6e 6f 74 20 72 65 74 75 72 6e 20 61 6e 20 61 72 72 61 79 20 6f 66 20 76 ter:.cannot.return.an.array.of.v
10400 61 6c 75 65 73 27 29 0a 20 65 6e 64 0a 20 2d 2d 20 72 65 73 74 6f 72 65 20 27 76 6f 69 64 2a 27 alues')..end..--.restore.'void*'
10420 20 61 6e 64 20 27 73 74 72 69 6e 67 2a 27 0a 20 69 66 20 73 65 6c 66 2e 74 79 70 65 20 3d 3d 20 .and.'string*'..if.self.type.==.
10440 27 5f 75 73 65 72 64 61 74 61 27 20 74 68 65 6e 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 27 76 6f '_userdata'.then.self.type.=.'vo
10460 69 64 2a 27 0a 20 65 6c 73 65 69 66 20 73 65 6c 66 2e 74 79 70 65 20 3d 3d 20 27 5f 63 73 74 72 id*'..elseif.self.type.==.'_cstr
10480 69 6e 67 27 20 74 68 65 6e 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 27 63 68 61 72 2a 27 0a 20 65 ing'.then.self.type.=.'char*'..e
104a0 6c 73 65 69 66 20 73 65 6c 66 2e 74 79 70 65 20 3d 3d 20 27 5f 6c 73 74 61 74 65 27 20 74 68 65 lseif.self.type.==.'_lstate'.the
104c0 6e 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 27 6c 75 61 5f 53 74 61 74 65 2a 27 0a 20 65 6e 64 0a n.self.type.=.'lua_State*'..end.
104e0 0a 20 2d 2d 20 72 65 73 6f 6c 76 65 20 74 79 70 65 73 20 69 6e 73 69 64 65 20 74 68 65 20 74 65 ..--.resolve.types.inside.the.te
10500 6d 70 6c 61 74 65 73 0a 20 69 66 20 73 65 6c 66 2e 74 79 70 65 20 74 68 65 6e 0a 09 20 73 65 6c mplates..if.self.type.then...sel
10520 66 2e 74 79 70 65 20 3d 20 72 65 73 6f 6c 76 65 5f 74 65 6d 70 6c 61 74 65 5f 74 79 70 65 73 28 f.type.=.resolve_template_types(
10540 73 65 6c 66 2e 74 79 70 65 29 0a 20 65 6e 64 0a 0a 2d 2d 0a 2d 2d 20 2d 2d 20 69 66 20 72 65 74 self.type)..end..--.--.--.if.ret
10560 75 72 6e 69 6e 67 20 76 61 6c 75 65 2c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 73 65 74 20 urning.value,.automatically.set.
10580 64 65 66 61 75 6c 74 20 76 61 6c 75 65 0a 2d 2d 20 69 66 20 73 65 6c 66 2e 72 65 74 20 7e 3d 20 default.value.--.if.self.ret.~=.
105a0 27 27 20 61 6e 64 20 73 65 6c 66 2e 64 65 66 20 3d 3d 20 27 27 20 74 68 65 6e 0a 2d 2d 20 20 73 ''.and.self.def.==.''.then.--..s
105c0 65 6c 66 2e 64 65 66 20 3d 20 27 30 27 0a 2d 2d 20 65 6e 64 0a 2d 2d 0a 0a 65 6e 64 0a 0a 66 75 elf.def.=.'0'.--.end.--..end..fu
105e0 6e 63 74 69 6f 6e 20 72 65 73 6f 6c 76 65 5f 74 65 6d 70 6c 61 74 65 5f 74 79 70 65 73 28 74 79 nction.resolve_template_types(ty
10600 70 65 29 0a 0a 09 69 66 20 69 73 62 61 73 69 63 28 74 79 70 65 29 20 74 68 65 6e 0a 09 09 72 65 pe)...if.isbasic(type).then...re
10620 74 75 72 6e 20 74 79 70 65 0a 09 65 6e 64 0a 09 6c 6f 63 61 6c 20 62 2c 5f 2c 6d 20 3d 20 73 74 turn.type..end..local.b,_,m.=.st
10640 72 69 6e 67 2e 66 69 6e 64 28 74 79 70 65 2c 20 22 28 25 62 3c 3e 29 22 29 0a 09 69 66 20 62 20 ring.find(type,."(%b<>)")..if.b.
10660 74 68 65 6e 0a 0a 09 09 6d 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 74 72 69 6e then....m.=.split_c_tokens(strin
10680 67 2e 73 75 62 28 6d 2c 20 32 2c 20 2d 32 29 2c 20 22 2c 22 29 0a 09 09 66 6f 72 20 69 3d 31 2c g.sub(m,.2,.-2),.",")...for.i=1,
106a0 20 74 61 62 6c 65 2e 67 65 74 6e 28 6d 29 20 64 6f 0a 09 09 09 6d 5b 69 5d 20 3d 20 73 74 72 69 .table.getn(m).do....m[i].=.stri
106c0 6e 67 2e 67 73 75 62 28 6d 5b 69 5d 2c 22 25 73 2a 28 5b 25 2a 26 5d 29 22 2c 20 22 25 31 22 29 ng.gsub(m[i],"%s*([%*&])",."%1")
106e0 0a 09 09 09 69 66 20 6e 6f 74 20 69 73 62 61 73 69 63 28 6d 5b 69 5d 29 20 74 68 65 6e 0a 09 09 ....if.not.isbasic(m[i]).then...
10700 09 09 69 66 20 6e 6f 74 20 69 73 65 6e 75 6d 28 6d 5b 69 5d 29 20 74 68 65 6e 20 5f 2c 20 6d 5b ..if.not.isenum(m[i]).then._,.m[
10720 69 5d 20 3d 20 61 70 70 6c 79 74 79 70 65 64 65 66 28 22 22 2c 20 6d 5b 69 5d 29 20 65 6e 64 0a i].=.applytypedef("",.m[i]).end.
10740 09 09 09 09 6d 5b 69 5d 20 3d 20 66 69 6e 64 74 79 70 65 28 6d 5b 69 5d 29 20 6f 72 20 6d 5b 69 ....m[i].=.findtype(m[i]).or.m[i
10760 5d 0a 09 09 09 09 6d 5b 69 5d 20 3d 20 72 65 73 6f 6c 76 65 5f 74 65 6d 70 6c 61 74 65 5f 74 79 ].....m[i].=.resolve_template_ty
10780 70 65 73 28 6d 5b 69 5d 29 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 0a 09 09 6c 6f 63 61 6c 20 pes(m[i])....end...end....local.
107a0 62 2c 69 0a 09 09 74 79 70 65 2c 62 2c 69 20 3d 20 62 72 65 61 6b 5f 74 65 6d 70 6c 61 74 65 28 b,i...type,b,i.=.break_template(
107c0 74 79 70 65 29 0a 2d 2d 70 72 69 6e 74 28 22 63 6f 6e 63 61 74 20 69 73 20 22 2c 63 6f 6e 63 61 type).--print("concat.is.",conca
107e0 74 28 6d 2c 20 31 2c 20 6d 2e 6e 29 29 0a 09 09 6c 6f 63 61 6c 20 74 65 6d 70 6c 61 74 65 5f 70 t(m,.1,.m.n))...local.template_p
10800 61 72 74 20 3d 20 22 3c 22 2e 2e 63 6f 6e 63 61 74 28 6d 2c 20 31 2c 20 6d 2e 6e 2c 20 22 2c 22 art.=."<"..concat(m,.1,.m.n,.","
10820 29 2e 2e 22 3e 22 0a 09 09 74 79 70 65 20 3d 20 72 65 62 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 )..">"...type.=.rebuild_template
10840 28 74 79 70 65 2c 20 62 2c 20 74 65 6d 70 6c 61 74 65 5f 70 61 72 74 29 0a 09 09 74 79 70 65 20 (type,.b,.template_part)...type.
10860 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 79 70 65 2c 20 22 3e 3e 22 2c 20 22 3e 20 3e 22 29 =.string.gsub(type,.">>",.">.>")
10880 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 74 79 70 65 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e ..end..return.type.end..function
108a0 20 62 72 65 61 6b 5f 74 65 6d 70 6c 61 74 65 28 73 29 0a 09 6c 6f 63 61 6c 20 62 2c 65 2c 74 69 .break_template(s)..local.b,e,ti
108c0 6d 70 6c 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 28 25 62 3c 3e 29 22 29 0a 09 mpl.=.string.find(s,."(%b<>)")..
108e0 69 66 20 74 69 6d 70 6c 20 74 68 65 6e 0a 09 09 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 if.timpl.then...s.=.string.gsub(
10900 73 2c 20 22 25 62 3c 3e 22 2c 20 22 22 29 0a 09 09 72 65 74 75 72 6e 20 73 2c 20 62 2c 20 74 69 s,."%b<>",."")...return.s,.b,.ti
10920 6d 70 6c 0a 09 65 6c 73 65 0a 09 09 72 65 74 75 72 6e 20 73 2c 20 30 2c 20 6e 69 6c 0a 09 65 6e mpl..else...return.s,.0,.nil..en
10940 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 72 65 62 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 d.end..function.rebuild_template
10960 28 73 2c 20 62 2c 20 74 69 6d 70 6c 29 0a 0a 09 69 66 20 62 20 3d 3d 20 30 20 74 68 65 6e 0a 09 (s,.b,.timpl)...if.b.==.0.then..
10980 09 72 65 74 75 72 6e 20 73 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 73 74 72 69 6e 67 2e 73 .return.s..end...return.string.s
109a0 75 62 28 73 2c 20 31 2c 20 62 2d 31 29 2e 2e 74 69 6d 70 6c 2e 2e 73 74 72 69 6e 67 2e 73 75 62 ub(s,.1,.b-1)..timpl..string.sub
109c0 28 73 2c 20 62 2c 20 2d 31 29 0a 65 6e 64 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a (s,.b,.-1).end..--.Print.method.
109e0 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 70 72 69 6e 74 20 function.classDeclaration:print.
10a00 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 44 65 63 (ident,close)..print(ident.."Dec
10a20 6c 61 72 61 74 69 6f 6e 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6d 6f 64 20 laration{")..print(ident..".mod.
10a40 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6d 6f 64 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 .=.'"..self.mod.."',")..print(id
10a60 65 6e 74 2e 2e 22 20 74 79 70 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 22 27 2c ent..".type.=.'"..self.type.."',
10a80 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 70 74 72 20 20 3d 20 27 22 2e 2e 73 65 ")..print(ident..".ptr..=.'"..se
10aa0 6c 66 2e 70 74 72 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6e 61 lf.ptr.."',")..print(ident..".na
10ac0 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 me.=.'"..self.name.."',")..print
10ae0 28 69 64 65 6e 74 2e 2e 22 20 64 69 6d 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 22 (ident..".dim..=.'"..self.dim.."
10b00 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 64 65 66 20 20 3d 20 27 22 2e 2e ',")..print(ident..".def..=.'"..
10b20 73 65 6c 66 2e 64 65 66 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 self.def.."',")..print(ident..".
10b40 72 65 74 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 72 65 74 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e ret..=.'"..self.ret.."',")..prin
10b60 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 t(ident.."}"..close).end..--.che
10b80 63 6b 20 69 66 20 61 72 72 61 79 20 6f 66 20 76 61 6c 75 65 73 20 61 72 65 20 72 65 74 75 72 6e ck.if.array.of.values.are.return
10ba0 65 64 20 74 6f 20 4c 75 61 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 ed.to.Lua.function.classDeclarat
10bc0 69 6f 6e 3a 72 65 71 75 69 72 65 63 6f 6c 6c 65 63 74 69 6f 6e 20 28 74 29 0a 20 69 66 20 73 65 ion:requirecollection.(t)..if.se
10be0 6c 66 2e 6d 6f 64 20 7e 3d 20 27 63 6f 6e 73 74 27 20 61 6e 64 0a 09 20 20 20 20 73 65 6c 66 2e lf.mod.~=.'const'.and......self.
10c00 64 69 6d 20 61 6e 64 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 61 6e 64 0a 09 09 09 09 20 dim.and.self.dim.~=.''.and......
10c20 6e 6f 74 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 20 61 6e 64 0a 09 09 09 09 20 not.isbasic(self.type).and......
10c40 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 27 20 61 6e 64 20 73 65 6c 66 3a 63 68 65 63 6b 5f 70 75 self.ptr.==.''.and.self:check_pu
10c60 62 6c 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 6c 6f 63 61 6c 20 74 79 70 65 20 blic_access().then...local.type.
10c80 3d 20 67 73 75 62 28 73 65 6c 66 2e 74 79 70 65 2c 22 25 73 2a 63 6f 6e 73 74 25 73 2b 22 2c 22 =.gsub(self.type,"%s*const%s+","
10ca0 22 29 0a 09 09 74 5b 74 79 70 65 5d 20 3d 20 22 74 6f 6c 75 61 5f 63 6f 6c 6c 65 63 74 5f 22 20 ")...t[type].=."tolua_collect_".
10cc0 2e 2e 20 63 6c 65 61 6e 5f 74 65 6d 70 6c 61 74 65 28 74 79 70 65 29 0a 09 09 72 65 74 75 72 6e ...clean_template(type)...return
10ce0 20 74 72 75 65 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 65 6e 64 0a 0a 2d 2d .true..end..return.false.end..--
10d00 20 64 65 63 6c 61 72 65 20 74 61 67 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 .declare.tag.function.classDecla
10d20 72 61 74 69 6f 6e 3a 64 65 63 6c 74 79 70 65 20 28 29 0a 0a 09 73 65 6c 66 2e 74 79 70 65 20 3d ration:decltype.()...self.type.=
10d40 20 74 79 70 65 76 61 72 28 73 65 6c 66 2e 74 79 70 65 29 0a 09 69 66 20 73 74 72 66 69 6e 64 28 .typevar(self.type)..if.strfind(
10d60 73 65 6c 66 2e 6d 6f 64 2c 27 63 6f 6e 73 74 27 29 20 74 68 65 6e 0a 09 09 73 65 6c 66 2e 74 79 self.mod,'const').then...self.ty
10d80 70 65 20 3d 20 27 63 6f 6e 73 74 20 27 2e 2e 73 65 6c 66 2e 74 79 70 65 0a 09 09 73 65 6c 66 2e pe.=.'const.'..self.type...self.
10da0 6d 6f 64 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 6d 6f 64 2c 27 63 6f 6e 73 74 25 73 2a 27 2c 27 mod.=.gsub(self.mod,'const%s*','
10dc0 27 29 0a 09 65 6e 64 0a 65 6e 64 0a 0a 0a 2d 2d 20 6f 75 74 70 75 74 20 74 79 70 65 20 63 68 65 ')..end.end...--.output.type.che
10de0 63 6b 69 6e 67 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a cking.function.classDeclaration:
10e00 6f 75 74 63 68 65 63 6b 74 79 70 65 20 28 6e 61 72 67 29 0a 20 6c 6f 63 61 6c 20 64 65 66 0a 20 outchecktype.(narg)..local.def..
10e20 6c 6f 63 61 6c 20 74 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 69 66 local.t.=.isbasic(self.type)..if
10e40 20 73 65 6c 66 2e 64 65 66 7e 3d 27 27 20 74 68 65 6e 0a 20 20 64 65 66 20 3d 20 31 0a 20 65 6c .self.def~=''.then...def.=.1..el
10e60 73 65 0a 20 20 64 65 66 20 3d 20 30 0a 20 65 6e 64 0a 20 69 66 20 73 65 6c 66 2e 64 69 6d 20 7e se...def.=.0..end..if.self.dim.~
10e80 3d 20 27 27 20 74 68 65 6e 0a 09 2d 2d 69 66 20 74 3d 3d 27 73 74 72 69 6e 67 27 20 74 68 65 6e =.''.then..--if.t=='string'.then
10ea0 0a 09 2d 2d 09 72 65 74 75 72 6e 20 27 74 6f 6c 75 61 5f 69 73 73 74 72 69 6e 67 61 72 72 61 79 ..--.return.'tolua_isstringarray
10ec0 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 27 2e 2e 64 65 66 2e 2e 27 2c 26 74 (tolua_S,'..narg..','..def..',&t
10ee0 6f 6c 75 61 5f 65 72 72 29 27 0a 09 2d 2d 65 6c 73 65 0a 09 72 65 74 75 72 6e 20 27 21 74 6f 6c olua_err)'..--else..return.'!tol
10f00 75 61 5f 69 73 74 61 62 6c 65 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 30 2c ua_istable(tolua_S,'..narg..',0,
10f20 26 74 6f 6c 75 61 5f 65 72 72 29 27 0a 20 09 2d 2d 65 6e 64 0a 20 65 6c 73 65 69 66 20 69 73 65 &tolua_err)'...--end..elseif.ise
10f40 6e 75 6d 74 79 70 65 28 73 65 6c 66 2e 74 79 70 65 29 20 7e 3d 20 6e 69 6c 20 74 68 65 6e 0a 20 numtype(self.type).~=.nil.then..
10f60 09 72 65 74 75 72 6e 20 27 21 74 6f 6c 75 61 5f 69 73 27 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e .return.'!tolua_is'..self.type..
10f80 27 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 27 2e 2e 64 65 66 2e 2e 27 2c 26 '(tolua_S,'..narg..','..def..',&
10fa0 74 6f 6c 75 61 5f 65 72 72 29 27 0a 20 65 6c 73 65 69 66 20 74 20 74 68 65 6e 0a 09 72 65 74 75 tolua_err)'..elseif.t.then..retu
10fc0 72 6e 20 27 21 74 6f 6c 75 61 5f 69 73 27 2e 2e 74 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e rn.'!tolua_is'..t..'(tolua_S,'..
10fe0 6e 61 72 67 2e 2e 27 2c 27 2e 2e 64 65 66 2e 2e 27 2c 26 74 6f 6c 75 61 5f 65 72 72 29 27 0a 20 narg..','..def..',&tolua_err)'..
11000 65 6c 73 65 0a 20 20 6c 6f 63 61 6c 20 69 73 5f 66 75 6e 63 20 3d 20 67 65 74 5f 69 73 5f 66 75 else...local.is_func.=.get_is_fu
11020 6e 63 74 69 6f 6e 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 20 69 66 20 73 65 6c 66 2e 70 74 72 20 nction(self.type)...if.self.ptr.
11040 3d 3d 20 27 26 27 20 6f 72 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 27 20 74 68 65 6e 0a 20 20 ==.'&'.or.self.ptr.==.''.then...
11060 09 72 65 74 75 72 6e 20 27 28 74 6f 6c 75 61 5f 69 73 76 61 6c 75 65 6e 69 6c 28 74 6f 6c 75 61 .return.'(tolua_isvaluenil(tolua
11080 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 26 74 6f 6c 75 61 5f 65 72 72 29 20 7c 7c 20 21 27 2e _S,'..narg..',&tolua_err).||.!'.
110a0 2e 69 73 5f 66 75 6e 63 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 22 .is_func..'(tolua_S,'..narg..',"
110c0 27 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 27 22 2c 27 2e 2e 64 65 66 2e 2e 27 2c 26 74 6f 6c 75 '..self.type..'",'..def..',&tolu
110e0 61 5f 65 72 72 29 29 27 0a 20 20 65 6c 73 65 0a 09 72 65 74 75 72 6e 20 27 21 27 2e 2e 69 73 5f a_err))'...else..return.'!'..is_
11100 66 75 6e 63 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 22 27 2e 2e 73 func..'(tolua_S,'..narg..',"'..s
11120 65 6c 66 2e 74 79 70 65 2e 2e 27 22 2c 27 2e 2e 64 65 66 2e 2e 27 2c 26 74 6f 6c 75 61 5f 65 72 elf.type..'",'..def..',&tolua_er
11140 72 29 27 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 r)'...end..end.end..function.cla
11160 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 62 75 69 6c 64 64 65 63 6c 61 72 61 74 69 6f 6e 20 28 ssDeclaration:builddeclaration.(
11180 6e 61 72 67 2c 20 63 70 6c 75 73 70 6c 75 73 29 0a 20 6c 6f 63 61 6c 20 61 72 72 61 79 20 3d 20 narg,.cplusplus)..local.array.=.
111a0 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 61 6e 64 20 74 6f 6e 75 6d 62 65 72 28 73 65 6c 66 self.dim.~=.''.and.tonumber(self
111c0 2e 64 69 6d 29 3d 3d 6e 69 6c 0a 09 6c 6f 63 61 6c 20 6c 69 6e 65 20 3d 20 22 22 0a 20 6c 6f 63 .dim)==nil..local.line.=.""..loc
111e0 61 6c 20 70 74 72 20 3d 20 27 27 0a 20 6c 6f 63 61 6c 20 6d 6f 64 0a 20 6c 6f 63 61 6c 20 74 79 al.ptr.=.''..local.mod..local.ty
11200 70 65 20 3d 20 73 65 6c 66 2e 74 79 70 65 0a 20 6c 6f 63 61 6c 20 6e 63 74 79 70 65 20 3d 20 67 pe.=.self.type..local.nctype.=.g
11220 73 75 62 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 25 73 2b 27 2c 27 27 29 0a 20 69 66 sub(self.type,'const%s+','')..if
11240 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 20 74 79 70 65 20 3d 20 67 73 .self.dim.~=.''.then...type.=.gs
11260 75 62 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 25 73 2b 27 2c 27 27 29 20 20 2d 2d 20 ub(self.type,'const%s+','')..--.
11280 65 6c 69 6d 69 6e 61 74 65 73 20 63 6f 6e 73 74 20 6d 6f 64 69 66 69 65 72 20 66 6f 72 20 61 72 eliminates.const.modifier.for.ar
112a0 72 61 79 73 0a 20 65 6e 64 0a 20 69 66 20 73 65 6c 66 2e 70 74 72 7e 3d 27 27 20 61 6e 64 20 6e rays..end..if.self.ptr~=''.and.n
112c0 6f 74 20 69 73 62 61 73 69 63 28 74 79 70 65 29 20 74 68 65 6e 20 70 74 72 20 3d 20 27 2a 27 20 ot.isbasic(type).then.ptr.=.'*'.
112e0 65 6e 64 0a 20 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 22 20 22 end..line.=.concatparam(line,"."
11300 2c 73 65 6c 66 2e 6d 6f 64 2c 74 79 70 65 2c 70 74 72 29 0a 20 69 66 20 61 72 72 61 79 20 74 68 ,self.mod,type,ptr)..if.array.th
11320 65 6e 0a 20 20 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 2a 27 en...line.=.concatparam(line,'*'
11340 29 0a 20 65 6e 64 0a 20 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c )..end..line.=.concatparam(line,
11360 73 65 6c 66 2e 6e 61 6d 65 29 0a 20 69 66 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 74 68 self.name)..if.self.dim.~=.''.th
11380 65 6e 0a 20 20 69 66 20 74 6f 6e 75 6d 62 65 72 28 73 65 6c 66 2e 64 69 6d 29 7e 3d 6e 69 6c 20 en...if.tonumber(self.dim)~=nil.
113a0 74 68 65 6e 0a 20 20 20 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c then....line.=.concatparam(line,
113c0 27 5b 27 2c 73 65 6c 66 2e 64 69 6d 2c 27 5d 3b 27 29 0a 20 20 65 6c 73 65 0a 09 69 66 20 63 70 '[',self.dim,'];')...else..if.cp
113e0 6c 75 73 70 6c 75 73 20 74 68 65 6e 0a 09 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 lusplus.then...line.=.concatpara
11400 6d 28 6c 69 6e 65 2c 27 20 3d 20 4d 74 6f 6c 75 61 5f 6e 65 77 5f 64 69 6d 28 27 2c 74 79 70 65 m(line,'.=.Mtolua_new_dim(',type
11420 2c 70 74 72 2c 27 2c 20 27 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 27 29 3b 27 29 0a 09 65 6c 73 65 ,ptr,',.'..self.dim..');')..else
11440 0a 09 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 20 3d 20 28 ...line.=.concatparam(line,'.=.(
11460 27 2c 74 79 70 65 2c 70 74 72 2c 27 2a 29 27 2c 0a 09 09 27 6d 61 6c 6c 6f 63 28 28 27 2c 73 65 ',type,ptr,'*)',...'malloc((',se
11480 6c 66 2e 64 69 6d 2c 27 29 2a 73 69 7a 65 6f 66 28 27 2c 74 79 70 65 2c 70 74 72 2c 27 29 29 3b lf.dim,')*sizeof(',type,ptr,'));
114a0 27 29 0a 09 65 6e 64 0a 20 20 65 6e 64 0a 20 65 6c 73 65 0a 20 20 6c 6f 63 61 6c 20 74 20 3d 20 ')..end...end..else...local.t.=.
114c0 69 73 62 61 73 69 63 28 74 79 70 65 29 0a 20 20 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 isbasic(type)...line.=.concatpar
114e0 61 6d 28 6c 69 6e 65 2c 27 20 3d 20 27 29 0a 20 20 69 66 20 74 20 3d 3d 20 27 73 74 61 74 65 27 am(line,'.=.')...if.t.==.'state'
11500 20 74 68 65 6e 0a 20 20 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 .then....line.=.concatparam(line
11520 2c 20 27 74 6f 6c 75 61 5f 53 3b 27 29 0a 20 20 65 6c 73 65 0a 20 20 09 2d 2d 70 72 69 6e 74 28 ,.'tolua_S;')...else....--print(
11540 22 74 20 69 73 20 22 2e 2e 74 6f 73 74 72 69 6e 67 28 74 29 2e 2e 22 2c 20 70 74 72 20 69 73 20 "t.is."..tostring(t)..",.ptr.is.
11560 22 2e 2e 74 6f 73 74 72 69 6e 67 28 73 65 6c 66 2e 70 74 72 29 29 0a 20 20 09 69 66 20 74 20 3d "..tostring(self.ptr))....if.t.=
11580 3d 20 27 6e 75 6d 62 65 72 27 20 61 6e 64 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 65 6c 66 2e =.'number'.and.string.find(self.
115a0 70 74 72 2c 20 22 25 2a 22 29 20 74 68 65 6e 0a 20 20 09 09 74 20 3d 20 27 75 73 65 72 64 61 74 ptr,."%*").then.....t.=.'userdat
115c0 61 27 0a 20 20 09 65 6e 64 0a 09 69 66 20 6e 6f 74 20 74 20 61 6e 64 20 70 74 72 3d 3d 27 27 20 a'....end..if.not.t.and.ptr==''.
115e0 74 68 65 6e 20 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 2a 27 then.line.=.concatparam(line,'*'
11600 29 20 65 6e 64 0a 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 ).end..line.=.concatparam(line,'
11620 28 28 27 2c 73 65 6c 66 2e 6d 6f 64 2c 74 79 70 65 29 0a 09 69 66 20 6e 6f 74 20 74 20 74 68 65 ((',self.mod,type)..if.not.t.the
11640 6e 0a 09 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 2a 27 29 n...line.=.concatparam(line,'*')
11660 0a 09 65 6e 64 0a 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 ..end..line.=.concatparam(line,'
11680 29 20 27 29 0a 09 69 66 20 69 73 65 6e 75 6d 28 6e 63 74 79 70 65 29 20 74 68 65 6e 0a 09 09 6c ).')..if.isenum(nctype).then...l
116a0 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 28 69 6e 74 29 20 27 29 ine.=.concatparam(line,'(int).')
116c0 0a 09 65 6e 64 0a 09 6c 6f 63 61 6c 20 64 65 66 20 3d 20 30 0a 09 69 66 20 73 65 6c 66 2e 64 65 ..end..local.def.=.0..if.self.de
116e0 66 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 09 64 65 66 20 3d 20 73 65 6c 66 2e 64 65 66 0a 09 09 f.~=.''.then...def.=.self.def...
11700 69 66 20 28 70 74 72 20 3d 3d 20 27 27 20 6f 72 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 26 27 if.(ptr.==.''.or.self.ptr.==.'&'
11720 29 20 61 6e 64 20 6e 6f 74 20 74 20 74 68 65 6e 0a 09 09 09 64 65 66 20 3d 20 22 28 76 6f 69 64 ).and.not.t.then....def.=."(void
11740 2a 29 26 28 63 6f 6e 73 74 20 22 2e 2e 74 79 70 65 2e 2e 22 29 22 2e 2e 64 65 66 0a 09 09 65 6e *)&(const."..type..")"..def...en
11760 64 0a 09 65 6e 64 0a 09 69 66 20 74 20 74 68 65 6e 0a 09 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 d..end..if.t.then...line.=.conca
11780 74 70 61 72 61 6d 28 6c 69 6e 65 2c 27 74 6f 6c 75 61 5f 74 6f 27 2e 2e 74 2c 27 28 74 6f 6c 75 tparam(line,'tolua_to'..t,'(tolu
117a0 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 27 2c 64 65 66 2c 27 29 29 3b 27 29 0a 09 65 6c 73 65 0a a_S,',narg,',',def,'));')..else.
117c0 09 09 6c 6f 63 61 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 74 69 6f ..local.to_func.=.get_to_functio
117e0 6e 28 74 79 70 65 29 0a 09 09 6c 69 6e 65 20 3d 20 63 6f 6e 63 61 74 70 61 72 61 6d 28 6c 69 6e n(type)...line.=.concatparam(lin
11800 65 2c 74 6f 5f 66 75 6e 63 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 27 2c e,to_func..'(tolua_S,',narg,',',
11820 64 65 66 2c 27 29 29 3b 27 29 0a 09 65 6e 64 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 09 72 65 74 75 def,'));')..end...end..end..retu
11840 72 6e 20 6c 69 6e 65 0a 65 6e 64 0a 0a 2d 2d 20 44 65 63 6c 61 72 65 20 76 61 72 69 61 62 6c 65 rn.line.end..--.Declare.variable
11860 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 64 65 63 6c 61 .function.classDeclaration:decla
11880 72 65 20 28 6e 61 72 67 29 0a 20 69 66 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 61 6e 64 re.(narg)..if.self.dim.~=.''.and
118a0 20 74 6f 6e 75 6d 62 65 72 28 73 65 6c 66 2e 64 69 6d 29 3d 3d 6e 69 6c 20 74 68 65 6e 0a 09 20 .tonumber(self.dim)==nil.then...
118c0 6f 75 74 70 75 74 28 27 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c 6e 27 29 0a 09 output('#ifdef.__cplusplus\n')..
118e0 09 6f 75 74 70 75 74 28 73 65 6c 66 3a 62 75 69 6c 64 64 65 63 6c 61 72 61 74 69 6f 6e 28 6e 61 .output(self:builddeclaration(na
11900 72 67 2c 74 72 75 65 29 29 0a 09 09 6f 75 74 70 75 74 28 27 23 65 6c 73 65 5c 6e 27 29 0a 09 09 rg,true))...output('#else\n')...
11920 6f 75 74 70 75 74 28 73 65 6c 66 3a 62 75 69 6c 64 64 65 63 6c 61 72 61 74 69 6f 6e 28 6e 61 72 output(self:builddeclaration(nar
11940 67 2c 66 61 6c 73 65 29 29 0a 09 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 09 g,false))...output('#endif\n')..
11960 65 6c 73 65 0a 09 09 6f 75 74 70 75 74 28 73 65 6c 66 3a 62 75 69 6c 64 64 65 63 6c 61 72 61 74 else...output(self:builddeclarat
11980 69 6f 6e 28 6e 61 72 67 2c 66 61 6c 73 65 29 29 0a 09 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 47 65 ion(narg,false))..end.end..--.Ge
119a0 74 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 t.parameter.value.function.class
119c0 44 65 63 6c 61 72 61 74 69 6f 6e 3a 67 65 74 61 72 72 61 79 20 28 6e 61 72 67 29 0a 20 69 66 20 Declaration:getarray.(narg)..if.
119e0 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 20 6c 6f 63 61 6c 20 74 79 70 65 self.dim.~=.''.then...local.type
11a00 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 20 27 2c 27 27 29 0a 20 .=.gsub(self.type,'const.','')..
11a20 20 6f 75 74 70 75 74 28 27 20 20 7b 27 29 0a 09 20 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 .output('..{')...output('#ifndef
11a40 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 20 20 6c 6f 63 61 6c 20 64 65 66 3b 20 .TOLUA_RELEASE\n')...local.def;.
11a60 69 66 20 73 65 6c 66 2e 64 65 66 7e 3d 27 27 20 74 68 65 6e 20 64 65 66 3d 31 20 65 6c 73 65 20 if.self.def~=''.then.def=1.else.
11a80 64 65 66 3d 30 20 65 6e 64 0a 09 09 6c 6f 63 61 6c 20 74 20 3d 20 69 73 62 61 73 69 63 28 74 79 def=0.end...local.t.=.isbasic(ty
11aa0 70 65 29 0a 09 09 69 66 20 28 74 29 20 74 68 65 6e 0a 09 09 20 20 20 6f 75 74 70 75 74 28 27 20 pe)...if.(t).then......output('.
11ac0 20 20 69 66 20 28 21 74 6f 6c 75 61 5f 69 73 27 2e 2e 74 2e 2e 27 61 72 72 61 79 28 74 6f 6c 75 ..if.(!tolua_is'..t..'array(tolu
11ae0 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 27 2c 73 65 6c 66 2e 64 69 6d 2c 27 2c 27 2c 64 65 66 2c a_S,',narg,',',self.dim,',',def,
11b00 27 2c 26 74 6f 6c 75 61 5f 65 72 72 29 29 27 29 0a 09 09 65 6c 73 65 0a 09 09 20 20 20 6f 75 74 ',&tolua_err))')...else......out
11b20 70 75 74 28 27 20 20 20 69 66 20 28 21 74 6f 6c 75 61 5f 69 73 75 73 65 72 74 79 70 65 61 72 72 put('...if.(!tolua_isusertypearr
11b40 61 79 28 74 6f 6c 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 22 27 2c 74 79 70 65 2c 27 22 2c 27 ay(tolua_S,',narg,',"',type,'",'
11b60 2c 73 65 6c 66 2e 64 69 6d 2c 27 2c 27 2c 64 65 66 2c 27 2c 26 74 6f 6c 75 61 5f 65 72 72 29 29 ,self.dim,',',def,',&tolua_err))
11b80 27 29 0a 09 09 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 67 6f 74 6f 20 74 6f 6c 75 ')...end...output('....goto.tolu
11ba0 61 5f 6c 65 72 72 6f 72 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 20 20 65 6c 73 65 5c 6e 27 a_lerror;')...output('...else\n'
11bc0 29 0a 09 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 20 20 6f 75 74 70 75 74 28 )...output('#endif\n')...output(
11be0 27 20 20 20 7b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 69 6e 74 20 69 3b 27 29 0a 20 '...{')...output('....int.i;')..
11c00 20 6f 75 74 70 75 74 28 27 20 20 20 20 66 6f 72 28 69 3d 30 3b 20 69 3c 27 2e 2e 73 65 6c 66 2e .output('....for(i=0;.i<'..self.
11c20 64 69 6d 2e 2e 27 3b 69 2b 2b 29 27 29 0a 20 20 6c 6f 63 61 6c 20 74 20 3d 20 69 73 62 61 73 69 dim..';i++)')...local.t.=.isbasi
11c40 63 28 74 79 70 65 29 0a 20 20 6c 6f 63 61 6c 20 70 74 72 20 3d 20 27 27 0a 20 20 69 66 20 73 65 c(type)...local.ptr.=.''...if.se
11c60 6c 66 2e 70 74 72 7e 3d 27 27 20 74 68 65 6e 20 70 74 72 20 3d 20 27 2a 27 20 65 6e 64 0a 20 20 lf.ptr~=''.then.ptr.=.'*'.end...
11c80 6f 75 74 70 75 74 28 27 20 20 20 27 2c 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5b 69 5d 20 3d 20 27 output('...',self.name..'[i].=.'
11ca0 29 0a 20 20 69 66 20 6e 6f 74 20 74 20 61 6e 64 20 70 74 72 3d 3d 27 27 20 74 68 65 6e 20 6f 75 )...if.not.t.and.ptr==''.then.ou
11cc0 74 70 75 74 28 27 2a 27 29 20 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 28 28 27 2c 74 79 70 65 tput('*').end...output('((',type
11ce0 29 0a 20 20 69 66 20 6e 6f 74 20 74 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 2a 27 29 )...if.not.t.then....output('*')
11d00 0a 20 20 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 29 20 27 29 0a 20 20 6c 6f 63 61 6c 20 64 65 ...end...output(').')...local.de
11d20 66 20 3d 20 30 0a 20 20 69 66 20 73 65 6c 66 2e 64 65 66 20 7e 3d 20 27 27 20 74 68 65 6e 20 64 f.=.0...if.self.def.~=.''.then.d
11d40 65 66 20 3d 20 73 65 6c 66 2e 64 65 66 20 65 6e 64 0a 20 20 69 66 20 74 20 74 68 65 6e 0a 20 20 ef.=.self.def.end...if.t.then...
11d60 20 6f 75 74 70 75 74 28 27 74 6f 6c 75 61 5f 74 6f 66 69 65 6c 64 27 2e 2e 74 2e 2e 27 28 74 6f .output('tolua_tofield'..t..'(to
11d80 6c 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 69 2b 31 2c 27 2c 64 65 66 2c 27 29 29 3b 27 29 0a lua_S,',narg,',i+1,',def,'));').
11da0 20 20 65 6c 73 65 0a 20 20 20 6f 75 74 70 75 74 28 27 74 6f 6c 75 61 5f 74 6f 66 69 65 6c 64 75 ..else....output('tolua_tofieldu
11dc0 73 65 72 74 79 70 65 28 74 6f 6c 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 69 2b 31 2c 27 2c 64 sertype(tolua_S,',narg,',i+1,',d
11de0 65 66 2c 27 29 29 3b 27 29 0a 20 20 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 20 20 20 7d 27 29 ef,'));')...end...output('...}')
11e00 0a 20 20 6f 75 74 70 75 74 28 27 20 20 7d 27 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 47 65 ...output('..}')..end.end..--.Ge
11e20 74 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 t.parameter.value.function.class
11e40 44 65 63 6c 61 72 61 74 69 6f 6e 3a 73 65 74 61 72 72 61 79 20 28 6e 61 72 67 29 0a 20 69 66 20 Declaration:setarray.(narg)..if.
11e60 6e 6f 74 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 25 73 2b 27 not.strfind(self.type,'const%s+'
11e80 29 20 61 6e 64 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 20 6c 6f 63 61 ).and.self.dim.~=.''.then...loca
11ea0 6c 20 74 79 70 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 20 27 l.type.=.gsub(self.type,'const.'
11ec0 2c 27 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 20 7b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 ,'')...output('..{')...output('.
11ee0 20 20 69 6e 74 20 69 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 20 20 66 6f 72 28 69 3d 30 3b ..int.i;')...output('...for(i=0;
11f00 20 69 3c 27 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 27 3b 69 2b 2b 29 27 29 0a 20 20 6c 6f 63 61 6c .i<'..self.dim..';i++)')...local
11f20 20 74 2c 63 74 20 3d 20 69 73 62 61 73 69 63 28 74 79 70 65 29 0a 20 20 69 66 20 74 20 74 68 65 .t,ct.=.isbasic(type)...if.t.the
11f40 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 70 75 73 68 66 69 65 6c 64 n....output('....tolua_pushfield
11f60 27 2e 2e 74 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 69 2b 31 2c 28 27 2c '..t..'(tolua_S,',narg,',i+1,(',
11f80 63 74 2c 27 29 27 2c 73 65 6c 66 2e 6e 61 6d 65 2c 27 5b 69 5d 29 3b 27 29 0a 20 20 65 6c 73 65 ct,')',self.name,'[i]);')...else
11fa0 0a 20 20 20 69 66 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 27 20 74 68 65 6e 0a 20 20 20 20 20 ....if.self.ptr.==.''.then......
11fc0 6f 75 74 70 75 74 28 27 20 20 20 7b 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 23 69 66 64 output('...{')......output('#ifd
11fe0 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c 6e 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 ef.__cplusplus\n')......output('
12000 20 20 20 20 76 6f 69 64 2a 20 74 6f 6c 75 61 5f 6f 62 6a 20 3d 20 4d 74 6f 6c 75 61 5f 6e 65 77 ....void*.tolua_obj.=.Mtolua_new
12020 28 28 27 2c 74 79 70 65 2c 27 29 28 27 2c 73 65 6c 66 2e 6e 61 6d 65 2c 27 5b 69 5d 29 29 3b 27 ((',type,')(',self.name,'[i]));'
12040 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 70 75 73 68 66 69 65 )......output('....tolua_pushfie
12060 6c 64 75 73 65 72 74 79 70 65 5f 61 6e 64 5f 74 61 6b 65 6f 77 6e 65 72 73 68 69 70 28 74 6f 6c ldusertype_and_takeownership(tol
12080 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c 69 2b 31 2c 74 6f 6c 75 61 5f 6f 62 6a 2c 22 27 2c 74 ua_S,',narg,',i+1,tolua_obj,"',t
120a0 79 70 65 2c 27 22 29 3b 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 23 65 6c 73 65 5c 6e 27 ype,'");')......output('#else\n'
120c0 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 76 6f 69 64 2a 20 74 6f 6c 75 61 5f 6f )......output('....void*.tolua_o
120e0 62 6a 20 3d 20 74 6f 6c 75 61 5f 63 6f 70 79 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 26 bj.=.tolua_copy(tolua_S,(void*)&
12100 27 2c 73 65 6c 66 2e 6e 61 6d 65 2c 27 5b 69 5d 2c 73 69 7a 65 6f 66 28 27 2c 74 79 70 65 2c 27 ',self.name,'[i],sizeof(',type,'
12120 29 29 3b 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 70 75 73 ));')......output('....tolua_pus
12140 68 66 69 65 6c 64 75 73 65 72 74 79 70 65 28 74 6f 6c 75 61 5f 53 2c 27 2c 6e 61 72 67 2c 27 2c hfieldusertype(tolua_S,',narg,',
12160 69 2b 31 2c 74 6f 6c 75 61 5f 6f 62 6a 2c 22 27 2c 74 79 70 65 2c 27 22 29 3b 27 29 0a 20 20 20 i+1,tolua_obj,"',type,'");')....
12180 20 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 ..output('#endif\n')......output
121a0 28 27 20 20 20 7d 27 29 0a 20 20 20 65 6c 73 65 0a 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 ('...}')....else.....output('...
121c0 74 6f 6c 75 61 5f 70 75 73 68 66 69 65 6c 64 75 73 65 72 74 79 70 65 28 74 6f 6c 75 61 5f 53 2c tolua_pushfieldusertype(tolua_S,
121e0 27 2c 6e 61 72 67 2c 27 2c 69 2b 31 2c 28 76 6f 69 64 2a 29 27 2c 73 65 6c 66 2e 6e 61 6d 65 2c ',narg,',i+1,(void*)',self.name,
12200 27 5b 69 5d 2c 22 27 2c 74 79 70 65 2c 27 22 29 3b 27 29 0a 20 20 20 65 6e 64 0a 20 20 65 6e 64 '[i],"',type,'");')....end...end
12220 0a 20 20 6f 75 74 70 75 74 28 27 20 20 7d 27 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 46 72 ...output('..}')..end.end..--.Fr
12240 65 65 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 61 6c 6c 6f 63 61 74 65 64 20 61 72 72 61 79 0a 66 ee.dynamically.allocated.array.f
12260 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 66 72 65 65 61 72 72 unction.classDeclaration:freearr
12280 61 79 20 28 29 0a 20 69 66 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 61 6e 64 20 74 6f 6e ay.()..if.self.dim.~=.''.and.ton
122a0 75 6d 62 65 72 28 73 65 6c 66 2e 64 69 6d 29 3d 3d 6e 69 6c 20 74 68 65 6e 0a 09 20 6f 75 74 70 umber(self.dim)==nil.then...outp
122c0 75 74 28 27 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c 6e 27 29 0a 09 09 6f 75 74 ut('#ifdef.__cplusplus\n')...out
122e0 70 75 74 28 27 20 20 4d 74 6f 6c 75 61 5f 64 65 6c 65 74 65 5f 64 69 6d 28 27 2c 73 65 6c 66 2e put('..Mtolua_delete_dim(',self.
12300 6e 61 6d 65 2c 27 29 3b 27 29 0a 09 20 6f 75 74 70 75 74 28 27 23 65 6c 73 65 5c 6e 27 29 0a 20 name,');')...output('#else\n')..
12320 20 6f 75 74 70 75 74 28 27 20 20 66 72 65 65 28 27 2c 73 65 6c 66 2e 6e 61 6d 65 2c 27 29 3b 27 .output('..free(',self.name,');'
12340 29 0a 09 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 20 65 6e 64 0a 65 6e 64 0a )...output('#endif\n')..end.end.
12360 0a 2d 2d 20 50 61 73 73 20 70 61 72 61 6d 65 74 65 72 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 .--.Pass.parameter.function.clas
12380 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 70 61 73 73 70 61 72 20 28 29 0a 20 69 66 20 73 65 6c 66 sDeclaration:passpar.()..if.self
123a0 2e 70 74 72 3d 3d 27 26 27 20 61 6e 64 20 6e 6f 74 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 .ptr=='&'.and.not.isbasic(self.t
123c0 79 70 65 29 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 27 2a 27 2e 2e 73 65 6c 66 2e 6e 61 6d ype).then...output('*'..self.nam
123e0 65 29 0a 20 65 6c 73 65 69 66 20 73 65 6c 66 2e 72 65 74 3d 3d 27 2a 27 20 74 68 65 6e 0a 20 20 e)..elseif.self.ret=='*'.then...
12400 6f 75 74 70 75 74 28 27 26 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 29 0a 20 65 6c 73 65 0a 20 20 6f output('&'..self.name)..else...o
12420 75 74 70 75 74 28 73 65 6c 66 2e 6e 61 6d 65 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 52 65 utput(self.name)..end.end..--.Re
12440 74 75 72 6e 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c turn.parameter.value.function.cl
12460 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 3a 72 65 74 76 61 6c 75 65 20 28 29 0a 20 69 66 20 73 assDeclaration:retvalue.()..if.s
12480 65 6c 66 2e 72 65 74 20 7e 3d 20 27 27 20 74 68 65 6e 0a 20 20 6c 6f 63 61 6c 20 74 2c 63 74 20 elf.ret.~=.''.then...local.t,ct.
124a0 3d 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 20 69 66 20 74 20 61 6e 64 20 =.isbasic(self.type)...if.t.and.
124c0 74 7e 3d 27 27 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 74 6f 6c 75 61 5f 70 t~=''.then....output('...tolua_p
124e0 75 73 68 27 2e 2e 74 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 28 27 2c 63 74 2c 27 29 27 2e 2e 73 65 ush'..t..'(tolua_S,(',ct,')'..se
12500 6c 66 2e 6e 61 6d 65 2e 2e 27 29 3b 27 29 0a 20 20 65 6c 73 65 0a 20 20 20 6c 6f 63 61 6c 20 70 lf.name..');')...else....local.p
12520 75 73 68 5f 66 75 6e 63 20 3d 20 67 65 74 5f 70 75 73 68 5f 66 75 6e 63 74 69 6f 6e 28 73 65 6c ush_func.=.get_push_function(sel
12540 66 2e 74 79 70 65 29 0a 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 27 2c 70 75 73 68 5f 66 75 6e f.type)....output('...',push_fun
12560 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e c,'(tolua_S,(void*)'..self.name.
12580 2e 27 2c 22 27 2c 73 65 6c 66 2e 74 79 70 65 2c 27 22 29 3b 27 29 0a 20 20 65 6e 64 0a 20 20 72 .',"',self.type,'");')...end...r
125a0 65 74 75 72 6e 20 31 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 30 0a 65 6e 64 0a 0a 2d 2d 20 49 eturn.1..end..return.0.end..--.I
125c0 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 44 65 nternal.constructor.function._De
125e0 63 6c 61 72 61 74 69 6f 6e 20 28 74 29 0a 0a 20 73 65 74 6d 65 74 61 74 61 62 6c 65 28 74 2c 63 claration.(t)...setmetatable(t,c
12600 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 29 0a 20 74 3a 62 75 69 6c 64 6e 61 6d 65 73 28 29 lassDeclaration)..t:buildnames()
12620 0a 20 74 3a 63 68 65 63 6b 6e 61 6d 65 28 29 0a 20 74 3a 63 68 65 63 6b 74 79 70 65 28 29 0a 20 ..t:checkname()..t:checktype()..
12640 6c 6f 63 61 6c 20 66 74 20 3d 20 66 69 6e 64 74 79 70 65 28 74 2e 74 79 70 65 29 20 6f 72 20 74 local.ft.=.findtype(t.type).or.t
12660 2e 74 79 70 65 0a 20 69 66 20 6e 6f 74 20 69 73 65 6e 75 6d 28 66 74 29 20 74 68 65 6e 0a 09 74 .type..if.not.isenum(ft).then..t
12680 2e 6d 6f 64 2c 20 74 2e 74 79 70 65 20 3d 20 61 70 70 6c 79 74 79 70 65 64 65 66 28 74 2e 6d 6f .mod,.t.type.=.applytypedef(t.mo
126a0 64 2c 20 66 74 29 0a 20 65 6e 64 0a 0a 20 69 66 20 74 2e 6b 69 6e 64 3d 3d 22 76 61 72 22 20 61 d,.ft)..end...if.t.kind=="var".a
126c0 6e 64 20 28 73 74 72 69 6e 67 2e 66 69 6e 64 28 74 2e 6d 6f 64 2c 20 22 74 6f 6c 75 61 5f 70 72 nd.(string.find(t.mod,."tolua_pr
126e0 6f 70 65 72 74 79 25 73 22 29 20 6f 72 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 74 2e 6d 6f 64 2c operty%s").or.string.find(t.mod,
12700 20 22 74 6f 6c 75 61 5f 70 72 6f 70 65 72 74 79 24 22 29 29 20 74 68 65 6e 0a 20 09 74 2e 6d 6f ."tolua_property$")).then...t.mo
12720 64 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2e 6d 6f 64 2c 20 22 74 6f 6c 75 61 5f 70 72 d.=.string.gsub(t.mod,."tolua_pr
12740 6f 70 65 72 74 79 22 2c 20 22 74 6f 6c 75 61 5f 70 72 6f 70 65 72 74 79 5f 5f 22 2e 2e 67 65 74 operty",."tolua_property__"..get
12760 5f 70 72 6f 70 65 72 74 79 5f 74 79 70 65 28 29 29 0a 20 65 6e 64 0a 0a 20 72 65 74 75 72 6e 20 _property_type())..end...return.
12780 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 t.end..--.Constructor.--.Expects
127a0 20 74 68 65 20 73 74 72 69 6e 67 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 2d 2d 20 54 68 65 20 .the.string.declaration..--.The.
127c0 6b 69 6e 64 20 6f 66 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 20 22 76 61 72 22 kind.of.declaration.can.be."var"
127e0 20 6f 72 20 22 66 75 6e 63 22 2e 0a 66 75 6e 63 74 69 6f 6e 20 44 65 63 6c 61 72 61 74 69 6f 6e .or."func"..function.Declaration
12800 20 28 73 2c 6b 69 6e 64 2c 69 73 5f 70 61 72 61 6d 65 74 65 72 29 0a 0a 20 2d 2d 20 65 6c 69 6d .(s,kind,is_parameter)...--.elim
12820 69 6e 61 74 65 20 73 70 61 63 65 73 20 69 66 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 inate.spaces.if.default.value.is
12840 20 70 72 6f 76 69 64 65 64 0a 20 73 20 3d 20 67 73 75 62 28 73 2c 22 25 73 2a 3d 25 73 2a 22 2c .provided..s.=.gsub(s,"%s*=%s*",
12860 22 3d 22 29 0a 20 73 20 3d 20 67 73 75 62 28 73 2c 20 22 25 73 2a 3c 22 2c 20 22 3c 22 29 0a 0a "=")..s.=.gsub(s,."%s*<",."<")..
12880 20 6c 6f 63 61 6c 20 64 65 66 62 2c 74 6d 70 64 65 66 0a 20 64 65 66 62 2c 5f 2c 74 6d 70 64 65 .local.defb,tmpdef..defb,_,tmpde
128a0 66 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 28 3d 2e 2a 29 24 22 29 0a 20 69 66 f.=.string.find(s,."(=.*)$")..if
128c0 20 64 65 66 62 20 74 68 65 6e 0a 20 09 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 2c 20 .defb.then...s.=.string.gsub(s,.
128e0 22 3d 2e 2a 24 22 2c 20 22 22 29 0a 20 65 6c 73 65 0a 20 09 74 6d 70 64 65 66 20 3d 20 27 27 0a "=.*$",."")..else...tmpdef.=.''.
12900 20 65 6e 64 0a 20 69 66 20 6b 69 6e 64 20 3d 3d 20 22 76 61 72 22 20 74 68 65 6e 0a 20 20 2d 2d .end..if.kind.==."var".then...--
12920 20 63 68 65 63 6b 20 74 68 65 20 66 6f 72 6d 3a 20 76 6f 69 64 0a 20 20 69 66 20 73 20 3d 3d 20 .check.the.form:.void...if.s.==.
12940 27 27 20 6f 72 20 73 20 3d 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 20 72 65 74 75 72 6e ''.or.s.==.'void'.then....return
12960 20 5f 44 65 63 6c 61 72 61 74 69 6f 6e 7b 74 79 70 65 20 3d 20 27 76 6f 69 64 27 2c 20 6b 69 6e ._Declaration{type.=.'void',.kin
12980 64 20 3d 20 6b 69 6e 64 2c 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 3d 20 69 73 5f 70 61 72 61 d.=.kind,.is_parameter.=.is_para
129a0 6d 65 74 65 72 7d 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 74 68 65 meter}...end..end...--.check.the
129c0 20 66 6f 72 6d 3a 20 6d 6f 64 20 74 79 70 65 2a 26 20 6e 61 6d 65 0a 20 6c 6f 63 61 6c 20 74 20 .form:.mod.type*&.name..local.t.
129e0 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 2c 27 25 2a 25 73 2a 26 27 29 0a 20 69 66 =.split_c_tokens(s,'%*%s*&')..if
12a00 20 74 2e 6e 20 3d 3d 20 32 20 74 68 65 6e 0a 20 20 69 66 20 6b 69 6e 64 20 3d 3d 20 27 66 75 6e .t.n.==.2.then...if.kind.==.'fun
12a20 63 27 20 74 68 65 6e 0a 20 20 20 65 72 72 6f 72 28 22 23 69 6e 76 61 6c 69 64 20 66 75 6e 63 74 c'.then....error("#invalid.funct
12a40 69 6f 6e 20 72 65 74 75 72 6e 20 74 79 70 65 3a 20 22 2e 2e 73 29 0a 20 20 65 6e 64 0a 20 20 2d ion.return.type:."..s)...end...-
12a60 2d 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 74 28 74 5b 31 5d 2c 27 25 73 25 73 2a 27 29 0a 20 -local.m.=.split(t[1],'%s%s*')..
12a80 20 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 74 5b 31 5d 2c 27 .local.m.=.split_c_tokens(t[1],'
12aa0 25 73 2b 27 29 0a 20 20 72 65 74 75 72 6e 20 5f 44 65 63 6c 61 72 61 74 69 6f 6e 7b 0a 20 20 20 %s+')...return._Declaration{....
12ac0 6e 61 6d 65 20 3d 20 74 5b 32 5d 2e 2e 74 6d 70 64 65 66 2c 0a 20 20 20 70 74 72 20 3d 20 27 2a name.=.t[2]..tmpdef,....ptr.=.'*
12ae0 27 2c 0a 20 20 20 72 65 74 20 3d 20 27 26 27 2c 0a 20 20 20 2d 2d 74 79 70 65 20 3d 20 72 65 62 ',....ret.=.'&',....--type.=.reb
12b00 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 28 6d 5b 6d 2e 6e 5d 2c 20 74 62 2c 20 74 69 6d 70 6c 29 uild_template(m[m.n],.tb,.timpl)
12b20 2c 0a 20 20 20 74 79 70 65 20 3d 20 6d 5b 6d 2e 6e 5d 2c 0a 20 20 20 6d 6f 64 20 3d 20 63 6f 6e ,....type.=.m[m.n],....mod.=.con
12b40 63 61 74 28 6d 2c 31 2c 6d 2e 6e 2d 31 29 2c 0a 20 20 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 cat(m,1,m.n-1),....is_parameter.
12b60 3d 20 69 73 5f 70 61 72 61 6d 65 74 65 72 2c 0a 20 20 20 6b 69 6e 64 20 3d 20 6b 69 6e 64 0a 20 =.is_parameter,....kind.=.kind..
12b80 20 7d 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 74 68 65 20 66 6f 72 6d 3a 20 6d 6f 64 .}..end...--.check.the.form:.mod
12ba0 20 74 79 70 65 2a 2a 20 6e 61 6d 65 0a 20 74 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 .type**.name..t.=.split_c_tokens
12bc0 28 73 2c 27 25 2a 25 73 2a 25 2a 27 29 0a 20 69 66 20 74 2e 6e 20 3d 3d 20 32 20 74 68 65 6e 0a (s,'%*%s*%*')..if.t.n.==.2.then.
12be0 20 20 69 66 20 6b 69 6e 64 20 3d 3d 20 27 66 75 6e 63 27 20 74 68 65 6e 0a 20 20 20 65 72 72 6f ..if.kind.==.'func'.then....erro
12c00 72 28 22 23 69 6e 76 61 6c 69 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 20 74 79 70 65 r("#invalid.function.return.type
12c20 3a 20 22 2e 2e 73 29 0a 20 20 65 6e 64 0a 20 20 2d 2d 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 :."..s)...end...--local.m.=.spli
12c40 74 28 74 5b 31 5d 2c 27 25 73 25 73 2a 27 29 0a 20 20 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 t(t[1],'%s%s*')...local.m.=.spli
12c60 74 5f 63 5f 74 6f 6b 65 6e 73 28 74 5b 31 5d 2c 27 25 73 2b 27 29 0a 20 20 72 65 74 75 72 6e 20 t_c_tokens(t[1],'%s+')...return.
12c80 5f 44 65 63 6c 61 72 61 74 69 6f 6e 7b 0a 20 20 20 6e 61 6d 65 20 3d 20 74 5b 32 5d 2e 2e 74 6d _Declaration{....name.=.t[2]..tm
12ca0 70 64 65 66 2c 0a 20 20 20 70 74 72 20 3d 20 27 2a 27 2c 0a 20 20 20 72 65 74 20 3d 20 27 2a 27 pdef,....ptr.=.'*',....ret.=.'*'
12cc0 2c 0a 20 20 20 2d 2d 74 79 70 65 20 3d 20 72 65 62 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 28 6d ,....--type.=.rebuild_template(m
12ce0 5b 6d 2e 6e 5d 2c 20 74 62 2c 20 74 69 6d 70 6c 29 2c 0a 20 20 20 74 79 70 65 20 3d 20 6d 5b 6d [m.n],.tb,.timpl),....type.=.m[m
12d00 2e 6e 5d 2c 0a 20 20 20 6d 6f 64 20 3d 20 63 6f 6e 63 61 74 28 6d 2c 31 2c 6d 2e 6e 2d 31 29 2c .n],....mod.=.concat(m,1,m.n-1),
12d20 0a 20 20 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 3d 20 69 73 5f 70 61 72 61 6d 65 74 65 72 2c ....is_parameter.=.is_parameter,
12d40 0a 20 20 20 6b 69 6e 64 20 3d 20 6b 69 6e 64 0a 20 20 7d 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 68 ....kind.=.kind...}..end...--.ch
12d60 65 63 6b 20 74 68 65 20 66 6f 72 6d 3a 20 6d 6f 64 20 74 79 70 65 26 20 6e 61 6d 65 0a 20 74 20 eck.the.form:.mod.type&.name..t.
12d80 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 2c 27 26 27 29 0a 20 69 66 20 74 2e 6e 20 =.split_c_tokens(s,'&')..if.t.n.
12da0 3d 3d 20 32 20 74 68 65 6e 0a 20 20 2d 2d 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 74 28 74 5b ==.2.then...--local.m.=.split(t[
12dc0 31 5d 2c 27 25 73 25 73 2a 27 29 0a 20 20 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 74 5f 63 5f 1],'%s%s*')...local.m.=.split_c_
12de0 74 6f 6b 65 6e 73 28 74 5b 31 5d 2c 27 25 73 2b 27 29 0a 20 20 72 65 74 75 72 6e 20 5f 44 65 63 tokens(t[1],'%s+')...return._Dec
12e00 6c 61 72 61 74 69 6f 6e 7b 0a 20 20 20 6e 61 6d 65 20 3d 20 74 5b 32 5d 2e 2e 74 6d 70 64 65 66 laration{....name.=.t[2]..tmpdef
12e20 2c 0a 20 20 20 70 74 72 20 3d 20 27 26 27 2c 0a 20 20 20 2d 2d 74 79 70 65 20 3d 20 72 65 62 75 ,....ptr.=.'&',....--type.=.rebu
12e40 69 6c 64 5f 74 65 6d 70 6c 61 74 65 28 6d 5b 6d 2e 6e 5d 2c 20 74 62 2c 20 74 69 6d 70 6c 29 2c ild_template(m[m.n],.tb,.timpl),
12e60 0a 20 20 20 74 79 70 65 20 3d 20 6d 5b 6d 2e 6e 5d 2c 0a 20 20 20 6d 6f 64 20 3d 20 63 6f 6e 63 ....type.=.m[m.n],....mod.=.conc
12e80 61 74 28 6d 2c 31 2c 6d 2e 6e 2d 31 29 2c 0a 20 20 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 3d at(m,1,m.n-1),....is_parameter.=
12ea0 20 69 73 5f 70 61 72 61 6d 65 74 65 72 2c 0a 20 20 20 6b 69 6e 64 20 3d 20 6b 69 6e 64 0a 20 20 .is_parameter,....kind.=.kind...
12ec0 7d 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 74 68 65 20 66 6f 72 6d 3a 20 6d 6f 64 20 }..end...--.check.the.form:.mod.
12ee0 74 79 70 65 2a 20 6e 61 6d 65 0a 20 6c 6f 63 61 6c 20 73 31 20 3d 20 67 73 75 62 28 73 2c 22 28 type*.name..local.s1.=.gsub(s,"(
12f00 25 62 5c 5b 5c 5d 29 22 2c 66 75 6e 63 74 69 6f 6e 20 28 6e 29 20 72 65 74 75 72 6e 20 67 73 75 %b\[\])",function.(n).return.gsu
12f20 62 28 6e 2c 27 25 2a 27 2c 27 5c 31 27 29 20 65 6e 64 29 0a 20 74 20 3d 20 73 70 6c 69 74 5f 63 b(n,'%*','\1').end)..t.=.split_c
12f40 5f 74 6f 6b 65 6e 73 28 73 31 2c 27 25 2a 27 29 0a 20 69 66 20 74 2e 6e 20 3d 3d 20 32 20 74 68 _tokens(s1,'%*')..if.t.n.==.2.th
12f60 65 6e 0a 20 20 74 5b 32 5d 20 3d 20 67 73 75 62 28 74 5b 32 5d 2c 27 5c 31 27 2c 27 25 2a 27 29 en...t[2].=.gsub(t[2],'\1','%*')
12f80 20 2d 2d 20 72 65 73 74 6f 72 65 20 2a 20 69 6e 20 64 69 6d 65 6e 73 69 6f 6e 20 65 78 70 72 65 .--.restore.*.in.dimension.expre
12fa0 73 73 69 6f 6e 0a 20 20 2d 2d 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 74 28 74 5b 31 5d 2c 27 ssion...--local.m.=.split(t[1],'
12fc0 25 73 25 73 2a 27 29 0a 20 20 6c 6f 63 61 6c 20 6d 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 %s%s*')...local.m.=.split_c_toke
12fe0 6e 73 28 74 5b 31 5d 2c 27 25 73 2b 27 29 0a 20 20 72 65 74 75 72 6e 20 5f 44 65 63 6c 61 72 61 ns(t[1],'%s+')...return._Declara
13000 74 69 6f 6e 7b 0a 20 20 20 6e 61 6d 65 20 3d 20 74 5b 32 5d 2e 2e 74 6d 70 64 65 66 2c 0a 20 20 tion{....name.=.t[2]..tmpdef,...
13020 20 70 74 72 20 3d 20 27 2a 27 2c 0a 20 20 20 74 79 70 65 20 3d 20 6d 5b 6d 2e 6e 5d 2c 0a 20 20 .ptr.=.'*',....type.=.m[m.n],...
13040 20 2d 2d 74 79 70 65 20 3d 20 72 65 62 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 28 6d 5b 6d 2e 6e .--type.=.rebuild_template(m[m.n
13060 5d 2c 20 74 62 2c 20 74 69 6d 70 6c 29 2c 0a 20 20 20 6d 6f 64 20 3d 20 63 6f 6e 63 61 74 28 6d ],.tb,.timpl),....mod.=.concat(m
13080 2c 31 2c 6d 2e 6e 2d 31 29 20 20 20 2c 0a 20 20 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 3d 20 ,1,m.n-1)...,....is_parameter.=.
130a0 69 73 5f 70 61 72 61 6d 65 74 65 72 2c 0a 20 20 20 6b 69 6e 64 20 3d 20 6b 69 6e 64 0a 20 20 7d is_parameter,....kind.=.kind...}
130c0 0a 20 65 6e 64 0a 0a 20 69 66 20 6b 69 6e 64 20 3d 3d 20 27 76 61 72 27 20 74 68 65 6e 0a 20 20 ..end...if.kind.==.'var'.then...
130e0 2d 2d 20 63 68 65 63 6b 20 74 68 65 20 66 6f 72 6d 3a 20 6d 6f 64 20 74 79 70 65 20 6e 61 6d 65 --.check.the.form:.mod.type.name
13100 0a 20 20 2d 2d 74 20 3d 20 73 70 6c 69 74 28 73 2c 27 25 73 25 73 2a 27 29 0a 20 20 74 20 3d 20 ...--t.=.split(s,'%s%s*')...t.=.
13120 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 2c 27 25 73 2b 27 29 0a 20 20 6c 6f 63 61 6c 20 split_c_tokens(s,'%s+')...local.
13140 76 0a 20 20 69 66 20 66 69 6e 64 74 79 70 65 28 74 5b 74 2e 6e 5d 29 20 74 68 65 6e 20 76 20 3d v...if.findtype(t[t.n]).then.v.=
13160 20 63 72 65 61 74 65 5f 76 61 72 6e 61 6d 65 28 29 20 65 6c 73 65 20 76 20 3d 20 74 5b 74 2e 6e .create_varname().else.v.=.t[t.n
13180 5d 3b 20 74 2e 6e 20 3d 20 74 2e 6e 2d 31 20 65 6e 64 0a 20 20 72 65 74 75 72 6e 20 5f 44 65 63 ];.t.n.=.t.n-1.end...return._Dec
131a0 6c 61 72 61 74 69 6f 6e 7b 0a 20 20 20 6e 61 6d 65 20 3d 20 76 2e 2e 74 6d 70 64 65 66 2c 0a 20 laration{....name.=.v..tmpdef,..
131c0 20 20 2d 2d 74 79 70 65 20 3d 20 72 65 62 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 28 74 5b 74 2e ..--type.=.rebuild_template(t[t.
131e0 6e 5d 2c 20 74 62 2c 20 74 69 6d 70 6c 29 2c 0a 20 20 20 74 79 70 65 20 3d 20 74 5b 74 2e 6e 5d n],.tb,.timpl),....type.=.t[t.n]
13200 2c 0a 20 20 20 6d 6f 64 20 3d 20 63 6f 6e 63 61 74 28 74 2c 31 2c 74 2e 6e 2d 31 29 2c 0a 20 20 ,....mod.=.concat(t,1,t.n-1),...
13220 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 3d 20 69 73 5f 70 61 72 61 6d 65 74 65 72 2c 0a 20 20 .is_parameter.=.is_parameter,...
13240 20 6b 69 6e 64 20 3d 20 6b 69 6e 64 0a 20 20 7d 0a 0a 20 65 6c 73 65 20 2d 2d 20 6b 69 6e 64 20 .kind.=.kind...}...else.--.kind.
13260 3d 3d 20 22 66 75 6e 63 22 0a 0a 20 20 2d 2d 20 63 68 65 63 6b 20 74 68 65 20 66 6f 72 6d 3a 20 ==."func"....--.check.the.form:.
13280 6d 6f 64 20 74 79 70 65 20 6e 61 6d 65 0a 20 20 2d 2d 74 20 3d 20 73 70 6c 69 74 28 73 2c 27 25 mod.type.name...--t.=.split(s,'%
132a0 73 25 73 2a 27 29 0a 20 20 74 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 2c 27 25 s%s*')...t.=.split_c_tokens(s,'%
132c0 73 2b 27 29 0a 20 20 6c 6f 63 61 6c 20 76 20 3d 20 74 5b 74 2e 6e 5d 20 20 2d 2d 20 6c 61 73 74 s+')...local.v.=.t[t.n]..--.last
132e0 20 77 6f 72 64 20 69 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 0a 20 20 6c 6f 63 .word.is.the.function.name...loc
13300 61 6c 20 74 70 2c 6d 64 0a 20 20 69 66 20 74 2e 6e 3e 31 20 74 68 65 6e 0a 20 20 20 74 70 20 3d al.tp,md...if.t.n>1.then....tp.=
13320 20 74 5b 74 2e 6e 2d 31 5d 0a 20 20 20 6d 64 20 3d 20 63 6f 6e 63 61 74 28 74 2c 31 2c 74 2e 6e .t[t.n-1]....md.=.concat(t,1,t.n
13340 2d 32 29 0a 20 20 65 6e 64 0a 20 20 2d 2d 69 66 20 74 70 20 74 68 65 6e 20 74 70 20 3d 20 72 65 -2)...end...--if.tp.then.tp.=.re
13360 62 75 69 6c 64 5f 74 65 6d 70 6c 61 74 65 28 74 70 2c 20 74 62 2c 20 74 69 6d 70 6c 29 20 65 6e build_template(tp,.tb,.timpl).en
13380 64 0a 20 20 72 65 74 75 72 6e 20 5f 44 65 63 6c 61 72 61 74 69 6f 6e 7b 0a 20 20 20 6e 61 6d 65 d...return._Declaration{....name
133a0 20 3d 20 76 2c 0a 20 20 20 74 79 70 65 20 3d 20 74 70 2c 0a 20 20 20 6d 6f 64 20 3d 20 6d 64 2c .=.v,....type.=.tp,....mod.=.md,
133c0 0a 20 20 20 69 73 5f 70 61 72 61 6d 65 74 65 72 20 3d 20 69 73 5f 70 61 72 61 6d 65 74 65 72 2c ....is_parameter.=.is_parameter,
133e0 0a 20 20 20 6b 69 6e 64 20 3d 20 6b 69 6e 64 0a 20 20 7d 0a 20 65 6e 64 0a 0a 65 6e 64 0a 0a 00 ....kind.=.kind...}..end..end...
13400 2d 2d 20 74 6f 6c 75 61 3a 20 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 --.tolua:.function.class.--.Writ
13420 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 ten.by.Waldemar.Celes.--.TeCGraf
13440 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a /PUC-Rio.--.Jul.1998.--.$Id:.$..
13460 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 --.This.code.is.free.software;.y
13480 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f ou.can.redistribute.it.and/or.mo
134a0 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 dify.it..--.The.software.provide
134c0 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 d.hereunder.is.on.an."as.is".bas
134e0 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c is,.and.--.the.author.has.no.obl
13500 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 igation.to.provide.maintenance,.
13520 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 support,.updates,.--.enhancement
13540 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 0a 2d 2d 20 46 75 6e 63 74 s,.or.modifications.....--.Funct
13560 69 6f 6e 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 20 66 75 6e 63 74 69 ion.class.--.Represents.a.functi
13580 6f 6e 20 6f 72 20 61 20 63 6c 61 73 73 20 6d 65 74 68 6f 64 2e 0a 2d 2d 20 54 68 65 20 66 6f 6c on.or.a.class.method..--.The.fol
135a0 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 20 61 72 65 20 73 74 6f 72 65 64 3a 0a 2d 2d 20 20 6d 6f lowing.fields.are.stored:.--..mo
135c0 64 20 20 3d 20 74 79 70 65 20 6d 6f 64 69 66 69 65 72 73 0a 2d 2d 20 20 74 79 70 65 20 3d 20 74 d..=.type.modifiers.--..type.=.t
135e0 79 70 65 0a 2d 2d 20 20 70 74 72 20 20 3d 20 22 2a 22 20 6f 72 20 22 26 22 2c 20 69 66 20 72 65 ype.--..ptr..=."*".or."&",.if.re
13600 70 72 65 73 65 6e 74 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 6f 72 20 61 20 72 65 66 65 72 65 presenting.a.pointer.or.a.refere
13620 6e 63 65 0a 2d 2d 20 20 6e 61 6d 65 20 3d 20 6e 61 6d 65 0a 2d 2d 20 20 6c 6e 61 6d 65 20 3d 20 nce.--..name.=.name.--..lname.=.
13640 6c 75 61 20 6e 61 6d 65 0a 2d 2d 20 20 61 72 67 73 20 20 3d 20 6c 69 73 74 20 6f 66 20 61 72 67 lua.name.--..args..=.list.of.arg
13660 75 6d 65 6e 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 0a 2d 2d 20 20 63 6f 6e 73 74 20 3d 20 69 ument.declarations.--..const.=.i
13680 66 20 69 74 20 69 73 20 61 20 6d 65 74 68 6f 64 20 72 65 63 65 69 76 69 6e 67 20 61 20 63 6f 6e f.it.is.a.method.receiving.a.con
136a0 73 74 20 22 74 68 69 73 22 2e 0a 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 20 3d 20 7b 0a 20 6d 6f st."this"..classFunction.=.{..mo
136c0 64 20 3d 20 27 27 2c 0a 20 74 79 70 65 20 3d 20 27 27 2c 0a 20 70 74 72 20 3d 20 27 27 2c 0a 20 d.=.'',..type.=.'',..ptr.=.'',..
136e0 6e 61 6d 65 20 3d 20 27 27 2c 0a 20 61 72 67 73 20 3d 20 7b 6e 3d 30 7d 2c 0a 20 63 6f 6e 73 74 name.=.'',..args.=.{n=0},..const
13700 20 3d 20 27 27 2c 0a 7d 0a 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 2e 5f 5f 69 6e 64 65 78 20 3d .=.'',.}.classFunction.__index.=
13720 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 .classFunction.setmetatable(clas
13740 73 46 75 6e 63 74 69 6f 6e 2c 63 6c 61 73 73 46 65 61 74 75 72 65 29 0a 0a 2d 2d 20 64 65 63 6c sFunction,classFeature)..--.decl
13760 61 72 65 20 74 61 67 73 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 3a are.tags.function.classFunction:
13780 64 65 63 6c 74 79 70 65 20 28 29 0a 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 74 79 70 65 76 61 72 decltype.()..self.type.=.typevar
137a0 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 69 66 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 (self.type)..if.strfind(self.mod
137c0 2c 27 63 6f 6e 73 74 27 29 20 74 68 65 6e 0a 09 20 73 65 6c 66 2e 74 79 70 65 20 3d 20 27 63 6f ,'const').then...self.type.=.'co
137e0 6e 73 74 20 27 2e 2e 73 65 6c 66 2e 74 79 70 65 0a 09 09 73 65 6c 66 2e 6d 6f 64 20 3d 20 67 73 nst.'..self.type...self.mod.=.gs
13800 75 62 28 73 65 6c 66 2e 6d 6f 64 2c 27 63 6f 6e 73 74 27 2c 27 27 29 0a 09 65 6e 64 0a 20 6c 6f ub(self.mod,'const','')..end..lo
13820 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 cal.i=1..while.self.args[i].do..
13840 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 64 65 63 6c 74 79 70 65 28 29 0a 20 20 69 20 3d 20 69 .self.args[i]:decltype()...i.=.i
13860 2b 31 0a 20 65 6e 64 0a 65 6e 64 0a 0a 0a 2d 2d 20 57 72 69 74 65 20 62 69 6e 64 69 6e 67 20 66 +1..end.end...--.Write.binding.f
13880 75 6e 63 74 69 6f 6e 0a 2d 2d 20 4f 75 74 70 75 74 73 20 43 2f 43 2b 2b 20 62 69 6e 64 69 6e 67 unction.--.Outputs.C/C++.binding
138a0 20 66 75 6e 63 74 69 6f 6e 2e 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 75 6e 63 74 69 6f .function..function.classFunctio
138c0 6e 3a 73 75 70 63 6f 64 65 20 28 6c 6f 63 61 6c 5f 63 6f 6e 73 74 72 75 63 74 6f 72 29 0a 20 6c n:supcode.(local_constructor)..l
138e0 6f 63 61 6c 20 6f 76 65 72 6c 6f 61 64 20 3d 20 73 74 72 73 75 62 28 73 65 6c 66 2e 63 6e 61 6d ocal.overload.=.strsub(self.cnam
13900 65 2c 2d 32 2c 2d 31 29 20 2d 20 31 20 20 2d 2d 20 69 6e 64 69 63 61 74 65 20 6f 76 65 72 6c 6f e,-2,-1).-.1..--.indicate.overlo
13920 61 64 65 64 20 66 75 6e 63 0a 20 6c 6f 63 61 6c 20 6e 72 65 74 20 3d 20 30 20 20 20 20 20 20 2d aded.func..local.nret.=.0......-
13940 2d 20 6e 75 6d 62 65 72 20 6f 66 20 72 65 74 75 72 6e 65 64 20 76 61 6c 75 65 73 0a 20 6c 6f 63 -.number.of.returned.values..loc
13960 61 6c 20 63 6c 61 73 73 20 3d 20 73 65 6c 66 3a 69 6e 63 6c 61 73 73 28 29 0a 20 6c 6f 63 61 6c al.class.=.self:inclass()..local
13980 20 5f 2c 5f 2c 73 74 61 74 69 63 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 27 ._,_,static.=.strfind(self.mod,'
139a0 5e 25 73 2a 28 73 74 61 74 69 63 29 27 29 0a 20 2d 2d 20 70 72 6f 74 6f 74 79 70 65 73 20 66 6f ^%s*(static)')..--.prototypes.fo
139c0 72 20 65 6e 75 6d 20 66 75 6e 63 74 69 6f 6e 73 0a 20 69 66 20 73 65 6c 66 2e 61 72 67 73 5b 31 r.enum.functions..if.self.args[1
139e0 5d 2e 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 6c 6f 63 61 6c 20 69 3d ].type.~=.'void'.then...local.i=
13a00 31 0a 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 20 20 69 66 20 1...while.self.args[i].do....if.
13a20 69 73 65 6e 75 6d 74 79 70 65 28 73 65 6c 66 2e 61 72 67 73 5b 69 5d 2e 74 79 70 65 29 20 74 68 isenumtype(self.args[i].type).th
13a40 65 6e 0a 20 20 20 20 20 65 6d 69 74 65 6e 75 6d 70 72 6f 74 6f 74 79 70 65 28 73 65 6c 66 2e 61 en......emitenumprototype(self.a
13a60 72 67 73 5b 69 5d 2e 74 79 70 65 29 0a 20 20 20 65 6e 64 0a 20 20 20 69 20 3d 20 69 2b 31 0a 20 rgs[i].type)....end....i.=.i+1..
13a80 20 65 6e 64 0a 20 65 6e 64 0a 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 0a 20 09 69 66 20 73 .end..end..if.class.then....if.s
13aa0 65 6c 66 2e 6e 61 6d 65 20 3d 3d 20 27 6e 65 77 27 20 61 6e 64 20 73 65 6c 66 2e 70 61 72 65 6e elf.name.==.'new'.and.self.paren
13ac0 74 2e 66 6c 61 67 73 2e 70 75 72 65 5f 76 69 72 74 75 61 6c 20 74 68 65 6e 0a 20 09 09 2d 2d 20 t.flags.pure_virtual.then....--.
13ae0 6e 6f 20 63 6f 6e 73 74 72 75 63 74 6f 72 20 66 6f 72 20 63 6c 61 73 73 65 73 20 77 69 74 68 20 no.constructor.for.classes.with.
13b00 70 75 72 65 20 76 69 72 74 75 61 6c 20 6d 65 74 68 6f 64 73 0a 20 09 09 72 65 74 75 72 6e 0a 20 pure.virtual.methods....return..
13b20 09 65 6e 64 0a 0a 20 09 69 66 20 6c 6f 63 61 6c 5f 63 6f 6e 73 74 72 75 63 74 6f 72 20 74 68 65 .end....if.local_constructor.the
13b40 6e 0a 09 09 6f 75 74 70 75 74 28 22 2f 2a 20 6d 65 74 68 6f 64 3a 20 6e 65 77 5f 6c 6f 63 61 6c n...output("/*.method:.new_local
13b60 20 6f 66 20 63 6c 61 73 73 20 22 2c 63 6c 61 73 73 2c 22 20 2a 2f 22 29 0a 09 65 6c 73 65 0a 09 .of.class.",class,".*/")..else..
13b80 09 6f 75 74 70 75 74 28 22 2f 2a 20 6d 65 74 68 6f 64 3a 22 2c 73 65 6c 66 2e 6e 61 6d 65 2c 22 .output("/*.method:",self.name,"
13ba0 20 6f 66 20 63 6c 61 73 73 20 22 2c 63 6c 61 73 73 2c 22 20 2a 2f 22 29 0a 09 65 6e 64 0a 20 65 .of.class.",class,".*/")..end..e
13bc0 6c 73 65 0a 20 20 6f 75 74 70 75 74 28 22 2f 2a 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 lse...output("/*.function:",self
13be0 2e 6e 61 6d 65 2c 22 20 2a 2f 22 29 0a 20 65 6e 64 0a 0a 20 69 66 20 6c 6f 63 61 6c 5f 63 6f 6e .name,".*/")..end...if.local_con
13c00 73 74 72 75 63 74 6f 72 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 22 23 69 66 6e 64 65 66 20 structor.then...output("#ifndef.
13c20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5f 22 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 2e 2e 22 5f 6c TOLUA_DISABLE_"..self.cname.."_l
13c40 6f 63 61 6c 22 29 0a 20 20 6f 75 74 70 75 74 28 22 5c 6e 73 74 61 74 69 63 20 69 6e 74 22 2c 73 ocal")...output("\nstatic.int",s
13c60 65 6c 66 2e 63 6e 61 6d 65 2e 2e 22 5f 6c 6f 63 61 6c 22 2c 22 28 6c 75 61 5f 53 74 61 74 65 2a elf.cname.."_local","(lua_State*
13c80 20 74 6f 6c 75 61 5f 53 29 22 29 0a 20 65 6c 73 65 0a 20 20 6f 75 74 70 75 74 28 22 23 69 66 6e .tolua_S)")..else...output("#ifn
13ca0 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5f 22 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 29 def.TOLUA_DISABLE_"..self.cname)
13cc0 0a 20 20 6f 75 74 70 75 74 28 22 5c 6e 73 74 61 74 69 63 20 69 6e 74 22 2c 73 65 6c 66 2e 63 6e ...output("\nstatic.int",self.cn
13ce0 61 6d 65 2c 22 28 6c 75 61 5f 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 22 29 0a 20 65 6e 64 ame,"(lua_State*.tolua_S)")..end
13d00 0a 20 6f 75 74 70 75 74 28 22 7b 22 29 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 74 79 70 65 73 0a 09 ..output("{")...--.check.types..
13d20 69 66 20 6f 76 65 72 6c 6f 61 64 20 3c 20 30 20 74 68 65 6e 0a 09 20 6f 75 74 70 75 74 28 27 23 if.overload.<.0.then...output('#
13d40 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 65 6e 64 0a 09 6f ifndef.TOLUA_RELEASE\n')..end..o
13d60 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f 45 72 72 6f 72 20 74 6f 6c 75 61 5f 65 72 72 3b 27 29 utput('.tolua_Error.tolua_err;')
13d80 0a 20 6f 75 74 70 75 74 28 27 20 69 66 20 28 5c 6e 27 29 0a 20 2d 2d 20 63 68 65 63 6b 20 73 65 ..output('.if.(\n')..--.check.se
13da0 6c 66 0a 20 6c 6f 63 61 6c 20 6e 61 72 67 0a 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 20 6e 61 lf..local.narg..if.class.then.na
13dc0 72 67 3d 32 20 65 6c 73 65 20 6e 61 72 67 3d 31 20 65 6e 64 0a 20 69 66 20 63 6c 61 73 73 20 74 rg=2.else.narg=1.end..if.class.t
13de0 68 65 6e 0a 09 09 6c 6f 63 61 6c 20 66 75 6e 63 20 3d 20 67 65 74 5f 69 73 5f 66 75 6e 63 74 69 hen...local.func.=.get_is_functi
13e00 6f 6e 28 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 29 0a 09 09 6c 6f 63 61 6c 20 74 79 70 on(self.parent.type)...local.typ
13e20 65 20 3d 20 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 0a 09 09 69 66 20 73 65 6c 66 2e 6e e.=.self.parent.type...if.self.n
13e40 61 6d 65 3d 3d 27 6e 65 77 27 20 6f 72 20 73 74 61 74 69 63 7e 3d 6e 69 6c 20 74 68 65 6e 0a 09 ame=='new'.or.static~=nil.then..
13e60 09 09 66 75 6e 63 20 3d 20 27 74 6f 6c 75 61 5f 69 73 75 73 65 72 74 61 62 6c 65 27 0a 09 09 09 ..func.=.'tolua_isusertable'....
13e80 74 79 70 65 20 3d 20 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 0a 09 09 65 6e 64 0a 09 09 type.=.self.parent.type...end...
13ea0 69 66 20 73 65 6c 66 2e 63 6f 6e 73 74 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 09 09 74 79 70 65 if.self.const.~=.''.then....type
13ec0 20 3d 20 22 63 6f 6e 73 74 20 22 2e 2e 74 79 70 65 0a 09 09 65 6e 64 0a 09 09 6f 75 74 70 75 74 .=."const."..type...end...output
13ee0 28 27 20 20 20 20 20 21 27 2e 2e 66 75 6e 63 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 31 2c 22 27 2e ('.....!'..func..'(tolua_S,1,"'.
13f00 2e 74 79 70 65 2e 2e 27 22 2c 30 2c 26 74 6f 6c 75 61 5f 65 72 72 29 20 7c 7c 5c 6e 27 29 0a 20 .type..'",0,&tolua_err).||\n')..
13f20 65 6e 64 0a 20 2d 2d 20 63 68 65 63 6b 20 61 72 67 73 0a 20 69 66 20 73 65 6c 66 2e 61 72 67 73 end..--.check.args..if.self.args
13f40 5b 31 5d 2e 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 6c 6f 63 61 6c 20 [1].type.~=.'void'.then...local.
13f60 69 3d 31 0a 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 20 20 6c i=1...while.self.args[i].do....l
13f80 6f 63 61 6c 20 62 74 79 70 65 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 61 72 67 73 5b 69 ocal.btype.=.isbasic(self.args[i
13fa0 5d 2e 74 79 70 65 29 0a 20 20 20 69 66 20 62 74 79 70 65 20 7e 3d 20 27 76 61 6c 75 65 27 20 61 ].type)....if.btype.~=.'value'.a
13fc0 6e 64 20 62 74 79 70 65 20 7e 3d 20 27 73 74 61 74 65 27 20 74 68 65 6e 0a 20 20 20 20 6f 75 74 nd.btype.~=.'state'.then.....out
13fe0 70 75 74 28 27 20 20 20 20 20 27 2e 2e 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 6f 75 74 63 68 65 put('.....'..self.args[i]:outche
14000 63 6b 74 79 70 65 28 6e 61 72 67 29 2e 2e 27 20 7c 7c 5c 6e 27 29 0a 20 20 20 65 6e 64 0a 20 20 cktype(narg)..'.||\n')....end...
14020 20 69 66 20 62 74 79 70 65 20 7e 3d 20 27 73 74 61 74 65 27 20 74 68 65 6e 0a 09 20 20 20 6e 61 .if.btype.~=.'state'.then.....na
14040 72 67 20 3d 20 6e 61 72 67 2b 31 0a 20 20 20 65 6e 64 0a 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 rg.=.narg+1....end....i.=.i+1...
14060 65 6e 64 0a 20 65 6e 64 0a 20 2d 2d 20 63 68 65 63 6b 20 65 6e 64 20 6f 66 20 6c 69 73 74 0a 20 end..end..--.check.end.of.list..
14080 6f 75 74 70 75 74 28 27 20 20 20 20 20 21 74 6f 6c 75 61 5f 69 73 6e 6f 6f 62 6a 28 74 6f 6c 75 output('.....!tolua_isnoobj(tolu
140a0 61 5f 53 2c 27 2e 2e 6e 61 72 67 2e 2e 27 2c 26 74 6f 6c 75 61 5f 65 72 72 29 5c 6e 20 29 27 29 a_S,'..narg..',&tolua_err)\n.)')
140c0 0a 09 6f 75 74 70 75 74 28 27 20 20 67 6f 74 6f 20 74 6f 6c 75 61 5f 6c 65 72 72 6f 72 3b 27 29 ..output('..goto.tolua_lerror;')
140e0 0a 0a 20 6f 75 74 70 75 74 28 27 20 65 6c 73 65 5c 6e 27 29 0a 09 69 66 20 6f 76 65 72 6c 6f 61 ...output('.else\n')..if.overloa
14100 64 20 3c 20 30 20 74 68 65 6e 0a 09 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a d.<.0.then...output('#endif\n').
14120 09 65 6e 64 0a 09 6f 75 74 70 75 74 28 27 20 7b 27 29 0a 0a 20 2d 2d 20 64 65 63 6c 61 72 65 20 .end..output('.{')...--.declare.
14140 73 65 6c 66 2c 20 69 66 20 74 68 65 20 63 61 73 65 0a 20 6c 6f 63 61 6c 20 6e 61 72 67 0a 20 69 self,.if.the.case..local.narg..i
14160 66 20 63 6c 61 73 73 20 74 68 65 6e 20 6e 61 72 67 3d 32 20 65 6c 73 65 20 6e 61 72 67 3d 31 20 f.class.then.narg=2.else.narg=1.
14180 65 6e 64 0a 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 7e 3d 27 6e 65 end..if.class.and.self.name~='ne
141a0 77 27 20 61 6e 64 20 73 74 61 74 69 63 3d 3d 6e 69 6c 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 w'.and.static==nil.then...output
141c0 28 27 20 27 2c 73 65 6c 66 2e 63 6f 6e 73 74 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 ('.',self.const,self.parent.type
141e0 2c 27 2a 27 2c 27 73 65 6c 66 20 3d 20 27 29 0a 20 20 6f 75 74 70 75 74 28 27 28 27 2c 73 65 6c ,'*','self.=.')...output('(',sel
14200 66 2e 63 6f 6e 73 74 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 29 20 27 29 0a f.const,self.parent.type,'*).').
14220 20 20 6c 6f 63 61 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 74 69 6f ..local.to_func.=.get_to_functio
14240 6e 28 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 29 0a 20 20 6f 75 74 70 75 74 28 74 6f 5f n(self.parent.type)...output(to_
14260 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 31 2c 30 29 3b 27 29 0a 20 65 6c 73 65 69 66 20 73 func,'(tolua_S,1,0);')..elseif.s
14280 74 61 74 69 63 20 74 68 65 6e 0a 20 20 5f 2c 5f 2c 73 65 6c 66 2e 6d 6f 64 20 3d 20 73 74 72 66 tatic.then..._,_,self.mod.=.strf
142a0 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 27 5e 25 73 2a 73 74 61 74 69 63 25 73 25 73 2a 28 2e 2a ind(self.mod,'^%s*static%s%s*(.*
142c0 29 27 29 0a 20 65 6e 64 0a 20 2d 2d 20 64 65 63 6c 61 72 65 20 70 61 72 61 6d 65 74 65 72 73 0a )')..end..--.declare.parameters.
142e0 20 69 66 20 73 65 6c 66 2e 61 72 67 73 5b 31 5d 2e 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 .if.self.args[1].type.~=.'void'.
14300 74 68 65 6e 0a 20 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 then...local.i=1...while.self.ar
14320 67 73 5b 69 5d 20 64 6f 0a 20 20 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 64 65 63 6c 61 72 65 gs[i].do....self.args[i]:declare
14340 28 6e 61 72 67 29 0a 20 20 20 69 66 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 61 72 67 73 5b 69 (narg)....if.isbasic(self.args[i
14360 5d 2e 74 79 70 65 29 20 7e 3d 20 22 73 74 61 74 65 22 20 74 68 65 6e 0a 09 20 20 20 6e 61 72 67 ].type).~=."state".then.....narg
14380 20 3d 20 6e 61 72 67 2b 31 0a 20 20 20 65 6e 64 0a 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 65 6e .=.narg+1....end....i.=.i+1...en
143a0 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 73 65 6c 66 0a 20 69 66 20 63 6c 61 73 73 d..end...--.check.self..if.class
143c0 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 7e 3d 27 6e 65 77 27 20 61 6e 64 20 73 74 61 74 69 63 .and.self.name~='new'.and.static
143e0 3d 3d 6e 69 6c 20 74 68 65 6e 0a 09 20 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c ==nil.then...output('#ifndef.TOL
14400 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 20 6f 75 74 70 75 74 28 27 20 20 69 66 20 28 21 UA_RELEASE\n')...output('..if.(!
14420 73 65 6c 66 29 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 6f 75 self).tolua_error(tolua_S,"'..ou
14440 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 22 69 6e 76 61 6c 69 64 20 5c 27 73 65 6c 66 5c tput_error_hook("invalid.\'self\
14460 27 20 69 6e 20 66 75 6e 63 74 69 6f 6e 20 5c 27 25 73 5c 27 22 2c 20 73 65 6c 66 2e 6e 61 6d 65 '.in.function.\'%s\'",.self.name
14480 29 2e 2e 27 22 2c 20 4e 55 4c 4c 29 3b 27 29 3b 0a 09 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 )..'",.NULL);');...output('#endi
144a0 66 5c 6e 27 29 0a 20 65 6e 64 0a 0a 20 2d 2d 20 67 65 74 20 61 72 72 61 79 20 65 6c 65 6d 65 6e f\n')..end...--.get.array.elemen
144c0 74 20 76 61 6c 75 65 73 0a 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 20 6e 61 72 67 3d 32 20 65 t.values..if.class.then.narg=2.e
144e0 6c 73 65 20 6e 61 72 67 3d 31 20 65 6e 64 0a 20 69 66 20 73 65 6c 66 2e 61 72 67 73 5b 31 5d 2e lse.narg=1.end..if.self.args[1].
14500 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 6c 6f 63 61 6c 20 69 3d 31 0a type.~=.'void'.then...local.i=1.
14520 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 20 20 73 65 6c 66 2e ..while.self.args[i].do....self.
14540 61 72 67 73 5b 69 5d 3a 67 65 74 61 72 72 61 79 28 6e 61 72 67 29 0a 20 20 20 6e 61 72 67 20 3d args[i]:getarray(narg)....narg.=
14560 20 6e 61 72 67 2b 31 0a 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 .narg+1....i.=.i+1...end..end...
14580 70 72 65 5f 63 61 6c 6c 5f 68 6f 6f 6b 28 73 65 6c 66 29 0a 0a 20 6c 6f 63 61 6c 20 6f 75 74 20 pre_call_hook(self)...local.out.
145a0 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 20 22 74 6f 6c 75 61 5f 6f =.string.find(self.mod,."tolua_o
145c0 75 74 73 69 64 65 22 29 0a 20 2d 2d 20 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 0a 20 69 66 20 63 utside")..--.call.function..if.c
145e0 6c 61 73 73 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 3d 3d 27 64 65 6c 65 74 65 27 20 74 68 65 lass.and.self.name=='delete'.the
14600 6e 0a 20 20 6f 75 74 70 75 74 28 27 20 20 4d 74 6f 6c 75 61 5f 64 65 6c 65 74 65 28 73 65 6c 66 n...output('..Mtolua_delete(self
14620 29 3b 27 29 0a 20 65 6c 73 65 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 );')..elseif.class.and.self.name
14640 20 3d 3d 20 27 6f 70 65 72 61 74 6f 72 26 5b 5d 27 20 74 68 65 6e 0a 20 20 69 66 20 66 6c 61 67 .==.'operator&[]'.then...if.flag
14660 73 5b 27 31 27 5d 20 74 68 65 6e 20 2d 2d 20 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 s['1'].then.--.for.compatibility
14680 20 77 69 74 68 20 74 6f 6c 75 61 35 20 3f 0a 09 6f 75 74 70 75 74 28 27 20 20 73 65 6c 66 2d 3e .with.tolua5.?..output('..self->
146a0 6f 70 65 72 61 74 6f 72 5b 5d 28 27 2c 73 65 6c 66 2e 61 72 67 73 5b 31 5d 2e 6e 61 6d 65 2c 27 operator[](',self.args[1].name,'
146c0 2d 31 29 20 3d 20 27 2c 73 65 6c 66 2e 61 72 67 73 5b 32 5d 2e 6e 61 6d 65 2c 27 3b 27 29 0a 20 -1).=.',self.args[2].name,';')..
146e0 20 65 6c 73 65 0a 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 73 65 6c 66 2d 3e 6f 70 65 72 61 74 .else.....output('..self->operat
14700 6f 72 5b 5d 28 27 2c 73 65 6c 66 2e 61 72 67 73 5b 31 5d 2e 6e 61 6d 65 2c 27 29 20 3d 20 27 2c or[](',self.args[1].name,').=.',
14720 73 65 6c 66 2e 61 72 67 73 5b 32 5d 2e 6e 61 6d 65 2c 27 3b 27 29 0a 20 20 65 6e 64 0a 20 65 6c self.args[2].name,';')...end..el
14740 73 65 0a 20 20 6f 75 74 70 75 74 28 27 20 20 7b 27 29 0a 20 20 69 66 20 73 65 6c 66 2e 74 79 70 se...output('..{')...if.self.typ
14760 65 20 7e 3d 20 27 27 20 61 6e 64 20 73 65 6c 66 2e 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 e.~=.''.and.self.type.~=.'void'.
14780 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 20 20 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c then....output('..',self.mod,sel
147a0 66 2e 74 79 70 65 2c 73 65 6c 66 2e 70 74 72 2c 27 74 6f 6c 75 61 5f 72 65 74 20 3d 20 27 29 0a f.type,self.ptr,'tolua_ret.=.').
147c0 20 20 20 6f 75 74 70 75 74 28 27 28 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e 74 79 70 65 ...output('(',self.mod,self.type
147e0 2c 73 65 6c 66 2e 70 74 72 2c 27 29 20 27 29 0a 20 20 65 6c 73 65 0a 20 20 20 6f 75 74 70 75 74 ,self.ptr,').')...else....output
14800 28 27 20 20 27 29 0a 20 20 65 6e 64 0a 20 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 65 6c 66 ('..')...end...if.class.and.self
14820 2e 6e 61 6d 65 3d 3d 27 6e 65 77 27 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 4d 74 6f .name=='new'.then....output('Mto
14840 6c 75 61 5f 6e 65 77 28 28 27 2c 73 65 6c 66 2e 74 79 70 65 2c 27 29 28 27 29 0a 20 20 65 6c 73 lua_new((',self.type,')(')...els
14860 65 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 20 74 68 65 6e 0a 09 69 66 20 6f 75 eif.class.and.static.then..if.ou
14880 74 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 73 65 6c 66 2e 6e 61 6d 65 2c 27 28 27 29 0a 09 t.then...output(self.name,'(')..
148a0 65 6c 73 65 0a 09 09 6f 75 74 70 75 74 28 63 6c 61 73 73 2e 2e 27 3a 3a 27 2e 2e 73 65 6c 66 2e else...output(class..'::'..self.
148c0 6e 61 6d 65 2c 27 28 27 29 0a 09 65 6e 64 0a 20 20 65 6c 73 65 69 66 20 63 6c 61 73 73 20 74 68 name,'(')..end...elseif.class.th
148e0 65 6e 0a 09 69 66 20 6f 75 74 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 73 65 6c 66 2e 6e 61 en..if.out.then...output(self.na
14900 6d 65 2c 27 28 27 29 0a 09 65 6c 73 65 0a 09 20 20 69 66 20 73 65 6c 66 2e 63 61 73 74 5f 6f 70 me,'(')..else....if.self.cast_op
14920 65 72 61 74 6f 72 20 74 68 65 6e 0a 09 20 20 09 2d 2d 6f 75 74 70 75 74 28 27 73 74 61 74 69 63 erator.then.....--output('static
14940 5f 63 61 73 74 3c 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e 74 79 70 65 2c 73 65 6c 66 2e _cast<',self.mod,self.type,self.
14960 70 74 72 2c 27 20 3e 28 2a 73 65 6c 66 27 29 0a 09 09 6f 75 74 70 75 74 28 27 73 65 6c 66 2d 3e ptr,'.>(*self')...output('self->
14980 6f 70 65 72 61 74 6f 72 20 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e 74 79 70 65 2c 27 28 operator.',self.mod,self.type,'(
149a0 27 29 0a 09 20 20 65 6c 73 65 0a 09 09 6f 75 74 70 75 74 28 27 73 65 6c 66 2d 3e 27 2e 2e 73 65 ')....else...output('self->'..se
149c0 6c 66 2e 6e 61 6d 65 2c 27 28 27 29 0a 09 20 20 65 6e 64 0a 09 65 6e 64 0a 20 20 65 6c 73 65 0a lf.name,'(')....end..end...else.
149e0 20 20 20 6f 75 74 70 75 74 28 73 65 6c 66 2e 6e 61 6d 65 2c 27 28 27 29 0a 20 20 65 6e 64 0a 0a ...output(self.name,'(')...end..
14a00 20 20 69 66 20 6f 75 74 20 61 6e 64 20 6e 6f 74 20 73 74 61 74 69 63 20 74 68 65 6e 0a 20 20 09 ..if.out.and.not.static.then....
14a20 6f 75 74 70 75 74 28 27 73 65 6c 66 27 29 0a 09 69 66 20 73 65 6c 66 2e 61 72 67 73 5b 31 5d 20 output('self')..if.self.args[1].
14a40 61 6e 64 20 73 65 6c 66 2e 61 72 67 73 5b 31 5d 2e 6e 61 6d 65 20 7e 3d 20 27 27 20 74 68 65 6e and.self.args[1].name.~=.''.then
14a60 0a 09 09 6f 75 74 70 75 74 28 27 2c 27 29 0a 09 65 6e 64 0a 20 20 65 6e 64 0a 20 20 2d 2d 20 77 ...output(',')..end...end...--.w
14a80 72 69 74 65 20 70 61 72 61 6d 65 74 65 72 73 0a 20 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 20 77 68 rite.parameters...local.i=1...wh
14aa0 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 20 20 73 65 6c 66 2e 61 72 67 73 ile.self.args[i].do....self.args
14ac0 5b 69 5d 3a 70 61 73 73 70 61 72 28 29 0a 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 20 69 66 20 73 [i]:passpar()....i.=.i+1....if.s
14ae0 65 6c 66 2e 61 72 67 73 5b 69 5d 20 74 68 65 6e 0a 20 20 20 20 6f 75 74 70 75 74 28 27 2c 27 29 elf.args[i].then.....output(',')
14b00 0a 20 20 20 65 6e 64 0a 20 20 65 6e 64 0a 0a 20 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 65 ....end...end....if.class.and.se
14b20 6c 66 2e 6e 61 6d 65 20 3d 3d 20 27 6f 70 65 72 61 74 6f 72 5b 5d 27 20 61 6e 64 20 66 6c 61 67 lf.name.==.'operator[]'.and.flag
14b40 73 5b 27 31 27 5d 20 74 68 65 6e 0a 09 6f 75 74 70 75 74 28 27 2d 31 29 3b 27 29 0a 20 20 65 6c s['1'].then..output('-1);')...el
14b60 73 65 0a 09 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 3d 3d 27 6e 65 77 se..if.class.and.self.name=='new
14b80 27 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 27 29 29 3b 27 29 20 2d 2d 20 63 6c 6f 73 65 20 '.then...output('));').--.close.
14ba0 4d 74 6f 6c 75 61 5f 6e 65 77 28 0a 09 65 6c 73 65 0a 09 09 6f 75 74 70 75 74 28 27 29 3b 27 29 Mtolua_new(..else...output(');')
14bc0 0a 09 65 6e 64 0a 20 20 65 6e 64 0a 0a 20 20 2d 2d 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 0a ..end...end....--.return.values.
14be0 20 20 69 66 20 73 65 6c 66 2e 74 79 70 65 20 7e 3d 20 27 27 20 61 6e 64 20 73 65 6c 66 2e 74 79 ..if.self.type.~=.''.and.self.ty
14c00 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 20 6e 72 65 74 20 3d 20 6e 72 65 74 pe.~=.'void'.then....nret.=.nret
14c20 20 2b 20 31 0a 20 20 20 6c 6f 63 61 6c 20 74 2c 63 74 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c .+.1....local.t,ct.=.isbasic(sel
14c40 66 2e 74 79 70 65 29 0a 20 20 20 69 66 20 74 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 20 7e 3d f.type)....if.t.and.self.name.~=
14c60 20 22 6e 65 77 22 20 74 68 65 6e 0a 20 20 20 09 69 66 20 73 65 6c 66 2e 63 61 73 74 5f 6f 70 65 ."new".then.....if.self.cast_ope
14c80 72 61 74 6f 72 20 61 6e 64 20 5f 62 61 73 69 63 5f 72 61 77 5f 70 75 73 68 5b 74 5d 20 74 68 65 rator.and._basic_raw_push[t].the
14ca0 6e 0a 09 09 6f 75 74 70 75 74 28 27 20 20 20 27 2c 5f 62 61 73 69 63 5f 72 61 77 5f 70 75 73 68 n...output('...',_basic_raw_push
14cc0 5b 74 5d 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 27 2c 63 74 2c 27 29 74 6f 6c 75 61 5f 72 65 74 29 [t],'(tolua_S,(',ct,')tolua_ret)
14ce0 3b 27 29 0a 20 20 20 09 65 6c 73 65 0a 09 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 74 6f 6c ;').....else......output('...tol
14d00 75 61 5f 70 75 73 68 27 2e 2e 74 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 28 27 2c 63 74 2c 27 29 74 ua_push'..t..'(tolua_S,(',ct,')t
14d20 6f 6c 75 61 5f 72 65 74 29 3b 27 29 0a 09 65 6e 64 0a 20 20 20 65 6c 73 65 0a 09 74 20 3d 20 73 olua_ret);')..end....else..t.=.s
14d40 65 6c 66 2e 74 79 70 65 0a 09 6e 65 77 5f 74 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2c elf.type..new_t.=.string.gsub(t,
14d60 20 22 63 6f 6e 73 74 25 73 2b 22 2c 20 22 22 29 0a 09 6c 6f 63 61 6c 20 6f 77 6e 65 64 20 3d 20 ."const%s+",."")..local.owned.=.
14d80 66 61 6c 73 65 0a 09 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 20 false..if.string.find(self.mod,.
14da0 22 74 6f 6c 75 61 5f 6f 77 6e 65 64 22 29 20 74 68 65 6e 0a 09 09 6f 77 6e 65 64 20 3d 20 74 72 "tolua_owned").then...owned.=.tr
14dc0 75 65 0a 09 65 6e 64 0a 20 20 20 20 6c 6f 63 61 6c 20 70 75 73 68 5f 66 75 6e 63 20 3d 20 67 65 ue..end.....local.push_func.=.ge
14de0 74 5f 70 75 73 68 5f 66 75 6e 63 74 69 6f 6e 28 74 29 0a 20 20 20 20 69 66 20 73 65 6c 66 2e 70 t_push_function(t).....if.self.p
14e00 74 72 20 3d 3d 20 27 27 20 74 68 65 6e 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 7b 27 tr.==.''.then......output('...{'
14e20 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 )......output('#ifdef.__cplusplu
14e40 73 5c 6e 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 76 6f 69 64 2a 20 74 6f 6c s\n')......output('....void*.tol
14e60 75 61 5f 6f 62 6a 20 3d 20 4d 74 6f 6c 75 61 5f 6e 65 77 28 28 27 2c 6e 65 77 5f 74 2c 27 29 28 ua_obj.=.Mtolua_new((',new_t,')(
14e80 74 6f 6c 75 61 5f 72 65 74 29 29 3b 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 tolua_ret));')......output('....
14ea0 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 74 6f 6c 75 61 5f 6f 62 6a 2c ',push_func,'(tolua_S,tolua_obj,
14ec0 22 27 2c 74 2c 27 22 29 3b 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c "',t,'");')......output('....tol
14ee0 75 61 5f 72 65 67 69 73 74 65 72 5f 67 63 28 74 6f 6c 75 61 5f 53 2c 6c 75 61 5f 67 65 74 74 6f ua_register_gc(tolua_S,lua_getto
14f00 70 28 74 6f 6c 75 61 5f 53 29 29 3b 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 23 65 6c 73 p(tolua_S));')......output('#els
14f20 65 5c 6e 27 29 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 76 6f 69 64 2a 20 74 6f 6c e\n')......output('....void*.tol
14f40 75 61 5f 6f 62 6a 20 3d 20 74 6f 6c 75 61 5f 63 6f 70 79 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 ua_obj.=.tolua_copy(tolua_S,(voi
14f60 64 2a 29 26 74 6f 6c 75 61 5f 72 65 74 2c 73 69 7a 65 6f 66 28 27 2c 74 2c 27 29 29 3b 27 29 0a d*)&tolua_ret,sizeof(',t,'));').
14f80 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 .....output('....',push_func,'(t
14fa0 6f 6c 75 61 5f 53 2c 74 6f 6c 75 61 5f 6f 62 6a 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 20 20 20 olua_S,tolua_obj,"',t,'");')....
14fc0 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 72 65 67 69 73 74 65 72 5f 67 63 28 ..output('....tolua_register_gc(
14fe0 74 6f 6c 75 61 5f 53 2c 6c 75 61 5f 67 65 74 74 6f 70 28 74 6f 6c 75 61 5f 53 29 29 3b 27 29 0a tolua_S,lua_gettop(tolua_S));').
15000 20 20 20 20 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 20 20 20 20 20 6f 75 74 .....output('#endif\n')......out
15020 70 75 74 28 27 20 20 20 7d 27 29 0a 20 20 20 20 65 6c 73 65 69 66 20 73 65 6c 66 2e 70 74 72 20 put('...}').....elseif.self.ptr.
15040 3d 3d 20 27 26 27 20 74 68 65 6e 0a 20 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 27 2c 70 75 ==.'&'.then......output('...',pu
15060 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 26 74 6f 6c 75 61 5f sh_func,'(tolua_S,(void*)&tolua_
15080 72 65 74 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 20 20 20 20 65 6c 73 65 0a 09 20 6f 75 74 70 75 ret,"',t,'");').....else...outpu
150a0 74 28 27 20 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 t('...',push_func,'(tolua_S,(voi
150c0 64 2a 29 74 6f 6c 75 61 5f 72 65 74 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 09 20 69 66 20 6f 77 d*)tolua_ret,"',t,'");')...if.ow
150e0 6e 65 64 20 6f 72 20 6c 6f 63 61 6c 5f 63 6f 6e 73 74 72 75 63 74 6f 72 20 74 68 65 6e 0a 20 20 ned.or.local_constructor.then...
15100 20 20 20 20 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 72 65 67 69 73 74 65 72 5f 67 ....output('....tolua_register_g
15120 63 28 74 6f 6c 75 61 5f 53 2c 6c 75 61 5f 67 65 74 74 6f 70 28 74 6f 6c 75 61 5f 53 29 29 3b 27 c(tolua_S,lua_gettop(tolua_S));'
15140 29 0a 09 20 65 6e 64 0a 20 20 20 20 65 6e 64 0a 20 20 20 65 6e 64 0a 20 20 65 6e 64 0a 20 20 6c )...end.....end....end...end...l
15160 6f 63 61 6c 20 69 3d 31 0a 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f ocal.i=1...while.self.args[i].do
15180 0a 20 20 20 6e 72 65 74 20 3d 20 6e 72 65 74 20 2b 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 72 ....nret.=.nret.+.self.args[i]:r
151a0 65 74 76 61 6c 75 65 28 29 0a 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 65 6e 64 0a 20 20 6f 75 74 etvalue()....i.=.i+1...end...out
151c0 70 75 74 28 27 20 20 7d 27 29 0a 0a 20 20 2d 2d 20 73 65 74 20 61 72 72 61 79 20 65 6c 65 6d 65 put('..}')....--.set.array.eleme
151e0 6e 74 20 76 61 6c 75 65 73 0a 20 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 20 6e 61 72 67 3d 32 nt.values...if.class.then.narg=2
15200 20 65 6c 73 65 20 6e 61 72 67 3d 31 20 65 6e 64 0a 20 20 69 66 20 73 65 6c 66 2e 61 72 67 73 5b .else.narg=1.end...if.self.args[
15220 31 5d 2e 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 20 6c 6f 63 61 6c 20 1].type.~=.'void'.then....local.
15240 69 3d 31 0a 20 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 20 20 i=1....while.self.args[i].do....
15260 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 73 65 74 61 72 72 61 79 28 6e 61 72 67 29 0a 20 20 20 .self.args[i]:setarray(narg)....
15280 20 6e 61 72 67 20 3d 20 6e 61 72 67 2b 31 0a 20 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 20 65 6e .narg.=.narg+1.....i.=.i+1....en
152a0 64 0a 20 20 65 6e 64 0a 0a 20 20 2d 2d 20 66 72 65 65 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 61 d...end....--.free.dynamically.a
152c0 6c 6c 6f 63 61 74 65 64 20 61 72 72 61 79 0a 20 20 69 66 20 73 65 6c 66 2e 61 72 67 73 5b 31 5d llocated.array...if.self.args[1]
152e0 2e 74 79 70 65 20 7e 3d 20 27 76 6f 69 64 27 20 74 68 65 6e 0a 20 20 20 6c 6f 63 61 6c 20 69 3d .type.~=.'void'.then....local.i=
15300 31 0a 20 20 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 20 20 20 20 73 1....while.self.args[i].do.....s
15320 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 66 72 65 65 61 72 72 61 79 28 29 0a 20 20 20 20 69 20 3d 20 elf.args[i]:freearray().....i.=.
15340 69 2b 31 0a 20 20 20 65 6e 64 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 70 6f 73 74 5f 63 61 6c i+1....end...end..end...post_cal
15360 6c 5f 68 6f 6f 6b 28 73 65 6c 66 29 0a 0a 20 6f 75 74 70 75 74 28 27 20 7d 27 29 0a 20 6f 75 74 l_hook(self)...output('.}')..out
15380 70 75 74 28 27 20 72 65 74 75 72 6e 20 27 2e 2e 6e 72 65 74 2e 2e 27 3b 27 29 0a 0a 20 2d 2d 20 put('.return.'..nret..';')...--.
153a0 63 61 6c 6c 20 6f 76 65 72 6c 6f 61 64 65 64 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 67 65 6e 65 call.overloaded.function.or.gene
153c0 72 61 74 65 20 65 72 72 6f 72 0a 09 69 66 20 6f 76 65 72 6c 6f 61 64 20 3c 20 30 20 74 68 65 6e rate.error..if.overload.<.0.then
153e0 0a 0a 09 09 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 ....output('#ifndef.TOLUA_RELEAS
15400 45 5c 6e 27 29 0a 09 09 6f 75 74 70 75 74 28 27 74 6f 6c 75 61 5f 6c 65 72 72 6f 72 3a 5c 6e 27 E\n')...output('tolua_lerror:\n'
15420 29 0a 09 09 6f 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 )...output('.tolua_error(tolua_S
15440 2c 22 27 2e 2e 6f 75 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 22 23 66 65 72 72 6f 72 20 ,"'..output_error_hook("#ferror.
15460 69 6e 20 66 75 6e 63 74 69 6f 6e 20 5c 27 25 73 5c 27 2e 22 2c 20 73 65 6c 66 2e 6c 6e 61 6d 65 in.function.\'%s\'.",.self.lname
15480 29 2e 2e 27 22 2c 26 74 6f 6c 75 61 5f 65 72 72 29 3b 27 29 0a 09 09 6f 75 74 70 75 74 28 27 20 )..'",&tolua_err);')...output('.
154a0 72 65 74 75 72 6e 20 30 3b 27 29 0a 09 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 return.0;')...output('#endif\n')
154c0 0a 09 65 6c 73 65 0a 09 09 6c 6f 63 61 6c 20 5f 6c 6f 63 61 6c 20 3d 20 22 22 0a 09 09 69 66 20 ..else...local._local.=.""...if.
154e0 6c 6f 63 61 6c 5f 63 6f 6e 73 74 72 75 63 74 6f 72 20 74 68 65 6e 0a 09 09 09 5f 6c 6f 63 61 6c local_constructor.then...._local
15500 20 3d 20 22 5f 6c 6f 63 61 6c 22 0a 09 09 65 6e 64 0a 09 09 6f 75 74 70 75 74 28 27 74 6f 6c 75 .=."_local"...end...output('tolu
15520 61 5f 6c 65 72 72 6f 72 3a 5c 6e 27 29 0a 09 09 6f 75 74 70 75 74 28 27 20 72 65 74 75 72 6e 20 a_lerror:\n')...output('.return.
15540 27 2e 2e 73 74 72 73 75 62 28 73 65 6c 66 2e 63 6e 61 6d 65 2c 31 2c 2d 33 29 2e 2e 66 6f 72 6d '..strsub(self.cname,1,-3)..form
15560 61 74 28 22 25 30 32 64 22 2c 6f 76 65 72 6c 6f 61 64 29 2e 2e 5f 6c 6f 63 61 6c 2e 2e 27 28 74 at("%02d",overload).._local..'(t
15580 6f 6c 75 61 5f 53 29 3b 27 29 0a 09 65 6e 64 0a 20 6f 75 74 70 75 74 28 27 7d 27 29 0a 20 6f 75 olua_S);')..end..output('}')..ou
155a0 74 70 75 74 28 27 23 65 6e 64 69 66 20 2f 2f 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 tput('#endif.//#ifndef.TOLUA_DIS
155c0 41 42 4c 45 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 0a 09 2d 2d 20 72 65 63 75 ABLE\n')..output('\n')...--.recu
155e0 72 73 69 76 65 20 63 61 6c 6c 20 74 6f 20 77 72 69 74 65 20 6c 6f 63 61 6c 20 63 6f 6e 73 74 72 rsive.call.to.write.local.constr
15600 75 63 74 6f 72 0a 09 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 65 6c 66 2e 6e 61 6d 65 3d 3d 27 uctor..if.class.and.self.name=='
15620 6e 65 77 27 20 61 6e 64 20 6e 6f 74 20 6c 6f 63 61 6c 5f 63 6f 6e 73 74 72 75 63 74 6f 72 20 74 new'.and.not.local_constructor.t
15640 68 65 6e 0a 0a 09 09 73 65 6c 66 3a 73 75 70 63 6f 64 65 28 31 29 0a 09 65 6e 64 0a 0a 65 6e 64 hen....self:supcode(1)..end..end
15660 0a 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 66 75 6e 63 74 69 6f 6e 0a 66 75 6e 63 74 69 6f 6e ...--.register.function.function
15680 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 0a 09 .classFunction:register.(pre)...
156a0 69 66 20 6e 6f 74 20 73 65 6c 66 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 if.not.self:check_public_access(
156c0 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 0a 09 65 6e 64 0a 0a 20 09 69 66 20 73 65 6c 66 2e ).then...return..end....if.self.
156e0 6e 61 6d 65 20 3d 3d 20 27 6e 65 77 27 20 61 6e 64 20 73 65 6c 66 2e 70 61 72 65 6e 74 2e 66 6c name.==.'new'.and.self.parent.fl
15700 61 67 73 2e 70 75 72 65 5f 76 69 72 74 75 61 6c 20 74 68 65 6e 0a 20 09 09 2d 2d 20 6e 6f 20 63 ags.pure_virtual.then....--.no.c
15720 6f 6e 73 74 72 75 63 74 6f 72 20 66 6f 72 20 63 6c 61 73 73 65 73 20 77 69 74 68 20 70 75 72 65 onstructor.for.classes.with.pure
15740 20 76 69 72 74 75 61 6c 20 6d 65 74 68 6f 64 73 0a 20 09 09 72 65 74 75 72 6e 0a 20 09 65 6e 64 .virtual.methods....return...end
15760 0a 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 66 75 6e 63 74 69 6f 6e 28 74 ...output(pre..'tolua_function(t
15780 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e 2e 27 22 2c 27 2e 2e 73 65 6c olua_S,"'..self.lname..'",'..sel
157a0 66 2e 63 6e 61 6d 65 2e 2e 27 29 3b 27 29 0a 20 20 69 66 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 3d f.cname..');')...if.self.name.==
157c0 20 27 6e 65 77 27 20 74 68 65 6e 0a 09 20 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 .'new'.then....output(pre..'tolu
157e0 61 5f 66 75 6e 63 74 69 6f 6e 28 74 6f 6c 75 61 5f 53 2c 22 6e 65 77 5f 6c 6f 63 61 6c 22 2c 27 a_function(tolua_S,"new_local",'
15800 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 2e 2e 27 5f 6c 6f 63 61 6c 29 3b 27 29 0a 09 20 20 6f 75 74 ..self.cname..'_local);')....out
15820 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 66 75 6e 63 74 69 6f 6e 28 74 6f 6c 75 61 5f 53 put(pre..'tolua_function(tolua_S
15840 2c 22 2e 63 61 6c 6c 22 2c 27 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 2e 2e 27 5f 6c 6f 63 61 6c 29 ,".call",'..self.cname..'_local)
15860 3b 27 29 0a 09 20 20 2d 2d 6f 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f 73 65 74 5f 63 61 6c 6c ;')....--output('.tolua_set_call
15880 5f 65 76 65 6e 74 28 74 6f 6c 75 61 5f 53 2c 27 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 2e 2e 27 5f _event(tolua_S,'..self.cname..'_
158a0 6c 6f 63 61 6c 2c 20 22 27 2e 2e 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2e 2e 27 22 29 local,."'..self.parent.type..'")
158c0 3b 27 29 0a 20 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 ;')...end.end..--.Print.method.f
158e0 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 3a 70 72 69 6e 74 20 28 69 64 65 unction.classFunction:print.(ide
15900 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 46 75 6e 63 74 69 6f nt,close)..print(ident.."Functio
15920 6e 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6d 6f 64 20 20 3d 20 27 22 2e 2e n{")..print(ident..".mod..=.'"..
15940 73 65 6c 66 2e 6d 6f 64 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 self.mod.."',")..print(ident..".
15960 74 79 70 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 type.=.'"..self.type.."',")..pri
15980 6e 74 28 69 64 65 6e 74 2e 2e 22 20 70 74 72 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 70 74 72 2e nt(ident..".ptr..=.'"..self.ptr.
159a0 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 ."',")..print(ident..".name.=.'"
159c0 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e ..self.name.."',")..print(ident.
159e0 2e 22 20 6c 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e 2e 22 27 2c 22 29 .".lname.=.'"..self.lname.."',")
15a00 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 63 6f 6e 73 74 20 3d 20 27 22 2e 2e 73 65 6c ..print(ident..".const.=.'"..sel
15a20 66 2e 63 6f 6e 73 74 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 63 f.const.."',")..print(ident..".c
15a40 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 name.=.'"..self.cname.."',")..pr
15a60 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6c 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6c 6e int(ident..".lname.=.'"..self.ln
15a80 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 61 72 67 73 20 ame.."',")..print(ident..".args.
15aa0 3d 20 7b 22 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 =.{")..local.i=1..while.self.arg
15ac0 73 5b 69 5d 20 64 6f 0a 20 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 70 72 69 6e 74 28 69 64 65 s[i].do...self.args[i]:print(ide
15ae0 6e 74 2e 2e 22 20 20 22 2c 22 2c 22 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 70 72 nt.."..",",")...i.=.i+1..end..pr
15b00 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 7d 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 int(ident..".}")..print(ident.."
15b20 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 74 20 72 }"..close).end..--.check.if.it.r
15b40 65 74 75 72 6e 73 20 61 6e 20 6f 62 6a 65 63 74 20 62 79 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 eturns.an.object.by.value.functi
15b60 6f 6e 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 3a 72 65 71 75 69 72 65 63 6f 6c 6c 65 63 74 69 on.classFunction:requirecollecti
15b80 6f 6e 20 28 74 29 0a 09 6c 6f 63 61 6c 20 72 20 3d 20 66 61 6c 73 65 0a 09 69 66 20 73 65 6c 66 on.(t)..local.r.=.false..if.self
15ba0 2e 74 79 70 65 20 7e 3d 20 27 27 20 61 6e 64 20 6e 6f 74 20 69 73 62 61 73 69 63 28 73 65 6c 66 .type.~=.''.and.not.isbasic(self
15bc0 2e 74 79 70 65 29 20 61 6e 64 20 73 65 6c 66 2e 70 74 72 3d 3d 27 27 20 74 68 65 6e 0a 09 09 6c .type).and.self.ptr==''.then...l
15be0 6f 63 61 6c 20 74 79 70 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 74 79 70 65 2c 22 25 73 2a 63 ocal.type.=.gsub(self.type,"%s*c
15c00 6f 6e 73 74 25 73 2b 22 2c 22 22 29 0a 09 20 74 5b 74 79 70 65 5d 20 3d 20 22 74 6f 6c 75 61 5f onst%s+","")...t[type].=."tolua_
15c20 63 6f 6c 6c 65 63 74 5f 22 20 2e 2e 20 63 6c 65 61 6e 5f 74 65 6d 70 6c 61 74 65 28 74 79 70 65 collect_"....clean_template(type
15c40 29 0a 09 20 72 20 3d 20 74 72 75 65 0a 09 65 6e 64 0a 09 6c 6f 63 61 6c 20 69 3d 31 0a 09 77 68 )...r.=.true..end..local.i=1..wh
15c60 69 6c 65 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 20 64 6f 0a 09 09 72 20 3d 20 73 65 6c 66 2e 61 ile.self.args[i].do...r.=.self.a
15c80 72 67 73 5b 69 5d 3a 72 65 71 75 69 72 65 63 6f 6c 6c 65 63 74 69 6f 6e 28 74 29 20 6f 72 20 72 rgs[i]:requirecollection(t).or.r
15ca0 0a 09 09 69 20 3d 20 69 2b 31 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 72 0a 65 6e 64 0a 0a 2d ...i.=.i+1..end..return.r.end..-
15cc0 2d 20 64 65 74 65 72 6d 69 6e 65 20 6c 75 61 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 6f 76 -.determine.lua.function.name.ov
15ce0 65 72 6c 6f 61 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 3a 6f 76 erload.function.classFunction:ov
15d00 65 72 6c 6f 61 64 20 28 29 0a 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 70 61 72 65 6e 74 3a 6f 76 erload.()..return.self.parent:ov
15d20 65 72 6c 6f 61 64 28 73 65 6c 66 2e 6c 6e 61 6d 65 29 0a 65 6e 64 0a 0a 0a 66 75 6e 63 74 69 6f erload(self.lname).end...functio
15d40 6e 20 70 61 72 61 6d 5f 6f 62 6a 65 63 74 28 70 61 72 29 20 2d 2d 20 72 65 74 75 72 6e 73 20 74 n.param_object(par).--.returns.t
15d60 72 75 65 20 69 66 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 68 61 73 20 61 6e 20 6f 62 6a 65 rue.if.the.parameter.has.an.obje
15d80 63 74 20 61 73 20 69 74 73 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 0a 0a 09 69 66 20 6e 6f 74 ct.as.its.default.value...if.not
15da0 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 70 61 72 2c 20 27 3d 27 29 20 74 68 65 6e 20 72 65 74 75 .string.find(par,.'=').then.retu
15dc0 72 6e 20 66 61 6c 73 65 20 65 6e 64 20 2d 2d 20 69 74 20 68 61 73 20 6e 6f 20 64 65 66 61 75 6c rn.false.end.--.it.has.no.defaul
15de0 74 20 76 61 6c 75 65 0a 0a 09 6c 6f 63 61 6c 20 5f 2c 5f 2c 64 65 66 20 3d 20 73 74 72 69 6e 67 t.value...local._,_,def.=.string
15e00 2e 66 69 6e 64 28 70 61 72 2c 20 22 3d 28 2e 2a 29 24 22 29 0a 0a 09 69 66 20 73 74 72 69 6e 67 .find(par,."=(.*)$")...if.string
15e20 2e 66 69 6e 64 28 70 61 72 2c 20 22 7c 22 29 20 74 68 65 6e 20 2d 2d 20 61 20 6c 69 73 74 20 6f .find(par,."|").then.--.a.list.o
15e40 66 20 66 6c 61 67 73 0a 0a 09 09 72 65 74 75 72 6e 20 74 72 75 65 0a 09 65 6e 64 0a 0a 09 69 66 f.flags....return.true..end...if
15e60 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 70 61 72 2c 20 22 25 2a 22 29 20 74 68 65 6e 20 2d 2d 20 .string.find(par,."%*").then.--.
15e80 69 74 27 73 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 64 65 66 61 75 6c 74 20 76 61 it's.a.pointer.with.a.default.va
15ea0 6c 75 65 0a 0a 09 09 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 70 61 72 2c 20 27 3d 25 73 2a lue....if.string.find(par,.'=%s*
15ec0 6e 65 77 27 29 20 6f 72 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 70 61 72 2c 20 22 25 28 22 29 20 new').or.string.find(par,."%(").
15ee0 74 68 65 6e 20 2d 2d 20 69 74 27 73 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 6e 20 69 then.--.it's.a.pointer.with.an.i
15f00 6e 73 74 61 6e 63 65 20 61 73 20 64 65 66 61 75 6c 74 20 70 61 72 61 6d 65 74 65 72 2e 2e 20 69 nstance.as.default.parameter...i
15f20 73 20 74 68 61 74 20 76 61 6c 69 64 3f 0a 09 09 09 72 65 74 75 72 6e 20 74 72 75 65 0a 09 09 65 s.that.valid?....return.true...e
15f40 6e 64 0a 09 09 72 65 74 75 72 6e 20 66 61 6c 73 65 20 2d 2d 20 64 65 66 61 75 6c 74 20 76 61 6c nd...return.false.--.default.val
15f60 75 65 20 69 73 20 27 4e 55 4c 4c 27 20 6f 72 20 73 6f 6d 65 74 68 69 6e 67 0a 09 65 6e 64 0a 0a ue.is.'NULL'.or.something..end..
15f80 0a 09 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 70 61 72 2c 20 22 5b 25 28 26 5d 22 29 20 74 ..if.string.find(par,."[%(&]").t
15fa0 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 74 72 75 65 0a 09 65 6e 64 20 2d 2d 20 64 65 66 61 75 6c hen...return.true..end.--.defaul
15fc0 74 20 76 61 6c 75 65 20 69 73 20 61 20 63 6f 6e 73 74 72 75 63 74 6f 72 20 63 61 6c 6c 20 28 6d t.value.is.a.constructor.call.(m
15fe0 6f 73 74 20 6c 69 6b 65 6c 79 20 66 6f 72 20 61 20 63 6f 6e 73 74 20 72 65 66 65 72 65 6e 63 65 ost.likely.for.a.const.reference
16000 29 0a 0a 09 2d 2d 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 70 61 72 2c 20 22 26 22 29 20 74 )...--if.string.find(par,."&").t
16020 68 65 6e 0a 0a 09 2d 2d 09 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 64 65 66 2c 20 22 3a 22 hen...--.if.string.find(def,.":"
16040 29 20 6f 72 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 64 65 66 2c 20 22 5e 25 73 2a 6e 65 77 25 73 ).or.string.find(def,."^%s*new%s
16060 2b 22 29 20 74 68 65 6e 0a 0a 09 2d 2d 09 09 2d 2d 20 69 74 27 73 20 61 20 72 65 66 65 72 65 6e +").then...--..--.it's.a.referen
16080 63 65 20 77 69 74 68 20 64 65 66 61 75 6c 74 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b ce.with.default.to.something.lik
160a0 65 20 43 6c 61 73 73 3a 3a 6d 65 6d 62 65 72 2c 20 6f 72 20 27 6e 65 77 20 43 6c 61 73 73 27 0a e.Class::member,.or.'new.Class'.
160c0 09 2d 2d 09 09 72 65 74 75 72 6e 20 74 72 75 65 0a 09 2d 2d 09 65 6e 64 0a 09 2d 2d 65 6e 64 0a .--..return.true..--.end..--end.
160e0 0a 09 72 65 74 75 72 6e 20 66 61 6c 73 65 20 2d 2d 20 3f 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f ..return.false.--.?.end..functio
16100 6e 20 73 74 72 69 70 5f 6c 61 73 74 5f 61 72 67 28 61 6c 6c 5f 61 72 67 73 2c 20 6c 61 73 74 5f n.strip_last_arg(all_args,.last_
16120 61 72 67 29 20 2d 2d 20 73 74 72 69 70 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 arg).--.strips.the.default.value
16140 20 66 72 6f 6d 20 74 68 65 20 6c 61 73 74 20 61 72 67 75 6d 65 6e 74 0a 0a 09 6c 6f 63 61 6c 20 .from.the.last.argument...local.
16160 5f 2c 5f 2c 73 5f 61 72 67 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 6c 61 73 74 5f 61 72 67 _,_,s_arg.=.string.find(last_arg
16180 2c 20 22 5e 28 5b 5e 3d 5d 2b 29 22 29 0a 09 6c 61 73 74 5f 61 72 67 20 3d 20 73 74 72 69 6e 67 ,."^([^=]+)")..last_arg.=.string
161a0 2e 67 73 75 62 28 6c 61 73 74 5f 61 72 67 2c 20 22 28 5b 25 25 25 28 25 29 5d 29 22 2c 20 22 25 .gsub(last_arg,."([%%%(%)])",."%
161c0 25 25 31 22 29 3b 0a 09 61 6c 6c 5f 61 72 67 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 61 %%1");..all_args.=.string.gsub(a
161e0 6c 6c 5f 61 72 67 73 2c 20 22 25 73 2a 2c 25 73 2a 22 2e 2e 6c 61 73 74 5f 61 72 67 2e 2e 22 25 ll_args,."%s*,%s*"..last_arg.."%
16200 73 2a 25 29 25 73 2a 24 22 2c 20 22 29 22 29 0a 09 72 65 74 75 72 6e 20 61 6c 6c 5f 61 72 67 73 s*%)%s*$",.")")..return.all_args
16220 2c 20 73 5f 61 72 67 0a 65 6e 64 0a 0a 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 ,.s_arg.end....--.Internal.const
16240 72 75 63 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 46 75 6e 63 74 69 6f 6e 20 28 74 29 0a 20 73 ructor.function._Function.(t)..s
16260 65 74 6d 65 74 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 29 0a 0a 20 69 etmetatable(t,classFunction)...i
16280 66 20 74 2e 63 6f 6e 73 74 20 7e 3d 20 27 63 6f 6e 73 74 27 20 61 6e 64 20 74 2e 63 6f 6e 73 74 f.t.const.~=.'const'.and.t.const
162a0 20 7e 3d 20 27 27 20 74 68 65 6e 0a 20 20 65 72 72 6f 72 28 22 23 69 6e 76 61 6c 69 64 20 27 63 .~=.''.then...error("#invalid.'c
162c0 6f 6e 73 74 27 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 22 29 0a 20 65 6e 64 0a 0a 20 61 70 70 onst'.specification")..end...app
162e0 65 6e 64 28 74 29 0a 20 69 66 20 74 3a 69 6e 63 6c 61 73 73 28 29 20 74 68 65 6e 0a 20 2d 2d 70 end(t)..if.t:inclass().then..--p
16300 72 69 6e 74 20 28 27 74 2e 6e 61 6d 65 20 69 73 20 27 2e 2e 74 2e 6e 61 6d 65 2e 2e 27 2c 20 70 rint.('t.name.is.'..t.name..',.p
16320 61 72 65 6e 74 2e 6e 61 6d 65 20 69 73 20 27 2e 2e 74 2e 70 61 72 65 6e 74 2e 6e 61 6d 65 29 0a arent.name.is.'..t.parent.name).
16340 20 20 69 66 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2e 6e 61 6d 65 2c 20 22 25 62 3c 3e 22 2c ..if.string.gsub(t.name,."%b<>",
16360 20 22 22 29 20 3d 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2e 70 61 72 65 6e 74 2e 6f 72 69 ."").==.string.gsub(t.parent.ori
16380 67 69 6e 61 6c 5f 6e 61 6d 65 20 6f 72 20 74 2e 70 61 72 65 6e 74 2e 6e 61 6d 65 2c 20 22 25 62 ginal_name.or.t.parent.name,."%b
163a0 3c 3e 22 2c 20 22 22 29 20 74 68 65 6e 0a 20 20 20 74 2e 6e 61 6d 65 20 3d 20 27 6e 65 77 27 0a <>",."").then....t.name.=.'new'.
163c0 20 20 20 74 2e 6c 6e 61 6d 65 20 3d 20 27 6e 65 77 27 0a 20 20 20 74 2e 70 61 72 65 6e 74 2e 5f ...t.lname.=.'new'....t.parent._
163e0 6e 65 77 20 3d 20 74 72 75 65 0a 20 20 20 74 2e 74 79 70 65 20 3d 20 74 2e 70 61 72 65 6e 74 2e new.=.true....t.type.=.t.parent.
16400 6e 61 6d 65 0a 20 20 20 74 2e 70 74 72 20 3d 20 27 2a 27 0a 20 20 65 6c 73 65 69 66 20 73 74 72 name....t.ptr.=.'*'...elseif.str
16420 69 6e 67 2e 67 73 75 62 28 74 2e 6e 61 6d 65 2c 20 22 25 62 3c 3e 22 2c 20 22 22 29 20 3d 3d 20 ing.gsub(t.name,."%b<>",."").==.
16440 27 7e 27 2e 2e 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2e 70 61 72 65 6e 74 2e 6f 72 69 67 69 6e '~'..string.gsub(t.parent.origin
16460 61 6c 5f 6e 61 6d 65 20 6f 72 20 74 2e 70 61 72 65 6e 74 2e 6e 61 6d 65 2c 20 22 25 62 3c 3e 22 al_name.or.t.parent.name,."%b<>"
16480 2c 20 22 22 29 20 74 68 65 6e 0a 20 20 20 74 2e 6e 61 6d 65 20 3d 20 27 64 65 6c 65 74 65 27 0a ,."").then....t.name.=.'delete'.
164a0 20 20 20 74 2e 6c 6e 61 6d 65 20 3d 20 27 64 65 6c 65 74 65 27 0a 20 20 20 74 2e 70 61 72 65 6e ...t.lname.=.'delete'....t.paren
164c0 74 2e 5f 64 65 6c 65 74 65 20 3d 20 74 72 75 65 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 20 74 2e 63 t._delete.=.true...end..end..t.c
164e0 6e 61 6d 65 20 3d 20 74 3a 63 66 75 6e 63 6e 61 6d 65 28 22 74 6f 6c 75 61 22 29 2e 2e 74 3a 6f name.=.t:cfuncname("tolua")..t:o
16500 76 65 72 6c 6f 61 64 28 74 29 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e verload(t)..return.t.end..--.Con
16520 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 20 74 68 72 65 65 20 73 74 72 69 6e 67 structor.--.Expects.three.string
16540 73 3a 20 6f 6e 65 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 75 6e 63 74 69 6f 6e s:.one.representing.the.function
16560 20 64 65 63 6c 61 72 61 74 69 6f 6e 2c 0a 2d 2d 20 61 6e 6f 74 68 65 72 20 72 65 70 72 65 73 65 .declaration,.--.another.represe
16580 6e 74 69 6e 67 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 6c 69 73 74 2c 20 61 6e 64 20 74 68 65 nting.the.argument.list,.and.the
165a0 20 74 68 69 72 64 20 72 65 70 72 65 73 65 6e 74 69 6e 67 0a 2d 2d 20 74 68 65 20 22 63 6f 6e 73 .third.representing.--.the."cons
165c0 74 22 20 6f 72 20 65 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a 66 75 6e 63 74 69 6f 6e 20 46 75 6e t".or.empty.string..function.Fun
165e0 63 74 69 6f 6e 20 28 64 2c 61 2c 63 29 0a 20 2d 2d 6c 6f 63 61 6c 20 74 20 3d 20 73 70 6c 69 74 ction.(d,a,c)..--local.t.=.split
16600 28 73 74 72 73 75 62 28 61 2c 32 2c 2d 32 29 2c 27 2c 27 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 (strsub(a,2,-2),',').--.eliminat
16620 65 20 62 72 61 63 65 73 0a 20 2d 2d 6c 6f 63 61 6c 20 74 20 3d 20 73 70 6c 69 74 5f 70 61 72 61 e.braces..--local.t.=.split_para
16640 6d 73 28 73 74 72 73 75 62 28 61 2c 32 2c 2d 32 29 29 0a 0a 09 69 66 20 6e 6f 74 20 66 6c 61 67 ms(strsub(a,2,-2))...if.not.flag
16660 73 5b 27 57 27 5d 20 61 6e 64 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 61 2c 20 22 25 2e 25 2e 25 s['W'].and.string.find(a,."%.%.%
16680 2e 25 73 2a 25 29 22 29 20 74 68 65 6e 0a 0a 09 09 77 61 72 6e 69 6e 67 28 22 46 75 6e 63 74 69 .%s*%)").then....warning("Functi
166a0 6f 6e 73 20 77 69 74 68 20 76 61 72 69 61 62 6c 65 20 61 72 67 75 6d 65 6e 74 73 20 28 60 2e 2e ons.with.variable.arguments.(`..
166c0 2e 27 29 20 61 72 65 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 2e 20 49 67 6e 6f 72 69 6e 67 20 .').are.not.supported..Ignoring.
166e0 22 2e 2e 64 2e 2e 61 2e 2e 63 29 0a 09 09 72 65 74 75 72 6e 20 6e 69 6c 0a 09 65 6e 64 0a 0a 0a "..d..a..c)...return.nil..end...
16700 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 6c 6f 63 61 6c 20 6c 20 3d 20 7b 6e 3d 30 7d 0a 0a 20 09 61 .local.i=1..local.l.=.{n=0}....a
16720 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 61 2c 20 22 25 73 2a 28 5b 25 28 25 29 5d 29 25 73 .=.string.gsub(a,."%s*([%(%)])%s
16740 2a 22 2c 20 22 25 31 22 29 0a 09 6c 6f 63 61 6c 20 74 2c 73 74 72 69 70 2c 6c 61 73 74 20 3d 20 *",."%1")..local.t,strip,last.=.
16760 73 74 72 69 70 5f 70 61 72 73 28 73 74 72 73 75 62 28 61 2c 32 2c 2d 32 29 29 3b 0a 09 69 66 20 strip_pars(strsub(a,2,-2));..if.
16780 73 74 72 69 70 20 74 68 65 6e 0a 09 09 2d 2d 6c 6f 63 61 6c 20 6e 73 20 3d 20 73 74 72 69 6e 67 strip.then...--local.ns.=.string
167a0 2e 73 75 62 28 73 74 72 73 75 62 28 61 2c 31 2c 2d 32 29 2c 20 31 2c 20 2d 28 73 74 72 69 6e 67 .sub(strsub(a,1,-2),.1,.-(string
167c0 2e 6c 65 6e 28 6c 61 73 74 29 2b 31 29 29 0a 09 09 6c 6f 63 61 6c 20 6e 73 20 3d 20 6a 6f 69 6e .len(last)+1))...local.ns.=.join
167e0 28 74 2c 20 22 2c 22 2c 20 31 2c 20 6c 61 73 74 2d 31 29 0a 0a 09 09 6e 73 20 3d 20 22 28 22 2e (t,.",",.1,.last-1)....ns.=."(".
16800 2e 73 74 72 69 6e 67 2e 67 73 75 62 28 6e 73 2c 20 22 25 73 2a 2c 25 73 2a 24 22 2c 20 22 22 29 .string.gsub(ns,."%s*,%s*$",."")
16820 2e 2e 27 29 27 0a 09 09 2d 2d 6e 73 20 3d 20 73 74 72 69 70 5f 64 65 66 61 75 6c 74 73 28 6e 73 ..')'...--ns.=.strip_defaults(ns
16840 29 0a 0a 09 09 6c 6f 63 61 6c 20 66 20 3d 20 46 75 6e 63 74 69 6f 6e 28 64 2c 20 6e 73 2c 20 63 )....local.f.=.Function(d,.ns,.c
16860 29 0a 09 09 66 6f 72 20 69 3d 31 2c 6c 61 73 74 20 64 6f 0a 09 09 09 74 5b 69 5d 20 3d 20 73 74 )...for.i=1,last.do....t[i].=.st
16880 72 69 6e 67 2e 67 73 75 62 28 74 5b 69 5d 2c 20 22 3d 2e 2a 24 22 2c 20 22 22 29 0a 09 09 65 6e ring.gsub(t[i],."=.*$",."")...en
168a0 64 0a 09 65 6e 64 0a 0a 20 77 68 69 6c 65 20 74 5b 69 5d 20 64 6f 0a 20 20 6c 2e 6e 20 3d 20 6c d..end...while.t[i].do...l.n.=.l
168c0 2e 6e 2b 31 0a 20 20 6c 5b 6c 2e 6e 5d 20 3d 20 44 65 63 6c 61 72 61 74 69 6f 6e 28 74 5b 69 5d .n+1...l[l.n].=.Declaration(t[i]
168e0 2c 27 76 61 72 27 2c 74 72 75 65 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 6c 6f 63 ,'var',true)...i.=.i+1..end..loc
16900 61 6c 20 66 20 3d 20 44 65 63 6c 61 72 61 74 69 6f 6e 28 64 2c 27 66 75 6e 63 27 29 0a 20 66 2e al.f.=.Declaration(d,'func')..f.
16920 61 72 67 73 20 3d 20 6c 0a 20 66 2e 63 6f 6e 73 74 20 3d 20 63 0a 20 72 65 74 75 72 6e 20 5f 46 args.=.l..f.const.=.c..return._F
16940 75 6e 63 74 69 6f 6e 28 66 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 6a 6f 69 6e 28 74 2c unction(f).end..function.join(t,
16960 20 73 65 70 2c 20 66 69 72 73 74 2c 20 6c 61 73 74 29 0a 0a 09 66 69 72 73 74 20 3d 20 66 69 72 .sep,.first,.last)...first.=.fir
16980 73 74 20 6f 72 20 31 0a 09 6c 61 73 74 20 3d 20 6c 61 73 74 20 6f 72 20 74 61 62 6c 65 2e 67 65 st.or.1..last.=.last.or.table.ge
169a0 74 6e 28 74 29 0a 09 6c 6f 63 61 6c 20 6c 73 65 70 20 3d 20 22 22 0a 09 6c 6f 63 61 6c 20 72 65 tn(t)..local.lsep.=.""..local.re
169c0 74 20 3d 20 22 22 0a 09 6c 6f 63 61 6c 20 6c 6f 6f 70 20 3d 20 66 61 6c 73 65 0a 09 66 6f 72 20 t.=.""..local.loop.=.false..for.
169e0 69 20 3d 20 66 69 72 73 74 2c 6c 61 73 74 20 64 6f 0a 0a 09 09 72 65 74 20 3d 20 72 65 74 2e 2e i.=.first,last.do....ret.=.ret..
16a00 6c 73 65 70 2e 2e 74 5b 69 5d 0a 09 09 6c 73 65 70 20 3d 20 73 65 70 0a 09 09 6c 6f 6f 70 20 3d lsep..t[i]...lsep.=.sep...loop.=
16a20 20 74 72 75 65 0a 09 65 6e 64 0a 09 69 66 20 6e 6f 74 20 6c 6f 6f 70 20 74 68 65 6e 0a 09 09 72 .true..end..if.not.loop.then...r
16a40 65 74 75 72 6e 20 22 22 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 72 65 74 0a 65 6e 64 0a 0a eturn.""..end...return.ret.end..
16a60 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 70 5f 70 61 72 73 28 73 29 0a 0a 09 6c 6f 63 61 6c 20 74 function.strip_pars(s)...local.t
16a80 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 2c 20 27 2c 27 29 0a 09 6c 6f 63 61 6c .=.split_c_tokens(s,.',')..local
16aa0 20 73 74 72 69 70 20 3d 20 66 61 6c 73 65 0a 09 6c 6f 63 61 6c 20 6c 61 73 74 0a 0a 09 66 6f 72 .strip.=.false..local.last...for
16ac0 20 69 3d 74 2e 6e 2c 31 2c 2d 31 20 64 6f 0a 0a 09 09 69 66 20 6e 6f 74 20 73 74 72 69 70 20 61 .i=t.n,1,-1.do....if.not.strip.a
16ae0 6e 64 20 70 61 72 61 6d 5f 6f 62 6a 65 63 74 28 74 5b 69 5d 29 20 74 68 65 6e 0a 09 09 09 6c 61 nd.param_object(t[i]).then....la
16b00 73 74 20 3d 20 69 0a 09 09 09 73 74 72 69 70 20 3d 20 74 72 75 65 0a 09 09 65 6e 64 0a 09 09 2d st.=.i....strip.=.true...end...-
16b20 2d 69 66 20 73 74 72 69 70 20 74 68 65 6e 0a 09 09 2d 2d 09 74 5b 69 5d 20 3d 20 73 74 72 69 6e -if.strip.then...--.t[i].=.strin
16b40 67 2e 67 73 75 62 28 74 5b 69 5d 2c 20 22 3d 2e 2a 24 22 2c 20 22 22 29 0a 09 09 2d 2d 65 6e 64 g.gsub(t[i],."=.*$",."")...--end
16b60 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 74 2c 73 74 72 69 70 2c 6c 61 73 74 0a 0a 65 6e 64 ..end...return.t,strip,last..end
16b80 0a 0a 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 70 5f 64 65 66 61 75 6c 74 73 28 73 29 0a 0a 09 73 ..function.strip_defaults(s)...s
16ba0 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 2c 20 22 5e 25 28 22 2c 20 22 22 29 0a 09 73 20 .=.string.gsub(s,."^%(",."")..s.
16bc0 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 2c 20 22 25 29 24 22 2c 20 22 22 29 0a 0a 09 6c 6f =.string.gsub(s,."%)$",."")...lo
16be0 63 61 6c 20 74 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 2c 20 22 2c 22 29 0a 09 cal.t.=.split_c_tokens(s,.",")..
16c00 6c 6f 63 61 6c 20 73 65 70 2c 20 72 65 74 20 3d 20 22 22 2c 22 22 0a 09 66 6f 72 20 69 3d 31 2c local.sep,.ret.=."",""..for.i=1,
16c20 74 2e 6e 20 64 6f 0a 09 09 74 5b 69 5d 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 5b 69 5d t.n.do...t[i].=.string.gsub(t[i]
16c40 2c 20 22 3d 2e 2a 24 22 2c 20 22 22 29 0a 09 09 72 65 74 20 3d 20 72 65 74 2e 2e 73 65 70 2e 2e ,."=.*$",."")...ret.=.ret..sep..
16c60 74 5b 69 5d 0a 09 09 73 65 70 20 3d 20 22 2c 22 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 22 t[i]...sep.=.","..end...return."
16c80 28 22 2e 2e 72 65 74 2e 2e 22 29 22 0a 65 6e 64 0a 0a 0a 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 ("..ret..")".end....tolua.embedd
16ca0 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 62 61 73 69 63 2e 6c 75 61 00 00 00 74 6f 6c 75 ed:.src/bin/lua/basic.lua...tolu
16cc0 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 66 65 61 74 75 72 65 2e a.embedded:.src/bin/lua/feature.
16ce0 6c 75 61 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f lua.tolua.embedded:.src/bin/lua/
16d00 76 65 72 62 61 74 69 6d 2e 6c 75 61 00 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 verbatim.lua....tolua.embedded:.
16d20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 63 6f 64 65 2e 6c 75 61 00 00 00 00 74 6f 6c 75 61 20 65 6d src/bin/lua/code.lua....tolua.em
16d40 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 74 79 70 65 64 65 66 2e 6c 75 61 00 bedded:.src/bin/lua/typedef.lua.
16d60 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 63 6f 6e 74 tolua.embedded:.src/bin/lua/cont
16d80 61 69 6e 65 72 2e 6c 75 61 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f ainer.lua...tolua.embedded:.src/
16da0 62 69 6e 2f 6c 75 61 2f 70 61 63 6b 61 67 65 2e 6c 75 61 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 bin/lua/package.lua.tolua.embedd
16dc0 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 6d 6f 64 75 6c 65 2e 6c 75 61 00 00 74 6f 6c 75 ed:.src/bin/lua/module.lua..tolu
16de0 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 6e 61 6d 65 73 70 61 63 a.embedded:.src/bin/lua/namespac
16e00 65 2e 6c 75 61 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f e.lua...tolua.embedded:.src/bin/
16e20 6c 75 61 2f 64 65 66 69 6e 65 2e 6c 75 61 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 lua/define.lua..tolua.embedded:.
16e40 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 65 6e 75 6d 65 72 61 74 65 2e 6c 75 61 00 00 00 74 6f 6c 75 src/bin/lua/enumerate.lua...tolu
16e60 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 64 65 63 6c 61 72 61 74 a.embedded:.src/bin/lua/declarat
16e80 69 6f 6e 2e 6c 75 61 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f ion.lua.tolua.embedded:.src/bin/
16ea0 6c 75 61 2f 76 61 72 69 61 62 6c 65 2e 6c 75 61 00 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 lua/variable.lua....tolua.embedd
16ec0 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 61 72 72 61 79 2e 6c 75 61 00 00 00 74 6f 6c 75 ed:.src/bin/lua/array.lua...tolu
16ee0 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 66 75 6e 63 74 69 6f 6e a.embedded:.src/bin/lua/function
16f00 2e 6c 75 61 00 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f .lua....tolua.embedded:.src/bin/
16f20 6c 75 61 2f 6f 70 65 72 61 74 6f 72 2e 6c 75 61 00 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 lua/operator.lua....tolua.embedd
16f40 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 74 65 6d 70 6c 61 74 65 5f 63 6c 61 73 73 2e 6c ed:.src/bin/lua/template_class.l
16f60 75 61 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f ua..tolua.embedded:.src/bin/lua/
16f80 63 6c 61 73 73 2e 6c 75 61 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 73 72 63 2f class.lua...tolua.embedded:.src/
16fa0 62 69 6e 2f 6c 75 61 2f 63 6c 65 61 6e 2e 6c 75 61 00 00 00 74 6f 6c 75 61 20 65 6d 62 65 64 64 bin/lua/clean.lua...tolua.embedd
16fc0 65 64 3a 20 73 72 63 2f 62 69 6e 2f 6c 75 61 2f 64 6f 69 74 2e 6c 75 61 00 00 00 00 74 6f 6c 75 ed:.src/bin/lua/doit.lua....tolu
16fe0 61 3a 20 65 6d 62 65 64 64 65 64 20 4c 75 61 20 63 6f 64 65 20 32 33 00 74 6f 6c 75 61 5f 73 75 a:.embedded.Lua.code.23.tolua_su
17000 70 65 72 00 74 6f 6c 75 61 5f 75 62 6f 78 00 00 5f 5f 6d 6f 64 65 00 00 76 00 00 00 74 6f 6c 75 per.tolua_ubox..__mode..v...tolu
17020 61 5f 63 6f 6d 6d 6f 6e 63 6c 61 73 73 00 00 00 74 6f 6c 75 61 5f 67 63 00 00 00 00 2e 63 5f 69 a_commonclass...tolua_gc.....c_i
17040 6e 73 74 61 6e 63 65 00 49 6e 76 61 6c 69 64 20 61 72 67 75 6d 65 6e 74 20 23 31 20 74 6f 20 73 nstance.Invalid.argument.#1.to.s
17060 65 74 70 65 65 72 3a 20 75 73 65 72 64 61 74 61 20 65 78 70 65 63 74 65 64 2e 00 00 74 6f 6c 75 etpeer:.userdata.expected...tolu
17080 61 5f 6f 70 65 6e 65 64 00 00 00 00 74 6f 6c 75 61 5f 67 63 5f 65 76 65 6e 74 00 00 74 6f 6c 75 a_opened....tolua_gc_event..tolu
170a0 61 00 00 00 74 79 70 65 00 00 00 00 74 61 6b 65 6f 77 6e 65 72 73 68 69 70 00 00 00 72 65 6c 65 a...type....takeownership...rele
170c0 61 73 65 6f 77 6e 65 72 73 68 69 70 00 00 00 00 63 61 73 74 00 00 00 00 69 6e 68 65 72 69 74 00 aseownership....cast....inherit.
170e0 73 65 74 70 65 65 72 00 67 65 74 70 65 65 72 00 2e 63 6f 6c 6c 65 63 74 6f 72 00 00 2e 67 65 74 setpeer.getpeer..collector...get
17100 00 00 00 00 2e 73 65 74 00 00 00 00 5f 5f 69 6e 64 65 78 00 5f 5f 6e 65 77 69 6e 64 65 78 00 00 .....set....__index.__newindex..
17120 2e 67 65 74 69 00 00 00 2e 73 65 6c 66 00 00 00 2e 73 65 74 69 00 00 00 2e 63 61 6c 6c 00 00 00 .geti....self....seti....call...
17140 41 74 74 65 6d 70 74 20 74 6f 20 63 61 6c 6c 20 61 20 6e 6f 6e 2d 63 61 6c 6c 61 62 6c 65 20 6f Attempt.to.call.a.non-callable.o
17160 62 6a 65 63 74 2e 00 00 41 74 74 65 6d 70 74 20 74 6f 20 70 65 72 66 6f 72 6d 20 6f 70 65 72 61 bject...Attempt.to.perform.opera
17180 74 69 6f 6e 20 6f 6e 20 61 6e 20 69 6e 76 61 6c 69 64 20 6f 70 65 72 61 6e 64 00 00 2e 61 64 64 tion.on.an.invalid.operand...add
171a0 00 00 00 00 2e 73 75 62 00 00 00 00 2e 6d 75 6c 00 00 00 00 2e 64 69 76 00 00 00 00 2e 6c 74 00 .....sub.....mul.....div.....lt.
171c0 2e 6c 65 00 2e 65 71 00 5f 5f 61 64 64 00 00 00 5f 5f 73 75 62 00 00 00 5f 5f 6d 75 6c 00 00 00 .le..eq.__add...__sub...__mul...
171e0 5f 5f 64 69 76 00 00 00 5f 5f 6c 74 00 00 00 00 5f 5f 6c 65 00 00 00 00 5f 5f 65 71 00 00 00 00 __div...__lt....__le....__eq....
17200 5f 5f 63 61 6c 6c 00 00 5f 5f 67 63 00 00 00 00 5b 6e 6f 20 6f 62 6a 65 63 74 5d 00 5b 75 6e 64 __call..__gc....[no.object].[und
17220 65 66 69 6e 65 64 5d 00 74 61 62 6c 65 00 00 00 63 6c 61 73 73 20 00 00 25 73 0a 20 20 20 20 20 efined].table...class...%s......
17240 61 72 67 75 6d 65 6e 74 20 23 25 64 20 69 73 20 61 72 72 61 79 20 6f 66 20 27 25 73 27 3b 20 61 argument.#%d.is.array.of.'%s';.a
17260 72 72 61 79 20 6f 66 20 27 25 73 27 20 65 78 70 65 63 74 65 64 2e 0a 00 25 73 0a 20 20 20 20 20 rray.of.'%s'.expected...%s......
17280 61 72 67 75 6d 65 6e 74 20 23 25 64 20 69 73 20 27 25 73 27 3b 20 27 25 73 27 20 65 78 70 65 63 argument.#%d.is.'%s';.'%s'.expec
172a0 74 65 64 2e 0a 00 00 00 25 73 0a 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 61 72 72 61 79 20 6f ted.....%s......value.is.array.o
172c0 66 20 27 25 73 27 3b 20 61 72 72 61 79 20 6f 66 20 27 25 73 27 20 65 78 70 65 63 74 65 64 2e 0a f.'%s';.array.of.'%s'.expected..
172e0 00 00 00 00 25 73 0a 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 27 25 73 27 3b 20 27 25 73 27 20 ....%s......value.is.'%s';.'%s'.
17300 65 78 70 65 63 74 65 64 2e 0a 00 00 00 00 00 00 48 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 expected........H...............
17320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17340 00 00 00 00 00 00 00 00 00 00 00 00 90 a2 41 00 60 85 41 00 03 00 00 00 00 00 00 00 00 00 00 00 ..............A.`.A.............
17360 20 52 00 00 0c 90 00 00 e0 af 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .R..............................
17380 fe ff ff ff 00 00 00 00 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 3f 32 40 00 00 00 00 00 ........................?2@.....
173a0 fe ff ff ff 00 00 00 00 c8 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 d1 34 40 00 00 00 00 00 .........................4@.....
173c0 fe ff ff ff 00 00 00 00 cc ff ff ff 00 00 00 00 fe ff ff ff be 36 40 00 d2 36 40 00 00 00 00 00 .....................6@..6@.....
173e0 fe ff ff ff 00 00 00 00 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 9b 38 40 00 00 00 00 00 .........................8@.....
17400 fe ff ff ff 00 00 00 00 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 19 39 40 00 00 00 00 00 .........................9@.....
17420 fe ff ff ff 00 00 00 00 8c ff ff ff 00 00 00 00 fe ff ff ff 2f 3d 40 00 33 3d 40 00 00 00 00 00 ..................../=@.3=@.....
17440 fe ff ff ff 00 00 00 00 d0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 bb 3e 40 00 00 00 00 00 .........................>@.....
17460 fe ff ff ff 00 00 00 00 cc ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 45 40 40 00 00 00 00 00 ........................E@@.....
17480 00 00 00 00 11 40 40 00 fe ff ff ff 00 00 00 00 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 .....@@.........................
174a0 ca 41 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 .A@.............................
174c0 e2 55 40 00 fe ff ff ff 00 00 00 00 f1 55 40 00 fe ff ff ff 00 00 00 00 d8 ff ff ff 00 00 00 00 .U@..........U@.................
174e0 fe ff ff ff 00 00 00 00 a4 57 40 00 fe ff ff ff 00 00 00 00 b0 57 40 00 fe ff ff ff 00 00 00 00 .........W@..........W@.........
17500 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 4e 5c 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................N\@.............
17520 d8 ff ff ff 00 00 00 00 fe ff ff ff fb 5d 40 00 0f 5e 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 .............]@..^@.............
17540 d8 ff ff ff 00 00 00 00 fe ff ff ff 4d 5e 40 00 51 5e 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ............M^@.Q^@.............
17560 c0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 a8 61 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 .................a@.............
17580 d0 ff ff ff 00 00 00 00 fe ff ff ff 38 62 40 00 4f 62 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ............8b@.Ob@.............
175a0 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 f1 73 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 .................s@.............
175c0 d0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 56 75 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................Vu@.............
175e0 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 1b 77 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 .................w@.............
17600 d0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 2b 7f 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................+.@.............
17620 d0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 0c 80 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ..................@.............
17640 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 38 83 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................8.@.............
17660 cc ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 06 87 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ..................@.............
17680 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 76 8a 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................v.@.............
176a0 d0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 a6 94 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ..................@.............
176c0 d0 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 94 9e 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ..................@.............
176e0 cc ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 59 a2 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................Y.@.............
17700 d4 ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 2a a4 40 00 00 00 00 00 fe ff ff ff 00 00 00 00 ................*.@.............
17720 d4 ff ff ff 00 00 00 00 fe ff ff ff 1c af 40 00 38 af 40 00 80 8a 01 00 00 00 00 00 00 00 00 00 ..............@.8.@.............
17740 f8 8b 01 00 10 c1 00 00 70 89 01 00 00 00 00 00 00 00 00 00 cc 90 01 00 00 c0 00 00 00 00 00 00 ........p.......................
17760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0 8f 01 00 be 90 01 00 ac 90 01 00 9a 90 01 00 ................................
17780 02 8c 01 00 1a 8c 01 00 32 8c 01 00 46 8c 01 00 4e 8c 01 00 60 8c 01 00 6e 8c 01 00 80 8c 01 00 ........2...F...N...`...n.......
177a0 90 8c 01 00 9c 8c 01 00 a8 8c 01 00 bc 8c 01 00 d0 8c 01 00 ec 8c 01 00 0a 8d 01 00 1e 8d 01 00 ................................
177c0 30 8d 01 00 40 8d 01 00 4e 8d 01 00 60 8d 01 00 78 8d 01 00 86 8d 01 00 92 8d 01 00 a0 8d 01 00 0...@...N...`...x...............
177e0 aa 8d 01 00 c2 8d 01 00 d2 8d 01 00 e8 8d 01 00 00 8e 01 00 0c 8e 01 00 22 8e 01 00 32 8e 01 00 ........................"...2...
17800 5a 8e 01 00 74 8e 01 00 8c 8e 01 00 a6 8e 01 00 bc 8e 01 00 d6 8e 01 00 e4 8e 01 00 f2 8e 01 00 Z...t...........................
17820 0c 8f 01 00 1c 8f 01 00 32 8f 01 00 4c 8f 01 00 5c 8f 01 00 6a 8f 01 00 7a 8f 01 00 8c 8f 01 00 ........2...L...\...j...z.......
17840 8a 90 01 00 ac 8f 01 00 b6 8f 01 00 c2 8f 01 00 d4 8f 01 00 e0 8f 01 00 ec 8f 01 00 fe 8f 01 00 ................................
17860 0c 90 01 00 1c 90 01 00 32 90 01 00 42 90 01 00 58 90 01 00 6a 90 01 00 7a 90 01 00 00 00 00 00 ........2...B...X...j...z.......
17880 ea 8b 01 00 dc 8b 01 00 ce 8b 01 00 be 8b 01 00 ae 8b 01 00 9e 8b 01 00 8c 8b 01 00 7e 8b 01 00 ............................~...
178a0 6e 8b 01 00 5e 8b 01 00 4c 8b 01 00 3c 8b 01 00 da 90 01 00 e8 90 01 00 fc 90 01 00 0c 91 01 00 n...^...L...<...................
178c0 18 91 01 00 2a 91 01 00 3e 91 01 00 4a 91 01 00 58 91 01 00 6c 91 01 00 7a 91 01 00 88 91 01 00 ....*...>...J...X...l...z.......
178e0 92 91 01 00 a6 91 01 00 b4 91 01 00 c2 91 01 00 d4 91 01 00 e6 91 01 00 f2 91 01 00 00 92 01 00 ................................
17900 18 92 01 00 2a 92 01 00 3c 92 01 00 4c 92 01 00 5c 92 01 00 6c 92 01 00 78 92 01 00 88 92 01 00 ....*...<...L...\...l...x.......
17920 96 92 01 00 a8 92 01 00 ba 92 01 00 ca 92 01 00 d8 92 01 00 e6 92 01 00 00 00 00 00 16 00 6c 75 ..............................lu
17940 61 4c 5f 6e 65 77 73 74 61 74 65 00 29 00 6c 75 61 5f 63 72 65 61 74 65 74 61 62 6c 65 00 63 00 aL_newstate.).lua_createtable.c.
17960 6c 75 61 5f 73 65 74 74 61 62 6c 65 00 00 5e 00 6c 75 61 5f 73 65 74 66 69 65 6c 64 00 00 46 00 lua_settable..^.lua_setfield..F.
17980 6c 75 61 5f 6f 62 6a 6c 65 6e 00 00 50 00 6c 75 61 5f 70 75 73 68 73 74 72 69 6e 67 00 00 18 00 lua_objlen..P.lua_pushstring....
179a0 6c 75 61 4c 5f 6f 70 65 6e 6c 69 62 73 00 30 00 6c 75 61 5f 67 65 74 66 69 65 6c 64 00 00 52 00 luaL_openlibs.0.lua_getfield..R.
179c0 6c 75 61 5f 70 75 73 68 76 61 6c 75 65 00 39 00 6c 75 61 5f 67 65 74 74 6f 70 00 00 64 00 6c 75 lua_pushvalue.9.lua_gettop..d.lu
179e0 61 5f 73 65 74 74 6f 70 00 00 58 00 6c 75 61 5f 72 61 77 73 65 74 69 00 6c 75 61 35 31 2e 64 6c a_settop..X.lua_rawseti.lua51.dl
17a00 6c 00 d9 00 45 6e 74 65 72 43 72 69 74 69 63 61 6c 53 65 63 74 69 6f 6e 00 00 ef 02 4c 65 61 76 l...EnterCriticalSection....Leav
17a20 65 43 72 69 74 69 63 61 6c 53 65 63 74 69 6f 6e 00 00 f9 01 47 65 74 4d 6f 64 75 6c 65 48 61 6e eCriticalSection....GetModuleHan
17a40 64 6c 65 57 00 00 21 04 53 6c 65 65 70 00 20 02 47 65 74 50 72 6f 63 41 64 64 72 65 73 73 00 00 dleW..!.Sleep...GetProcAddress..
17a60 04 01 45 78 69 74 50 72 6f 63 65 73 73 00 6f 01 47 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 41 00 ..ExitProcess.o.GetCommandLineA.
17a80 e6 01 47 65 74 4c 61 73 74 45 72 72 6f 72 00 00 a1 02 48 65 61 70 46 72 65 65 00 00 9d 02 48 65 ..GetLastError....HeapFree....He
17aa0 61 70 41 6c 6c 6f 63 00 2d 04 54 65 72 6d 69 6e 61 74 65 50 72 6f 63 65 73 73 00 00 a9 01 47 65 apAlloc.-.TerminateProcess....Ge
17ac0 74 43 75 72 72 65 6e 74 50 72 6f 63 65 73 73 00 3e 04 55 6e 68 61 6e 64 6c 65 64 45 78 63 65 70 tCurrentProcess.>.UnhandledExcep
17ae0 74 69 6f 6e 46 69 6c 74 65 72 00 00 15 04 53 65 74 55 6e 68 61 6e 64 6c 65 64 45 78 63 65 70 74 tionFilter....SetUnhandledExcept
17b00 69 6f 6e 46 69 6c 74 65 72 00 d1 02 49 73 44 65 62 75 67 67 65 72 50 72 65 73 65 6e 74 00 e8 03 ionFilter...IsDebuggerPresent...
17b20 53 65 74 48 61 6e 64 6c 65 43 6f 75 6e 74 00 00 3b 02 47 65 74 53 74 64 48 61 6e 64 6c 65 00 00 SetHandleCount..;.GetStdHandle..
17b40 d7 01 47 65 74 46 69 6c 65 54 79 70 65 00 39 02 47 65 74 53 74 61 72 74 75 70 49 6e 66 6f 41 00 ..GetFileType.9.GetStartupInfoA.
17b60 be 00 44 65 6c 65 74 65 43 72 69 74 69 63 61 6c 53 65 63 74 69 6f 6e 00 34 04 54 6c 73 47 65 74 ..DeleteCriticalSection.4.TlsGet
17b80 56 61 6c 75 65 00 32 04 54 6c 73 41 6c 6c 6f 63 00 00 35 04 54 6c 73 53 65 74 56 61 6c 75 65 00 Value.2.TlsAlloc..5.TlsSetValue.
17ba0 33 04 54 6c 73 46 72 65 65 00 c0 02 49 6e 74 65 72 6c 6f 63 6b 65 64 49 6e 63 72 65 6d 65 6e 74 3.TlsFree...InterlockedIncrement
17bc0 00 00 ec 03 53 65 74 4c 61 73 74 45 72 72 6f 72 00 00 ad 01 47 65 74 43 75 72 72 65 6e 74 54 68 ....SetLastError....GetCurrentTh
17be0 72 65 61 64 49 64 00 00 bc 02 49 6e 74 65 72 6c 6f 63 6b 65 64 44 65 63 72 65 6d 65 6e 74 00 00 readId....InterlockedDecrement..
17c00 8d 04 57 72 69 74 65 46 69 6c 65 00 f4 01 47 65 74 4d 6f 64 75 6c 65 46 69 6c 65 4e 61 6d 65 41 ..WriteFile...GetModuleFileNameA
17c20 00 00 f1 02 4c 6f 61 64 4c 69 62 72 61 72 79 41 00 00 b5 02 49 6e 69 74 69 61 6c 69 7a 65 43 72 ....LoadLibraryA....InitializeCr
17c40 69 74 69 63 61 6c 53 65 63 74 69 6f 6e 41 6e 64 53 70 69 6e 43 6f 75 6e 74 00 4a 01 46 72 65 65 iticalSectionAndSpinCount.J.Free
17c60 45 6e 76 69 72 6f 6e 6d 65 6e 74 53 74 72 69 6e 67 73 41 00 bf 01 47 65 74 45 6e 76 69 72 6f 6e EnvironmentStringsA...GetEnviron
17c80 6d 65 6e 74 53 74 72 69 6e 67 73 00 4b 01 46 72 65 65 45 6e 76 69 72 6f 6e 6d 65 6e 74 53 74 72 mentStrings.K.FreeEnvironmentStr
17ca0 69 6e 67 73 57 00 7a 04 57 69 64 65 43 68 61 72 54 6f 4d 75 6c 74 69 42 79 74 65 00 c1 01 47 65 ingsW.z.WideCharToMultiByte...Ge
17cc0 74 45 6e 76 69 72 6f 6e 6d 65 6e 74 53 74 72 69 6e 67 73 57 00 00 9f 02 48 65 61 70 43 72 65 61 tEnvironmentStringsW....HeapCrea
17ce0 74 65 00 00 57 04 56 69 72 74 75 61 6c 46 72 65 65 00 54 03 51 75 65 72 79 50 65 72 66 6f 72 6d te..W.VirtualFree.T.QueryPerform
17d00 61 6e 63 65 43 6f 75 6e 74 65 72 00 66 02 47 65 74 54 69 63 6b 43 6f 75 6e 74 00 00 aa 01 47 65 anceCounter.f.GetTickCount....Ge
17d20 74 43 75 72 72 65 6e 74 50 72 6f 63 65 73 73 49 64 00 4f 02 47 65 74 53 79 73 74 65 6d 54 69 6d tCurrentProcessId.O.GetSystemTim
17d40 65 41 73 46 69 6c 65 54 69 6d 65 00 54 04 56 69 72 74 75 61 6c 41 6c 6c 6f 63 00 00 a4 02 48 65 eAsFileTime.T.VirtualAlloc....He
17d60 61 70 52 65 41 6c 6c 6f 63 00 83 01 47 65 74 43 6f 6e 73 6f 6c 65 43 50 00 00 95 01 47 65 74 43 apReAlloc...GetConsoleCP....GetC
17d80 6f 6e 73 6f 6c 65 4d 6f 64 65 00 00 41 01 46 6c 75 73 68 46 69 6c 65 42 75 66 66 65 72 73 00 00 onsoleMode..A.FlushFileBuffers..
17da0 5b 01 47 65 74 43 50 49 6e 66 6f 00 52 01 47 65 74 41 43 50 00 00 13 02 47 65 74 4f 45 4d 43 50 [.GetCPInfo.R.GetACP....GetOEMCP
17dc0 00 00 db 02 49 73 56 61 6c 69 64 43 6f 64 65 50 61 67 65 00 92 03 52 74 6c 55 6e 77 69 6e 64 00 ....IsValidCodePage...RtlUnwind.
17de0 a6 02 48 65 61 70 53 69 7a 65 00 00 e8 01 47 65 74 4c 6f 63 61 6c 65 49 6e 66 6f 41 00 00 43 00 ..HeapSize....GetLocaleInfoA..C.
17e00 43 6c 6f 73 65 48 61 6e 64 6c 65 00 82 04 57 72 69 74 65 43 6f 6e 73 6f 6c 65 41 00 99 01 47 65 CloseHandle...WriteConsoleA...Ge
17e20 74 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 43 50 00 00 8c 04 57 72 69 74 65 43 6f 6e 73 6f 6c 65 tConsoleOutputCP....WriteConsole
17e40 57 00 1a 03 4d 75 6c 74 69 42 79 74 65 54 6f 57 69 64 65 43 68 61 72 00 df 03 53 65 74 46 69 6c W...MultiByteToWideChar...SetFil
17e60 65 50 6f 69 6e 74 65 72 00 00 fc 03 53 65 74 53 74 64 48 61 6e 64 6c 65 00 00 e1 02 4c 43 4d 61 ePointer....SetStdHandle....LCMa
17e80 70 53 74 72 69 6e 67 41 00 00 e3 02 4c 43 4d 61 70 53 74 72 69 6e 67 57 00 00 3d 02 47 65 74 53 pStringA....LCMapStringW..=.GetS
17ea0 74 72 69 6e 67 54 79 70 65 41 00 00 40 02 47 65 74 53 74 72 69 6e 67 54 79 70 65 57 00 00 78 00 tringTypeA..@.GetStringTypeW..x.
17ec0 43 72 65 61 74 65 46 69 6c 65 41 00 4b 45 52 4e 45 4c 33 32 2e 64 6c 6c 00 00 57 00 6c 75 61 5f CreateFileA.KERNEL32.dll..W.lua_
17ee0 72 61 77 73 65 74 00 00 36 00 6c 75 61 5f 67 65 74 6d 65 74 61 74 61 62 6c 65 00 00 54 00 6c 75 rawset..6.lua_getmetatable..T.lu
17f00 61 5f 72 61 77 65 71 75 61 6c 00 00 6f 00 6c 75 61 5f 74 79 70 65 00 00 3f 00 6c 75 61 5f 69 73 a_rawequal..o.lua_type..?.lua_is
17f20 75 73 65 72 64 61 74 61 00 00 49 00 6c 75 61 5f 70 75 73 68 63 63 6c 6f 73 75 72 65 00 00 47 00 userdata..I.lua_pushcclosure..G.
17f40 6c 75 61 5f 70 63 61 6c 6c 00 2f 00 6c 75 61 5f 67 65 74 66 65 6e 76 00 15 00 6c 75 61 4c 5f 6e lua_pcall./.lua_getfenv...luaL_n
17f60 65 77 6d 65 74 61 74 61 62 6c 65 00 4e 00 6c 75 61 5f 70 75 73 68 6e 69 6c 00 55 00 6c 75 61 5f ewmetatable.N.lua_pushnil.U.lua_
17f80 72 61 77 67 65 74 00 00 2d 00 6c 75 61 5f 67 63 00 00 62 00 6c 75 61 5f 73 65 74 6d 65 74 61 74 rawget..-.lua_gc..b.lua_setmetat
17fa0 61 62 6c 65 00 00 5d 00 6c 75 61 5f 73 65 74 66 65 6e 76 00 3b 00 6c 75 61 5f 69 6e 73 65 72 74 able..].lua_setfenv.;.lua_insert
17fc0 00 00 4d 00 6c 75 61 5f 70 75 73 68 6c 73 74 72 69 6e 67 00 12 00 6c 75 61 4c 5f 6c 6f 61 64 62 ..M.lua_pushlstring...luaL_loadb
17fe0 75 66 66 65 72 00 2c 00 6c 75 61 5f 65 72 72 6f 72 00 0e 00 6c 75 61 4c 5f 65 72 72 6f 72 00 00 uffer.,.lua_error...luaL_error..
18000 4c 00 6c 75 61 5f 70 75 73 68 6c 69 67 68 74 75 73 65 72 64 61 74 61 00 48 00 6c 75 61 5f 70 75 L.lua_pushlightuserdata.H.lua_pu
18020 73 68 62 6f 6f 6c 65 61 6e 00 6e 00 6c 75 61 5f 74 6f 75 73 65 72 64 61 74 61 00 00 6a 00 6c 75 shboolean.n.lua_touserdata..j.lu
18040 61 5f 74 6f 6c 73 74 72 69 6e 67 00 38 00 6c 75 61 5f 67 65 74 74 61 62 6c 65 00 00 67 00 6c 75 a_tolstring.8.lua_gettable..g.lu
18060 61 5f 74 6f 62 6f 6f 6c 65 61 6e 00 24 00 6c 75 61 5f 63 61 6c 6c 00 00 3d 00 6c 75 61 5f 69 73 a_toboolean.$.lua_call..=.lua_is
18080 6e 75 6d 62 65 72 00 00 59 00 6c 75 61 5f 72 65 6d 6f 76 65 00 00 3c 00 6c 75 61 5f 69 73 63 66 number..Y.lua_remove..<.lua_iscf
180a0 75 6e 63 74 69 6f 6e 00 44 00 6c 75 61 5f 6e 65 77 75 73 65 72 64 61 74 61 00 70 00 6c 75 61 5f unction.D.lua_newuserdata.p.lua_
180c0 74 79 70 65 6e 61 6d 65 00 00 27 00 6c 75 61 5f 63 6f 6e 63 61 74 00 00 5a 00 6c 75 61 5f 72 65 typename..'.lua_concat..Z.lua_re
180e0 70 6c 61 63 65 00 3e 00 6c 75 61 5f 69 73 73 74 72 69 6e 67 00 00 00 00 00 00 00 00 00 00 00 00 place.>.lua_isstring............
18100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18200 40 e6 42 00 00 00 00 00 40 e6 42 00 01 01 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 @.B.....@.B.....................
18220 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18240 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18480 ff 34 40 00 01 00 00 00 00 00 00 00 00 00 00 00 4e e6 40 bb b1 19 bf 44 ff ff ff ff 80 0a 00 00 .4@.............N.@....D........
184a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
184c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................................
184e0 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 ................................
18500 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 ................................
18520 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................................
18540 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................................
18560 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
185a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
185c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
185e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 48 c2 40 00 38 c2 40 00 ........................H.@.8.@.
18600 01 00 00 00 16 00 00 00 02 00 00 00 02 00 00 00 03 00 00 00 02 00 00 00 04 00 00 00 18 00 00 00 ................................
18620 05 00 00 00 0d 00 00 00 06 00 00 00 09 00 00 00 07 00 00 00 0c 00 00 00 08 00 00 00 0c 00 00 00 ................................
18640 09 00 00 00 0c 00 00 00 0a 00 00 00 07 00 00 00 0b 00 00 00 08 00 00 00 0c 00 00 00 16 00 00 00 ................................
18660 0d 00 00 00 16 00 00 00 0f 00 00 00 02 00 00 00 10 00 00 00 0d 00 00 00 11 00 00 00 12 00 00 00 ................................
18680 12 00 00 00 02 00 00 00 21 00 00 00 0d 00 00 00 35 00 00 00 02 00 00 00 41 00 00 00 0d 00 00 00 ........!.......5.......A.......
186a0 43 00 00 00 02 00 00 00 50 00 00 00 11 00 00 00 52 00 00 00 0d 00 00 00 53 00 00 00 0d 00 00 00 C.......P.......R.......S.......
186c0 57 00 00 00 16 00 00 00 59 00 00 00 0b 00 00 00 6c 00 00 00 0d 00 00 00 6d 00 00 00 20 00 00 00 W.......Y.......l.......m.......
186e0 70 00 00 00 1c 00 00 00 72 00 00 00 09 00 00 00 06 00 00 00 16 00 00 00 80 00 00 00 0a 00 00 00 p.......r.......................
18700 81 00 00 00 0a 00 00 00 82 00 00 00 09 00 00 00 83 00 00 00 16 00 00 00 84 00 00 00 0d 00 00 00 ................................
18720 91 00 00 00 29 00 00 00 9e 00 00 00 0d 00 00 00 a1 00 00 00 02 00 00 00 a4 00 00 00 0b 00 00 00 ....)...........................
18740 a7 00 00 00 0d 00 00 00 b7 00 00 00 11 00 00 00 ce 00 00 00 02 00 00 00 d7 00 00 00 0b 00 00 00 ................................
18760 18 07 00 00 0c 00 00 00 0c 00 00 00 08 00 00 00 ff ff ff ff ff ff ff ff 02 00 00 00 40 c8 40 00 ............................@.@.
18780 08 00 00 00 14 c8 40 00 09 00 00 00 e8 c7 40 00 0a 00 00 00 50 c7 40 00 10 00 00 00 24 c7 40 00 ......@.......@.....P.@.....$.@.
187a0 11 00 00 00 f4 c6 40 00 12 00 00 00 d0 c6 40 00 13 00 00 00 a4 c6 40 00 18 00 00 00 6c c6 40 00 ......@.......@.......@.....l.@.
187c0 19 00 00 00 44 c6 40 00 1a 00 00 00 0c c6 40 00 1b 00 00 00 d4 c5 40 00 1c 00 00 00 ac c5 40 00 ....D.@.......@.......@.......@.
187e0 1e 00 00 00 8c c5 40 00 1f 00 00 00 28 c5 40 00 20 00 00 00 f0 c4 40 00 21 00 00 00 f8 c3 40 00 ......@.....(.@.......@.!.....@.
18800 22 00 00 00 58 c3 40 00 78 00 00 00 48 c3 40 00 79 00 00 00 38 c3 40 00 7a 00 00 00 28 c3 40 00 "...X.@.x...H.@.y...8.@.z...(.@.
18820 fc 00 00 00 24 c3 40 00 ff 00 00 00 14 c3 40 00 b7 94 40 00 b7 94 40 00 b7 94 40 00 b7 94 40 00 ....$.@.......@...@...@...@...@.
18840 b7 94 40 00 b7 94 40 00 b7 94 40 00 b7 94 40 00 b7 94 40 00 b7 94 40 00 03 00 00 00 07 00 00 00 ..@...@...@...@...@...@.........
18860 78 00 00 00 0a 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 x...............................
18880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 ................................
188e0 10 10 10 10 10 10 10 10 00 00 00 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
18900 20 20 20 20 20 20 20 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 ..............abcdefghijklmnopqr
189e0 73 74 75 76 77 78 79 7a 00 00 00 00 00 00 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 stuvwxyz......ABCDEFGHIJKLMNOPQR
18a00 53 54 55 56 57 58 59 5a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 STUVWXYZ........................
18a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 10 10 10 10 10 10 10 10 10 10 10 10 10 ................................
18ae0 10 10 10 10 10 10 10 10 10 10 10 10 00 00 00 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
18b00 20 20 20 20 20 20 20 20 20 20 20 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 61 62 63 64 65 66 67 .........................abcdefg
18be0 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 00 00 00 00 00 00 41 42 43 44 45 46 47 hijklmnopqrstuvwxyz......ABCDEFG
18c00 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 00 00 00 00 00 00 00 00 00 00 00 00 00 HIJKLMNOPQRSTUVWXYZ.............
18c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70 a6 41 00 01 02 04 08 ........................p.A.....
18ca0 a4 03 00 00 60 82 79 82 21 00 00 00 00 00 00 00 a6 df 00 00 00 00 00 00 a1 a5 00 00 00 00 00 00 ....`.y.!.......................
18cc0 81 9f e0 fc 00 00 00 00 40 7e 80 fc 00 00 00 00 a8 03 00 00 c1 a3 da a3 20 00 00 00 00 00 00 00 ........@~......................
18ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 81 fe 00 00 00 00 00 00 40 fe 00 00 00 00 00 00 ........................@.......
18d00 b5 03 00 00 c1 a3 da a3 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d20 81 fe 00 00 00 00 00 00 41 fe 00 00 00 00 00 00 b6 03 00 00 cf a2 e4 a2 1a 00 e5 a2 e8 a2 5b 00 ........A.....................[.
18d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 81 fe 00 00 00 00 00 00 40 7e a1 fe 00 00 00 00 ........................@~......
18d60 51 05 00 00 51 da 5e da 20 00 5f da 6a da 32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Q...Q.^..._.j.2.................
18d80 81 d3 d8 de e0 f9 00 00 31 7e 81 fe 00 00 00 00 a4 cd 40 00 fe ff ff ff 43 00 00 00 00 00 00 00 ........1~........@.....C.......
18da0 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 98 ab 41 00 00 00 00 00 ..........................A.....
18e00 00 00 00 00 00 00 00 00 98 ab 41 00 00 00 00 00 00 00 00 00 00 00 00 00 98 ab 41 00 00 00 00 00 ..........A...............A.....
18e20 00 00 00 00 00 00 00 00 98 ab 41 00 00 00 00 00 00 00 00 00 00 00 00 00 98 ab 41 00 00 00 00 00 ..........A...............A.....
18e40 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 ad 41 00 ............................x.A.
18e60 00 00 00 00 00 00 00 00 a0 cb 40 00 28 d0 40 00 a8 d1 40 00 b8 ac 41 00 a0 ab 41 00 01 00 00 00 ..........@.(.@...@...A...A.....
18e80 a0 ab 41 00 70 a6 41 00 00 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..A.p.A.........................
18ea0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0 cb 40 00 a2 cd 40 00 d0 d3 40 00 cc d3 40 00 ..................@...@...@...@.
18ec0 c8 d3 40 00 c4 d3 40 00 c0 d3 40 00 bc d3 40 00 b8 d3 40 00 b0 d3 40 00 a8 d3 40 00 a0 d3 40 00 ..@...@...@...@...@...@...@...@.
18ee0 94 d3 40 00 88 d3 40 00 80 d3 40 00 74 d3 40 00 70 d3 40 00 6c d3 40 00 68 d3 40 00 64 d3 40 00 ..@...@...@.t.@.p.@.l.@.h.@.d.@.
18f00 60 d3 40 00 5c d3 40 00 58 d3 40 00 54 d3 40 00 50 d3 40 00 4c d3 40 00 48 d3 40 00 44 d3 40 00 `.@.\.@.X.@.T.@.P.@.L.@.H.@.D.@.
18f20 3c d3 40 00 30 d3 40 00 28 d3 40 00 20 d3 40 00 60 d3 40 00 18 d3 40 00 10 d3 40 00 08 d3 40 00 <.@.0.@.(.@...@.`.@...@...@...@.
18f40 fc d2 40 00 f4 d2 40 00 e8 d2 40 00 dc d2 40 00 d8 d2 40 00 d4 d2 40 00 c8 d2 40 00 b4 d2 40 00 ..@...@...@...@...@...@...@...@.
18f60 a8 d2 40 00 09 04 00 00 01 00 00 00 00 00 00 00 b8 ac 41 00 2e 00 00 00 74 ad 41 00 20 e4 42 00 ..@...............A.....t.A...B.
18f80 20 e4 42 00 20 e4 42 00 20 e4 42 00 20 e4 42 00 20 e4 42 00 20 e4 42 00 20 e4 42 00 20 e4 42 00 ..B...B...B...B...B...B...B...B.
18fa0 7f 7f 7f 7f 7f 7f 7f 7f 78 ad 41 00 01 00 00 00 2e 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ........x.A.....................
18fc0 20 05 93 19 00 00 00 00 00 00 00 00 00 00 00 00 fe ff ff ff fe ff ff ff 80 70 00 00 01 00 00 00 .........................p......
18fe0 f0 f1 ff ff 00 00 00 00 50 53 54 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........PST.....................
19000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19020 00 00 00 00 00 00 00 00 50 44 54 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........PDT.....................
19040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19060 00 00 00 00 00 00 00 00 e8 ad 41 00 28 ae 41 00 ff ff ff ff 00 00 00 00 00 00 00 00 ff ff ff ff ..........A.(.A.................
19080 00 00 00 00 00 00 00 00 ff ff ff ff 1e 00 00 00 3b 00 00 00 5a 00 00 00 78 00 00 00 97 00 00 00 ................;...Z...x.......
190a0 b5 00 00 00 d4 00 00 00 f3 00 00 00 11 01 00 00 30 01 00 00 4e 01 00 00 6d 01 00 00 ff ff ff ff ................0...N...m.......
190c0 1e 00 00 00 3a 00 00 00 59 00 00 00 77 00 00 00 96 00 00 00 b4 00 00 00 d3 00 00 00 f2 00 00 00 ....:...Y...w...................
190e0 10 01 00 00 2f 01 00 00 4d 01 00 00 6c 01 00 00 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 5f ..../...M...l...if.string.find(_
19100 56 45 52 53 49 4f 4e 2c 20 22 35 25 2e 30 22 29 20 74 68 65 6e 0d 0a 09 72 65 74 75 72 6e 0d 0a VERSION,."5%.0").then...return..
19120 65 6e 64 0d 0a 0d 0a 2d 2d 20 22 6c 6f 61 64 66 69 6c 65 22 0d 0a 6c 6f 63 61 6c 20 66 75 6e 63 end....--."loadfile"..local.func
19140 74 69 6f 6e 20 70 70 5f 64 6f 66 69 6c 65 28 70 61 74 68 29 0d 0a 0d 0a 09 6c 6f 63 61 6c 20 6c tion.pp_dofile(path).....local.l
19160 6f 61 64 65 64 20 3d 20 66 61 6c 73 65 0d 0a 09 6c 6f 63 61 6c 20 67 65 74 66 69 6c 65 20 3d 20 oaded.=.false...local.getfile.=.
19180 66 75 6e 63 74 69 6f 6e 28 29 0d 0a 0d 0a 09 09 69 66 20 6c 6f 61 64 65 64 20 74 68 65 6e 0d 0a function()......if.loaded.then..
191a0 09 09 09 72 65 74 75 72 6e 0d 0a 09 09 65 6c 73 65 0d 0a 09 09 09 6c 6f 63 61 6c 20 66 69 6c 65 ...return....else.....local.file
191c0 2c 65 72 72 20 3d 20 69 6f 2e 6f 70 65 6e 28 70 61 74 68 29 0d 0a 09 09 09 69 66 20 6e 6f 74 20 ,err.=.io.open(path).....if.not.
191e0 66 69 6c 65 20 74 68 65 6e 0d 0a 09 09 09 09 65 72 72 6f 72 28 22 65 72 72 6f 72 20 6c 6f 61 64 file.then......error("error.load
19200 69 6e 67 20 66 69 6c 65 20 22 2e 2e 70 61 74 68 2e 2e 22 3a 20 22 2e 2e 65 72 72 29 0d 0a 09 09 ing.file."..path..":."..err)....
19220 09 65 6e 64 0d 0a 09 09 09 6c 6f 63 61 6c 20 72 65 74 20 3d 20 66 69 6c 65 3a 72 65 61 64 28 22 .end.....local.ret.=.file:read("
19240 2a 61 22 29 0d 0a 09 09 09 66 69 6c 65 3a 63 6c 6f 73 65 28 29 0d 0a 0d 0a 09 09 09 72 65 74 20 *a").....file:close().......ret.
19260 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 72 65 74 2c 20 22 25 2e 25 2e 25 2e 25 73 2a 25 29 22 =.string.gsub(ret,."%.%.%.%s*%)"
19280 2c 20 22 2e 2e 2e 29 20 6c 6f 63 61 6c 20 61 72 67 20 3d 20 7b 6e 3d 73 65 6c 65 63 74 28 27 23 ,."...).local.arg.=.{n=select('#
192a0 27 2c 20 2e 2e 2e 29 2c 20 2e 2e 2e 7d 3b 22 29 0d 0a 0d 0a 09 09 09 6c 6f 61 64 65 64 20 3d 20 ',....),....};").......loaded.=.
192c0 74 72 75 65 0d 0a 09 09 09 72 65 74 75 72 6e 20 72 65 74 0d 0a 09 09 65 6e 64 0d 0a 09 65 6e 64 true.....return.ret....end...end
192e0 0d 0a 0d 0a 09 6c 6f 63 61 6c 20 66 20 3d 20 6c 6f 61 64 28 67 65 74 66 69 6c 65 2c 20 70 61 74 .....local.f.=.load(getfile,.pat
19300 68 29 0d 0a 09 69 66 20 6e 6f 74 20 66 20 74 68 65 6e 0d 0a 09 0d 0a 09 09 65 72 72 6f 72 28 22 h)...if.not.f.then.......error("
19320 65 72 72 6f 72 20 6c 6f 61 64 69 6e 67 20 66 69 6c 65 20 22 2e 2e 70 61 74 68 29 0d 0a 09 65 6e error.loading.file."..path)...en
19340 64 0d 0a 09 72 65 74 75 72 6e 20 66 28 29 0d 0a 65 6e 64 0d 0a 0d 0a 6f 6c 64 5f 64 6f 66 69 6c d...return.f()..end....old_dofil
19360 65 20 3d 20 64 6f 66 69 6c 65 0d 0a 64 6f 66 69 6c 65 20 3d 20 70 70 5f 64 6f 66 69 6c 65 0d 0a e.=.dofile..dofile.=.pp_dofile..
19380 0d 0a 0d 0a 2d 2d 20 73 74 72 69 6e 67 2e 67 73 75 62 0d 0a 2d 2d 5b 5b 0d 0a 6c 6f 63 61 6c 20 ....--.string.gsub..--[[..local.
193a0 6f 67 73 75 62 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 0d 0a 6c 6f 63 61 6c 20 66 75 6e 63 74 ogsub.=.string.gsub..local.funct
193c0 69 6f 6e 20 63 6f 6d 70 67 73 75 62 28 61 2c 62 2c 63 2c 64 29 0d 0a 20 20 69 66 20 74 79 70 65 ion.compgsub(a,b,c,d)....if.type
193e0 28 63 29 20 3d 3d 20 22 66 75 6e 63 74 69 6f 6e 22 20 74 68 65 6e 0d 0a 20 20 20 20 6c 6f 63 61 (c).==."function".then......loca
19400 6c 20 6f 63 20 3d 20 63 0d 0a 20 20 20 20 63 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 2e 2e 2e 29 l.oc.=.c......c.=.function.(...)
19420 20 72 65 74 75 72 6e 20 6f 63 28 2e 2e 2e 29 20 6f 72 20 27 27 20 65 6e 64 0d 0a 20 20 65 6e 64 .return.oc(...).or.''.end....end
19440 0d 0a 20 20 72 65 74 75 72 6e 20 6f 67 73 75 62 28 61 2c 62 2c 63 2c 64 29 0d 0a 65 6e 64 0d 0a ....return.ogsub(a,b,c,d)..end..
19460 73 74 72 69 6e 67 2e 72 65 70 6c 20 3d 20 6f 67 73 75 62 0d 0a 2d 2d 5d 5d 0d 0a 0d 0a 2d 2d 73 string.repl.=.ogsub..--]]....--s
19480 74 72 69 6e 67 2e 67 73 75 62 20 3d 20 63 6f 6d 70 67 73 75 62 0d 20 00 2d 2d 2d 2d 2d 2d 2d 2d tring.gsub.=.compgsub...--------
194a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
194c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2d 2d 20 52 ---------------------------.--.R
194e0 65 61 6c 20 67 6c 6f 62 61 6c 73 0a 2d 2d 20 5f 41 4c 45 52 54 0a 2d 2d 20 5f 45 52 52 4f 52 4d eal.globals.--._ALERT.--._ERRORM
19500 45 53 53 41 47 45 0a 2d 2d 20 5f 56 45 52 53 49 4f 4e 0a 2d 2d 20 5f 47 0a 2d 2d 20 61 73 73 65 ESSAGE.--._VERSION.--._G.--.asse
19520 72 74 0a 2d 2d 20 65 72 72 6f 72 0a 2d 2d 20 6d 65 74 61 74 61 62 6c 65 0a 2d 2d 20 6e 65 78 74 rt.--.error.--.metatable.--.next
19540 0a 2d 2d 20 70 72 69 6e 74 0a 2d 2d 20 72 65 71 75 69 72 65 0a 2d 2d 20 74 6f 6e 75 6d 62 65 72 .--.print.--.require.--.tonumber
19560 0a 2d 2d 20 74 6f 73 74 72 69 6e 67 0a 2d 2d 20 74 79 70 65 0a 2d 2d 20 75 6e 70 61 63 6b 0a 0a .--.tostring.--.type.--.unpack..
19580 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
195a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
195c0 2d 2d 2d 0a 2d 2d 20 63 6f 6c 6c 65 63 74 67 61 72 62 61 67 65 0a 2d 2d 20 67 63 69 6e 66 6f 0a ---.--.collectgarbage.--.gcinfo.
195e0 0a 2d 2d 20 67 6c 6f 62 61 6c 73 0a 0a 2d 2d 20 63 61 6c 6c 20 20 20 2d 3e 20 70 72 6f 74 65 63 .--.globals..--.call...->.protec
19600 74 28 66 2c 20 65 72 72 29 0a 2d 2d 20 6c 6f 61 64 66 69 6c 65 0a 2d 2d 20 6c 6f 61 64 73 74 72 t(f,.err).--.loadfile.--.loadstr
19620 69 6e 67 0a 0a 2d 2d 20 72 61 77 67 65 74 0a 2d 2d 20 72 61 77 73 65 74 0a 0a 2d 2d 20 67 65 74 ing..--.rawget.--.rawset..--.get
19640 61 72 67 73 20 3d 20 4d 61 69 6e 2e 67 65 74 61 72 67 73 20 3f 3f 0a 0a 72 61 77 74 79 70 65 20 args.=.Main.getargs.??..rawtype.
19660 3d 20 74 79 70 65 0a 0a 66 75 6e 63 74 69 6f 6e 20 64 6f 5f 20 28 66 2c 20 65 72 72 29 0a 20 20 =.type..function.do_.(f,.err)...
19680 69 66 20 6e 6f 74 20 66 20 74 68 65 6e 20 70 72 69 6e 74 28 65 72 72 29 3b 20 72 65 74 75 72 6e if.not.f.then.print(err);.return
196a0 20 65 6e 64 0a 20 20 6c 6f 63 61 6c 20 61 2c 62 20 3d 20 70 63 61 6c 6c 28 66 29 0a 20 20 69 66 .end...local.a,b.=.pcall(f)...if
196c0 20 6e 6f 74 20 61 20 74 68 65 6e 20 70 72 69 6e 74 28 62 29 3b 20 72 65 74 75 72 6e 20 6e 69 6c .not.a.then.print(b);.return.nil
196e0 0a 20 20 65 6c 73 65 20 72 65 74 75 72 6e 20 62 20 6f 72 20 74 72 75 65 0a 20 20 65 6e 64 0a 65 ...else.return.b.or.true...end.e
19700 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 64 6f 73 74 72 69 6e 67 28 73 29 20 72 65 74 75 72 6e 20 nd..function.dostring(s).return.
19720 64 6f 5f 28 6c 6f 61 64 73 74 72 69 6e 67 28 73 29 29 20 65 6e 64 0a 2d 2d 20 66 75 6e 63 74 69 do_(loadstring(s)).end.--.functi
19740 6f 6e 20 64 6f 66 69 6c 65 28 73 29 20 72 65 74 75 72 6e 20 64 6f 5f 28 6c 6f 61 64 66 69 6c 65 on.dofile(s).return.do_(loadfile
19760 28 73 29 29 20 65 6e 64 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d (s)).end..----------------------
19780 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
197a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2d 2d 20 54 61 62 6c 65 20 6c 69 62 72 61 72 79 0a 6c -------------.--.Table.library.l
197c0 6f 63 61 6c 20 74 61 62 20 3d 20 74 61 62 6c 65 0a 66 6f 72 65 61 63 68 20 3d 20 74 61 62 2e 66 ocal.tab.=.table.foreach.=.tab.f
197e0 6f 72 65 61 63 68 0a 66 6f 72 65 61 63 68 69 20 3d 20 74 61 62 2e 66 6f 72 65 61 63 68 69 0a 67 oreach.foreachi.=.tab.foreachi.g
19800 65 74 6e 20 3d 20 74 61 62 2e 67 65 74 6e 0a 74 69 6e 73 65 72 74 20 3d 20 74 61 62 2e 69 6e 73 etn.=.tab.getn.tinsert.=.tab.ins
19820 65 72 74 0a 74 72 65 6d 6f 76 65 20 3d 20 74 61 62 2e 72 65 6d 6f 76 65 0a 73 6f 72 74 20 3d 20 ert.tremove.=.tab.remove.sort.=.
19840 74 61 62 2e 73 6f 72 74 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d tab.sort..----------------------
19860 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
19880 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2d 2d 20 44 65 62 75 67 20 6c 69 62 72 61 72 79 0a 6c -------------.--.Debug.library.l
198a0 6f 63 61 6c 20 64 62 67 20 3d 20 64 65 62 75 67 0a 67 65 74 69 6e 66 6f 20 3d 20 64 62 67 2e 67 ocal.dbg.=.debug.getinfo.=.dbg.g
198c0 65 74 69 6e 66 6f 0a 67 65 74 6c 6f 63 61 6c 20 3d 20 64 62 67 2e 67 65 74 6c 6f 63 61 6c 0a 73 etinfo.getlocal.=.dbg.getlocal.s
198e0 65 74 63 61 6c 6c 68 6f 6f 6b 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 65 72 72 6f 72 22 60 etcallhook.=.function.().error"`
19900 73 65 74 63 61 6c 6c 68 6f 6f 6b 27 20 69 73 20 64 65 70 72 65 63 61 74 65 64 22 20 65 6e 64 0a setcallhook'.is.deprecated".end.
19920 73 65 74 6c 69 6e 65 68 6f 6f 6b 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 65 72 72 6f 72 22 setlinehook.=.function.().error"
19940 60 73 65 74 6c 69 6e 65 68 6f 6f 6b 27 20 69 73 20 64 65 70 72 65 63 61 74 65 64 22 20 65 6e 64 `setlinehook'.is.deprecated".end
19960 0a 73 65 74 6c 6f 63 61 6c 20 3d 20 64 62 67 2e 73 65 74 6c 6f 63 61 6c 0a 0a 2d 2d 2d 2d 2d 2d .setlocal.=.dbg.setlocal..------
19980 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
199a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2d 2d -----------------------------.--
199c0 20 6d 61 74 68 20 6c 69 62 72 61 72 79 0a 6c 6f 63 61 6c 20 6d 61 74 68 20 3d 20 6d 61 74 68 0a .math.library.local.math.=.math.
199e0 61 62 73 20 3d 20 6d 61 74 68 2e 61 62 73 0a 61 63 6f 73 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 abs.=.math.abs.acos.=.function.(
19a00 78 29 20 72 65 74 75 72 6e 20 6d 61 74 68 2e 64 65 67 28 6d 61 74 68 2e 61 63 6f 73 28 78 29 29 x).return.math.deg(math.acos(x))
19a20 20 65 6e 64 0a 61 73 69 6e 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 78 29 20 72 65 74 75 72 6e 20 .end.asin.=.function.(x).return.
19a40 6d 61 74 68 2e 64 65 67 28 6d 61 74 68 2e 61 73 69 6e 28 78 29 29 20 65 6e 64 0a 61 74 61 6e 20 math.deg(math.asin(x)).end.atan.
19a60 3d 20 66 75 6e 63 74 69 6f 6e 20 28 78 29 20 72 65 74 75 72 6e 20 6d 61 74 68 2e 64 65 67 28 6d =.function.(x).return.math.deg(m
19a80 61 74 68 2e 61 74 61 6e 28 78 29 29 20 65 6e 64 0a 61 74 61 6e 32 20 3d 20 66 75 6e 63 74 69 6f ath.atan(x)).end.atan2.=.functio
19aa0 6e 20 28 78 2c 79 29 20 72 65 74 75 72 6e 20 6d 61 74 68 2e 64 65 67 28 6d 61 74 68 2e 61 74 61 n.(x,y).return.math.deg(math.ata
19ac0 6e 32 28 78 2c 79 29 29 20 65 6e 64 0a 63 65 69 6c 20 3d 20 6d 61 74 68 2e 63 65 69 6c 0a 63 6f n2(x,y)).end.ceil.=.math.ceil.co
19ae0 73 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 78 29 20 72 65 74 75 72 6e 20 6d 61 74 68 2e 63 6f 73 s.=.function.(x).return.math.cos
19b00 28 6d 61 74 68 2e 72 61 64 28 78 29 29 20 65 6e 64 0a 64 65 67 20 3d 20 6d 61 74 68 2e 64 65 67 (math.rad(x)).end.deg.=.math.deg
19b20 0a 65 78 70 20 3d 20 6d 61 74 68 2e 65 78 70 0a 66 6c 6f 6f 72 20 3d 20 6d 61 74 68 2e 66 6c 6f .exp.=.math.exp.floor.=.math.flo
19b40 6f 72 0a 66 72 65 78 70 20 3d 20 6d 61 74 68 2e 66 72 65 78 70 0a 6c 64 65 78 70 20 3d 20 6d 61 or.frexp.=.math.frexp.ldexp.=.ma
19b60 74 68 2e 6c 64 65 78 70 0a 6c 6f 67 20 3d 20 6d 61 74 68 2e 6c 6f 67 0a 6c 6f 67 31 30 20 3d 20 th.ldexp.log.=.math.log.log10.=.
19b80 6d 61 74 68 2e 6c 6f 67 31 30 0a 6d 61 78 20 3d 20 6d 61 74 68 2e 6d 61 78 0a 6d 69 6e 20 3d 20 math.log10.max.=.math.max.min.=.
19ba0 6d 61 74 68 2e 6d 69 6e 0a 6d 6f 64 20 3d 20 6d 61 74 68 2e 6d 6f 64 0a 50 49 20 3d 20 6d 61 74 math.min.mod.=.math.mod.PI.=.mat
19bc0 68 2e 70 69 0a 2d 2d 3f 3f 3f 20 70 6f 77 20 3d 20 6d 61 74 68 2e 70 6f 77 20 20 0a 72 61 64 20 h.pi.--???.pow.=.math.pow...rad.
19be0 3d 20 6d 61 74 68 2e 72 61 64 0a 72 61 6e 64 6f 6d 20 3d 20 6d 61 74 68 2e 72 61 6e 64 6f 6d 0a =.math.rad.random.=.math.random.
19c00 72 61 6e 64 6f 6d 73 65 65 64 20 3d 20 6d 61 74 68 2e 72 61 6e 64 6f 6d 73 65 65 64 0a 73 69 6e randomseed.=.math.randomseed.sin
19c20 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 78 29 20 72 65 74 75 72 6e 20 6d 61 74 68 2e 73 69 6e 28 .=.function.(x).return.math.sin(
19c40 6d 61 74 68 2e 72 61 64 28 78 29 29 20 65 6e 64 0a 73 71 72 74 20 3d 20 6d 61 74 68 2e 73 71 72 math.rad(x)).end.sqrt.=.math.sqr
19c60 74 0a 74 61 6e 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 78 29 20 72 65 74 75 72 6e 20 6d 61 74 68 t.tan.=.function.(x).return.math
19c80 2e 74 61 6e 28 6d 61 74 68 2e 72 61 64 28 78 29 29 20 65 6e 64 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d .tan(math.rad(x)).end..---------
19ca0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
19cc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2d 2d 20 73 74 --------------------------.--.st
19ce0 72 69 6e 67 20 6c 69 62 72 61 72 79 0a 6c 6f 63 61 6c 20 73 74 72 20 3d 20 73 74 72 69 6e 67 0a ring.library.local.str.=.string.
19d00 73 74 72 62 79 74 65 20 3d 20 73 74 72 2e 62 79 74 65 0a 73 74 72 63 68 61 72 20 3d 20 73 74 72 strbyte.=.str.byte.strchar.=.str
19d20 2e 63 68 61 72 0a 73 74 72 66 69 6e 64 20 3d 20 73 74 72 2e 66 69 6e 64 0a 66 6f 72 6d 61 74 20 .char.strfind.=.str.find.format.
19d40 3d 20 73 74 72 2e 66 6f 72 6d 61 74 0a 67 73 75 62 20 3d 20 73 74 72 2e 67 73 75 62 0a 73 74 72 =.str.format.gsub.=.str.gsub.str
19d60 6c 65 6e 20 3d 20 73 74 72 2e 6c 65 6e 0a 73 74 72 6c 6f 77 65 72 20 3d 20 73 74 72 2e 6c 6f 77 len.=.str.len.strlower.=.str.low
19d80 65 72 0a 73 74 72 72 65 70 20 3d 20 73 74 72 2e 72 65 70 0a 73 74 72 73 75 62 20 3d 20 73 74 72 er.strrep.=.str.rep.strsub.=.str
19da0 2e 73 75 62 0a 73 74 72 75 70 70 65 72 20 3d 20 73 74 72 2e 75 70 70 65 72 0a 0a 2d 2d 2d 2d 2d .sub.strupper.=.str.upper..-----
19dc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
19de0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2d ------------------------------.-
19e00 2d 20 6f 73 20 6c 69 62 72 61 72 79 0a 63 6c 6f 63 6b 20 3d 20 6f 73 2e 63 6c 6f 63 6b 0a 64 61 -.os.library.clock.=.os.clock.da
19e20 74 65 20 3d 20 6f 73 2e 64 61 74 65 0a 64 69 66 66 74 69 6d 65 20 3d 20 6f 73 2e 64 69 66 66 74 te.=.os.date.difftime.=.os.difft
19e40 69 6d 65 0a 65 78 65 63 75 74 65 20 3d 20 6f 73 2e 65 78 65 63 75 74 65 20 2d 2d 3f 0a 65 78 69 ime.execute.=.os.execute.--?.exi
19e60 74 20 3d 20 6f 73 2e 65 78 69 74 0a 67 65 74 65 6e 76 20 3d 20 6f 73 2e 67 65 74 65 6e 76 0a 72 t.=.os.exit.getenv.=.os.getenv.r
19e80 65 6d 6f 76 65 20 3d 20 6f 73 2e 72 65 6d 6f 76 65 0a 72 65 6e 61 6d 65 20 3d 20 6f 73 2e 72 65 emove.=.os.remove.rename.=.os.re
19ea0 6e 61 6d 65 0a 73 65 74 6c 6f 63 61 6c 65 20 3d 20 6f 73 2e 73 65 74 6c 6f 63 61 6c 65 0a 74 69 name.setlocale.=.os.setlocale.ti
19ec0 6d 65 20 3d 20 6f 73 2e 74 69 6d 65 0a 74 6d 70 6e 61 6d 65 20 3d 20 6f 73 2e 74 6d 70 6e 61 6d me.=.os.time.tmpname.=.os.tmpnam
19ee0 65 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d e..-----------------------------
19f00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
19f20 2d 2d 2d 2d 2d 2d 0a 2d 2d 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 6f 6e 6c 79 0a 67 65 74 ------.--.compatibility.only.get
19f40 67 6c 6f 62 61 6c 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 6e 29 20 72 65 74 75 72 6e 20 5f 47 5b global.=.function.(n).return._G[
19f60 6e 5d 20 65 6e 64 0a 73 65 74 67 6c 6f 62 61 6c 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 6e 2c 76 n].end.setglobal.=.function.(n,v
19f80 29 20 5f 47 5b 6e 5d 20 3d 20 76 20 65 6e 64 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d )._G[n].=.v.end..---------------
19fa0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
19fc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 6c 6f 63 61 6c 20 69 6f 2c 20 --------------------..local.io,.
19fe0 74 61 62 20 3d 20 69 6f 2c 20 74 61 62 6c 65 0a 0a 2d 2d 20 49 4f 20 6c 69 62 72 61 72 79 20 28 tab.=.io,.table..--.IO.library.(
1a000 66 69 6c 65 73 29 0a 5f 53 54 44 49 4e 20 3d 20 69 6f 2e 73 74 64 69 6e 0a 5f 53 54 44 45 52 52 files)._STDIN.=.io.stdin._STDERR
1a020 20 3d 20 69 6f 2e 73 74 64 65 72 72 0a 5f 53 54 44 4f 55 54 20 3d 20 69 6f 2e 73 74 64 6f 75 74 .=.io.stderr._STDOUT.=.io.stdout
1a040 0a 5f 49 4e 50 55 54 20 3d 20 69 6f 2e 73 74 64 69 6e 0a 5f 4f 55 54 50 55 54 20 3d 20 69 6f 2e ._INPUT.=.io.stdin._OUTPUT.=.io.
1a060 73 74 64 6f 75 74 0a 73 65 65 6b 20 3d 20 69 6f 2e 73 74 64 69 6e 2e 73 65 65 6b 20 20 20 2d 2d stdout.seek.=.io.stdin.seek...--
1a080 20 73 69 63 6b 20 3b 2d 29 0a 74 6d 70 66 69 6c 65 20 3d 20 69 6f 2e 74 6d 70 66 69 6c 65 0a 63 .sick.;-).tmpfile.=.io.tmpfile.c
1a0a0 6c 6f 73 65 66 69 6c 65 20 3d 20 69 6f 2e 63 6c 6f 73 65 0a 6f 70 65 6e 66 69 6c 65 20 3d 20 69 losefile.=.io.close.openfile.=.i
1a0c0 6f 2e 6f 70 65 6e 0a 0a 66 75 6e 63 74 69 6f 6e 20 66 6c 75 73 68 20 28 66 29 0a 20 20 69 66 20 o.open..function.flush.(f)...if.
1a0e0 66 20 74 68 65 6e 20 66 3a 66 6c 75 73 68 28 29 0a 20 20 65 6c 73 65 20 5f 4f 55 54 50 55 54 3a f.then.f:flush()...else._OUTPUT:
1a100 66 6c 75 73 68 28 29 0a 20 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 flush()...end.end..function.read
1a120 66 72 6f 6d 20 28 6e 61 6d 65 29 0a 20 20 69 66 20 6e 61 6d 65 20 3d 3d 20 6e 69 6c 20 74 68 65 from.(name)...if.name.==.nil.the
1a140 6e 0a 20 20 20 20 6c 6f 63 61 6c 20 66 2c 20 65 72 72 2c 20 63 6f 64 20 3d 20 69 6f 2e 63 6c 6f n.....local.f,.err,.cod.=.io.clo
1a160 73 65 28 5f 49 4e 50 55 54 29 0a 20 20 20 20 5f 49 4e 50 55 54 20 3d 20 69 6f 2e 73 74 64 69 6e se(_INPUT)....._INPUT.=.io.stdin
1a180 0a 20 20 20 20 72 65 74 75 72 6e 20 66 2c 20 65 72 72 2c 20 63 6f 64 0a 20 20 65 6c 73 65 0a 20 .....return.f,.err,.cod...else..
1a1a0 20 20 20 6c 6f 63 61 6c 20 66 2c 20 65 72 72 2c 20 63 6f 64 20 3d 20 69 6f 2e 6f 70 65 6e 28 6e ...local.f,.err,.cod.=.io.open(n
1a1c0 61 6d 65 2c 20 22 72 22 29 0a 20 20 20 20 5f 49 4e 50 55 54 20 3d 20 66 20 6f 72 20 5f 49 4e 50 ame,."r")....._INPUT.=.f.or._INP
1a1e0 55 54 0a 20 20 20 20 72 65 74 75 72 6e 20 66 2c 20 65 72 72 2c 20 63 6f 64 0a 20 20 65 6e 64 0a UT.....return.f,.err,.cod...end.
1a200 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 74 6f 20 28 6e 61 6d 65 29 0a 20 20 69 end..function.writeto.(name)...i
1a220 66 20 6e 61 6d 65 20 3d 3d 20 6e 69 6c 20 74 68 65 6e 0a 20 20 20 20 6c 6f 63 61 6c 20 66 2c 20 f.name.==.nil.then.....local.f,.
1a240 65 72 72 2c 20 63 6f 64 20 3d 20 69 6f 2e 63 6c 6f 73 65 28 5f 4f 55 54 50 55 54 29 0a 20 20 20 err,.cod.=.io.close(_OUTPUT)....
1a260 20 5f 4f 55 54 50 55 54 20 3d 20 69 6f 2e 73 74 64 6f 75 74 0a 20 20 20 20 72 65 74 75 72 6e 20 ._OUTPUT.=.io.stdout.....return.
1a280 66 2c 20 65 72 72 2c 20 63 6f 64 0a 20 20 65 6c 73 65 0a 20 20 20 20 6c 6f 63 61 6c 20 66 2c 20 f,.err,.cod...else.....local.f,.
1a2a0 65 72 72 2c 20 63 6f 64 20 3d 20 69 6f 2e 6f 70 65 6e 28 6e 61 6d 65 2c 20 22 77 22 29 0a 20 20 err,.cod.=.io.open(name,."w")...
1a2c0 20 20 5f 4f 55 54 50 55 54 20 3d 20 66 20 6f 72 20 5f 4f 55 54 50 55 54 0a 20 20 20 20 72 65 74 .._OUTPUT.=.f.or._OUTPUT.....ret
1a2e0 75 72 6e 20 66 2c 20 65 72 72 2c 20 63 6f 64 0a 20 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 urn.f,.err,.cod...end.end..funct
1a300 69 6f 6e 20 61 70 70 65 6e 64 74 6f 20 28 6e 61 6d 65 29 0a 20 20 6c 6f 63 61 6c 20 66 2c 20 65 ion.appendto.(name)...local.f,.e
1a320 72 72 2c 20 63 6f 64 20 3d 20 69 6f 2e 6f 70 65 6e 28 6e 61 6d 65 2c 20 22 61 22 29 0a 20 20 5f rr,.cod.=.io.open(name,."a")..._
1a340 4f 55 54 50 55 54 20 3d 20 66 20 6f 72 20 5f 4f 55 54 50 55 54 0a 20 20 72 65 74 75 72 6e 20 66 OUTPUT.=.f.or._OUTPUT...return.f
1a360 2c 20 65 72 72 2c 20 63 6f 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 20 28 2e ,.err,.cod.end..function.read.(.
1a380 2e 2e 29 0a 20 20 6c 6f 63 61 6c 20 66 20 3d 20 5f 49 4e 50 55 54 0a 20 20 69 66 20 72 61 77 74 ..)...local.f.=._INPUT...if.rawt
1a3a0 79 70 65 28 61 72 67 5b 31 5d 29 20 3d 3d 20 27 75 73 65 72 64 61 74 61 27 20 74 68 65 6e 0a 20 ype(arg[1]).==.'userdata'.then..
1a3c0 20 20 20 66 20 3d 20 74 61 62 2e 72 65 6d 6f 76 65 28 61 72 67 2c 20 31 29 0a 20 20 65 6e 64 0a ...f.=.tab.remove(arg,.1)...end.
1a3e0 20 20 72 65 74 75 72 6e 20 66 3a 72 65 61 64 28 75 6e 70 61 63 6b 28 61 72 67 29 29 0a 65 6e 64 ..return.f:read(unpack(arg)).end
1a400 0a 0a 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 20 28 2e 2e 2e 29 0a 20 20 6c 6f 63 61 6c 20 66 ..function.write.(...)...local.f
1a420 20 3d 20 5f 4f 55 54 50 55 54 0a 20 20 69 66 20 72 61 77 74 79 70 65 28 61 72 67 5b 31 5d 29 20 .=._OUTPUT...if.rawtype(arg[1]).
1a440 3d 3d 20 27 75 73 65 72 64 61 74 61 27 20 74 68 65 6e 0a 20 20 20 20 66 20 3d 20 74 61 62 2e 72 ==.'userdata'.then.....f.=.tab.r
1a460 65 6d 6f 76 65 28 61 72 67 2c 20 31 29 0a 20 20 65 6e 64 0a 20 20 72 65 74 75 72 6e 20 66 3a 77 emove(arg,.1)...end...return.f:w
1a480 72 69 74 65 28 75 6e 70 61 63 6b 28 61 72 67 29 29 0a 65 6e 64 20 00 00 2d 2d 20 74 6f 6c 75 61 rite(unpack(arg)).end...--.tolua
1a4a0 3a 20 61 62 73 74 72 61 63 74 20 66 65 61 74 75 72 65 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 :.abstract.feature.class.--.Writ
1a4c0 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 ten.by.Waldemar.Celes.--.TeCGraf
1a4e0 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a /PUC-Rio.--.Jul.1998.--.$Id:.$..
1a500 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 --.This.code.is.free.software;.y
1a520 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f ou.can.redistribute.it.and/or.mo
1a540 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 dify.it..--.The.software.provide
1a560 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 d.hereunder.is.on.an."as.is".bas
1a580 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c is,.and.--.the.author.has.no.obl
1a5a0 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 igation.to.provide.maintenance,.
1a5c0 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 support,.updates,.--.enhancement
1a5e0 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 46 65 61 74 75 72 s,.or.modifications....--.Featur
1a600 65 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 62 61 73 65 20 63 e.class.--.Represents.the.base.c
1a620 6c 61 73 73 20 6f 66 20 61 6c 6c 20 6d 61 70 70 65 64 20 66 65 61 74 75 72 65 2e 0a 63 6c 61 73 lass.of.all.mapped.feature..clas
1a640 73 46 65 61 74 75 72 65 20 3d 20 7b 0a 7d 0a 63 6c 61 73 73 46 65 61 74 75 72 65 2e 5f 5f 69 6e sFeature.=.{.}.classFeature.__in
1a660 64 65 78 20 3d 20 63 6c 61 73 73 46 65 61 74 75 72 65 0a 0a 2d 2d 20 77 72 69 74 65 20 73 75 70 dex.=.classFeature..--.write.sup
1a680 70 6f 72 74 20 63 6f 64 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a port.code.function.classFeature:
1a6a0 73 75 70 63 6f 64 65 20 28 29 0a 65 6e 64 0a 0a 2d 2d 20 6f 75 74 70 75 74 20 74 61 67 0a 66 75 supcode.().end..--.output.tag.fu
1a6c0 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 64 65 63 6c 74 79 70 65 20 28 29 0a nction.classFeature:decltype.().
1a6e0 65 6e 64 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 66 65 61 74 75 72 65 0a 66 75 6e 63 74 69 6f end..--.register.feature.functio
1a700 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 65 6e n.classFeature:register.(pre).en
1a720 64 0a 0a 2d 2d 20 74 72 61 6e 73 6c 61 74 65 20 76 65 72 62 61 74 69 6d 0a 66 75 6e 63 74 69 6f d..--.translate.verbatim.functio
1a740 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 70 72 65 61 6d 62 6c 65 20 28 29 0a 65 6e 64 0a 0a n.classFeature:preamble.().end..
1a760 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 74 20 69 73 20 61 20 76 61 72 69 61 62 6c 65 0a 66 75 6e --.check.if.it.is.a.variable.fun
1a780 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 69 73 76 61 72 69 61 62 6c 65 20 28 29 ction.classFeature:isvariable.()
1a7a0 0a 20 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 ..return.false.end..--.check.if.
1a7c0 69 74 20 72 65 71 75 69 72 65 73 20 63 6f 6c 6c 65 63 74 69 6f 6e 0a 66 75 6e 63 74 69 6f 6e 20 it.requires.collection.function.
1a7e0 63 6c 61 73 73 46 65 61 74 75 72 65 3a 72 65 71 75 69 72 65 63 6f 6c 6c 65 63 74 69 6f 6e 20 28 classFeature:requirecollection.(
1a800 74 29 0a 20 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 65 6e 64 0a 0a 2d 2d 20 62 75 69 6c 64 20 6e t)..return.false.end..--.build.n
1a820 61 6d 65 73 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 62 75 69 6c 64 ames.function.classFeature:build
1a840 6e 61 6d 65 73 20 28 29 0a 20 69 66 20 73 65 6c 66 2e 6e 61 6d 65 20 61 6e 64 20 73 65 6c 66 2e names.()..if.self.name.and.self.
1a860 6e 61 6d 65 7e 3d 27 27 20 74 68 65 6e 0a 20 20 6c 6f 63 61 6c 20 6e 20 3d 20 73 70 6c 69 74 28 name~=''.then...local.n.=.split(
1a880 73 65 6c 66 2e 6e 61 6d 65 2c 27 40 27 29 0a 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 6e 5b 31 self.name,'@')...self.name.=.n[1
1a8a0 5d 0a 20 20 73 65 6c 66 2e 6e 61 6d 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 65 6c 66 ]...self.name.=.string.gsub(self
1a8c0 2e 6e 61 6d 65 2c 20 22 3a 25 64 2a 24 22 2c 20 22 22 29 0a 20 20 69 66 20 6e 6f 74 20 6e 5b 32 .name,.":%d*$",."")...if.not.n[2
1a8e0 5d 20 74 68 65 6e 0a 20 20 20 6e 5b 32 5d 20 3d 20 61 70 70 6c 79 72 65 6e 61 6d 69 6e 67 28 6e ].then....n[2].=.applyrenaming(n
1a900 5b 31 5d 29 0a 20 20 65 6e 64 0a 20 20 73 65 6c 66 2e 6c 6e 61 6d 65 20 3d 20 6e 5b 32 5d 20 6f [1])...end...self.lname.=.n[2].o
1a920 72 20 67 73 75 62 28 6e 5b 31 5d 2c 22 25 5b 2e 2d 25 5d 22 2c 22 22 29 0a 20 20 73 65 6c 66 2e r.gsub(n[1],"%[.-%]","")...self.
1a940 6c 6e 61 6d 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 65 6c 66 2e 6c 6e 61 6d 65 2c 20 lname.=.string.gsub(self.lname,.
1a960 22 3a 25 64 2a 24 22 2c 20 22 22 29 0a 20 20 73 65 6c 66 2e 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d ":%d*$",."")...self.original_nam
1a980 65 20 3d 20 73 65 6c 66 2e 6e 61 6d 65 0a 20 20 73 65 6c 66 2e 6c 6e 61 6d 65 20 3d 20 63 6c 65 e.=.self.name...self.lname.=.cle
1a9a0 61 6e 5f 74 65 6d 70 6c 61 74 65 28 73 65 6c 66 2e 6c 6e 61 6d 65 29 0a 20 65 6e 64 0a 20 69 66 an_template(self.lname)..end..if
1a9c0 20 6e 6f 74 20 73 65 6c 66 2e 69 73 5f 70 61 72 61 6d 65 74 65 72 20 74 68 65 6e 0a 09 20 73 65 .not.self.is_parameter.then...se
1a9e0 6c 66 2e 6e 61 6d 65 20 3d 20 67 65 74 6f 6e 6c 79 6e 61 6d 65 73 70 61 63 65 28 29 20 2e 2e 20 lf.name.=.getonlynamespace()....
1aa00 73 65 6c 66 2e 6e 61 6d 65 0a 20 65 6e 64 0a 0a 20 6c 6f 63 61 6c 20 70 61 72 65 6e 74 20 3d 20 self.name..end...local.parent.=.
1aa20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 0a 20 69 66 20 70 61 72 65 6e 74 20 74 classContainer.curr..if.parent.t
1aa40 68 65 6e 0a 20 09 73 65 6c 66 2e 61 63 63 65 73 73 20 3d 20 70 61 72 65 6e 74 2e 63 75 72 72 5f hen...self.access.=.parent.curr_
1aa60 6d 65 6d 62 65 72 5f 61 63 63 65 73 73 0a 09 73 65 6c 66 2e 67 6c 6f 62 61 6c 5f 61 63 63 65 73 member_access..self.global_acces
1aa80 73 20 3d 20 73 65 6c 66 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 0a 20 s.=.self:check_public_access()..
1aaa0 65 6c 73 65 0a 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 else..end.end..function.classFea
1aac0 74 75 72 65 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 0a 0a 09 69 66 20 ture:check_public_access()...if.
1aae0 74 79 70 65 28 73 65 6c 66 2e 67 6c 6f 62 61 6c 5f 61 63 63 65 73 73 29 20 3d 3d 20 22 62 6f 6f type(self.global_access).==."boo
1ab00 6c 65 61 6e 22 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 73 65 6c 66 2e 67 6c 6f 62 61 6c 5f lean".then...return.self.global_
1ab20 61 63 63 65 73 73 0a 09 65 6e 64 0a 0a 09 69 66 20 73 65 6c 66 2e 61 63 63 65 73 73 20 61 6e 64 access..end...if.self.access.and
1ab40 20 73 65 6c 66 2e 61 63 63 65 73 73 20 7e 3d 20 30 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 .self.access.~=.0.then...return.
1ab60 66 61 6c 73 65 0a 09 65 6e 64 0a 0a 09 6c 6f 63 61 6c 20 70 61 72 65 6e 74 20 3d 20 63 6c 61 73 false..end...local.parent.=.clas
1ab80 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 0a 09 77 68 69 6c 65 20 70 61 72 65 6e 74 20 64 6f sContainer.curr..while.parent.do
1aba0 0a 09 09 69 66 20 70 61 72 65 6e 74 2e 61 63 63 65 73 73 20 61 6e 64 20 70 61 72 65 6e 74 2e 61 ...if.parent.access.and.parent.a
1abc0 63 63 65 73 73 20 7e 3d 20 30 20 74 68 65 6e 0a 09 09 09 72 65 74 75 72 6e 20 66 61 6c 73 65 0a ccess.~=.0.then....return.false.
1abe0 09 09 65 6e 64 0a 09 09 70 61 72 65 6e 74 20 3d 20 70 61 72 65 6e 74 2e 70 72 6f 78 0a 09 65 6e ..end...parent.=.parent.prox..en
1ac00 64 0a 09 72 65 74 75 72 6e 20 74 72 75 65 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 65 d..return.true.end..function.cle
1ac20 61 6e 5f 74 65 6d 70 6c 61 74 65 28 74 29 0a 0a 09 72 65 74 75 72 6e 20 73 74 72 69 6e 67 2e 67 an_template(t)...return.string.g
1ac40 73 75 62 28 74 2c 20 22 5b 3c 3e 3a 2c 20 25 2a 5d 22 2c 20 22 5f 22 29 0a 65 6e 64 0a 0a 2d 2d sub(t,."[<>:,.%*]",."_").end..--
1ac60 20 63 68 65 63 6b 20 69 66 20 66 65 61 74 75 72 65 20 69 73 20 69 6e 73 69 64 65 20 61 20 63 6f .check.if.feature.is.inside.a.co
1ac80 6e 74 61 69 6e 65 72 20 64 65 66 69 6e 69 74 69 6f 6e 0a 2d 2d 20 69 74 20 72 65 74 75 72 6e 73 ntainer.definition.--.it.returns
1aca0 20 74 68 65 20 63 6f 6e 74 61 69 6e 65 72 20 63 6c 61 73 73 20 6e 61 6d 65 20 6f 72 20 6e 69 6c .the.container.class.name.or.nil
1acc0 2e 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 69 6e 63 6f 6e 74 61 69 ..function.classFeature:incontai
1ace0 6e 65 72 20 28 77 68 69 63 68 29 0a 20 69 66 20 73 65 6c 66 2e 70 61 72 65 6e 74 20 74 68 65 6e ner.(which)..if.self.parent.then
1ad00 0a 20 20 6c 6f 63 61 6c 20 70 61 72 65 6e 74 20 3d 20 73 65 6c 66 2e 70 61 72 65 6e 74 0a 20 20 ...local.parent.=.self.parent...
1ad20 77 68 69 6c 65 20 70 61 72 65 6e 74 20 64 6f 0a 20 20 20 69 66 20 70 61 72 65 6e 74 2e 63 6c 61 while.parent.do....if.parent.cla
1ad40 73 73 74 79 70 65 20 3d 3d 20 77 68 69 63 68 20 74 68 65 6e 0a 20 20 20 20 72 65 74 75 72 6e 20 sstype.==.which.then.....return.
1ad60 70 61 72 65 6e 74 2e 6e 61 6d 65 0a 20 20 20 65 6e 64 0a 20 20 20 70 61 72 65 6e 74 20 3d 20 70 parent.name....end....parent.=.p
1ad80 61 72 65 6e 74 2e 70 61 72 65 6e 74 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 arent.parent...end..end..return.
1ada0 6e 69 6c 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 69 nil.end..function.classFeature:i
1adc0 6e 63 6c 61 73 73 20 28 29 0a 20 72 65 74 75 72 6e 20 73 65 6c 66 3a 69 6e 63 6f 6e 74 61 69 6e nclass.()..return.self:incontain
1ade0 65 72 28 27 63 6c 61 73 73 27 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 46 er('class').end..function.classF
1ae00 65 61 74 75 72 65 3a 69 6e 6d 6f 64 75 6c 65 20 28 29 0a 20 72 65 74 75 72 6e 20 73 65 6c 66 3a eature:inmodule.()..return.self:
1ae20 69 6e 63 6f 6e 74 61 69 6e 65 72 28 27 6d 6f 64 75 6c 65 27 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 incontainer('module').end..funct
1ae40 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 69 6e 6e 61 6d 65 73 70 61 63 65 20 28 29 0a ion.classFeature:innamespace.().
1ae60 20 72 65 74 75 72 6e 20 73 65 6c 66 3a 69 6e 63 6f 6e 74 61 69 6e 65 72 28 27 6e 61 6d 65 73 70 .return.self:incontainer('namesp
1ae80 61 63 65 27 29 0a 65 6e 64 0a 0a 2d 2d 20 72 65 74 75 72 6e 20 43 20 62 69 6e 64 69 6e 67 20 66 ace').end..--.return.C.binding.f
1aea0 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 62 61 73 65 64 20 6f 6e 20 6e 61 6d 65 0a 2d 2d 20 74 68 unction.name.based.on.name.--.th
1aec0 65 20 63 6c 69 65 6e 74 20 73 70 65 63 69 66 69 65 73 20 61 20 70 72 65 66 69 78 0a 66 75 6e 63 e.client.specifies.a.prefix.func
1aee0 74 69 6f 6e 20 63 6c 61 73 73 46 65 61 74 75 72 65 3a 63 66 75 6e 63 6e 61 6d 65 20 28 6e 29 0a tion.classFeature:cfuncname.(n).
1af00 0a 20 69 66 20 73 65 6c 66 2e 70 61 72 65 6e 74 20 74 68 65 6e 0a 20 20 6e 20 3d 20 73 65 6c 66 ..if.self.parent.then...n.=.self
1af20 2e 70 61 72 65 6e 74 3a 63 66 75 6e 63 6e 61 6d 65 28 6e 29 0a 20 65 6e 64 0a 0a 20 6c 6f 63 61 .parent:cfuncname(n)..end...loca
1af40 6c 20 66 6e 61 6d 65 20 3d 20 73 65 6c 66 2e 6c 6e 61 6d 65 0a 20 69 66 20 6e 6f 74 20 66 6e 61 l.fname.=.self.lname..if.not.fna
1af60 6d 65 20 6f 72 20 66 6e 61 6d 65 20 3d 3d 20 27 27 20 74 68 65 6e 0a 20 09 66 6e 61 6d 65 20 3d me.or.fname.==.''.then...fname.=
1af80 20 73 65 6c 66 2e 6e 61 6d 65 0a 20 65 6e 64 0a 20 20 6e 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 .self.name..end...n.=.string.gsu
1afa0 62 28 6e 2e 2e 27 5f 27 2e 2e 20 28 66 6e 61 6d 65 29 2c 20 22 5b 3c 3e 3a 2c 20 5c 2e 25 2a 26 b(n..'_'...(fname),."[<>:,.\.%*&
1afc0 5d 22 2c 20 22 5f 22 29 0a 0a 20 20 72 65 74 75 72 6e 20 6e 0a 65 6e 64 20 00 00 00 00 00 00 00 ]",."_")....return.n.end........
1afe0 2d 2d 20 74 6f 6c 75 61 3a 20 76 65 72 62 61 74 69 6d 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 --.tolua:.verbatim.class.--.Writ
1b000 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 ten.by.Waldemar.Celes.--.TeCGraf
1b020 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 76 65 72 /PUC-Rio.--.Jul.1998.--.$Id:.ver
1b040 62 61 74 69 6d 2e 6c 75 61 2c 76 20 31 2e 33 20 32 30 30 30 2f 30 31 2f 32 34 20 32 30 3a 34 31 batim.lua,v.1.3.2000/01/24.20:41
1b060 3a 31 36 20 63 65 6c 65 73 20 45 78 70 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 :16.celes.Exp.$..--.This.code.is
1b080 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 .free.software;.you.can.redistri
1b0a0 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 bute.it.and/or.modify.it..--.The
1b0c0 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 .software.provided.hereunder.is.
1b0e0 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 on.an."as.is".basis,.and.--.the.
1b100 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 author.has.no.obligation.to.prov
1b120 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 ide.maintenance,.support,.update
1b140 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 s,.--.enhancements,.or.modificat
1b160 69 6f 6e 73 2e 0a 0a 0a 0a 2d 2d 20 56 65 72 62 61 74 69 6d 20 63 6c 61 73 73 0a 2d 2d 20 52 65 ions.....--.Verbatim.class.--.Re
1b180 70 72 65 73 65 6e 74 73 20 61 20 6c 69 6e 65 20 74 72 61 6e 73 6c 61 74 65 64 20 64 69 72 65 63 presents.a.line.translated.direc
1b1a0 74 65 64 20 74 6f 20 74 68 65 20 62 69 6e 64 69 6e 67 20 66 69 6c 65 2e 0a 2d 2d 20 54 68 65 20 ted.to.the.binding.file..--.The.
1b1c0 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 6c 64 73 20 61 72 65 20 73 74 6f 72 65 64 3a 0a 2d 2d 20 20 following.filds.are.stored:.--..
1b1e0 20 6c 69 6e 65 20 3d 20 6c 69 6e 65 20 74 65 78 74 0a 63 6c 61 73 73 56 65 72 62 61 74 69 6d 20 .line.=.line.text.classVerbatim.
1b200 3d 20 7b 0a 20 6c 69 6e 65 20 3d 20 27 27 2c 0a 09 63 6f 6e 64 20 3d 20 6e 69 6c 2c 20 20 20 20 =.{..line.=.'',..cond.=.nil,....
1b220 2d 2d 20 63 6f 6e 64 69 74 69 6f 6e 3a 20 77 68 65 72 65 20 74 6f 20 67 65 6e 65 72 61 74 65 20 --.condition:.where.to.generate.
1b240 74 68 65 20 63 6f 64 65 20 28 73 3d 73 75 70 6f 72 74 2c 20 72 3d 72 65 67 69 73 74 65 72 29 0a the.code.(s=suport,.r=register).
1b260 7d 0a 63 6c 61 73 73 56 65 72 62 61 74 69 6d 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 56 }.classVerbatim.__index.=.classV
1b280 65 72 62 61 74 69 6d 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 56 65 72 62 61 74 erbatim.setmetatable(classVerbat
1b2a0 69 6d 2c 63 6c 61 73 73 46 65 61 74 75 72 65 29 0a 0a 2d 2d 20 70 72 65 61 6d 62 6c 65 20 76 65 im,classFeature)..--.preamble.ve
1b2c0 72 62 61 74 69 6d 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 56 65 72 62 61 74 69 6d 3a 70 72 rbatim.function.classVerbatim:pr
1b2e0 65 61 6d 62 6c 65 20 28 29 0a 20 69 66 20 73 65 6c 66 2e 63 6f 6e 64 20 3d 3d 20 27 27 20 74 68 eamble.()..if.self.cond.==.''.th
1b300 65 6e 0a 20 20 77 72 69 74 65 28 73 65 6c 66 2e 6c 69 6e 65 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a en...write(self.line)..end.end..
1b320 2d 2d 20 73 75 70 70 6f 72 74 20 63 6f 64 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 56 65 --.support.code.function.classVe
1b340 72 62 61 74 69 6d 3a 73 75 70 63 6f 64 65 20 28 29 0a 20 69 66 20 73 74 72 66 69 6e 64 28 73 65 rbatim:supcode.()..if.strfind(se
1b360 6c 66 2e 63 6f 6e 64 2c 27 73 27 29 20 74 68 65 6e 0a 20 20 77 72 69 74 65 28 73 65 6c 66 2e 6c lf.cond,'s').then...write(self.l
1b380 69 6e 65 29 0a 20 20 77 72 69 74 65 28 27 5c 6e 27 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 ine)...write('\n')..end.end..--.
1b3a0 72 65 67 69 73 74 65 72 20 63 6f 64 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 56 65 72 62 register.code.function.classVerb
1b3c0 61 74 69 6d 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 20 69 66 20 73 74 72 66 69 6e 64 28 atim:register.(pre)..if.strfind(
1b3e0 73 65 6c 66 2e 63 6f 6e 64 2c 27 72 27 29 20 74 68 65 6e 0a 20 20 77 72 69 74 65 28 73 65 6c 66 self.cond,'r').then...write(self
1b400 2e 6c 69 6e 65 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f .line)..end.end...--.Print.metho
1b420 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 56 65 72 62 61 74 69 6d 3a 70 72 69 6e 74 20 28 d.function.classVerbatim:print.(
1b440 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 56 65 72 62 ident,close)..print(ident.."Verb
1b460 61 74 69 6d 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6c 69 6e 65 20 3d 20 27 atim{")..print(ident..".line.=.'
1b480 22 2e 2e 73 65 6c 66 2e 6c 69 6e 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 "..self.line.."',")..print(ident
1b4a0 2e 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 .."}"..close).end...--.Internal.
1b4c0 63 6f 6e 73 74 72 75 63 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 56 65 72 62 61 74 69 6d 20 28 constructor.function._Verbatim.(
1b4e0 74 29 0a 20 73 65 74 6d 65 74 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 56 65 72 62 61 74 69 6d t)..setmetatable(t,classVerbatim
1b500 29 0a 20 61 70 70 65 6e 64 28 74 29 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 )..append(t)..return.t.end..--.C
1b520 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 20 61 20 73 74 72 69 6e 67 20 72 onstructor.--.Expects.a.string.r
1b540 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 74 65 78 74 20 6c 69 6e 65 0a 66 75 6e 63 74 69 epresenting.the.text.line.functi
1b560 6f 6e 20 56 65 72 62 61 74 69 6d 20 28 6c 2c 63 6f 6e 64 29 0a 20 69 66 20 73 74 72 73 75 62 28 on.Verbatim.(l,cond)..if.strsub(
1b580 6c 2c 31 2c 31 29 20 3d 3d 20 22 27 22 20 74 68 65 6e 0a 20 20 6c 20 3d 20 73 74 72 73 75 62 28 l,1,1).==."'".then...l.=.strsub(
1b5a0 6c 2c 32 29 0a 20 65 6c 73 65 69 66 20 73 74 72 73 75 62 28 6c 2c 31 2c 31 29 20 3d 3d 20 27 24 l,2)..elseif.strsub(l,1,1).==.'$
1b5c0 27 20 74 68 65 6e 0a 20 20 63 6f 6e 64 20 3d 20 27 73 72 27 20 20 20 20 20 20 20 2d 2d 20 67 65 '.then...cond.=.'sr'.......--.ge
1b5e0 6e 65 72 61 74 65 73 20 69 6e 20 62 6f 74 68 20 73 75 70 6f 72 74 20 61 6e 64 20 72 65 67 69 73 nerates.in.both.suport.and.regis
1b600 74 65 72 20 66 72 61 67 6d 65 6e 74 73 0a 20 20 6c 20 3d 20 73 74 72 73 75 62 28 6c 2c 32 29 0a ter.fragments...l.=.strsub(l,2).
1b620 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 5f 56 65 72 62 61 74 69 6d 20 7b 0a 20 20 6c 69 6e 65 20 .end..return._Verbatim.{...line.
1b640 3d 20 6c 2c 0a 20 20 63 6f 6e 64 20 3d 20 63 6f 6e 64 20 6f 72 20 27 27 2c 0a 20 7d 0a 65 6e 64 =.l,...cond.=.cond.or.'',..}.end
1b660 20 00 00 00 00 00 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 63 6f 64 65 20 63 6c 61 73 73 0a 2d 2d 20 ........--.tolua:.code.class.--.
1b680 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 Written.by.Waldemar.Celes.--.TeC
1b6a0 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 39 0a 2d 2d 20 24 49 64 3a Graf/PUC-Rio.--.Jul.1999.--.$Id:
1b6c0 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 .$..--.This.code.is.free.softwar
1b6e0 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f e;.you.can.redistribute.it.and/o
1b700 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f r.modify.it..--.The.software.pro
1b720 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 vided.hereunder.is.on.an."as.is"
1b740 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f .basis,.and.--.the.author.has.no
1b760 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e .obligation.to.provide.maintenan
1b780 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 ce,.support,.updates,.--.enhance
1b7a0 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 2d 2d 20 67 6c 6f ments,.or.modifications...--.glo
1b7c0 62 61 6c 0a 63 6f 64 65 5f 6e 20 3d 20 31 0a 0a 2d 2d 20 43 6f 64 65 20 63 6c 61 73 73 0a 2d 2d bal.code_n.=.1..--.Code.class.--
1b7e0 20 52 65 70 72 65 73 65 6e 74 73 20 4c 75 61 20 63 6f 64 65 20 74 6f 20 62 65 20 63 6f 6d 70 69 .Represents.Lua.code.to.be.compi
1b800 6c 65 64 20 61 6e 64 20 69 6e 63 6c 75 64 65 64 0a 2d 2d 20 69 6e 20 74 68 65 20 69 6e 69 74 69 led.and.included.--.in.the.initi
1b820 61 6c 69 7a 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 2e 0a 2d 2d 20 54 68 65 20 66 6f 6c 6c 6f alization.function..--.The.follo
1b840 77 69 6e 67 20 66 69 65 6c 64 73 20 61 72 65 20 73 74 6f 72 65 64 3a 0a 2d 2d 20 20 20 74 65 78 wing.fields.are.stored:.--...tex
1b860 74 20 3d 20 74 65 78 74 20 63 6f 64 65 0a 63 6c 61 73 73 43 6f 64 65 20 3d 20 7b 0a 20 74 65 78 t.=.text.code.classCode.=.{..tex
1b880 74 20 3d 20 27 27 2c 0a 7d 0a 63 6c 61 73 73 43 6f 64 65 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c t.=.'',.}.classCode.__index.=.cl
1b8a0 61 73 73 43 6f 64 65 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 43 6f 64 65 2c 63 assCode.setmetatable(classCode,c
1b8c0 6c 61 73 73 46 65 61 74 75 72 65 29 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 63 6f 64 65 0a 66 lassFeature)..--.register.code.f
1b8e0 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 64 65 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 unction.classCode:register.(pre)
1b900 0a 20 70 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 2d 2d 20 63 6c 65 61 6e 20 4c 75 61 20 ..pre.=.pre.or.''..--.clean.Lua.
1b920 63 6f 64 65 0a 20 6c 6f 63 61 6c 20 73 20 3d 20 63 6c 65 61 6e 28 73 65 6c 66 2e 74 65 78 74 29 code..local.s.=.clean(self.text)
1b940 0a 20 69 66 20 6e 6f 74 20 73 20 74 68 65 6e 0a 20 20 2d 2d 70 72 69 6e 74 28 73 65 6c 66 2e 74 ..if.not.s.then...--print(self.t
1b960 65 78 74 29 0a 20 20 65 72 72 6f 72 28 22 70 61 72 73 65 72 20 65 72 72 6f 72 20 69 6e 20 65 6d ext)...error("parser.error.in.em
1b980 62 65 64 64 65 64 20 63 6f 64 65 22 29 0a 20 65 6e 64 0a 0a 20 2d 2d 20 67 65 74 20 66 69 72 73 bedded.code")..end...--.get.firs
1b9a0 74 20 6c 69 6e 65 0a 20 6c 6f 63 61 6c 20 5f 2c 20 5f 2c 20 66 69 72 73 74 5f 6c 69 6e 65 3d 73 t.line..local._,._,.first_line=s
1b9c0 74 72 69 6e 67 2e 66 69 6e 64 28 73 65 6c 66 2e 74 65 78 74 2c 20 22 5e 28 5b 5e 5c 6e 5c 72 5d tring.find(self.text,."^([^\n\r]
1b9e0 2a 29 22 29 0a 20 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 66 69 72 73 74 5f 6c 69 6e 65 2c *)")..if.string.find(first_line,
1ba00 20 22 5e 25 73 2a 25 2d 25 2d 22 29 20 74 68 65 6e 0a 09 20 69 66 20 73 74 72 69 6e 67 2e 66 69 ."^%s*%-%-").then...if.string.fi
1ba20 6e 64 28 66 69 72 73 74 5f 6c 69 6e 65 2c 20 22 5e 25 2d 25 2d 23 23 22 29 20 74 68 65 6e 0a 09 nd(first_line,."^%-%-##").then..
1ba40 09 66 69 72 73 74 5f 6c 69 6e 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 66 69 72 73 74 5f .first_line.=.string.gsub(first_
1ba60 6c 69 6e 65 2c 20 22 5e 25 2d 25 2d 23 23 22 2c 20 22 22 29 0a 09 09 69 66 20 66 6c 61 67 73 5b line,."^%-%-##",."")...if.flags[
1ba80 27 43 27 5d 20 74 68 65 6e 0a 09 09 09 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 2c 20 'C'].then....s.=.string.gsub(s,.
1baa0 22 5e 25 2d 25 2d 23 23 5b 5e 5c 6e 5c 72 5d 2a 5c 6e 22 2c 20 22 22 29 0a 09 09 65 6e 64 0a 09 "^%-%-##[^\n\r]*\n",."")...end..
1bac0 20 65 6e 64 0a 20 65 6c 73 65 0a 20 09 66 69 72 73 74 5f 6c 69 6e 65 20 3d 20 22 22 0a 20 65 6e .end..else...first_line.=.""..en
1bae0 64 0a 0a 20 2d 2d 20 70 61 64 20 74 6f 20 31 36 20 62 79 74 65 73 0a 20 6c 6f 63 61 6c 20 6e 70 d...--.pad.to.16.bytes..local.np
1bb00 61 64 20 3d 20 31 36 20 2d 20 28 23 73 20 25 20 31 36 29 0a 20 6c 6f 63 61 6c 20 73 70 61 64 20 ad.=.16.-.(#s.%.16)..local.spad.
1bb20 3d 20 22 22 0a 20 66 6f 72 20 69 3d 31 2c 6e 70 61 64 20 64 6f 0a 20 09 73 70 61 64 20 3d 20 73 =.""..for.i=1,npad.do...spad.=.s
1bb40 70 61 64 20 2e 2e 20 22 2d 22 0a 20 65 6e 64 0a 20 73 20 3d 20 73 2e 2e 73 70 61 64 0a 20 0a 20 pad...."-"..end..s.=.s..spad....
1bb60 2d 2d 20 63 6f 6e 76 65 72 74 20 74 6f 20 43 0a 20 6f 75 74 70 75 74 28 27 5c 6e 27 2e 2e 70 72 --.convert.to.C..output('\n'..pr
1bb80 65 2e 2e 27 7b 20 2f 2a 20 62 65 67 69 6e 20 65 6d 62 65 64 64 65 64 20 6c 75 61 20 63 6f 64 65 e..'{./*.begin.embedded.lua.code
1bba0 20 2a 2f 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 20 69 6e 74 20 74 6f 70 20 3d .*/\n')..output(pre..'.int.top.=
1bbc0 20 6c 75 61 5f 67 65 74 74 6f 70 28 74 6f 6c 75 61 5f 53 29 3b 27 29 0a 20 6f 75 74 70 75 74 28 .lua_gettop(tolua_S);')..output(
1bbe0 70 72 65 2e 2e 27 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 63 68 61 pre..'.static.const.unsigned.cha
1bc00 72 20 42 5b 5d 20 3d 20 7b 5c 6e 20 20 20 27 29 0a 20 6c 6f 63 61 6c 20 74 3d 7b 6e 3d 30 7d 0a r.B[].=.{\n...')..local.t={n=0}.
1bc20 0a 20 6c 6f 63 61 6c 20 62 20 3d 20 67 73 75 62 28 73 2c 27 28 2e 29 27 2c 66 75 6e 63 74 69 6f ..local.b.=.gsub(s,'(.)',functio
1bc40 6e 20 28 63 29 0a 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 6c n.(c)..........................l
1bc60 6f 63 61 6c 20 65 20 3d 20 27 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ocal.e.=.''.....................
1bc80 20 20 20 20 20 74 2e 6e 3d 74 2e 6e 2b 31 20 69 66 20 74 2e 6e 3d 3d 31 35 20 74 68 65 6e 20 74 .....t.n=t.n+1.if.t.n==15.then.t
1bca0 2e 6e 3d 30 20 65 3d 27 5c 6e 27 2e 2e 70 72 65 2e 2e 27 20 20 27 20 65 6e 64 0a 20 20 20 20 20 .n=0.e='\n'..pre..'..'.end......
1bcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 6f 72 6d 61 ....................return.forma
1bce0 74 28 27 25 33 75 2c 25 73 27 2c 73 74 72 62 79 74 65 28 63 29 2c 65 29 0a 20 20 20 20 20 20 20 t('%3u,%s',strbyte(c),e)........
1bd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 .................end............
1bd20 20 20 20 20 29 0a 20 6f 75 74 70 75 74 28 62 2e 2e 73 74 72 62 79 74 65 28 22 20 22 29 29 0a 20 ....)..output(b..strbyte("."))..
1bd40 6f 75 74 70 75 74 28 27 5c 6e 27 2e 2e 70 72 65 2e 2e 27 20 7d 3b 5c 6e 27 29 0a 20 69 66 20 66 output('\n'..pre..'.};\n')..if.f
1bd60 69 72 73 74 5f 6c 69 6e 65 20 61 6e 64 20 66 69 72 73 74 5f 6c 69 6e 65 20 7e 3d 20 22 22 20 74 irst_line.and.first_line.~=."".t
1bd80 68 65 6e 0a 20 09 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 20 74 6f 6c 75 61 5f 64 6f 62 75 66 66 hen...output(pre..'.tolua_dobuff
1bda0 65 72 28 74 6f 6c 75 61 5f 53 2c 28 63 68 61 72 2a 29 42 2c 73 69 7a 65 6f 66 28 42 29 2c 22 74 er(tolua_S,(char*)B,sizeof(B),"t
1bdc0 6f 6c 75 61 20 65 6d 62 65 64 64 65 64 3a 20 27 2e 2e 66 69 72 73 74 5f 6c 69 6e 65 2e 2e 27 22 olua.embedded:.'..first_line..'"
1bde0 29 3b 27 29 0a 20 65 6c 73 65 0a 20 09 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 20 74 6f 6c 75 61 );')..else...output(pre..'.tolua
1be00 5f 64 6f 62 75 66 66 65 72 28 74 6f 6c 75 61 5f 53 2c 28 63 68 61 72 2a 29 42 2c 73 69 7a 65 6f _dobuffer(tolua_S,(char*)B,sizeo
1be20 66 28 42 29 2c 22 74 6f 6c 75 61 3a 20 65 6d 62 65 64 64 65 64 20 4c 75 61 20 63 6f 64 65 20 27 f(B),"tolua:.embedded.Lua.code.'
1be40 2e 2e 63 6f 64 65 5f 6e 2e 2e 27 22 29 3b 27 29 0a 20 65 6e 64 0a 20 6f 75 74 70 75 74 28 70 72 ..code_n..'");')..end..output(pr
1be60 65 2e 2e 27 20 6c 75 61 5f 73 65 74 74 6f 70 28 74 6f 6c 75 61 5f 53 2c 20 74 6f 70 29 3b 27 29 e..'.lua_settop(tolua_S,.top);')
1be80 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 7d 20 2f 2a 20 65 6e 64 20 6f 66 20 65 6d 62 65 64 ..output(pre..'}./*.end.of.embed
1bea0 64 65 64 20 6c 75 61 20 63 6f 64 65 20 2a 2f 5c 6e 5c 6e 27 29 0a 20 63 6f 64 65 5f 6e 20 3d 20 ded.lua.code.*/\n\n')..code_n.=.
1bec0 63 6f 64 65 5f 6e 20 2b 31 0a 65 6e 64 0a 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a code_n.+1.end...--.Print.method.
1bee0 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 64 65 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c function.classCode:print.(ident,
1bf00 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 43 6f 64 65 7b 22 29 0a 20 70 close)..print(ident.."Code{")..p
1bf20 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 74 65 78 74 20 3d 20 5b 5b 22 2e 2e 73 65 6c 66 2e 74 rint(ident..".text.=.[["..self.t
1bf40 65 78 74 2e 2e 22 5d 5d 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e 2e 63 ext.."]],")..print(ident.."}"..c
1bf60 6c 6f 73 65 29 0a 65 6e 64 0a 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 lose).end...--.Internal.construc
1bf80 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 43 6f 64 65 20 28 74 29 0a 20 73 65 74 6d 65 74 61 74 tor.function._Code.(t)..setmetat
1bfa0 61 62 6c 65 28 74 2c 63 6c 61 73 73 43 6f 64 65 29 0a 20 61 70 70 65 6e 64 28 74 29 0a 20 72 65 able(t,classCode)..append(t)..re
1bfc0 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 turn.t.end..--.Constructor.--.Ex
1bfe0 70 65 63 74 73 20 61 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 pects.a.string.representing.the.
1c000 63 6f 64 65 20 74 65 78 74 0a 66 75 6e 63 74 69 6f 6e 20 43 6f 64 65 20 28 6c 29 0a 20 72 65 74 code.text.function.Code.(l)..ret
1c020 75 72 6e 20 5f 43 6f 64 65 20 7b 0a 20 20 74 65 78 74 20 3d 20 6c 0a 20 7d 0a 65 6e 64 20 00 00 urn._Code.{...text.=.l..}.end...
1c040 2d 2d 20 74 6f 6c 75 61 3a 20 74 79 70 65 64 65 66 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 --.tolua:.typedef.class.--.Writt
1c060 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f en.by.Waldemar.Celes.--.TeCGraf/
1c080 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d PUC-Rio.--.Jul.1998.--.$Id:.$..-
1c0a0 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f -.This.code.is.free.software;.yo
1c0c0 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 u.can.redistribute.it.and/or.mod
1c0e0 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 ify.it..--.The.software.provided
1c100 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 .hereunder.is.on.an."as.is".basi
1c120 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 s,.and.--.the.author.has.no.obli
1c140 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 gation.to.provide.maintenance,.s
1c160 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 upport,.updates,.--.enhancements
1c180 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 0a 2d 2d 20 54 79 70 65 64 65 ,.or.modifications.....--.Typede
1c1a0 66 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 20 74 79 70 65 20 73 79 6e f.class.--.Represents.a.type.syn
1c1c0 6f 6e 79 6d 2e 0a 2d 2d 20 54 68 65 20 27 64 65 20 66 61 63 74 6f 27 20 74 79 70 65 20 72 65 70 onym..--.The.'de.facto'.type.rep
1c1e0 6c 61 63 65 73 20 74 68 65 20 74 79 70 65 64 65 66 20 62 65 66 6f 72 65 20 74 68 65 0a 2d 2d 20 laces.the.typedef.before.the.--.
1c200 72 65 6d 61 69 6e 69 6e 67 20 63 6f 64 65 20 69 73 20 70 61 72 73 65 64 2e 0a 2d 2d 20 54 68 65 remaining.code.is.parsed..--.The
1c220 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 20 61 72 65 20 73 74 6f 72 65 64 3a 0a 2d 2d .following.fields.are.stored:.--
1c240 20 20 20 75 74 79 70 65 20 3d 20 74 79 70 65 64 65 66 20 6e 61 6d 65 0a 2d 2d 20 20 20 74 79 70 ...utype.=.typedef.name.--...typ
1c260 65 20 3d 20 27 74 68 65 20 66 61 63 74 6f 27 20 74 79 70 65 0a 2d 2d 20 20 20 6d 6f 64 20 3d 20 e.=.'the.facto'.type.--...mod.=.
1c280 6d 6f 64 69 66 69 65 72 73 20 74 6f 20 74 68 65 20 27 64 65 20 66 61 63 74 6f 27 20 74 79 70 65 modifiers.to.the.'de.facto'.type
1c2a0 0a 63 6c 61 73 73 54 79 70 65 64 65 66 20 3d 20 7b 0a 20 75 74 79 70 65 20 3d 20 27 27 2c 0a 20 .classTypedef.=.{..utype.=.'',..
1c2c0 6d 6f 64 20 3d 20 27 27 2c 0a 20 74 79 70 65 20 3d 20 27 27 0a 7d 0a 63 6c 61 73 73 54 79 70 65 mod.=.'',..type.=.''.}.classType
1c2e0 64 65 66 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 54 79 70 65 64 65 66 0a 0a 2d 2d 20 50 def.__index.=.classTypedef..--.P
1c300 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 54 79 70 65 64 65 rint.method.function.classTypede
1c320 66 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 f:print.(ident,close)..print(ide
1c340 6e 74 2e 2e 22 54 79 70 65 64 65 66 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 nt.."Typedef{")..print(ident..".
1c360 75 74 79 70 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 75 74 79 70 65 2e 2e 22 27 2c 22 29 0a 20 70 utype.=.'"..self.utype.."',")..p
1c380 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6d 6f 64 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6d 6f 64 rint(ident..".mod.=.'"..self.mod
1c3a0 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 74 79 70 65 20 3d 20 27 .."',")..print(ident..".type.=.'
1c3c0 22 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 "..self.type.."',")..print(ident
1c3e0 2e 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d 2d 20 52 65 74 75 72 6e 20 69 74 27 .."}"..close).end..--.Return.it'
1c400 73 20 6e 6f 74 20 61 20 76 61 72 69 61 62 6c 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 54 s.not.a.variable.function.classT
1c420 79 70 65 64 65 66 3a 69 73 76 61 72 69 61 62 6c 65 20 28 29 0a 20 72 65 74 75 72 6e 20 66 61 6c ypedef:isvariable.()..return.fal
1c440 73 65 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 74 6f 72 0a se.end..--.Internal.constructor.
1c460 66 75 6e 63 74 69 6f 6e 20 5f 54 79 70 65 64 65 66 20 28 74 29 0a 20 73 65 74 6d 65 74 61 74 61 function._Typedef.(t)..setmetata
1c480 62 6c 65 28 74 2c 63 6c 61 73 73 54 79 70 65 64 65 66 29 0a 20 74 2e 74 79 70 65 20 3d 20 72 65 ble(t,classTypedef)..t.type.=.re
1c4a0 73 6f 6c 76 65 5f 74 65 6d 70 6c 61 74 65 5f 74 79 70 65 73 28 74 2e 74 79 70 65 29 0a 20 61 70 solve_template_types(t.type)..ap
1c4c0 70 65 6e 64 74 79 70 65 64 65 66 28 74 29 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d pendtypedef(t)..return.t.end..--
1c4e0 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 20 6f 6e 65 20 73 74 72 69 .Constructor.--.Expects.one.stri
1c500 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 74 79 70 65 20 64 65 66 69 6e 69 74 ng.representing.the.type.definit
1c520 69 6f 6e 2e 0a 66 75 6e 63 74 69 6f 6e 20 54 79 70 65 64 65 66 20 28 73 29 0a 20 69 66 20 73 74 ion..function.Typedef.(s)..if.st
1c540 72 66 69 6e 64 28 73 74 72 69 6e 67 2e 67 73 75 62 28 73 2c 20 27 25 62 3c 3e 27 2c 20 27 27 29 rfind(string.gsub(s,.'%b<>',.'')
1c560 2c 27 5b 25 2a 26 5d 27 29 20 74 68 65 6e 0a 20 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 22 23 69 ,'[%*&]').then...tolua_error("#i
1c580 6e 76 61 6c 69 64 20 74 79 70 65 64 65 66 3a 20 70 6f 69 6e 74 65 72 73 20 28 61 6e 64 20 72 65 nvalid.typedef:.pointers.(and.re
1c5a0 66 65 72 65 6e 63 65 73 29 20 61 72 65 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 22 29 0a 20 65 ferences).are.not.supported")..e
1c5c0 6e 64 0a 20 6c 6f 63 61 6c 20 6f 20 3d 20 7b 6d 6f 64 20 3d 20 27 27 7d 0a 20 69 66 20 73 74 72 nd..local.o.=.{mod.=.''}..if.str
1c5e0 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 5b 3c 3e 5d 22 29 20 74 68 65 6e 0a 20 09 5f 2c 5f 2c 6f ing.find(s,."[<>]").then..._,_,o
1c600 2e 74 79 70 65 2c 6f 2e 75 74 79 70 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 .type,o.utype.=.string.find(s,."
1c620 5e 25 73 2a 28 5b 5e 3c 3e 5d 2b 25 62 3c 3e 5b 5e 25 73 5d 2a 29 25 73 2b 28 2e 2d 29 24 22 29 ^%s*([^<>]+%b<>[^%s]*)%s+(.-)$")
1c640 0a 20 65 6c 73 65 0a 20 09 6c 6f 63 61 6c 20 74 20 3d 20 73 70 6c 69 74 28 67 73 75 62 28 73 2c ..else...local.t.=.split(gsub(s,
1c660 22 25 73 25 73 2a 22 2c 22 20 22 29 2c 22 20 22 29 0a 20 09 6f 20 3d 20 7b 0a 09 20 20 75 74 79 "%s%s*","."),".")...o.=.{....uty
1c680 70 65 20 3d 20 74 5b 74 2e 6e 5d 2c 0a 09 20 20 74 79 70 65 20 3d 20 74 5b 74 2e 6e 2d 31 5d 2c pe.=.t[t.n],....type.=.t[t.n-1],
1c6a0 0a 09 20 20 6d 6f 64 20 3d 20 63 6f 6e 63 61 74 28 74 2c 31 2c 74 2e 6e 2d 32 29 2c 0a 09 20 7d ....mod.=.concat(t,1,t.n-2),...}
1c6c0 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 5f 54 79 70 65 64 65 66 28 6f 29 0a 65 6e 64 20 00 00 ..end..return._Typedef(o).end...
1c6e0 2d 2d 20 74 6f 6c 75 61 3a 20 63 6f 6e 74 61 69 6e 65 72 20 61 62 73 74 72 61 63 74 20 63 6c 61 --.tolua:.container.abstract.cla
1c700 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a ss.--.Written.by.Waldemar.Celes.
1c720 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d --.TeCGraf/PUC-Rio.--.Jul.1998.-
1c740 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 -.$Id:.$..--.This.code.is.free.s
1c760 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 oftware;.you.can.redistribute.it
1c780 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 .and/or.modify.it..--.The.softwa
1c7a0 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 re.provided.hereunder.is.on.an."
1c7c0 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 as.is".basis,.and.--.the.author.
1c7e0 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 has.no.obligation.to.provide.mai
1c800 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 ntenance,.support,.updates,.--.e
1c820 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a nhancements,.or.modifications...
1c840 2d 2d 20 74 61 62 6c 65 20 74 6f 20 73 74 6f 72 65 20 6e 61 6d 65 73 70 61 63 65 64 20 74 79 70 --.table.to.store.namespaced.typ
1c860 65 64 65 66 73 2f 65 6e 75 6d 73 20 69 6e 20 67 6c 6f 62 61 6c 20 73 63 6f 70 65 0a 67 6c 6f 62 edefs/enums.in.global.scope.glob
1c880 61 6c 5f 74 79 70 65 64 65 66 73 20 3d 20 7b 7d 0a 67 6c 6f 62 61 6c 5f 65 6e 75 6d 73 20 3d 20 al_typedefs.=.{}.global_enums.=.
1c8a0 7b 7d 0a 0a 2d 2d 20 43 6f 6e 74 61 69 6e 65 72 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 {}..--.Container.class.--.Repres
1c8c0 65 6e 74 73 20 61 20 63 6f 6e 74 61 69 6e 65 72 20 6f 66 20 66 65 61 74 75 72 65 73 20 74 6f 20 ents.a.container.of.features.to.
1c8e0 62 65 20 62 6f 75 6e 64 0a 2d 2d 20 74 6f 20 6c 75 61 2e 0a 63 6c 61 73 73 43 6f 6e 74 61 69 6e be.bound.--.to.lua..classContain
1c900 65 72 20 3d 0a 7b 0a 20 63 75 72 72 20 3d 20 6e 69 6c 2c 0a 7d 0a 63 6c 61 73 73 43 6f 6e 74 61 er.=.{..curr.=.nil,.}.classConta
1c920 69 6e 65 72 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 0a 73 65 iner.__index.=.classContainer.se
1c940 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2c 63 6c 61 73 73 46 tmetatable(classContainer,classF
1c960 65 61 74 75 72 65 29 0a 0a 2d 2d 20 6f 75 74 70 75 74 20 74 61 67 73 0a 66 75 6e 63 74 69 6f 6e eature)..--.output.tags.function
1c980 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 64 65 63 6c 74 79 70 65 20 28 29 0a 20 70 75 73 .classContainer:decltype.()..pus
1c9a0 68 28 73 65 6c 66 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 h(self)..local.i=1..while.self[i
1c9c0 5d 20 64 6f 0a 20 20 73 65 6c 66 5b 69 5d 3a 64 65 63 6c 74 79 70 65 28 29 0a 20 20 69 20 3d 20 ].do...self[i]:decltype()...i.=.
1c9e0 69 2b 31 0a 20 65 6e 64 0a 20 70 6f 70 28 29 0a 65 6e 64 0a 0a 0a 2d 2d 20 77 72 69 74 65 20 73 i+1..end..pop().end...--.write.s
1ca00 75 70 70 6f 72 74 20 63 6f 64 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 upport.code.function.classContai
1ca20 6e 65 72 3a 73 75 70 63 6f 64 65 20 28 29 0a 0a 09 69 66 20 6e 6f 74 20 73 65 6c 66 3a 63 68 65 ner:supcode.()...if.not.self:che
1ca40 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e ck_public_access().then...return
1ca60 0a 09 65 6e 64 0a 0a 20 70 75 73 68 28 73 65 6c 66 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 ..end...push(self)..local.i=1..w
1ca80 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 20 69 66 20 73 65 6c 66 5b 69 5d 3a 63 68 65 hile.self[i].do...if.self[i]:che
1caa0 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 20 20 09 73 65 6c 66 5b ck_public_access().then....self[
1cac0 69 5d 3a 73 75 70 63 6f 64 65 28 29 0a 20 20 65 6e 64 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e i]:supcode()...end...i.=.i+1..en
1cae0 64 0a 20 70 6f 70 28 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 d..pop().end..function.classCont
1cb00 61 69 6e 65 72 3a 68 61 73 76 61 72 20 28 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c ainer:hasvar.()..local.i=1..whil
1cb20 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 20 69 66 20 73 65 6c 66 5b 69 5d 3a 69 73 76 61 72 69 e.self[i].do...if.self[i]:isvari
1cb40 61 62 6c 65 28 29 20 74 68 65 6e 0a 09 09 20 72 65 74 75 72 6e 20 31 0a 09 09 65 6e 64 0a 20 20 able().then....return.1...end...
1cb60 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 09 72 65 74 75 72 6e 20 30 0a 65 6e 64 0a 0a 2d 2d 20 49 i.=.i+1..end..return.0.end..--.I
1cb80 6e 74 65 72 6e 61 6c 20 63 6f 6e 74 61 69 6e 65 72 20 63 6f 6e 73 74 72 75 63 74 6f 72 0a 66 75 nternal.container.constructor.fu
1cba0 6e 63 74 69 6f 6e 20 5f 43 6f 6e 74 61 69 6e 65 72 20 28 73 65 6c 66 29 0a 20 73 65 74 6d 65 74 nction._Container.(self)..setmet
1cbc0 61 74 61 62 6c 65 28 73 65 6c 66 2c 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 29 0a 20 73 65 6c atable(self,classContainer)..sel
1cbe0 66 2e 6e 20 3d 20 30 0a 20 73 65 6c 66 2e 74 79 70 65 64 65 66 73 20 3d 20 7b 74 6f 6c 75 61 5f f.n.=.0..self.typedefs.=.{tolua_
1cc00 6e 3d 30 7d 0a 20 73 65 6c 66 2e 75 73 65 72 74 79 70 65 73 20 3d 20 7b 7d 0a 20 73 65 6c 66 2e n=0}..self.usertypes.=.{}..self.
1cc20 65 6e 75 6d 73 20 3d 20 7b 74 6f 6c 75 61 5f 6e 3d 30 7d 0a 20 73 65 6c 66 2e 6c 6e 61 6d 65 73 enums.=.{tolua_n=0}..self.lnames
1cc40 20 3d 20 7b 7d 0a 20 72 65 74 75 72 6e 20 73 65 6c 66 0a 65 6e 64 0a 0a 2d 2d 20 70 75 73 68 20 .=.{}..return.self.end..--.push.
1cc60 63 6f 6e 74 61 69 6e 65 72 0a 66 75 6e 63 74 69 6f 6e 20 70 75 73 68 20 28 74 29 0a 09 74 2e 70 container.function.push.(t)..t.p
1cc80 72 6f 78 20 3d 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 0a 20 63 6c 61 73 73 rox.=.classContainer.curr..class
1cca0 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 20 3d 20 74 0a 65 6e 64 0a 0a 2d 2d 20 70 6f 70 20 63 Container.curr.=.t.end..--.pop.c
1ccc0 6f 6e 74 61 69 6e 65 72 0a 66 75 6e 63 74 69 6f 6e 20 70 6f 70 20 28 29 0a 2d 2d 70 72 69 6e 74 ontainer.function.pop.().--print
1cce0 28 22 6e 61 6d 65 22 2c 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 2e 6e 61 6d 65 ("name",classContainer.curr.name
1cd00 29 0a 2d 2d 66 6f 72 65 61 63 68 28 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 2e ).--foreach(classContainer.curr.
1cd20 75 73 65 72 74 79 70 65 73 2c 70 72 69 6e 74 29 0a 2d 2d 70 72 69 6e 74 28 22 5f 5f 5f 5f 5f 5f usertypes,print).--print("______
1cd40 5f 5f 5f 5f 5f 5f 5f 5f 22 29 0a 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 20 ________")..classContainer.curr.
1cd60 3d 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 2e 70 72 6f 78 0a 65 6e 64 0a 0a =.classContainer.curr.prox.end..
1cd80 2d 2d 20 67 65 74 20 63 75 72 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 0a 66 75 6e 63 74 69 6f --.get.current.namespace.functio
1cda0 6e 20 67 65 74 63 75 72 72 6e 61 6d 65 73 70 61 63 65 20 28 29 0a 09 72 65 74 75 72 6e 20 67 65 n.getcurrnamespace.()..return.ge
1cdc0 74 6e 61 6d 65 73 70 61 63 65 28 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 29 0a tnamespace(classContainer.curr).
1cde0 65 6e 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 20 74 6f 20 63 75 72 72 65 6e 74 20 63 6f 6e 74 61 69 end..--.append.to.current.contai
1ce00 6e 65 72 0a 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 20 28 74 29 0a 20 72 65 74 75 72 6e 20 ner.function.append.(t)..return.
1ce20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 3a 61 70 70 65 6e 64 28 74 29 0a 65 6e classContainer.curr:append(t).en
1ce40 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 20 74 79 70 65 64 65 66 20 74 6f 20 63 75 72 72 65 6e 74 20 d..--.append.typedef.to.current.
1ce60 63 6f 6e 74 61 69 6e 65 72 0a 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 74 79 70 65 64 65 66 container.function.appendtypedef
1ce80 20 28 74 29 0a 20 72 65 74 75 72 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 .(t)..return.classContainer.curr
1cea0 3a 61 70 70 65 6e 64 74 79 70 65 64 65 66 28 74 29 0a 65 6e 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 :appendtypedef(t).end..--.append
1cec0 20 75 73 65 72 74 79 70 65 20 74 6f 20 63 75 72 72 65 6e 74 20 63 6f 6e 74 61 69 6e 65 72 0a 66 .usertype.to.current.container.f
1cee0 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e 64 75 73 65 72 74 79 70 65 20 28 74 29 0a 20 72 65 74 75 unction.appendusertype.(t)..retu
1cf00 72 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 3a 61 70 70 65 6e 64 75 73 65 rn.classContainer.curr:appenduse
1cf20 72 74 79 70 65 28 74 29 0a 65 6e 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 20 65 6e 75 6d 20 74 6f 20 rtype(t).end..--.append.enum.to.
1cf40 63 75 72 72 65 6e 74 20 63 6f 6e 74 61 69 6e 65 72 0a 66 75 6e 63 74 69 6f 6e 20 61 70 70 65 6e current.container.function.appen
1cf60 64 65 6e 75 6d 20 28 74 29 0a 20 72 65 74 75 72 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 denum.(t)..return.classContainer
1cf80 2e 63 75 72 72 3a 61 70 70 65 6e 64 65 6e 75 6d 28 74 29 0a 65 6e 64 0a 0a 2d 2d 20 73 75 62 73 .curr:appendenum(t).end..--.subs
1cfa0 74 69 74 75 74 65 20 74 79 70 65 64 65 66 0a 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 74 79 70 titute.typedef.function.applytyp
1cfc0 65 64 65 66 20 28 6d 6f 64 2c 74 79 70 65 29 0a 20 72 65 74 75 72 6e 20 63 6c 61 73 73 43 6f 6e edef.(mod,type)..return.classCon
1cfe0 74 61 69 6e 65 72 2e 63 75 72 72 3a 61 70 70 6c 79 74 79 70 65 64 65 66 28 6d 6f 64 2c 74 79 70 tainer.curr:applytypedef(mod,typ
1d000 65 29 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 73 20 74 79 70 65 0a 66 75 6e 63 e).end..--.check.if.is.type.func
1d020 74 69 6f 6e 20 66 69 6e 64 74 79 70 65 20 28 74 79 70 65 29 0a 20 6c 6f 63 61 6c 20 74 20 3d 20 tion.findtype.(type)..local.t.=.
1d040 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 3a 66 69 6e 64 74 79 70 65 28 74 79 70 classContainer.curr:findtype(typ
1d060 65 29 0a 09 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 73 e)..return.t.end..--.check.if.is
1d080 20 74 79 70 65 64 65 66 0a 66 75 6e 63 74 69 6f 6e 20 69 73 74 79 70 65 64 65 66 20 28 74 79 70 .typedef.function.istypedef.(typ
1d0a0 65 29 0a 20 72 65 74 75 72 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 3a 69 e)..return.classContainer.curr:i
1d0c0 73 74 79 70 65 64 65 66 28 74 79 70 65 29 0a 65 6e 64 0a 0a 2d 2d 20 67 65 74 20 66 75 6c 6c 74 stypedef(type).end..--.get.fullt
1d0e0 79 70 65 20 28 77 69 74 68 20 6e 61 6d 65 73 70 61 63 65 29 0a 66 75 6e 63 74 69 6f 6e 20 66 75 ype.(with.namespace).function.fu
1d100 6c 6c 74 79 70 65 20 28 74 29 0a 20 6c 6f 63 61 6c 20 63 75 72 72 20 3d 20 20 63 6c 61 73 73 43 lltype.(t)..local.curr.=..classC
1d120 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 0a 09 77 68 69 6c 65 20 63 75 72 72 20 64 6f 0a 09 20 69 ontainer.curr..while.curr.do...i
1d140 66 20 63 75 72 72 20 74 68 65 6e 0a 09 09 20 69 66 20 63 75 72 72 2e 74 79 70 65 64 65 66 73 20 f.curr.then....if.curr.typedefs.
1d160 61 6e 64 20 63 75 72 72 2e 74 79 70 65 64 65 66 73 5b 74 5d 20 74 68 65 6e 0a 09 09 20 20 72 65 and.curr.typedefs[t].then.....re
1d180 74 75 72 6e 20 63 75 72 72 2e 74 79 70 65 64 65 66 73 5b 74 5d 0a 09 09 20 65 6c 73 65 69 66 20 turn.curr.typedefs[t]....elseif.
1d1a0 63 75 72 72 2e 75 73 65 72 74 79 70 65 73 20 61 6e 64 20 63 75 72 72 2e 75 73 65 72 74 79 70 65 curr.usertypes.and.curr.usertype
1d1c0 73 5b 74 5d 20 74 68 65 6e 0a 09 09 20 20 72 65 74 75 72 6e 20 63 75 72 72 2e 75 73 65 72 74 79 s[t].then.....return.curr.userty
1d1e0 70 65 73 5b 74 5d 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 09 20 63 75 72 72 20 3d 20 63 75 72 pes[t]....end...end...curr.=.cur
1d200 72 2e 70 72 6f 78 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 63 68 r.prox..end..return.t.end..--.ch
1d220 65 63 6b 73 20 69 66 20 69 74 20 72 65 71 75 69 72 65 73 20 63 6f 6c 6c 65 63 74 69 6f 6e 0a 66 ecks.if.it.requires.collection.f
1d240 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 72 65 71 75 69 72 65 63 6f unction.classContainer:requireco
1d260 6c 6c 65 63 74 69 6f 6e 20 28 74 29 0a 20 70 75 73 68 28 73 65 6c 66 29 0a 20 6c 6f 63 61 6c 20 llection.(t)..push(self)..local.
1d280 69 3d 31 0a 09 6c 6f 63 61 6c 20 72 20 3d 20 66 61 6c 73 65 0a 20 77 68 69 6c 65 20 73 65 6c 66 i=1..local.r.=.false..while.self
1d2a0 5b 69 5d 20 64 6f 0a 20 20 72 20 3d 20 73 65 6c 66 5b 69 5d 3a 72 65 71 75 69 72 65 63 6f 6c 6c [i].do...r.=.self[i]:requirecoll
1d2c0 65 63 74 69 6f 6e 28 74 29 20 6f 72 20 72 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 09 70 ection(t).or.r...i.=.i+1..end..p
1d2e0 6f 70 28 29 0a 09 72 65 74 75 72 6e 20 72 0a 65 6e 64 0a 0a 0a 2d 2d 20 67 65 74 20 6e 61 6d 65 op()..return.r.end...--.get.name
1d300 73 61 70 63 65 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 6e 61 6d 65 73 70 61 63 65 20 28 63 75 72 sapce.function.getnamespace.(cur
1d320 72 29 0a 09 6c 6f 63 61 6c 20 6e 61 6d 65 73 70 61 63 65 20 3d 20 27 27 0a 09 77 68 69 6c 65 20 r)..local.namespace.=.''..while.
1d340 63 75 72 72 20 64 6f 0a 09 20 69 66 20 63 75 72 72 20 61 6e 64 0a 09 09 20 20 20 28 20 63 75 72 curr.do...if.curr.and......(.cur
1d360 72 2e 63 6c 61 73 73 74 79 70 65 20 3d 3d 20 27 63 6c 61 73 73 27 20 6f 72 20 63 75 72 72 2e 63 r.classtype.==.'class'.or.curr.c
1d380 6c 61 73 73 74 79 70 65 20 3d 3d 20 27 6e 61 6d 65 73 70 61 63 65 27 29 0a 09 09 74 68 65 6e 0a lasstype.==.'namespace')...then.
1d3a0 09 09 20 6e 61 6d 65 73 70 61 63 65 20 3d 20 28 63 75 72 72 2e 6f 72 69 67 69 6e 61 6c 5f 6e 61 ...namespace.=.(curr.original_na
1d3c0 6d 65 20 6f 72 20 63 75 72 72 2e 6e 61 6d 65 29 20 2e 2e 20 27 3a 3a 27 20 2e 2e 20 6e 61 6d 65 me.or.curr.name)....'::'....name
1d3e0 73 70 61 63 65 0a 09 09 20 2d 2d 6e 61 6d 65 73 70 61 63 65 20 3d 20 63 75 72 72 2e 6e 61 6d 65 space....--namespace.=.curr.name
1d400 20 2e 2e 20 27 3a 3a 27 20 2e 2e 20 6e 61 6d 65 73 70 61 63 65 0a 09 09 65 6e 64 0a 09 20 63 75 ....'::'....namespace...end...cu
1d420 72 72 20 3d 20 63 75 72 72 2e 70 72 6f 78 0a 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 6e 61 6d 65 rr.=.curr.prox..end..return.name
1d440 73 70 61 63 65 0a 65 6e 64 0a 0a 2d 2d 20 67 65 74 20 6e 61 6d 65 73 70 61 63 65 20 28 6f 6e 6c space.end..--.get.namespace.(onl
1d460 79 20 6e 61 6d 65 73 70 61 63 65 29 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 6f 6e 6c 79 6e 61 6d y.namespace).function.getonlynam
1d480 65 73 70 61 63 65 20 28 29 0a 20 6c 6f 63 61 6c 20 63 75 72 72 20 3d 20 63 6c 61 73 73 43 6f 6e espace.()..local.curr.=.classCon
1d4a0 74 61 69 6e 65 72 2e 63 75 72 72 0a 09 6c 6f 63 61 6c 20 6e 61 6d 65 73 70 61 63 65 20 3d 20 27 tainer.curr..local.namespace.=.'
1d4c0 27 0a 09 77 68 69 6c 65 20 63 75 72 72 20 64 6f 0a 09 09 69 66 20 63 75 72 72 2e 63 6c 61 73 73 '..while.curr.do...if.curr.class
1d4e0 74 79 70 65 20 3d 3d 20 27 63 6c 61 73 73 27 20 74 68 65 6e 0a 09 09 20 72 65 74 75 72 6e 20 6e type.==.'class'.then....return.n
1d500 61 6d 65 73 70 61 63 65 0a 09 09 65 6c 73 65 69 66 20 63 75 72 72 2e 63 6c 61 73 73 74 79 70 65 amespace...elseif.curr.classtype
1d520 20 3d 3d 20 27 6e 61 6d 65 73 70 61 63 65 27 20 74 68 65 6e 0a 09 09 20 6e 61 6d 65 73 70 61 63 .==.'namespace'.then....namespac
1d540 65 20 3d 20 63 75 72 72 2e 6e 61 6d 65 20 2e 2e 20 27 3a 3a 27 20 2e 2e 20 6e 61 6d 65 73 70 61 e.=.curr.name....'::'....namespa
1d560 63 65 0a 09 09 65 6e 64 0a 09 20 63 75 72 72 20 3d 20 63 75 72 72 2e 70 72 6f 78 0a 09 65 6e 64 ce...end...curr.=.curr.prox..end
1d580 0a 09 72 65 74 75 72 6e 20 6e 61 6d 65 73 70 61 63 65 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b ..return.namespace.end..--.check
1d5a0 20 69 66 20 69 73 20 65 6e 75 6d 0a 66 75 6e 63 74 69 6f 6e 20 69 73 65 6e 75 6d 20 28 74 79 70 .if.is.enum.function.isenum.(typ
1d5c0 65 29 0a 20 72 65 74 75 72 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 3a 69 e)..return.classContainer.curr:i
1d5e0 73 65 6e 75 6d 28 74 79 70 65 29 0a 65 6e 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 20 66 65 61 74 75 senum(type).end..--.append.featu
1d600 72 65 20 74 6f 20 63 6f 6e 74 61 69 6e 65 72 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f re.to.container.function.classCo
1d620 6e 74 61 69 6e 65 72 3a 61 70 70 65 6e 64 20 28 74 29 0a 20 73 65 6c 66 2e 6e 20 3d 20 73 65 6c ntainer:append.(t)..self.n.=.sel
1d640 66 2e 6e 20 2b 20 31 0a 20 73 65 6c 66 5b 73 65 6c 66 2e 6e 5d 20 3d 20 74 0a 20 74 2e 70 61 72 f.n.+.1..self[self.n].=.t..t.par
1d660 65 6e 74 20 3d 20 73 65 6c 66 0a 65 6e 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 20 74 79 70 65 64 65 ent.=.self.end..--.append.typede
1d680 66 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 61 70 70 65 6e 64 f.function.classContainer:append
1d6a0 74 79 70 65 64 65 66 20 28 74 29 0a 20 6c 6f 63 61 6c 20 6e 61 6d 65 73 70 61 63 65 20 3d 20 67 typedef.(t)..local.namespace.=.g
1d6c0 65 74 6e 61 6d 65 73 70 61 63 65 28 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 29 etnamespace(classContainer.curr)
1d6e0 0a 20 73 65 6c 66 2e 74 79 70 65 64 65 66 73 2e 74 6f 6c 75 61 5f 6e 20 3d 20 73 65 6c 66 2e 74 ..self.typedefs.tolua_n.=.self.t
1d700 79 70 65 64 65 66 73 2e 74 6f 6c 75 61 5f 6e 20 2b 20 31 0a 20 73 65 6c 66 2e 74 79 70 65 64 65 ypedefs.tolua_n.+.1..self.typede
1d720 66 73 5b 73 65 6c 66 2e 74 79 70 65 64 65 66 73 2e 74 6f 6c 75 61 5f 6e 5d 20 3d 20 74 0a 09 73 fs[self.typedefs.tolua_n].=.t..s
1d740 65 6c 66 2e 74 79 70 65 64 65 66 73 5b 74 2e 75 74 79 70 65 5d 20 3d 20 6e 61 6d 65 73 70 61 63 elf.typedefs[t.utype].=.namespac
1d760 65 20 2e 2e 20 74 2e 75 74 79 70 65 0a 09 67 6c 6f 62 61 6c 5f 74 79 70 65 64 65 66 73 5b 6e 61 e....t.utype..global_typedefs[na
1d780 6d 65 73 70 61 63 65 2e 2e 74 2e 75 74 79 70 65 5d 20 3d 20 74 0a 09 74 2e 66 74 79 70 65 20 3d mespace..t.utype].=.t..t.ftype.=
1d7a0 20 66 69 6e 64 74 79 70 65 28 74 2e 74 79 70 65 29 20 6f 72 20 74 2e 74 79 70 65 0a 09 2d 2d 70 .findtype(t.type).or.t.type..--p
1d7c0 72 69 6e 74 28 22 61 70 70 65 6e 64 69 6e 67 20 74 79 70 65 64 65 66 20 22 2e 2e 74 2e 75 74 79 rint("appending.typedef."..t.uty
1d7e0 70 65 2e 2e 22 20 61 73 20 22 2e 2e 6e 61 6d 65 73 70 61 63 65 2e 2e 74 2e 75 74 79 70 65 2e 2e pe..".as."..namespace..t.utype..
1d800 22 20 77 69 74 68 20 66 74 79 70 65 20 22 2e 2e 74 2e 66 74 79 70 65 29 0a 09 61 70 70 65 6e 64 ".with.ftype."..t.ftype)..append
1d820 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 28 6e 61 6d 65 73 70 61 63 65 2e 2e 74 2e 75 74 79 70 65 29 _global_type(namespace..t.utype)
1d840 0a 09 69 66 20 74 2e 66 74 79 70 65 20 61 6e 64 20 69 73 65 6e 75 6d 28 74 2e 66 74 79 70 65 29 ..if.t.ftype.and.isenum(t.ftype)
1d860 20 74 68 65 6e 0a 0a 09 09 67 6c 6f 62 61 6c 5f 65 6e 75 6d 73 5b 6e 61 6d 65 73 70 61 63 65 2e .then....global_enums[namespace.
1d880 2e 74 2e 75 74 79 70 65 5d 20 3d 20 74 72 75 65 0a 09 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 61 70 .t.utype].=.true..end.end..--.ap
1d8a0 70 65 6e 64 20 75 73 65 72 74 79 70 65 3a 20 72 65 74 75 72 6e 20 66 75 6c 6c 20 74 79 70 65 0a pend.usertype:.return.full.type.
1d8c0 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 61 70 70 65 6e 64 75 73 function.classContainer:appendus
1d8e0 65 72 74 79 70 65 20 28 74 29 0a 09 6c 6f 63 61 6c 20 63 6f 6e 74 61 69 6e 65 72 0a 09 69 66 20 ertype.(t)..local.container..if.
1d900 74 20 3d 3d 20 28 73 65 6c 66 2e 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 20 6f 72 20 73 65 6c 66 t.==.(self.original_name.or.self
1d920 2e 6e 61 6d 65 29 20 74 68 65 6e 0a 09 09 63 6f 6e 74 61 69 6e 65 72 20 3d 20 73 65 6c 66 2e 70 .name).then...container.=.self.p
1d940 72 6f 78 0a 09 65 6c 73 65 0a 09 09 63 6f 6e 74 61 69 6e 65 72 20 3d 20 73 65 6c 66 0a 09 65 6e rox..else...container.=.self..en
1d960 64 0a 09 6c 6f 63 61 6c 20 66 74 20 3d 20 67 65 74 6e 61 6d 65 73 70 61 63 65 28 63 6f 6e 74 61 d..local.ft.=.getnamespace(conta
1d980 69 6e 65 72 29 20 2e 2e 20 74 0a 09 63 6f 6e 74 61 69 6e 65 72 2e 75 73 65 72 74 79 70 65 73 5b iner)....t..container.usertypes[
1d9a0 74 5d 20 3d 20 66 74 0a 09 5f 75 73 65 72 74 79 70 65 5b 66 74 5d 20 3d 20 66 74 0a 09 72 65 74 t].=.ft.._usertype[ft].=.ft..ret
1d9c0 75 72 6e 20 66 74 0a 65 6e 64 0a 0a 2d 2d 20 61 70 70 65 6e 64 20 65 6e 75 6d 0a 66 75 6e 63 74 urn.ft.end..--.append.enum.funct
1d9e0 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 61 70 70 65 6e 64 65 6e 75 6d 20 28 74 ion.classContainer:appendenum.(t
1da00 29 0a 20 6c 6f 63 61 6c 20 6e 61 6d 65 73 70 61 63 65 20 3d 20 67 65 74 6e 61 6d 65 73 70 61 63 )..local.namespace.=.getnamespac
1da20 65 28 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 29 0a 20 73 65 6c 66 2e 65 6e 75 e(classContainer.curr)..self.enu
1da40 6d 73 2e 74 6f 6c 75 61 5f 6e 20 3d 20 73 65 6c 66 2e 65 6e 75 6d 73 2e 74 6f 6c 75 61 5f 6e 20 ms.tolua_n.=.self.enums.tolua_n.
1da60 2b 20 31 0a 20 73 65 6c 66 2e 65 6e 75 6d 73 5b 73 65 6c 66 2e 65 6e 75 6d 73 2e 74 6f 6c 75 61 +.1..self.enums[self.enums.tolua
1da80 5f 6e 5d 20 3d 20 74 0a 09 67 6c 6f 62 61 6c 5f 65 6e 75 6d 73 5b 6e 61 6d 65 73 70 61 63 65 2e _n].=.t..global_enums[namespace.
1daa0 2e 74 2e 6e 61 6d 65 5d 20 3d 20 74 0a 65 6e 64 0a 0a 2d 2d 20 64 65 74 65 72 6d 69 6e 65 20 6c .t.name].=.t.end..--.determine.l
1dac0 75 61 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 6f 76 65 72 6c 6f 61 64 0a 66 75 6e 63 74 69 ua.function.name.overload.functi
1dae0 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 6f 76 65 72 6c 6f 61 64 20 28 6c 6e 61 6d on.classContainer:overload.(lnam
1db00 65 29 0a 20 69 66 20 6e 6f 74 20 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 6c 6e 61 6d 65 5d 20 74 68 e)..if.not.self.lnames[lname].th
1db20 65 6e 0a 20 20 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 6c 6e 61 6d 65 5d 20 3d 20 30 0a 20 65 6c 73 en...self.lnames[lname].=.0..els
1db40 65 0a 20 20 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 6c 6e 61 6d 65 5d 20 3d 20 73 65 6c 66 2e 6c 6e e...self.lnames[lname].=.self.ln
1db60 61 6d 65 73 5b 6c 6e 61 6d 65 5d 20 2b 20 31 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 66 6f 72 ames[lname].+.1..end..return.for
1db80 6d 61 74 28 22 25 30 32 64 22 2c 73 65 6c 66 2e 6c 6e 61 6d 65 73 5b 6c 6e 61 6d 65 5d 29 0a 65 mat("%02d",self.lnames[lname]).e
1dba0 6e 64 0a 0a 2d 2d 20 61 70 70 6c 69 65 73 20 74 79 70 65 64 65 66 3a 20 72 65 74 75 72 6e 73 20 nd..--.applies.typedef:.returns.
1dbc0 74 68 65 20 27 74 68 65 20 66 61 63 74 6f 27 20 6d 6f 64 69 66 69 65 72 20 61 6e 64 20 74 79 70 the.'the.facto'.modifier.and.typ
1dbe0 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 61 70 70 6c 79 74 e.function.classContainer:applyt
1dc00 79 70 65 64 65 66 20 28 6d 6f 64 2c 74 79 70 65 29 0a 09 69 66 20 67 6c 6f 62 61 6c 5f 74 79 70 ypedef.(mod,type)..if.global_typ
1dc20 65 64 65 66 73 5b 74 79 70 65 5d 20 74 68 65 6e 0a 09 09 2d 2d 70 72 69 6e 74 28 22 66 6f 75 6e edefs[type].then...--print("foun
1dc40 64 20 74 79 70 65 64 65 66 20 22 2e 2e 67 6c 6f 62 61 6c 5f 74 79 70 65 64 65 66 73 5b 74 79 70 d.typedef."..global_typedefs[typ
1dc60 65 5d 2e 74 79 70 65 29 0a 09 09 6c 6f 63 61 6c 20 6d 6f 64 31 2c 20 74 79 70 65 31 20 3d 20 67 e].type)...local.mod1,.type1.=.g
1dc80 6c 6f 62 61 6c 5f 74 79 70 65 64 65 66 73 5b 74 79 70 65 5d 2e 6d 6f 64 2c 20 67 6c 6f 62 61 6c lobal_typedefs[type].mod,.global
1dca0 5f 74 79 70 65 64 65 66 73 5b 74 79 70 65 5d 2e 66 74 79 70 65 0a 09 09 6c 6f 63 61 6c 20 6d 6f _typedefs[type].ftype...local.mo
1dcc0 64 32 2c 20 74 79 70 65 32 20 3d 20 61 70 70 6c 79 74 79 70 65 64 65 66 28 6d 6f 64 2e 2e 22 20 d2,.type2.=.applytypedef(mod..".
1dce0 22 2e 2e 6d 6f 64 31 2c 20 74 79 70 65 31 29 0a 09 09 2d 2d 72 65 74 75 72 6e 20 6d 6f 64 32 20 "..mod1,.type1)...--return.mod2.
1dd00 2e 2e 20 27 20 27 20 2e 2e 20 6d 6f 64 31 2c 20 74 79 70 65 32 0a 09 09 72 65 74 75 72 6e 20 6d ...'.'....mod1,.type2...return.m
1dd20 6f 64 32 2c 20 74 79 70 65 32 0a 09 65 6e 64 0a 09 64 6f 20 72 65 74 75 72 6e 20 6d 6f 64 2c 74 od2,.type2..end..do.return.mod,t
1dd40 79 70 65 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 74 20 69 73 20 61 ype.end.end..--.check.if.it.is.a
1dd60 20 74 79 70 65 64 65 66 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 .typedef.function.classContainer
1dd80 3a 69 73 74 79 70 65 64 65 66 20 28 74 79 70 65 29 0a 20 6c 6f 63 61 6c 20 65 6e 76 20 3d 20 73 :istypedef.(type)..local.env.=.s
1dda0 65 6c 66 0a 20 77 68 69 6c 65 20 65 6e 76 20 64 6f 0a 20 20 69 66 20 65 6e 76 2e 74 79 70 65 64 elf..while.env.do...if.env.typed
1ddc0 65 66 73 20 74 68 65 6e 0a 20 20 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 20 20 77 68 69 6c 65 20 65 efs.then....local.i=1....while.e
1dde0 6e 76 2e 74 79 70 65 64 65 66 73 5b 69 5d 20 64 6f 0a 20 20 20 20 69 66 20 65 6e 76 2e 74 79 70 nv.typedefs[i].do.....if.env.typ
1de00 65 64 65 66 73 5b 69 5d 2e 75 74 79 70 65 20 3d 3d 20 74 79 70 65 20 74 68 65 6e 0a 20 20 20 20 edefs[i].utype.==.type.then.....
1de20 20 20 20 20 20 72 65 74 75 72 6e 20 74 79 70 65 0a 20 20 20 20 20 20 20 20 65 6e 64 0a 20 20 20 .....return.type.........end....
1de40 20 20 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 20 65 6e 64 0a 20 20 65 6e 64 0a 20 20 65 6e 76 20 .....i.=.i+1....end...end...env.
1de60 3d 20 65 6e 76 2e 70 61 72 65 6e 74 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 6e 69 6c 0a 65 6e =.env.parent..end..return.nil.en
1de80 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 5f 65 6e 75 6d 5f 76 61 72 28 76 61 72 29 0a 0a d..function.find_enum_var(var)..
1dea0 09 69 66 20 74 6f 6e 75 6d 62 65 72 28 76 61 72 29 20 74 68 65 6e 20 72 65 74 75 72 6e 20 76 61 .if.tonumber(var).then.return.va
1dec0 72 20 65 6e 64 0a 0a 09 6c 6f 63 61 6c 20 63 20 3d 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 r.end...local.c.=.classContainer
1dee0 2e 63 75 72 72 0a 09 77 68 69 6c 65 20 63 20 64 6f 0a 09 09 6c 6f 63 61 6c 20 6e 73 20 3d 20 67 .curr..while.c.do...local.ns.=.g
1df00 65 74 6e 61 6d 65 73 70 61 63 65 28 63 29 0a 09 09 66 6f 72 20 6b 2c 76 20 69 6e 20 70 61 69 72 etnamespace(c)...for.k,v.in.pair
1df20 73 28 5f 67 6c 6f 62 61 6c 5f 65 6e 75 6d 73 29 20 64 6f 0a 09 09 09 69 66 20 6d 61 74 63 68 5f s(_global_enums).do....if.match_
1df40 74 79 70 65 28 76 61 72 2c 20 76 2c 20 6e 73 29 20 74 68 65 6e 0a 09 09 09 09 72 65 74 75 72 6e type(var,.v,.ns).then.....return
1df60 20 76 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 09 09 69 66 20 63 2e 62 61 73 65 20 61 6e 64 20 .v....end...end...if.c.base.and.
1df80 63 2e 62 61 73 65 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 09 09 63 20 3d 20 5f 67 6c 6f 62 61 6c c.base.~=.''.then....c.=._global
1dfa0 5f 63 6c 61 73 73 65 73 5b 63 3a 66 69 6e 64 74 79 70 65 28 63 2e 62 61 73 65 29 5d 0a 09 09 65 _classes[c:findtype(c.base)]...e
1dfc0 6c 73 65 0a 09 09 09 63 20 3d 20 6e 69 6c 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 0a 09 72 65 74 75 lse....c.=.nil...end..end...retu
1dfe0 72 6e 20 76 61 72 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 73 20 61 20 72 65 67 rn.var.end..--.check.if.is.a.reg
1e000 69 73 74 65 72 65 64 20 74 79 70 65 3a 20 72 65 74 75 72 6e 20 66 75 6c 6c 20 74 79 70 65 20 6f istered.type:.return.full.type.o
1e020 72 20 6e 69 6c 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 66 69 r.nil.function.classContainer:fi
1e040 6e 64 74 79 70 65 20 28 74 29 0a 0a 09 74 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2c 20 ndtype.(t)...t.=.string.gsub(t,.
1e060 22 3d 2e 2a 22 2c 20 22 22 29 0a 09 69 66 20 5f 62 61 73 69 63 5b 74 5d 20 74 68 65 6e 0a 09 20 "=.*",."")..if._basic[t].then...
1e080 72 65 74 75 72 6e 20 74 0a 09 65 6e 64 0a 0a 09 6c 6f 63 61 6c 20 5f 2c 5f 2c 65 6d 20 3d 20 73 return.t..end...local._,_,em.=.s
1e0a0 74 72 69 6e 67 2e 66 69 6e 64 28 74 2c 20 22 28 5b 26 25 2a 5d 29 25 73 2a 24 22 29 0a 09 74 20 tring.find(t,."([&%*])%s*$")..t.
1e0c0 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 74 2c 20 22 25 73 2a 28 5b 26 25 2a 5d 29 25 73 2a 24 =.string.gsub(t,."%s*([&%*])%s*$
1e0e0 22 2c 20 22 22 29 0a 09 70 20 3d 20 73 65 6c 66 0a 09 77 68 69 6c 65 20 70 20 61 6e 64 20 74 79 ",."")..p.=.self..while.p.and.ty
1e100 70 65 28 70 29 3d 3d 27 74 61 62 6c 65 27 20 64 6f 0a 09 09 6c 6f 63 61 6c 20 73 74 20 3d 20 67 pe(p)=='table'.do...local.st.=.g
1e120 65 74 6e 61 6d 65 73 70 61 63 65 28 70 29 0a 0a 09 09 66 6f 72 20 69 3d 5f 67 6c 6f 62 61 6c 5f etnamespace(p)....for.i=_global_
1e140 74 79 70 65 73 2e 6e 2c 31 2c 2d 31 20 64 6f 20 2d 2d 20 69 6e 20 72 65 76 65 72 73 65 20 6f 72 types.n,1,-1.do.--.in.reverse.or
1e160 64 65 72 0a 0a 09 09 09 69 66 20 6d 61 74 63 68 5f 74 79 70 65 28 74 2c 20 5f 67 6c 6f 62 61 6c der.....if.match_type(t,._global
1e180 5f 74 79 70 65 73 5b 69 5d 2c 20 73 74 29 20 74 68 65 6e 0a 09 09 09 09 72 65 74 75 72 6e 20 5f _types[i],.st).then.....return._
1e1a0 67 6c 6f 62 61 6c 5f 74 79 70 65 73 5b 69 5d 2e 2e 28 65 6d 20 6f 72 20 22 22 29 0a 09 09 09 65 global_types[i]..(em.or."")....e
1e1c0 6e 64 0a 09 09 65 6e 64 0a 09 09 69 66 20 70 2e 62 61 73 65 20 61 6e 64 20 70 2e 62 61 73 65 20 nd...end...if.p.base.and.p.base.
1e1e0 7e 3d 20 27 27 20 61 6e 64 20 70 2e 62 61 73 65 20 7e 3d 20 74 20 74 68 65 6e 0a 09 09 09 2d 2d ~=.''.and.p.base.~=.t.then....--
1e200 70 72 69 6e 74 28 22 74 79 70 65 20 69 73 20 22 2e 2e 74 2e 2e 22 2c 20 70 20 69 73 20 22 2e 2e print("type.is."..t..",.p.is."..
1e220 70 2e 62 61 73 65 2e 2e 22 20 73 65 6c 66 2e 74 79 70 65 20 69 73 20 22 2e 2e 73 65 6c 66 2e 74 p.base..".self.type.is."..self.t
1e240 79 70 65 2e 2e 22 20 73 65 6c 66 2e 6e 61 6d 65 20 69 73 20 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 ype..".self.name.is."..self.name
1e260 29 0a 09 09 09 70 20 3d 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 70 3a 66 69 6e 64 74 )....p.=._global_classes[p:findt
1e280 79 70 65 28 70 2e 62 61 73 65 29 5d 0a 09 09 65 6c 73 65 0a 09 09 09 70 20 3d 20 6e 69 6c 0a 09 ype(p.base)]...else....p.=.nil..
1e2a0 09 65 6e 64 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 6e 69 6c 0a 65 6e 64 0a 0a 66 75 6e 63 .end..end...return.nil.end..func
1e2c0 74 69 6f 6e 20 61 70 70 65 6e 64 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 28 74 2c 20 63 6c 61 73 73 tion.append_global_type(t,.class
1e2e0 29 0a 09 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 73 2e 6e 20 3d 20 5f 67 6c 6f 62 61 6c 5f 74 79 70 ).._global_types.n.=._global_typ
1e300 65 73 2e 6e 20 2b 31 0a 09 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 73 5b 5f 67 6c 6f 62 61 6c 5f 74 es.n.+1.._global_types[_global_t
1e320 79 70 65 73 2e 6e 5d 20 3d 20 74 0a 09 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 73 5f 68 61 73 68 5b ypes.n].=.t.._global_types_hash[
1e340 74 5d 20 3d 20 31 0a 09 69 66 20 63 6c 61 73 73 20 74 68 65 6e 20 61 70 70 65 6e 64 5f 63 6c 61 t].=.1..if.class.then.append_cla
1e360 73 73 5f 74 79 70 65 28 74 2c 20 63 6c 61 73 73 29 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 ss_type(t,.class).end.end..funct
1e380 69 6f 6e 20 61 70 70 65 6e 64 5f 63 6c 61 73 73 5f 74 79 70 65 28 74 2c 63 6c 61 73 73 29 0a 09 ion.append_class_type(t,class)..
1e3a0 69 66 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 74 5d 20 74 68 65 6e 0a 09 09 63 6c 61 if._global_classes[t].then...cla
1e3c0 73 73 2e 66 6c 61 67 73 20 3d 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 74 5d 2e 66 6c ss.flags.=._global_classes[t].fl
1e3e0 61 67 73 0a 09 09 63 6c 61 73 73 2e 6c 6e 61 6d 65 73 20 3d 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 ags...class.lnames.=._global_cla
1e400 73 73 65 73 5b 74 5d 2e 6c 6e 61 6d 65 73 0a 09 09 69 66 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 sses[t].lnames...if._global_clas
1e420 73 65 73 5b 74 5d 2e 62 61 73 65 20 61 6e 64 20 28 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 ses[t].base.and.(_global_classes
1e440 5b 74 5d 2e 62 61 73 65 20 7e 3d 20 27 27 29 20 74 68 65 6e 0a 09 09 09 63 6c 61 73 73 2e 62 61 [t].base.~=.'').then....class.ba
1e460 73 65 20 3d 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 74 5d 2e 62 61 73 65 20 6f 72 20 se.=._global_classes[t].base.or.
1e480 63 6c 61 73 73 2e 62 61 73 65 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 09 5f 67 6c 6f 62 61 6c 5f 63 class.base...end..end.._global_c
1e4a0 6c 61 73 73 65 73 5b 74 5d 20 3d 20 63 6c 61 73 73 0a 09 63 6c 61 73 73 2e 66 6c 61 67 73 20 3d lasses[t].=.class..class.flags.=
1e4c0 20 63 6c 61 73 73 2e 66 6c 61 67 73 20 6f 72 20 7b 7d 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e .class.flags.or.{}.end..function
1e4e0 20 6d 61 74 63 68 5f 74 79 70 65 28 63 68 69 6c 64 74 79 70 65 2c 20 72 65 67 74 79 70 65 2c 20 .match_type(childtype,.regtype,.
1e500 73 74 29 0a 2d 2d 70 72 69 6e 74 28 22 66 69 6e 64 74 79 70 65 20 22 2e 2e 63 68 69 6c 64 74 79 st).--print("findtype."..childty
1e520 70 65 2e 2e 22 2c 20 22 2e 2e 72 65 67 74 79 70 65 2e 2e 22 2c 20 22 2e 2e 73 74 29 0a 09 6c 6f pe..",."..regtype..",."..st)..lo
1e540 63 61 6c 20 62 2c 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 72 65 67 74 79 70 65 2c 20 63 cal.b,e.=.string.find(regtype,.c
1e560 68 69 6c 64 74 79 70 65 2c 20 2d 73 74 72 69 6e 67 2e 6c 65 6e 28 63 68 69 6c 64 74 79 70 65 29 hildtype,.-string.len(childtype)
1e580 2c 20 74 72 75 65 29 0a 09 69 66 20 62 20 74 68 65 6e 0a 0a 09 09 69 66 20 65 20 3d 3d 20 73 74 ,.true)..if.b.then....if.e.==.st
1e5a0 72 69 6e 67 2e 6c 65 6e 28 72 65 67 74 79 70 65 29 20 61 6e 64 0a 09 09 09 09 28 62 20 3d 3d 20 ring.len(regtype).and.....(b.==.
1e5c0 31 20 6f 72 20 28 73 74 72 69 6e 67 2e 73 75 62 28 72 65 67 74 79 70 65 2c 20 62 2d 31 2c 20 62 1.or.(string.sub(regtype,.b-1,.b
1e5e0 2d 31 29 20 3d 3d 20 27 3a 27 20 61 6e 64 0a 09 09 09 09 73 74 72 69 6e 67 2e 73 75 62 28 72 65 -1).==.':'.and.....string.sub(re
1e600 67 74 79 70 65 2c 20 31 2c 20 62 2d 31 29 20 3d 3d 20 73 74 72 69 6e 67 2e 73 75 62 28 73 74 2c gtype,.1,.b-1).==.string.sub(st,
1e620 20 31 2c 20 62 2d 31 29 29 29 20 74 68 65 6e 0a 09 09 09 72 65 74 75 72 6e 20 74 72 75 65 0a 09 .1,.b-1))).then....return.true..
1e640 09 65 6e 64 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 65 6e 64 0a 0a 66 75 .end..end...return.false.end..fu
1e660 6e 63 74 69 6f 6e 20 66 69 6e 64 74 79 70 65 5f 6f 6e 5f 63 68 69 6c 64 73 28 73 65 6c 66 2c 20 nction.findtype_on_childs(self,.
1e680 74 29 0a 0a 09 6c 6f 63 61 6c 20 74 63 68 69 6c 64 0a 09 69 66 20 73 65 6c 66 2e 63 6c 61 73 73 t)...local.tchild..if.self.class
1e6a0 74 79 70 65 20 3d 3d 20 27 63 6c 61 73 73 27 20 6f 72 20 73 65 6c 66 2e 63 6c 61 73 73 74 79 70 type.==.'class'.or.self.classtyp
1e6c0 65 20 3d 3d 20 27 6e 61 6d 65 73 70 61 63 65 27 20 74 68 65 6e 0a 09 09 66 6f 72 20 6b 2c 76 20 e.==.'namespace'.then...for.k,v.
1e6e0 69 6e 20 69 70 61 69 72 73 28 73 65 6c 66 29 20 64 6f 0a 09 09 09 69 66 20 76 2e 63 6c 61 73 73 in.ipairs(self).do....if.v.class
1e700 74 79 70 65 20 3d 3d 20 27 63 6c 61 73 73 27 20 6f 72 20 76 2e 63 6c 61 73 73 74 79 70 65 20 3d type.==.'class'.or.v.classtype.=
1e720 3d 20 27 6e 61 6d 65 73 70 61 63 65 27 20 74 68 65 6e 0a 09 09 09 09 69 66 20 76 2e 74 79 70 65 =.'namespace'.then.....if.v.type
1e740 64 65 66 73 20 61 6e 64 20 76 2e 74 79 70 65 64 65 66 73 5b 74 5d 20 74 68 65 6e 0a 09 09 09 09 defs.and.v.typedefs[t].then.....
1e760 20 72 65 74 75 72 6e 20 76 2e 74 79 70 65 64 65 66 73 5b 74 5d 0a 09 09 09 09 65 6c 73 65 69 66 .return.v.typedefs[t].....elseif
1e780 20 76 2e 75 73 65 72 74 79 70 65 73 20 61 6e 64 20 76 2e 75 73 65 72 74 79 70 65 73 5b 74 5d 20 .v.usertypes.and.v.usertypes[t].
1e7a0 74 68 65 6e 0a 09 09 09 09 20 72 65 74 75 72 6e 20 76 2e 75 73 65 72 74 79 70 65 73 5b 74 5d 0a then......return.v.usertypes[t].
1e7c0 09 09 09 09 65 6e 64 0a 09 09 09 09 74 63 68 69 6c 64 20 3d 20 66 69 6e 64 74 79 70 65 5f 6f 6e ....end.....tchild.=.findtype_on
1e7e0 5f 63 68 69 6c 64 73 28 76 2c 20 74 29 0a 09 09 09 09 69 66 20 74 63 68 69 6c 64 20 74 68 65 6e _childs(v,.t).....if.tchild.then
1e800 20 72 65 74 75 72 6e 20 74 63 68 69 6c 64 20 65 6e 64 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a .return.tchild.end....end...end.
1e820 09 65 6e 64 0a 09 72 65 74 75 72 6e 20 6e 69 6c 0a 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 .end..return.nil..end..function.
1e840 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 69 73 65 6e 75 6d 20 28 74 79 70 65 29 0a 20 69 66 classContainer:isenum.(type)..if
1e860 20 67 6c 6f 62 61 6c 5f 65 6e 75 6d 73 5b 74 79 70 65 5d 20 74 68 65 6e 0a 09 72 65 74 75 72 6e .global_enums[type].then..return
1e880 20 74 79 70 65 0a 20 65 6c 73 65 0a 20 09 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 20 65 6e 64 0a .type..else...return.false..end.
1e8a0 0a 20 6c 6f 63 61 6c 20 62 61 73 65 74 79 70 65 20 3d 20 67 73 75 62 28 74 79 70 65 2c 22 5e 2e ..local.basetype.=.gsub(type,"^.
1e8c0 2a 3a 3a 22 2c 22 22 29 0a 20 6c 6f 63 61 6c 20 65 6e 76 20 3d 20 73 65 6c 66 0a 20 77 68 69 6c *::","")..local.env.=.self..whil
1e8e0 65 20 65 6e 76 20 64 6f 0a 20 20 69 66 20 65 6e 76 2e 65 6e 75 6d 73 20 74 68 65 6e 0a 20 20 20 e.env.do...if.env.enums.then....
1e900 6c 6f 63 61 6c 20 69 3d 31 0a 20 20 20 77 68 69 6c 65 20 65 6e 76 2e 65 6e 75 6d 73 5b 69 5d 20 local.i=1....while.env.enums[i].
1e920 64 6f 0a 20 20 20 20 69 66 20 65 6e 76 2e 65 6e 75 6d 73 5b 69 5d 2e 6e 61 6d 65 20 3d 3d 20 62 do.....if.env.enums[i].name.==.b
1e940 61 73 65 74 79 70 65 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 asetype.then..........return.tru
1e960 65 0a 20 20 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 20 69 20 3d 20 69 2b 31 0a 20 20 e.........end.........i.=.i+1...
1e980 20 65 6e 64 0a 20 20 65 6e 64 0a 20 20 65 6e 76 20 3d 20 65 6e 76 2e 70 61 72 65 6e 74 0a 20 65 .end...end...env.=.env.parent..e
1e9a0 6e 64 0a 20 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 65 6e 64 0a 0a 6d 65 74 68 6f 64 69 73 76 69 nd..return.false.end..methodisvi
1e9c0 72 74 75 61 6c 20 3d 20 66 61 6c 73 65 20 2d 2d 20 61 20 67 6c 6f 62 61 6c 0a 0a 2d 2d 20 70 61 rtual.=.false.--.a.global..--.pa
1e9e0 72 73 65 20 63 68 75 6e 6b 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 rse.chunk.function.classContaine
1ea00 72 3a 64 6f 70 61 72 73 65 20 28 73 29 0a 2d 2d 70 72 69 6e 74 20 28 22 70 61 72 73 65 20 22 2e r:doparse.(s).--print.("parse.".
1ea20 2e 73 29 0a 0a 20 2d 2d 20 74 72 79 20 74 68 65 20 70 61 72 73 65 72 20 68 6f 6f 6b 0a 20 64 6f .s)...--.try.the.parser.hook..do
1ea40 0a 20 09 6c 6f 63 61 6c 20 73 75 62 20 3d 20 70 61 72 73 65 72 5f 68 6f 6f 6b 28 73 29 0a 20 09 ...local.sub.=.parser_hook(s)...
1ea60 69 66 20 73 75 62 20 74 68 65 6e 0a 20 09 09 72 65 74 75 72 6e 20 73 75 62 0a 20 09 65 6e 64 0a if.sub.then....return.sub...end.
1ea80 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 74 68 65 20 6e 75 6c 6c 20 73 74 61 74 65 6d 65 6e 74 .end...--.try.the.null.statement
1eaa0 0a 20 64 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c 65 2c 63 6f 64 65 20 3d 20 73 74 72 69 6e 67 2e 66 ..do...local.b,e,code.=.string.f
1eac0 69 6e 64 28 73 2c 20 22 5e 25 73 2a 3b 22 29 0a 20 09 69 66 20 62 20 74 68 65 6e 0a 20 09 09 72 ind(s,."^%s*;")...if.b.then....r
1eae0 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 09 65 6e 64 0a 20 65 6e 64 0a 0a eturn.strsub(s,e+1)...end..end..
1eb00 20 2d 2d 20 74 72 79 20 65 6d 70 74 79 20 76 65 72 62 61 74 69 6d 20 6c 69 6e 65 0a 20 64 6f 0a .--.try.empty.verbatim.line..do.
1eb20 20 09 6c 6f 63 61 6c 20 62 2c 65 2c 63 6f 64 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 ..local.b,e,code.=.string.find(s
1eb40 2c 20 22 5e 25 73 2a 24 5c 6e 22 29 0a 20 09 69 66 20 62 20 74 68 65 6e 0a 20 09 09 72 65 74 75 ,."^%s*$\n")...if.b.then....retu
1eb60 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 09 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d rn.strsub(s,e+1)...end..end...--
1eb80 20 74 72 79 20 4c 75 61 20 63 6f 64 65 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 63 6f .try.Lua.code..do...local.b,e,co
1eba0 64 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 25 62 5c 31 5c 32 29 22 29 0a 20 de.=.strfind(s,"^%s*(%b\1\2)")..
1ebc0 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 43 6f 64 65 28 73 74 72 73 75 62 28 63 6f 64 65 2c 32 .if.b.then....Code(strsub(code,2
1ebe0 2c 2d 32 29 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 ,-2))....return.strsub(s,e+1)...
1ec00 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 43 20 63 6f 64 65 0a 20 64 6f 0a 20 20 6c end..end...--.try.C.code..do...l
1ec20 6f 63 61 6c 20 62 2c 65 2c 63 6f 64 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 ocal.b,e,code.=.strfind(s,"^%s*(
1ec40 25 62 5c 33 5c 34 29 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 09 63 6f 64 65 20 3d 20 27 7b %b\3\4)")...if.b.then..code.=.'{
1ec60 27 2e 2e 73 74 72 73 75 62 28 63 6f 64 65 2c 32 2c 2d 32 29 2e 2e 27 5c 6e 7d 5c 6e 27 0a 09 56 '..strsub(code,2,-2)..'\n}\n'..V
1ec80 65 72 62 61 74 69 6d 28 63 6f 64 65 2c 27 72 27 29 20 20 20 20 20 20 20 20 2d 2d 20 76 65 72 62 erbatim(code,'r')........--.verb
1eca0 61 74 69 6d 20 63 6f 64 65 20 66 6f 72 20 27 72 27 65 67 69 73 74 65 72 20 66 72 61 67 6d 65 6e atim.code.for.'r'egister.fragmen
1ecc0 74 0a 09 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 t..return.strsub(s,e+1)...end..e
1ece0 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 43 20 63 6f 64 65 20 66 6f 72 20 70 72 65 61 6d 62 6c 65 20 nd...--.try.C.code.for.preamble.
1ed00 73 65 63 74 69 6f 6e 0a 20 64 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c 65 2c 63 6f 64 65 20 3d 20 73 section..do...local.b,e,code.=.s
1ed20 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 28 25 62 5c 35 5c 36 29 22 29 0a 20 09 tring.find(s,."^%s*(%b\5\6)")...
1ed40 69 66 20 62 20 74 68 65 6e 0a 20 09 09 63 6f 64 65 20 3d 20 73 74 72 69 6e 67 2e 73 75 62 28 63 if.b.then....code.=.string.sub(c
1ed60 6f 64 65 2c 20 32 2c 20 2d 32 29 2e 2e 22 5c 6e 22 0a 09 09 56 65 72 62 61 74 69 6d 28 63 6f 64 ode,.2,.-2).."\n"...Verbatim(cod
1ed80 65 2c 20 27 27 29 0a 09 09 72 65 74 75 72 6e 20 73 74 72 69 6e 67 2e 73 75 62 28 73 2c 20 65 2b e,.'')...return.string.sub(s,.e+
1eda0 31 29 0a 20 09 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 64 65 66 61 75 6c 74 5f 70 1)...end..end...--.try.default_p
1edc0 72 6f 70 65 72 74 79 20 64 69 72 65 63 74 69 76 65 0a 20 64 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c roperty.directive..do...local.b,
1ede0 65 2c 70 74 79 70 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 54 4f 4c 55 41 5f e,ptype.=.strfind(s,."^%s*TOLUA_
1ee00 50 52 4f 50 45 52 54 59 5f 54 59 50 45 25 73 2a 25 28 2b 25 73 2a 28 5b 5e 25 29 25 73 5d 2a 29 PROPERTY_TYPE%s*%(+%s*([^%)%s]*)
1ee20 25 73 2a 25 29 2b 25 73 2a 3b 3f 22 29 0a 20 09 69 66 20 62 20 74 68 65 6e 0a 20 09 09 69 66 20 %s*%)+%s*;?")...if.b.then....if.
1ee40 6e 6f 74 20 70 74 79 70 65 20 6f 72 20 70 74 79 70 65 20 3d 3d 20 22 22 20 74 68 65 6e 0a 20 09 not.ptype.or.ptype.==."".then...
1ee60 09 09 70 74 79 70 65 20 3d 20 22 64 65 66 61 75 6c 74 22 0a 20 09 09 65 6e 64 0a 20 09 09 73 65 ..ptype.=."default"....end....se
1ee80 6c 66 3a 73 65 74 5f 70 72 6f 70 65 72 74 79 5f 74 79 70 65 28 70 74 79 70 65 29 0a 09 20 09 72 lf:set_property_type(ptype)....r
1eea0 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 20 65 2b 31 29 0a 20 09 65 6e 64 0a 20 65 6e 64 0a eturn.strsub(s,.e+1)...end..end.
1eec0 0a 20 2d 2d 20 74 72 79 20 70 72 6f 74 65 63 74 65 64 5f 64 65 73 74 72 75 63 74 6f 72 20 64 69 ..--.try.protected_destructor.di
1eee0 72 65 63 74 69 76 65 0a 20 64 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c 65 20 3d 20 73 74 72 69 6e 67 rective..do...local.b,e.=.string
1ef00 2e 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 54 4f 4c 55 41 5f 50 52 4f 54 45 43 54 45 44 5f 44 45 .find(s,."^%s*TOLUA_PROTECTED_DE
1ef20 53 54 52 55 43 54 4f 52 25 73 2a 3b 3f 22 29 0a 09 69 66 20 62 20 74 68 65 6e 0a 09 09 69 66 20 STRUCTOR%s*;?")..if.b.then...if.
1ef40 73 65 6c 66 2e 73 65 74 5f 70 72 6f 74 65 63 74 65 64 5f 64 65 73 74 72 75 63 74 6f 72 20 74 68 self.set_protected_destructor.th
1ef60 65 6e 0a 09 20 09 09 73 65 6c 66 3a 73 65 74 5f 70 72 6f 74 65 63 74 65 64 5f 64 65 73 74 72 75 en.....self:set_protected_destru
1ef80 63 74 6f 72 28 74 72 75 65 29 0a 09 20 09 65 6e 64 0a 20 09 09 72 65 74 75 72 6e 20 73 74 72 73 ctor(true)....end....return.strs
1efa0 75 62 28 73 2c 20 65 2b 31 29 0a 20 09 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 27 ub(s,.e+1)...end..end...--.try.'
1efc0 65 78 74 65 72 6e 27 20 6b 65 79 77 6f 72 64 0a 20 64 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c 65 20 extern'.keyword..do...local.b,e.
1efe0 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 65 78 74 65 72 6e 25 73 2b 22 =.string.find(s,."^%s*extern%s+"
1f000 29 0a 20 09 69 66 20 62 20 74 68 65 6e 0a 09 09 2d 2d 20 64 6f 20 6e 6f 74 68 69 6e 67 0a 20 09 )...if.b.then...--.do.nothing...
1f020 09 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 20 65 2b 31 29 0a 20 09 65 6e 64 0a 20 65 6e .return.strsub(s,.e+1)...end..en
1f040 64 0a 0a 20 2d 2d 20 74 72 79 20 27 76 69 72 74 75 61 6c 27 20 6b 65 79 77 6f 72 6b 64 0a 20 64 d...--.try.'virtual'.keyworkd..d
1f060 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 o...local.b,e.=.string.find(s,."
1f080 5e 25 73 2a 76 69 72 74 75 61 6c 25 73 2b 22 29 0a 20 09 69 66 20 62 20 74 68 65 6e 0a 20 09 09 ^%s*virtual%s+")...if.b.then....
1f0a0 6d 65 74 68 6f 64 69 73 76 69 72 74 75 61 6c 20 3d 20 74 72 75 65 0a 20 09 09 72 65 74 75 72 6e methodisvirtual.=.true....return
1f0c0 20 73 74 72 73 75 62 28 73 2c 20 65 2b 31 29 0a 20 09 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 .strsub(s,.e+1)...end..end...--.
1f0e0 74 72 79 20 6c 61 62 65 6c 73 20 28 70 75 62 6c 69 63 2c 20 70 72 69 76 61 74 65 2c 20 65 74 63 try.labels.(public,.private,.etc
1f100 29 0a 20 64 6f 0a 20 09 6c 6f 63 61 6c 20 62 2c 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 )..do...local.b,e.=.string.find(
1f120 73 2c 20 22 5e 25 73 2a 25 77 2a 25 73 2a 3a 5b 5e 3a 5d 22 29 0a 20 09 69 66 20 62 20 74 68 65 s,."^%s*%w*%s*:[^:]")...if.b.the
1f140 6e 0a 20 09 09 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 20 65 29 20 2d 2d 20 70 72 65 73 n....return.strsub(s,.e).--.pres
1f160 65 72 76 65 20 74 68 65 20 5b 5e 3a 5d 0a 20 09 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 erve.the.[^:]...end..end...--.tr
1f180 79 20 6d 6f 64 75 6c 65 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 6e 61 6d 65 2c 62 6f y.module..do...local.b,e,name,bo
1f1a0 64 79 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 6d 6f 64 75 6c 65 25 73 25 73 2a 28 dy.=.strfind(s,"^%s*module%s%s*(
1f1c0 5b 5f 25 77 5d 5b 5f 25 77 5d 2a 29 25 73 2a 28 25 62 7b 7d 29 25 73 2a 22 29 0a 20 20 69 66 20 [_%w][_%w]*)%s*(%b{})%s*")...if.
1f1e0 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c b.then...._curr_code.=.strsub(s,
1f200 62 2c 65 29 0a 20 20 20 4d 6f 64 75 6c 65 28 6e 61 6d 65 2c 62 6f 64 79 29 0a 20 20 20 72 65 74 b,e)....Module(name,body)....ret
1f220 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d urn.strsub(s,e+1)...end..end...-
1f240 2d 20 74 72 79 20 6e 61 6d 65 73 61 70 63 65 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c -.try.namesapce..do...local.b,e,
1f260 6e 61 6d 65 2c 62 6f 64 79 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 6e 61 6d 65 73 name,body.=.strfind(s,"^%s*names
1f280 70 61 63 65 25 73 25 73 2a 28 5b 5f 25 77 5d 5b 5f 25 77 5d 2a 29 25 73 2a 28 25 62 7b 7d 29 25 pace%s%s*([_%w][_%w]*)%s*(%b{})%
1f2a0 73 2a 3b 3f 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 s*;?")...if.b.then...._curr_code
1f2c0 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a 20 20 20 4e 61 6d 65 73 70 61 63 65 28 6e 61 .=.strsub(s,b,e)....Namespace(na
1f2e0 6d 65 2c 62 6f 64 79 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 me,body)....return.strsub(s,e+1)
1f300 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 64 65 66 69 6e 65 0a 20 64 6f 0a ...end..end...--.try.define..do.
1f320 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 6e 61 6d 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 ..local.b,e,name.=.strfind(s,"^%
1f340 73 2a 23 64 65 66 69 6e 65 25 73 25 73 2a 28 5b 5e 25 73 5d 2a 29 5b 5e 5c 6e 5d 2a 5c 6e 25 73 s*#define%s%s*([^%s]*)[^\n]*\n%s
1f360 2a 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 *")...if.b.then...._curr_code.=.
1f380 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a 20 20 20 44 65 66 69 6e 65 28 6e 61 6d 65 29 0a 20 20 strsub(s,b,e)....Define(name)...
1f3a0 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e 64 .return.strsub(s,e+1)...end..end
1f3c0 0a 0a 20 2d 2d 20 74 72 79 20 65 6e 75 6d 65 72 61 74 65 73 0a 0a 20 64 6f 0a 20 20 6c 6f 63 61 ...--.try.enumerates...do...loca
1f3e0 6c 20 62 2c 65 2c 6e 61 6d 65 2c 62 6f 64 79 2c 76 61 72 6e 61 6d 65 20 3d 20 73 74 72 66 69 6e l.b,e,name,body,varname.=.strfin
1f400 64 28 73 2c 22 5e 25 73 2a 65 6e 75 6d 25 73 2b 28 25 53 2a 29 25 73 2a 28 25 62 7b 7d 29 25 73 d(s,"^%s*enum%s+(%S*)%s*(%b{})%s
1f420 2a 28 5b 5e 25 73 3b 5d 2a 29 25 73 2a 3b 3f 25 73 2a 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e *([^%s;]*)%s*;?%s*")...if.b.then
1f440 0a 20 20 20 2d 2d 65 72 72 6f 72 28 22 23 53 6f 72 72 79 2c 20 64 65 63 6c 61 72 61 74 69 6f 6e ....--error("#Sorry,.declaration
1f460 20 6f 66 20 65 6e 75 6d 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 20 6f 6e 20 74 68 65 20 73 .of.enums.and.variables.on.the.s
1f480 61 6d 65 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 2e 5c ame.statement.is.not.supported.\
1f4a0 6e 44 65 63 6c 61 72 65 20 79 6f 75 72 20 76 61 72 69 61 62 6c 65 20 73 65 70 61 72 61 74 65 6c nDeclare.your.variable.separatel
1f4c0 79 20 28 65 78 61 6d 70 6c 65 3a 20 27 22 2e 2e 6e 61 6d 65 2e 2e 22 20 22 2e 2e 76 61 72 6e 61 y.(example:.'"..name.."."..varna
1f4e0 6d 65 2e 2e 22 3b 27 29 22 29 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 me..";')")...._curr_code.=.strsu
1f500 62 28 73 2c 62 2c 65 29 0a 20 20 20 45 6e 75 6d 65 72 61 74 65 28 6e 61 6d 65 2c 62 6f 64 79 2c b(s,b,e)....Enumerate(name,body,
1f520 76 61 72 6e 61 6d 65 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 varname)....return.strsub(s,e+1)
1f540 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 2d 2d 20 64 6f 0a 2d 2d 20 20 6c 6f 63 61 6c 20 62 2c 65 ...end..end..--.do.--..local.b,e
1f560 2c 6e 61 6d 65 2c 62 6f 64 79 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 65 6e 75 6d ,name,body.=.strfind(s,"^%s*enum
1f580 25 73 2b 28 25 53 2a 29 25 73 2a 28 25 62 7b 7d 29 25 73 2a 3b 3f 25 73 2a 22 29 0a 2d 2d 20 20 %s+(%S*)%s*(%b{})%s*;?%s*").--..
1f5a0 69 66 20 62 20 74 68 65 6e 0a 2d 2d 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 if.b.then.--..._curr_code.=.strs
1f5c0 75 62 28 73 2c 62 2c 65 29 0a 2d 2d 20 20 20 45 6e 75 6d 65 72 61 74 65 28 6e 61 6d 65 2c 62 6f ub(s,b,e).--...Enumerate(name,bo
1f5e0 64 79 29 0a 2d 2d 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 2d 2d 20 dy).--..return.strsub(s,e+1).--.
1f600 20 65 6e 64 0a 2d 2d 20 65 6e 64 0a 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 62 6f 64 .end.--.end...do...local.b,e,bod
1f620 79 2c 6e 61 6d 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 74 79 70 65 64 65 66 25 y,name.=.strfind(s,"^%s*typedef%
1f640 73 2b 65 6e 75 6d 5b 5e 7b 5d 2a 28 25 62 7b 7d 29 25 73 2a 28 5b 25 77 5f 5d 5b 5e 25 73 5d 2a s+enum[^{]*(%b{})%s*([%w_][^%s]*
1f660 29 25 73 2a 3b 25 73 2a 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f )%s*;%s*")...if.b.then...._curr_
1f680 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a 20 20 20 45 6e 75 6d 65 72 61 74 code.=.strsub(s,b,e)....Enumerat
1f6a0 65 28 6e 61 6d 65 2c 62 6f 64 79 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c e(name,body)....return.strsub(s,
1f6c0 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 6f 70 65 72 61 74 6f e+1)...end..end...--.try.operato
1f6e0 72 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 64 65 63 6c 2c 6b 69 6e 64 2c 61 72 67 2c r..do...local.b,e,decl,kind,arg,
1f700 63 6f 6e 73 74 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5f 25 77 5d 5b 5f 25 const.=.strfind(s,"^%s*([_%w][_%
1f720 77 25 73 25 2a 26 3a 3c 3e 2c 5d 2d 25 73 2b 6f 70 65 72 61 74 6f 72 29 25 73 2a 28 5b 5e 25 73 w%s%*&:<>,]-%s+operator)%s*([^%s
1f740 5d 5b 5e 25 73 5d 2a 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f 3f 6e 3f 73 3f 74 3f 29 ][^%s]*)%s*(%b())%s*(c?o?n?s?t?)
1f760 25 73 2a 3b 25 73 2a 22 29 0a 20 20 69 66 20 6e 6f 74 20 62 20 74 68 65 6e 0a 09 09 20 2d 2d 20 %s*;%s*")...if.not.b.then....--.
1f780 74 72 79 20 69 6e 6c 69 6e 65 0a 20 20 20 62 2c 65 2c 64 65 63 6c 2c 6b 69 6e 64 2c 61 72 67 2c try.inline....b,e,decl,kind,arg,
1f7a0 63 6f 6e 73 74 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5f 25 77 5d 5b 5f 25 const.=.strfind(s,"^%s*([_%w][_%
1f7c0 77 25 73 25 2a 26 3a 3c 3e 2c 5d 2d 25 73 2b 6f 70 65 72 61 74 6f 72 29 25 73 2a 28 5b 5e 25 73 w%s%*&:<>,]-%s+operator)%s*([^%s
1f7e0 5d 5b 5e 25 73 5d 2a 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f 3f 6e 3f 73 3f 74 3f 29 ][^%s]*)%s*(%b())%s*(c?o?n?s?t?)
1f800 5b 25 73 5c 6e 5d 2a 25 62 7b 7d 25 73 2a 3b 3f 25 73 2a 22 29 0a 20 20 65 6e 64 0a 20 20 69 66 [%s\n]*%b{}%s*;?%s*")...end...if
1f820 20 6e 6f 74 20 62 20 74 68 65 6e 0a 20 20 09 2d 2d 20 74 72 79 20 63 61 73 74 20 6f 70 65 72 61 .not.b.then....--.try.cast.opera
1f840 74 6f 72 0a 20 20 09 62 2c 65 2c 64 65 63 6c 2c 6b 69 6e 64 2c 61 72 67 2c 63 6f 6e 73 74 20 3d tor....b,e,decl,kind,arg,const.=
1f860 20 73 74 72 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 28 6f 70 65 72 61 74 6f 72 29 25 73 2b 28 5b .strfind(s,."^%s*(operator)%s+([
1f880 25 77 5f 3a 25 64 3c 3e 25 2a 25 26 25 73 5d 2b 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f %w_:%d<>%*%&%s]+)%s*(%b())%s*(c?
1f8a0 6f 3f 6e 3f 73 3f 74 3f 29 22 29 3b 0a 20 20 09 69 66 20 62 20 74 68 65 6e 0a 20 20 09 09 6c 6f o?n?s?t?)");....if.b.then.....lo
1f8c0 63 61 6c 20 5f 2c 69 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 25 cal._,ie.=.string.find(s,."^%s*%
1f8e0 62 7b 7d 22 2c 20 65 2b 31 29 0a 20 20 09 09 69 66 20 69 65 20 74 68 65 6e 0a 20 20 09 09 09 65 b{}",.e+1).....if.ie.then......e
1f900 20 3d 20 69 65 0a 20 20 09 09 65 6e 64 0a 20 20 09 65 6e 64 0a 20 20 65 6e 64 0a 20 20 69 66 20 .=.ie.....end....end...end...if.
1f920 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c b.then...._curr_code.=.strsub(s,
1f940 62 2c 65 29 0a 20 20 20 4f 70 65 72 61 74 6f 72 28 64 65 63 6c 2c 6b 69 6e 64 2c 61 72 67 2c 63 b,e)....Operator(decl,kind,arg,c
1f960 6f 6e 73 74 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 onst)....return.strsub(s,e+1)...
1f980 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 66 75 6e 63 74 69 6f 6e 0a 20 64 6f 0a 20 end..end...--.try.function..do..
1f9a0 20 2d 2d 6c 6f 63 61 6c 20 62 2c 65 2c 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 20 3d 20 73 74 .--local.b,e,decl,arg,const.=.st
1f9c0 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 7e 5f 25 77 5d 5b 5f 40 25 77 25 73 25 2a 26 3a 3c rfind(s,"^%s*([~_%w][_@%w%s%*&:<
1f9e0 3e 5d 2a 5b 5f 25 77 5d 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f 3f 6e 3f 73 3f 74 3f >]*[_%w])%s*(%b())%s*(c?o?n?s?t?
1fa00 29 25 73 2a 3d 3f 25 73 2a 30 3f 25 73 2a 3b 25 73 2a 22 29 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 )%s*=?%s*0?%s*;%s*")...local.b,e
1fa20 2c 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 2c 76 69 72 74 20 3d 20 73 74 72 66 69 6e 64 28 73 ,decl,arg,const,virt.=.strfind(s
1fa40 2c 22 5e 25 73 2a 28 5b 5e 25 28 5c 6e 5d 2b 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f ,"^%s*([^%(\n]+)%s*(%b())%s*(c?o
1fa60 3f 6e 3f 73 3f 74 3f 29 25 73 2a 28 3d 3f 25 73 2a 30 3f 29 25 73 2a 3b 25 73 2a 22 29 0a 20 20 ?n?s?t?)%s*(=?%s*0?)%s*;%s*")...
1fa80 69 66 20 6e 6f 74 20 62 20 74 68 65 6e 0a 20 20 09 2d 2d 20 74 72 79 20 66 75 6e 63 74 69 6f 6e if.not.b.then....--.try.function
1faa0 20 77 69 74 68 20 74 65 6d 70 6c 61 74 65 0a 20 20 09 62 2c 65 2c 64 65 63 6c 2c 61 72 67 2c 63 .with.template....b,e,decl,arg,c
1fac0 6f 6e 73 74 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 7e 5f 25 77 5d 5b 5f 40 onst.=.strfind(s,"^%s*([~_%w][_@
1fae0 25 77 25 73 25 2a 26 3a 3c 3e 5d 2a 5b 5f 25 77 5d 25 62 3c 3e 29 25 73 2a 28 25 62 28 29 29 25 %w%s%*&:<>]*[_%w]%b<>)%s*(%b())%
1fb00 73 2a 28 63 3f 6f 3f 6e 3f 73 3f 74 3f 29 25 73 2a 3d 3f 25 73 2a 30 3f 25 73 2a 3b 25 73 2a 22 s*(c?o?n?s?t?)%s*=?%s*0?%s*;%s*"
1fb20 29 0a 20 20 65 6e 64 0a 20 20 69 66 20 6e 6f 74 20 62 20 74 68 65 6e 0a 20 20 20 2d 2d 20 74 72 )...end...if.not.b.then....--.tr
1fb40 79 20 61 20 73 69 6e 67 6c 65 20 6c 65 74 74 65 72 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 0a y.a.single.letter.function.name.
1fb60 20 20 20 62 2c 65 2c 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 20 3d 20 73 74 72 66 69 6e 64 28 ...b,e,decl,arg,const.=.strfind(
1fb80 73 2c 22 5e 25 73 2a 28 5b 5f 25 77 5d 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f 3f 6e s,"^%s*([_%w])%s*(%b())%s*(c?o?n
1fba0 3f 73 3f 74 3f 29 25 73 2a 3b 25 73 2a 22 29 0a 20 20 65 6e 64 0a 20 20 69 66 20 6e 6f 74 20 62 ?s?t?)%s*;%s*")...end...if.not.b
1fbc0 20 74 68 65 6e 0a 20 20 20 2d 2d 20 74 72 79 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 .then....--.try.function.pointer
1fbe0 0a 20 20 20 62 2c 65 2c 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 20 3d 20 73 74 72 66 69 6e 64 ....b,e,decl,arg,const.=.strfind
1fc00 28 73 2c 22 5e 25 73 2a 28 5b 5e 25 28 3b 5c 6e 5d 2b 25 62 28 29 29 25 73 2a 28 25 62 28 29 29 (s,"^%s*([^%(;\n]+%b())%s*(%b())
1fc20 25 73 2a 3b 25 73 2a 22 29 0a 20 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 20 64 65 63 6c 20 %s*;%s*")....if.b.then.....decl.
1fc40 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 64 65 63 6c 2c 20 22 25 28 25 73 2a 25 2a 28 5b 5e 25 =.string.gsub(decl,."%(%s*%*([^%
1fc60 29 5d 2a 29 25 73 2a 25 29 22 2c 20 22 20 25 31 20 22 29 0a 20 20 20 65 6e 64 0a 20 20 65 6e 64 )]*)%s*%)",.".%1.")....end...end
1fc80 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 09 69 66 20 76 69 72 74 20 61 6e 64 20 73 74 72 69 ...if.b.then....if.virt.and.stri
1fca0 6e 67 2e 66 69 6e 64 28 76 69 72 74 2c 20 22 5b 3d 30 5d 22 29 20 74 68 65 6e 0a 20 20 09 09 69 ng.find(virt,."[=0]").then.....i
1fcc0 66 20 73 65 6c 66 2e 66 6c 61 67 73 20 74 68 65 6e 0a 20 20 09 09 09 73 65 6c 66 2e 66 6c 61 67 f.self.flags.then......self.flag
1fce0 73 2e 70 75 72 65 5f 76 69 72 74 75 61 6c 20 3d 20 74 72 75 65 0a 20 20 09 09 65 6e 64 0a 20 20 s.pure_virtual.=.true.....end...
1fd00 09 65 6e 64 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c .end...._curr_code.=.strsub(s,b,
1fd20 65 29 0a 20 20 20 46 75 6e 63 74 69 6f 6e 28 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 29 0a 20 e)....Function(decl,arg,const)..
1fd40 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e ..return.strsub(s,e+1)...end..en
1fd60 64 0a 0a 20 2d 2d 20 74 72 79 20 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 0a 20 64 6f 0a 20 d...--.try.inline.function..do..
1fd80 20 6c 6f 63 61 6c 20 62 2c 65 2c 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 20 3d 20 73 74 72 66 .local.b,e,decl,arg,const.=.strf
1fda0 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5e 25 28 5c 6e 5d 2b 29 25 73 2a 28 25 62 28 29 29 25 73 ind(s,"^%s*([^%(\n]+)%s*(%b())%s
1fdc0 2a 28 63 3f 6f 3f 6e 3f 73 3f 74 3f 29 5b 5e 3b 7b 5d 2a 25 62 7b 7d 25 73 2a 3b 3f 25 73 2a 22 *(c?o?n?s?t?)[^;{]*%b{}%s*;?%s*"
1fde0 29 0a 20 20 2d 2d 6c 6f 63 61 6c 20 62 2c 65 2c 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 20 3d )...--local.b,e,decl,arg,const.=
1fe00 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 7e 5f 25 77 5d 5b 5f 40 25 77 25 73 25 2a .strfind(s,"^%s*([~_%w][_@%w%s%*
1fe20 26 3a 3c 3e 5d 2a 5b 5f 25 77 3e 5d 29 25 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f 3f 6e 3f &:<>]*[_%w>])%s*(%b())%s*(c?o?n?
1fe40 73 3f 74 3f 29 5b 5e 3b 5d 2a 25 62 7b 7d 25 73 2a 3b 3f 25 73 2a 22 29 0a 20 20 69 66 20 6e 6f s?t?)[^;]*%b{}%s*;?%s*")...if.no
1fe60 74 20 62 20 74 68 65 6e 0a 20 20 20 2d 2d 20 74 72 79 20 61 20 73 69 6e 67 6c 65 20 6c 65 74 74 t.b.then....--.try.a.single.lett
1fe80 65 72 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 0a 20 20 20 62 2c 65 2c 64 65 63 6c 2c 61 72 67 er.function.name....b,e,decl,arg
1fea0 2c 63 6f 6e 73 74 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5f 25 77 5d 29 25 ,const.=.strfind(s,"^%s*([_%w])%
1fec0 73 2a 28 25 62 28 29 29 25 73 2a 28 63 3f 6f 3f 6e 3f 73 3f 74 3f 29 2e 2d 25 62 7b 7d 25 73 2a s*(%b())%s*(c?o?n?s?t?).-%b{}%s*
1fee0 3b 3f 25 73 2a 22 29 0a 20 20 65 6e 64 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 ;?%s*")...end...if.b.then...._cu
1ff00 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a 20 20 20 46 75 6e 63 74 rr_code.=.strsub(s,b,e)....Funct
1ff20 69 6f 6e 28 64 65 63 6c 2c 61 72 67 2c 63 6f 6e 73 74 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 ion(decl,arg,const)....return.st
1ff40 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 rsub(s,e+1)...end..end...--.try.
1ff60 63 6c 61 73 73 0a 20 64 6f 0a 09 20 6c 6f 63 61 6c 20 62 2c 65 2c 6e 61 6d 65 2c 62 61 73 65 2c class..do...local.b,e,name,base,
1ff80 62 6f 64 79 0a 09 09 62 61 73 65 20 3d 20 27 27 20 62 6f 64 79 20 3d 20 27 27 0a 09 09 62 2c 65 body...base.=.''.body.=.''...b,e
1ffa0 2c 6e 61 6d 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 63 6c 61 73 73 25 73 2a 28 ,name.=.strfind(s,"^%s*class%s*(
1ffc0 5b 5f 25 77 5d 5b 5f 25 77 40 5d 2a 29 25 73 2a 3b 22 29 20 20 2d 2d 20 64 75 6d 6d 79 20 63 6c [_%w][_%w@]*)%s*;")..--.dummy.cl
1ffe0 61 73 73 0a 09 09 6c 6f 63 61 6c 20 64 75 6d 6d 79 20 3d 20 66 61 6c 73 65 0a 09 09 69 66 20 6e ass...local.dummy.=.false...if.n
20000 6f 74 20 62 20 74 68 65 6e 0a 09 09 09 62 2c 65 2c 6e 61 6d 65 20 3d 20 73 74 72 66 69 6e 64 28 ot.b.then....b,e,name.=.strfind(
20020 73 2c 22 5e 25 73 2a 73 74 72 75 63 74 25 73 2a 28 5b 5f 25 77 5d 5b 5f 25 77 40 5d 2a 29 25 73 s,"^%s*struct%s*([_%w][_%w@]*)%s
20040 2a 3b 22 29 20 20 20 20 2d 2d 20 64 75 6d 6d 79 20 73 74 72 75 63 74 0a 09 09 09 69 66 20 6e 6f *;")....--.dummy.struct....if.no
20060 74 20 62 20 74 68 65 6e 0a 09 09 09 09 62 2c 65 2c 6e 61 6d 65 2c 62 61 73 65 2c 62 6f 64 79 20 t.b.then.....b,e,name,base,body.
20080 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 63 6c 61 73 73 25 73 2a 28 5b 5f 25 77 5d 5b =.strfind(s,"^%s*class%s*([_%w][
200a0 5f 25 77 40 5d 2a 29 25 73 2a 28 5b 5e 7b 5d 2d 29 25 73 2a 28 25 62 7b 7d 29 25 73 2a 22 29 0a _%w@]*)%s*([^{]-)%s*(%b{})%s*").
200c0 09 09 09 09 69 66 20 6e 6f 74 20 62 20 74 68 65 6e 0a 09 09 09 09 09 62 2c 65 2c 6e 61 6d 65 2c ....if.not.b.then......b,e,name,
200e0 62 61 73 65 2c 62 6f 64 79 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 73 74 72 75 63 base,body.=.strfind(s,"^%s*struc
20100 74 25 73 2b 28 5b 5f 25 77 5d 5b 5f 25 77 40 5d 2a 29 25 73 2a 28 5b 5e 7b 5d 2d 29 25 73 2a 28 t%s+([_%w][_%w@]*)%s*([^{]-)%s*(
20120 25 62 7b 7d 29 25 73 2a 22 29 0a 09 09 09 09 09 69 66 20 6e 6f 74 20 62 20 74 68 65 6e 0a 09 09 %b{})%s*")......if.not.b.then...
20140 09 09 09 09 62 2c 65 2c 6e 61 6d 65 2c 62 61 73 65 2c 62 6f 64 79 20 3d 20 73 74 72 66 69 6e 64 ....b,e,name,base,body.=.strfind
20160 28 73 2c 22 5e 25 73 2a 75 6e 69 6f 6e 25 73 2a 28 5b 5f 25 77 5d 5b 5f 25 77 40 5d 2a 29 25 73 (s,"^%s*union%s*([_%w][_%w@]*)%s
20180 2a 28 5b 5e 7b 5d 2d 29 25 73 2a 28 25 62 7b 7d 29 25 73 2a 22 29 0a 09 09 09 09 09 09 69 66 20 *([^{]-)%s*(%b{})%s*").......if.
201a0 6e 6f 74 20 62 20 74 68 65 6e 0a 09 09 09 09 09 09 09 62 61 73 65 20 3d 20 27 27 0a 09 09 09 09 not.b.then........base.=.''.....
201c0 09 09 09 62 2c 65 2c 62 6f 64 79 2c 6e 61 6d 65 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 ...b,e,body,name.=.strfind(s,"^%
201e0 73 2a 74 79 70 65 64 65 66 25 73 25 73 2a 73 74 72 75 63 74 25 73 25 73 2a 5b 5f 25 77 5d 2a 25 s*typedef%s%s*struct%s%s*[_%w]*%
20200 73 2a 28 25 62 7b 7d 29 25 73 2a 28 5b 5f 25 77 5d 5b 5f 25 77 40 5d 2a 29 25 73 2a 3b 22 29 0a s*(%b{})%s*([_%w][_%w@]*)%s*;").
20220 09 09 09 09 09 09 65 6e 64 0a 09 09 09 09 09 65 6e 64 0a 09 09 09 09 65 6e 64 0a 09 09 09 65 6c ......end......end.....end....el
20240 73 65 20 64 75 6d 6d 79 20 3d 20 31 20 65 6e 64 0a 09 09 65 6c 73 65 20 64 75 6d 6d 79 20 3d 20 se.dummy.=.1.end...else.dummy.=.
20260 31 20 65 6e 64 0a 09 09 69 66 20 62 20 74 68 65 6e 0a 09 09 09 69 66 20 62 61 73 65 20 7e 3d 20 1.end...if.b.then....if.base.~=.
20280 27 27 20 74 68 65 6e 0a 09 09 09 09 62 61 73 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 62 ''.then.....base.=.string.gsub(b
202a0 61 73 65 2c 20 22 5e 25 73 2a 3a 25 73 2a 22 2c 20 22 22 29 0a 09 09 09 09 62 61 73 65 20 3d 20 ase,."^%s*:%s*",."").....base.=.
202c0 73 74 72 69 6e 67 2e 67 73 75 62 28 62 61 73 65 2c 20 22 25 73 2a 70 75 62 6c 69 63 25 73 2a 22 string.gsub(base,."%s*public%s*"
202e0 2c 20 22 22 29 0a 09 09 09 09 62 61 73 65 20 3d 20 73 70 6c 69 74 28 62 61 73 65 2c 20 22 2c 22 ,."").....base.=.split(base,.","
20300 29 0a 09 09 09 09 2d 2d 6c 6f 63 61 6c 20 62 2c 65 0a 09 09 09 09 2d 2d 62 2c 65 2c 62 61 73 65 ).....--local.b,e.....--b,e,base
20320 20 3d 20 73 74 72 66 69 6e 64 28 62 61 73 65 2c 22 2e 2d 28 5b 5f 25 77 5d 5b 5f 25 77 3c 3e 2c .=.strfind(base,".-([_%w][_%w<>,
20340 3a 5d 2a 29 24 22 29 0a 09 09 09 65 6c 73 65 0a 09 09 09 09 62 61 73 65 20 3d 20 7b 7d 0a 09 09 :]*)$")....else.....base.=.{}...
20360 09 65 6e 64 0a 09 09 09 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c .end...._curr_code.=.strsub(s,b,
20380 65 29 0a 09 09 09 43 6c 61 73 73 28 6e 61 6d 65 2c 62 61 73 65 2c 62 6f 64 79 29 0a 09 09 09 69 e)....Class(name,base,body)....i
203a0 66 20 6e 6f 74 20 64 75 6d 6d 79 20 74 68 65 6e 0a 09 09 09 09 76 61 72 62 2c 76 61 72 65 2c 76 f.not.dummy.then.....varb,vare,v
203c0 61 72 6e 61 6d 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 2c 20 22 5e 25 73 2a 28 5b 5f arname.=.string.find(s,."^%s*([_
203e0 25 77 5d 2b 29 25 73 2a 3b 22 2c 20 65 2b 31 29 0a 09 09 09 09 69 66 20 76 61 72 62 20 74 68 65 %w]+)%s*;",.e+1).....if.varb.the
20400 6e 0a 09 09 09 09 09 56 61 72 69 61 62 6c 65 28 6e 61 6d 65 2e 2e 22 20 22 2e 2e 76 61 72 6e 61 n......Variable(name.."."..varna
20420 6d 65 29 0a 09 09 09 09 09 65 20 3d 20 76 61 72 65 0a 09 09 09 09 65 6e 64 0a 09 09 09 65 6e 64 me)......e.=.vare.....end....end
20440 0a 09 09 09 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 09 09 65 6e 64 0a 09 ....return.strsub(s,e+1)...end..
20460 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 74 79 70 65 64 65 66 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c end...--.try.typedef..do...local
20480 20 62 2c 65 2c 74 79 70 65 73 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 74 79 70 65 .b,e,types.=.strfind(s,"^%s*type
204a0 64 65 66 25 73 25 73 2a 28 2e 2d 29 25 73 2a 3b 25 73 2a 22 29 0a 20 20 69 66 20 62 20 74 68 65 def%s%s*(.-)%s*;%s*")...if.b.the
204c0 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a n...._curr_code.=.strsub(s,b,e).
204e0 20 20 20 54 79 70 65 64 65 66 28 74 79 70 65 73 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 ...Typedef(types)....return.strs
20500 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 76 61 ub(s,e+1)...end..end...--.try.va
20520 72 69 61 62 6c 65 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 64 65 63 6c 20 3d 20 73 74 riable..do...local.b,e,decl.=.st
20540 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5f 25 77 5d 5b 5f 40 25 73 25 77 25 64 25 2a 26 3a rfind(s,"^%s*([_%w][_@%s%w%d%*&:
20560 3c 3e 2c 5d 2a 5b 5f 25 77 25 64 5d 29 25 73 2a 3b 25 73 2a 22 29 0a 20 20 69 66 20 62 20 74 68 <>,]*[_%w%d])%s*;%s*")...if.b.th
20580 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 en...._curr_code.=.strsub(s,b,e)
205a0 0a 0a 09 6c 6f 63 61 6c 20 6c 69 73 74 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 64 ...local.list.=.split_c_tokens(d
205c0 65 63 6c 2c 20 22 2c 22 29 0a 09 56 61 72 69 61 62 6c 65 28 6c 69 73 74 5b 31 5d 29 0a 09 69 66 ecl,.",")..Variable(list[1])..if
205e0 20 6c 69 73 74 2e 6e 20 3e 20 31 20 74 68 65 6e 0a 09 09 6c 6f 63 61 6c 20 5f 2c 5f 2c 74 79 70 .list.n.>.1.then...local._,_,typ
20600 65 20 3d 20 73 74 72 66 69 6e 64 28 6c 69 73 74 5b 31 5d 2c 20 22 28 2e 2d 29 25 73 2b 28 5b 5e e.=.strfind(list[1],."(.-)%s+([^
20620 25 73 5d 2a 29 24 22 29 3b 0a 0a 09 09 6c 6f 63 61 6c 20 69 20 3d 32 3b 0a 09 09 77 68 69 6c 65 %s]*)$");....local.i.=2;...while
20640 20 6c 69 73 74 5b 69 5d 20 64 6f 0a 09 09 09 56 61 72 69 61 62 6c 65 28 74 79 70 65 2e 2e 22 20 .list[i].do....Variable(type..".
20660 22 2e 2e 6c 69 73 74 5b 69 5d 29 0a 09 09 09 69 3d 69 2b 31 0a 09 09 65 6e 64 0a 09 65 6e 64 0a "..list[i])....i=i+1...end..end.
20680 20 20 20 2d 2d 56 61 72 69 61 62 6c 65 28 64 65 63 6c 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 ...--Variable(decl)....return.st
206a0 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 09 2d 2d 20 74 72 79 20 rsub(s,e+1)...end..end...--.try.
206c0 73 74 72 69 6e 67 0a 20 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 64 65 63 6c 20 3d 20 73 74 string..do...local.b,e,decl.=.st
206e0 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5f 25 77 5d 3f 5b 5f 25 73 25 77 25 64 5d 2d 63 68 rfind(s,"^%s*([_%w]?[_%s%w%d]-ch
20700 61 72 25 73 2b 5b 5f 40 25 77 25 64 5d 2a 25 73 2a 25 5b 25 73 2a 25 53 2b 25 73 2a 25 5d 29 25 ar%s+[_@%w%d]*%s*%[%s*%S+%s*%])%
20720 73 2a 3b 25 73 2a 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f s*;%s*")...if.b.then...._curr_co
20740 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a 20 20 20 56 61 72 69 61 62 6c 65 28 64 de.=.strsub(s,b,e)....Variable(d
20760 65 63 6c 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 ecl)....return.strsub(s,e+1)...e
20780 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 74 72 79 20 61 72 72 61 79 0a 20 64 6f 0a 20 20 6c 6f 63 nd..end...--.try.array..do...loc
207a0 61 6c 20 62 2c 65 2c 64 65 63 6c 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 5e 25 73 2a 28 5b 5f al.b,e,decl.=.strfind(s,"^%s*([_
207c0 25 77 5d 5b 5d 5b 5f 40 25 73 25 77 25 64 25 2a 26 3a 3c 3e 5d 2a 5b 5d 5f 25 77 25 64 5d 29 25 %w][][_@%s%w%d%*&:<>]*[]_%w%d])%
207e0 73 2a 3b 25 73 2a 22 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 5f 63 75 72 72 5f 63 6f s*;%s*")...if.b.then...._curr_co
20800 64 65 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2c 65 29 0a 20 20 20 41 72 72 61 79 28 64 65 63 6c de.=.strsub(s,b,e)....Array(decl
20820 29 0a 20 20 20 72 65 74 75 72 6e 20 73 74 72 73 75 62 28 73 2c 65 2b 31 29 0a 20 20 65 6e 64 0a )....return.strsub(s,e+1)...end.
20840 20 65 6e 64 0a 0a 20 2d 2d 20 6e 6f 20 6d 61 74 63 68 69 6e 67 0a 20 69 66 20 67 73 75 62 28 73 .end...--.no.matching..if.gsub(s
20860 2c 22 25 73 25 73 2a 22 2c 22 22 29 20 7e 3d 20 22 22 20 74 68 65 6e 0a 20 20 5f 63 75 72 72 5f ,"%s%s*","").~=."".then..._curr_
20880 63 6f 64 65 20 3d 20 73 0a 20 20 65 72 72 6f 72 28 22 23 70 61 72 73 65 20 65 72 72 6f 72 22 29 code.=.s...error("#parse.error")
208a0 0a 20 65 6c 73 65 0a 20 20 72 65 74 75 72 6e 20 22 22 0a 20 65 6e 64 0a 0a 65 6e 64 0a 0a 66 75 ..else...return.""..end..end..fu
208c0 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 70 61 72 73 65 20 28 73 29 0a nction.classContainer:parse.(s).
208e0 0a 09 2d 2d 73 65 6c 66 2e 63 75 72 72 5f 6d 65 6d 62 65 72 5f 61 63 63 65 73 73 20 3d 20 6e 69 ..--self.curr_member_access.=.ni
20900 6c 0a 0a 20 77 68 69 6c 65 20 73 20 7e 3d 20 27 27 20 64 6f 0a 20 20 73 20 3d 20 73 65 6c 66 3a l...while.s.~=.''.do...s.=.self:
20920 64 6f 70 61 72 73 65 28 73 29 0a 20 20 6d 65 74 68 6f 64 69 73 76 69 72 74 75 61 6c 20 3d 20 66 doparse(s)...methodisvirtual.=.f
20940 61 6c 73 65 0a 20 65 6e 64 0a 65 6e 64 0a 0a 0a 2d 2d 20 70 72 6f 70 65 72 74 79 20 74 79 70 65 alse..end.end...--.property.type
20960 73 0a 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 74 79 70 65 28 29 0a s..function.get_property_type().
20980 0a 09 72 65 74 75 72 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 3a 67 65 74 ..return.classContainer.curr:get
209a0 5f 70 72 6f 70 65 72 74 79 5f 74 79 70 65 28 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 _property_type().end..function.c
209c0 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 73 65 74 5f 70 72 6f 70 65 72 74 79 5f 74 79 70 65 28 lassContainer:set_property_type(
209e0 70 74 79 70 65 29 0a 09 70 74 79 70 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 70 74 79 70 ptype)..ptype.=.string.gsub(ptyp
20a00 65 2c 20 22 5e 25 73 2a 22 2c 20 22 22 29 0a 09 70 74 79 70 65 20 3d 20 73 74 72 69 6e 67 2e 67 e,."^%s*",."")..ptype.=.string.g
20a20 73 75 62 28 70 74 79 70 65 2c 20 22 25 73 2a 24 22 2c 20 22 22 29 0a 0a 09 73 65 6c 66 2e 70 72 sub(ptype,."%s*$",."")...self.pr
20a40 6f 70 65 72 74 79 5f 74 79 70 65 20 3d 20 70 74 79 70 65 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f operty_type.=.ptype.end..functio
20a60 6e 20 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 3a 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 74 79 n.classContainer:get_property_ty
20a80 70 65 28 29 0a 09 72 65 74 75 72 6e 20 73 65 6c 66 2e 70 72 6f 70 65 72 74 79 5f 74 79 70 65 20 pe()..return.self.property_type.
20aa0 6f 72 20 28 73 65 6c 66 2e 70 61 72 65 6e 74 20 61 6e 64 20 73 65 6c 66 2e 70 61 72 65 6e 74 3a or.(self.parent.and.self.parent:
20ac0 67 65 74 5f 70 72 6f 70 65 72 74 79 5f 74 79 70 65 28 29 29 20 6f 72 20 22 64 65 66 61 75 6c 74 get_property_type()).or."default
20ae0 22 0a 65 6e 64 20 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 70 61 63 6b 61 67 65 20 63 6c 61 73 73 0a ".end...--.tolua:.package.class.
20b00 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 --.Written.by.Waldemar.Celes.--.
20b20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 TeCGraf/PUC-Rio.--.Jul.1998.--.$
20b40 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 Id:.$..--.This.code.is.free.soft
20b60 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e ware;.you.can.redistribute.it.an
20b80 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 d/or.modify.it..--.The.software.
20ba0 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 provided.hereunder.is.on.an."as.
20bc0 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 is".basis,.and.--.the.author.has
20be0 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 .no.obligation.to.provide.mainte
20c00 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 nance,.support,.updates,.--.enha
20c20 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 0a 2d ncements,.or.modifications.....-
20c40 2d 20 50 61 63 6b 61 67 65 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 74 68 -.Package.class.--.Represents.th
20c60 65 20 77 68 6f 6c 65 20 70 61 63 6b 61 67 65 20 62 65 69 6e 67 20 62 6f 75 6e 64 2e 0a 2d 2d 20 e.whole.package.being.bound..--.
20c80 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 20 61 72 65 20 73 74 6f 72 65 64 3a The.following.fields.are.stored:
20ca0 0a 2d 2d 20 20 20 20 7b 69 7d 20 3d 20 6c 69 73 74 20 6f 66 20 6f 62 6a 65 63 74 73 20 69 6e 20 .--....{i}.=.list.of.objects.in.
20cc0 74 68 65 20 70 61 63 6b 61 67 65 2e 0a 63 6c 61 73 73 50 61 63 6b 61 67 65 20 3d 20 7b 0a 20 63 the.package..classPackage.=.{..c
20ce0 6c 61 73 73 74 79 70 65 20 3d 20 27 70 61 63 6b 61 67 65 27 0a 7d 0a 63 6c 61 73 73 50 61 63 6b lasstype.=.'package'.}.classPack
20d00 61 67 65 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 50 61 63 6b 61 67 65 0a 73 65 74 6d 65 age.__index.=.classPackage.setme
20d20 74 61 74 61 62 6c 65 28 63 6c 61 73 73 50 61 63 6b 61 67 65 2c 63 6c 61 73 73 43 6f 6e 74 61 69 tatable(classPackage,classContai
20d40 6e 65 72 29 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 ner)..--.Print.method.function.c
20d60 6c 61 73 73 50 61 63 6b 61 67 65 3a 70 72 69 6e 74 20 28 29 0a 20 70 72 69 6e 74 28 22 50 61 63 lassPackage:print.()..print("Pac
20d80 6b 61 67 65 3a 20 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 kage:."..self.name)..local.i=1..
20da0 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 20 73 65 6c 66 5b 69 5d 3a 70 72 69 6e 74 while.self[i].do...self[i]:print
20dc0 28 22 22 2c 22 22 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 ("","")...i.=.i+1..end.end..func
20de0 74 69 6f 6e 20 63 6c 61 73 73 50 61 63 6b 61 67 65 3a 70 72 65 70 72 6f 63 65 73 73 20 28 29 0a tion.classPackage:preprocess.().
20e00 0a 20 2d 2d 20 61 76 6f 69 64 20 70 72 65 70 72 6f 63 65 73 73 69 6e 67 20 65 6d 62 65 64 64 65 ..--.avoid.preprocessing.embedde
20e20 64 20 4c 75 61 20 63 6f 64 65 0a 20 6c 6f 63 61 6c 20 4c 20 3d 20 7b 7d 0a 20 73 65 6c 66 2e 63 d.Lua.code..local.L.=.{}..self.c
20e40 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c 6e 25 73 2a 25 24 25 5b 22 ode.=.gsub(self.code,"\n%s*%$%["
20e60 2c 22 5c 31 22 29 20 2d 2d 20 64 65 61 6c 20 77 69 74 68 20 65 6d 62 65 64 64 65 64 20 6c 75 61 ,"\1").--.deal.with.embedded.lua
20e80 20 63 6f 64 65 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 .code..self.code.=.gsub(self.cod
20ea0 65 2c 22 5c 6e 25 73 2a 25 24 25 5d 22 2c 22 5c 32 22 29 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d e,"\n%s*%$%]","\2")..self.code.=
20ec0 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 25 62 5c 31 5c 32 29 22 2c 20 20 20 20 20 .gsub(self.code,"(%b\1\2)",.....
20ee0 20 20 66 75 6e 63 74 69 6f 6e 20 28 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..function.(c)..................
20f00 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 74 69 ..............................ti
20f20 6e 73 65 72 74 28 4c 2c 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nsert(L,c)......................
20f40 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 72 65 74 75 72 6e ..........................return
20f60 20 22 5c 6e 23 5b 22 2e 2e 67 65 74 6e 28 4c 29 2e 2e 22 5d 23 22 0a 20 20 20 20 20 20 20 20 20 ."\n#["..getn(L).."]#"..........
20f80 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 ................................
20fa0 20 20 20 20 20 65 6e 64 29 0a 20 2d 2d 20 61 76 6f 69 64 20 70 72 65 70 72 6f 63 65 73 73 69 6e .....end)..--.avoid.preprocessin
20fc0 67 20 65 6d 62 65 64 64 65 64 20 43 20 63 6f 64 65 0a 20 6c 6f 63 61 6c 20 43 20 3d 20 7b 7d 0a g.embedded.C.code..local.C.=.{}.
20fe0 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c 6e 25 .self.code.=.gsub(self.code,"\n%
21000 73 2a 25 24 25 3c 22 2c 22 5c 33 22 29 20 2d 2d 20 64 65 61 6c 20 77 69 74 68 20 65 6d 62 65 64 s*%$%<","\3").--.deal.with.embed
21020 64 65 64 20 43 20 63 6f 64 65 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c ded.C.code..self.code.=.gsub(sel
21040 66 2e 63 6f 64 65 2c 22 5c 6e 25 73 2a 25 24 25 3e 22 2c 22 5c 34 22 29 0a 20 73 65 6c 66 2e 63 f.code,"\n%s*%$%>","\4")..self.c
21060 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 25 62 5c 33 5c 34 29 22 2c ode.=.gsub(self.code,"(%b\3\4)",
21080 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 28 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .......function.(c).............
210a0 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 ................................
210c0 20 20 20 74 69 6e 73 65 72 74 28 43 2c 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...tinsert(C,c).................
210e0 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 72 ...............................r
21100 65 74 75 72 6e 20 22 5c 6e 23 3c 22 2e 2e 67 65 74 6e 28 43 29 2e 2e 22 3e 23 22 0a 20 20 20 20 eturn."\n#<"..getn(C)..">#".....
21120 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 ................................
21140 20 20 20 20 20 20 20 20 20 20 65 6e 64 29 0a 20 2d 2d 20 61 76 6f 69 64 20 70 72 65 70 72 6f 63 ..........end)..--.avoid.preproc
21160 65 73 73 69 6e 67 20 65 6d 62 65 64 64 65 64 20 43 20 63 6f 64 65 0a 20 73 65 6c 66 2e 63 6f 64 essing.embedded.C.code..self.cod
21180 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c 6e 25 73 2a 25 24 25 7b 22 2c 22 e.=.gsub(self.code,"\n%s*%$%{","
211a0 5c 35 22 29 20 2d 2d 20 64 65 61 6c 20 77 69 74 68 20 65 6d 62 65 64 64 65 64 20 43 20 63 6f 64 \5").--.deal.with.embedded.C.cod
211c0 65 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c e..self.code.=.gsub(self.code,"\
211e0 6e 25 73 2a 25 24 25 7d 22 2c 22 5c 36 22 29 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 n%s*%$%}","\6")..self.code.=.gsu
21200 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 25 62 5c 35 5c 36 29 22 2c 20 20 20 20 20 20 20 66 75 b(self.code,"(%b\5\6)",.......fu
21220 6e 63 74 69 6f 6e 20 28 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nction.(c)......................
21240 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 74 69 6e 73 65 72 ..........................tinser
21260 74 28 43 2c 63 29 0a 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 t(C,c)..........................
21280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 22 5c 6e ......................return."\n
212a0 23 3c 22 2e 2e 67 65 74 6e 28 43 29 2e 2e 22 3e 23 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 #<"..getn(C)..">#"..............
212c0 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 ................................
212e0 20 65 6e 64 29 0a 0a 20 2d 2d 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e .end)...--self.code.=.gsub(self.
21300 63 6f 64 65 2c 22 5c 6e 25 73 2a 23 5b 5e 64 5d 5b 5e 5c 6e 5d 2a 5c 6e 22 2c 20 22 5c 6e 5c 6e code,"\n%s*#[^d][^\n]*\n",."\n\n
21320 22 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 69 72 ").--.eliminate.preprocessor.dir
21340 65 63 74 69 76 65 73 20 74 68 61 74 20 64 6f 6e 27 74 20 73 74 61 72 74 20 77 69 74 68 20 27 64 ectives.that.don't.start.with.'d
21360 27 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c '..self.code.=.gsub(self.code,"\
21380 6e 5b 20 5c 74 5d 2a 23 5b 20 5c 74 5d 2a 5b 5e 64 25 3c 25 5b 5d 22 2c 20 22 5c 6e 2f 2f 22 29 n[.\t]*#[.\t]*[^d%<%[]",."\n//")
213a0 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 69 72 65 63 .--.eliminate.preprocessor.direc
213c0 74 69 76 65 73 20 74 68 61 74 20 64 6f 6e 27 74 20 73 74 61 72 74 20 77 69 74 68 20 27 64 27 0a tives.that.don't.start.with.'d'.
213e0 0a 20 2d 2d 20 61 76 6f 69 64 20 70 72 65 70 72 6f 63 65 73 73 69 6e 67 20 76 65 72 62 61 74 69 ..--.avoid.preprocessing.verbati
21400 6d 20 6c 69 6e 65 73 0a 20 6c 6f 63 61 6c 20 56 20 3d 20 7b 7d 0a 20 73 65 6c 66 2e 63 6f 64 65 m.lines..local.V.=.{}..self.code
21420 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c 6e 28 25 73 2a 25 24 5b 5e 25 5b 25 .=.gsub(self.code,"\n(%s*%$[^%[%
21440 5d 5d 5b 5e 5c 6e 5d 2a 29 22 2c 66 75 6e 63 74 69 6f 6e 20 28 76 29 0a 20 20 20 20 20 20 20 20 ]][^\n]*)",function.(v).........
21460 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 ................................
21480 20 20 20 20 20 20 20 74 69 6e 73 65 72 74 28 56 2c 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .......tinsert(V,v).............
214a0 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 ................................
214c0 20 20 20 72 65 74 75 72 6e 20 22 5c 6e 23 22 2e 2e 67 65 74 6e 28 56 29 2e 2e 22 23 22 0a 20 20 ...return."\n#"..getn(V).."#"...
214e0 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 ................................
21500 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 64 29 0a 0a 20 2d 2d 20 70 65 72 66 6f 72 6d 20 67 6c ............end)...--.perform.gl
21520 6f 62 61 6c 20 73 75 62 73 74 69 74 75 74 69 6f 6e 0a 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 obal.substitution...self.code.=.
21540 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 2f 2f 5b 5e 5c 6e 5d 2a 29 22 2c 22 22 29 20 gsub(self.code,"(//[^\n]*)","").
21560 20 20 20 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 43 2b 2b 20 63 6f 6d 6d 65 6e 74 73 0a 20 73 ....--.eliminate.C++.comments..s
21580 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 2f 25 2a 22 2c elf.code.=.gsub(self.code,"/%*",
215a0 22 5c 31 22 29 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 "\1")..self.code.=.gsub(self.cod
215c0 65 2c 22 25 2a 2f 22 2c 22 5c 32 22 29 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 e,"%*/","\2")..self.code.=.gsub(
215e0 73 65 6c 66 2e 63 6f 64 65 2c 22 25 62 5c 31 5c 32 22 2c 22 22 29 0a 20 73 65 6c 66 2e 63 6f 64 self.code,"%b\1\2","")..self.cod
21600 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c 31 22 2c 22 2f 25 2a 22 29 0a 20 e.=.gsub(self.code,"\1","/%*")..
21620 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 5c 32 22 2c self.code.=.gsub(self.code,"\2",
21640 22 25 2a 2f 22 29 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f "%*/")..self.code.=.gsub(self.co
21660 64 65 2c 22 25 73 2a 40 25 73 2a 22 2c 22 40 22 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 73 de,"%s*@%s*","@").--.eliminate.s
21680 70 61 63 65 73 20 62 65 73 69 64 65 20 40 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 paces.beside.@..self.code.=.gsub
216a0 28 73 65 6c 66 2e 63 6f 64 65 2c 22 25 73 3f 69 6e 6c 69 6e 65 28 25 73 29 22 2c 22 25 31 22 29 (self.code,"%s?inline(%s)","%1")
216c0 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 27 69 6e 6c 69 6e 65 27 20 6b 65 79 77 6f 72 64 0a 20 .--.eliminate.'inline'.keyword..
216e0 2d 2d 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 25 73 --self.code.=.gsub(self.code,"%s
21700 3f 65 78 74 65 72 6e 28 25 73 29 22 2c 22 25 31 22 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 ?extern(%s)","%1").--.eliminate.
21720 27 65 78 74 65 72 6e 27 20 6b 65 79 77 6f 72 64 0a 20 2d 2d 73 65 6c 66 2e 63 6f 64 65 20 3d 20 'extern'.keyword..--self.code.=.
21740 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 25 73 3f 76 69 72 74 75 61 6c 28 25 73 29 22 2c gsub(self.code,"%s?virtual(%s)",
21760 22 25 31 22 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 27 76 69 72 74 75 61 6c 27 20 6b 65 79 "%1").--.eliminate.'virtual'.key
21780 77 6f 72 64 0a 20 2d 2d 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f word..--self.code.=.gsub(self.co
217a0 64 65 2c 22 70 75 62 6c 69 63 3a 22 2c 22 22 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 27 70 de,"public:","").--.eliminate.'p
217c0 75 62 6c 69 63 3a 27 20 6b 65 79 77 6f 72 64 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 ublic:'.keyword..self.code.=.gsu
217e0 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 5b 5e 25 77 5f 5d 29 76 6f 69 64 25 73 2a 25 2a 22 2c b(self.code,"([^%w_])void%s*%*",
21800 22 25 31 5f 75 73 65 72 64 61 74 61 20 22 29 20 2d 2d 20 73 75 62 73 74 69 74 75 74 65 20 27 76 "%1_userdata.").--.substitute.'v
21820 6f 69 64 2a 27 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 oid*'..self.code.=.gsub(self.cod
21840 65 2c 22 28 5b 5e 25 77 5f 5d 29 76 6f 69 64 25 73 2a 25 2a 22 2c 22 25 31 5f 75 73 65 72 64 61 e,"([^%w_])void%s*%*","%1_userda
21860 74 61 20 22 29 20 2d 2d 20 73 75 62 73 74 69 74 75 74 65 20 27 76 6f 69 64 2a 27 0a 20 73 65 6c ta.").--.substitute.'void*'..sel
21880 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 5b 5e 25 77 5f 5d f.code.=.gsub(self.code,"([^%w_]
218a0 29 63 68 61 72 25 73 2a 25 2a 22 2c 22 25 31 5f 63 73 74 72 69 6e 67 20 22 29 20 20 2d 2d 20 73 )char%s*%*","%1_cstring.")..--.s
218c0 75 62 73 74 69 74 75 74 65 20 27 63 68 61 72 2a 27 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 ubstitute.'char*'..self.code.=.g
218e0 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 28 5b 5e 25 77 5f 5d 29 6c 75 61 5f 53 74 61 74 65 sub(self.code,"([^%w_])lua_State
21900 25 73 2a 25 2a 22 2c 22 25 31 5f 6c 73 74 61 74 65 20 22 29 20 20 2d 2d 20 73 75 62 73 74 69 74 %s*%*","%1_lstate.")..--.substit
21920 75 74 65 20 27 6c 75 61 5f 53 74 61 74 65 2a 27 0a 0a 20 2d 2d 20 72 65 73 74 6f 72 65 20 65 6d ute.'lua_State*'...--.restore.em
21940 62 65 64 64 65 64 20 4c 75 61 20 63 6f 64 65 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 bedded.Lua.code..self.code.=.gsu
21960 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 25 23 25 5b 28 25 64 2b 29 25 5d 25 23 22 2c 66 75 6e 63 b(self.code,"%#%[(%d+)%]%#",func
21980 74 69 6f 6e 20 28 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion.(n)........................
219a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 4c 5b .......................return.L[
219c0 74 6f 6e 75 6d 62 65 72 28 6e 29 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tonumber(n)]....................
219e0 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 65 6e 64 29 0a 20 2d .........................end)..-
21a00 2d 20 72 65 73 74 6f 72 65 20 65 6d 62 65 64 64 65 64 20 43 20 63 6f 64 65 0a 20 73 65 6c 66 2e -.restore.embedded.C.code..self.
21a20 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 25 23 25 3c 28 25 64 2b 29 code.=.gsub(self.code,"%#%<(%d+)
21a40 25 3e 25 23 22 2c 66 75 6e 63 74 69 6f 6e 20 28 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 %>%#",function.(n)..............
21a60 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 ................................
21a80 72 65 74 75 72 6e 20 43 5b 74 6f 6e 75 6d 62 65 72 28 6e 29 5d 0a 20 20 20 20 20 20 20 20 20 20 return.C[tonumber(n)]...........
21aa0 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 ................................
21ac0 20 20 65 6e 64 29 0a 20 2d 2d 20 72 65 73 74 6f 72 65 20 76 65 72 62 61 74 69 6d 20 6c 69 6e 65 ..end)..--.restore.verbatim.line
21ae0 73 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 67 73 75 62 28 73 65 6c 66 2e 63 6f 64 65 2c 22 25 s..self.code.=.gsub(self.code,"%
21b00 23 28 25 64 2b 29 25 23 22 2c 66 75 6e 63 74 69 6f 6e 20 28 6e 29 0a 20 20 20 20 20 20 20 20 20 #(%d+)%#",function.(n)..........
21b20 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 ................................
21b40 72 65 74 75 72 6e 20 56 5b 74 6f 6e 75 6d 62 65 72 28 6e 29 5d 0a 20 20 20 20 20 20 20 20 20 20 return.V[tonumber(n)]...........
21b60 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 65 6e ..............................en
21b80 64 29 0a 0a 20 73 65 6c 66 2e 63 6f 64 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 65 6c d)...self.code.=.string.gsub(sel
21ba0 66 2e 63 6f 64 65 2c 20 22 5c 6e 25 73 2a 25 24 28 5b 5e 5c 6e 5d 2b 29 22 2c 20 66 75 6e 63 74 f.code,."\n%s*%$([^\n]+)",.funct
21bc0 69 6f 6e 20 28 6c 29 0a 09 09 09 09 09 09 09 09 09 09 09 56 65 72 62 61 74 69 6d 28 6c 2e 2e 22 ion.(l)............Verbatim(l.."
21be0 5c 6e 22 29 0a 09 09 09 09 09 09 09 09 09 09 09 72 65 74 75 72 6e 20 22 5c 6e 22 0a 09 09 09 09 \n")............return."\n".....
21c00 09 09 09 09 09 09 20 20 65 6e 64 29 0a 65 6e 64 0a 0a 2d 2d 20 74 72 61 6e 73 6c 61 74 65 20 76 ........end).end..--.translate.v
21c20 65 72 62 61 74 69 6d 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 50 61 63 6b 61 67 65 3a 70 72 erbatim.function.classPackage:pr
21c40 65 61 6d 62 6c 65 20 28 29 0a 20 6f 75 74 70 75 74 28 27 2f 2a 5c 6e 27 29 0a 20 6f 75 74 70 75 eamble.()..output('/*\n')..outpu
21c60 74 28 27 2a 2a 20 4c 75 61 20 62 69 6e 64 69 6e 67 3a 20 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e t('**.Lua.binding:.'..self.name.
21c80 2e 27 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 27 2a 2a 20 47 65 6e 65 72 61 74 65 64 20 61 75 74 .'\n')..output('**.Generated.aut
21ca0 6f 6d 61 74 69 63 61 6c 6c 79 20 62 79 20 27 2e 2e 54 4f 4c 55 41 5f 56 45 52 53 49 4f 4e 2e 2e omatically.by.'..TOLUA_VERSION..
21cc0 27 20 6f 6e 20 27 2e 2e 64 61 74 65 28 29 2e 2e 27 2e 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 27 '.on.'..date()..'.\n')..output('
21ce0 2a 2f 5c 6e 5c 6e 27 29 0a 0a 09 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 5f 5f 63 70 6c */\n\n')...output('#ifndef.__cpl
21d00 75 73 70 6c 75 73 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 23 69 6e 63 6c 75 64 65 20 22 73 74 usplus\n')..output('#include."st
21d20 64 6c 69 62 2e 68 22 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a dlib.h"\n')..output('#endif\n').
21d40 09 6f 75 74 70 75 74 28 27 23 69 6e 63 6c 75 64 65 20 22 73 74 72 69 6e 67 2e 68 22 5c 6e 5c 6e .output('#include."string.h"\n\n
21d60 27 29 0a 20 6f 75 74 70 75 74 28 27 23 69 6e 63 6c 75 64 65 20 22 74 6f 6c 75 61 2b 2b 2e 68 22 ')..output('#include."tolua++.h"
21d80 5c 6e 5c 6e 27 29 0a 0a 20 69 66 20 6e 6f 74 20 66 6c 61 67 73 2e 68 20 74 68 65 6e 0a 20 20 6f \n\n')...if.not.flags.h.then...o
21da0 75 74 70 75 74 28 27 2f 2a 20 45 78 70 6f 72 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 2a 2f 27 29 utput('/*.Exported.function.*/')
21dc0 0a 20 20 6f 75 74 70 75 74 28 27 54 4f 4c 55 41 5f 41 50 49 20 69 6e 74 20 20 74 6f 6c 75 61 5f ...output('TOLUA_API.int..tolua_
21de0 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5f 6f 70 65 6e 20 28 6c 75 61 5f 53 74 61 74 65 2a '..self.name..'_open.(lua_State*
21e00 20 74 6f 6c 75 61 5f 53 29 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 20 65 6e 64 .tolua_S);')...output('\n')..end
21e20 0a 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 ...local.i=1..while.self[i].do..
21e40 20 73 65 6c 66 5b 69 5d 3a 70 72 65 61 6d 62 6c 65 28 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 .self[i]:preamble()...i.=.i+1..e
21e60 6e 64 0a 0a 09 69 66 20 73 65 6c 66 3a 72 65 71 75 69 72 65 63 6f 6c 6c 65 63 74 69 6f 6e 28 5f nd...if.self:requirecollection(_
21e80 63 6f 6c 6c 65 63 74 29 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 09 09 6f collect).then...output('\n')...o
21ea0 75 74 70 75 74 28 27 2f 2a 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 72 65 6c 65 61 73 65 20 63 6f utput('/*.function.to.release.co
21ec0 6c 6c 65 63 74 65 64 20 6f 62 6a 65 63 74 20 76 69 61 20 64 65 73 74 72 75 63 74 6f 72 20 2a 2f llected.object.via.destructor.*/
21ee0 27 29 0a 09 09 6f 75 74 70 75 74 28 27 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c ')...output('#ifdef.__cplusplus\
21f00 6e 27 29 0a 09 09 66 6f 72 20 69 2c 76 20 69 6e 20 70 61 69 72 73 28 5f 63 6f 6c 6c 65 63 74 29 n')...for.i,v.in.pairs(_collect)
21f20 20 64 6f 0a 09 09 20 6f 75 74 70 75 74 28 27 5c 6e 73 74 61 74 69 63 20 69 6e 74 20 27 2e 2e 76 .do....output('\nstatic.int.'..v
21f40 2e 2e 27 20 28 6c 75 61 5f 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 27 29 0a 09 09 09 6f 75 ..'.(lua_State*.tolua_S)')....ou
21f60 74 70 75 74 28 27 7b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 20 27 2e 2e 69 2e 2e 27 2a 20 73 tput('{')....output('.'..i..'*.s
21f80 65 6c 66 20 3d 20 28 27 2e 2e 69 2e 2e 27 2a 29 20 74 6f 6c 75 61 5f 74 6f 75 73 65 72 74 79 70 elf.=.('..i..'*).tolua_tousertyp
21fa0 65 28 74 6f 6c 75 61 5f 53 2c 31 2c 30 29 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 09 4d 74 e(tolua_S,1,0);')....output('.Mt
21fc0 6f 6c 75 61 5f 64 65 6c 65 74 65 28 73 65 6c 66 29 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 olua_delete(self);')....output('
21fe0 09 72 65 74 75 72 6e 20 30 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 7d 27 29 0a 09 09 65 6e .return.0;')....output('}')...en
22000 64 0a 09 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 5c 6e 27 29 0a 09 65 6e 64 0a 0a 20 d...output('#endif\n\n')..end...
22020 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 27 2f 2a 20 66 75 6e 63 74 69 6f output('\n')..output('/*.functio
22040 6e 20 74 6f 20 72 65 67 69 73 74 65 72 20 74 79 70 65 20 2a 2f 27 29 0a 20 6f 75 74 70 75 74 28 n.to.register.type.*/')..output(
22060 27 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 6c 75 61 5f 72 65 67 5f 74 79 70 65 73 20 28 6c 75 'static.void.tolua_reg_types.(lu
22080 61 5f 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 27 29 0a 20 6f 75 74 70 75 74 28 27 7b 27 29 a_State*.tolua_S)')..output('{')
220a0 0a 0a 09 69 66 20 66 6c 61 67 73 2e 74 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 22 23 69 66 ...if.flags.t.then...output("#if
220c0 6e 64 65 66 20 4d 74 6f 6c 75 61 5f 74 79 70 65 69 64 5c 6e 23 64 65 66 69 6e 65 20 4d 74 6f 6c ndef.Mtolua_typeid\n#define.Mtol
220e0 75 61 5f 74 79 70 65 69 64 28 4c 2c 54 49 2c 54 29 5c 6e 23 65 6e 64 69 66 5c 6e 22 29 0a 09 65 ua_typeid(L,TI,T)\n#endif\n")..e
22100 6e 64 0a 09 66 6f 72 65 61 63 68 28 5f 75 73 65 72 74 79 70 65 2c 66 75 6e 63 74 69 6f 6e 28 6e nd..foreach(_usertype,function(n
22120 2c 76 29 0a 09 09 69 66 20 28 6e 6f 74 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 76 5d ,v)...if.(not._global_classes[v]
22140 29 20 6f 72 20 5f 67 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 76 5d 3a 63 68 65 63 6b 5f 70 75 ).or._global_classes[v]:check_pu
22160 62 6c 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 09 6f 75 74 70 75 74 28 27 20 74 blic_access().then....output('.t
22180 6f 6c 75 61 5f 75 73 65 72 74 79 70 65 28 74 6f 6c 75 61 5f 53 2c 22 27 2c 76 2c 27 22 29 3b 27 olua_usertype(tolua_S,"',v,'");'
221a0 29 0a 09 09 09 69 66 20 66 6c 61 67 73 2e 74 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 )....if.flags.t.then.....output(
221c0 27 20 4d 74 6f 6c 75 61 5f 74 79 70 65 69 64 28 74 6f 6c 75 61 5f 53 2c 74 79 70 65 69 64 28 27 '.Mtolua_typeid(tolua_S,typeid('
221e0 2c 76 2c 27 29 2c 20 22 27 2c 76 2c 27 22 29 3b 27 29 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a ,v,'),."',v,'");')....end...end.
22200 09 20 65 6e 64 29 0a 20 6f 75 74 70 75 74 28 27 7d 27 29 0a 20 6f 75 74 70 75 74 28 27 5c 6e 27 ..end)..output('}')..output('\n'
22220 29 0a 65 6e 64 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 70 61 63 6b 61 67 65 0a 2d 2d 20 77 72 ).end..--.register.package.--.wr
22240 69 74 65 20 70 61 63 6b 61 67 65 20 6f 70 65 6e 20 66 75 6e 63 74 69 6f 6e 0a 66 75 6e 63 74 69 ite.package.open.function.functi
22260 6f 6e 20 63 6c 61 73 73 50 61 63 6b 61 67 65 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 20 on.classPackage:register.(pre)..
22280 70 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 70 75 73 68 28 73 65 6c 66 29 0a 20 6f 75 74 pre.=.pre.or.''..push(self)..out
222a0 70 75 74 28 70 72 65 2e 2e 22 2f 2a 20 4f 70 65 6e 20 66 75 6e 63 74 69 6f 6e 20 2a 2f 22 29 0a put(pre.."/*.Open.function.*/").
222c0 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 54 4f 4c 55 41 5f 41 50 49 20 69 6e 74 20 74 6f 6c 75 .output(pre.."TOLUA_API.int.tolu
222e0 61 5f 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 5f 6f 70 65 6e 20 28 6c 75 61 5f 53 74 61 74 a_"..self.name.."_open.(lua_Stat
22300 65 2a 20 74 6f 6c 75 61 5f 53 29 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 7b 22 29 0a e*.tolua_S)")..output(pre.."{").
22320 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 20 74 6f 6c 75 61 5f 6f 70 65 6e 28 74 6f 6c 75 61 5f .output(pre..".tolua_open(tolua_
22340 53 29 3b 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 20 74 6f 6c 75 61 5f 72 65 67 5f 74 S);")..output(pre..".tolua_reg_t
22360 79 70 65 73 28 74 6f 6c 75 61 5f 53 29 3b 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 20 ypes(tolua_S);")..output(pre..".
22380 74 6f 6c 75 61 5f 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 2c 4e 55 4c 4c 2c 22 2c 73 65 6c 66 tolua_module(tolua_S,NULL,",self
223a0 3a 68 61 73 76 61 72 28 29 2c 22 29 3b 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 20 74 :hasvar(),");")..output(pre..".t
223c0 6f 6c 75 61 5f 62 65 67 69 6e 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 2c 4e 55 4c 4c 29 3b 22 olua_beginmodule(tolua_S,NULL);"
223e0 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 )..local.i=1..while.self[i].do..
22400 20 73 65 6c 66 5b 69 5d 3a 72 65 67 69 73 74 65 72 28 70 72 65 2e 2e 22 20 20 22 29 0a 20 20 69 .self[i]:register(pre.."..")...i
22420 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 20 74 6f 6c 75 61 .=.i+1..end..output(pre..".tolua
22440 5f 65 6e 64 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 29 3b 22 29 0a 20 6f 75 74 70 75 74 28 70 _endmodule(tolua_S);")..output(p
22460 72 65 2e 2e 22 20 72 65 74 75 72 6e 20 31 3b 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 re..".return.1;")..output(pre.."
22480 7d 22 29 0a 0a 20 6f 75 74 70 75 74 28 22 5c 6e 5c 6e 22 29 0a 20 6f 75 74 70 75 74 28 22 23 69 }")...output("\n\n")..output("#i
224a0 66 20 64 65 66 69 6e 65 64 28 4c 55 41 5f 56 45 52 53 49 4f 4e 5f 4e 55 4d 29 20 26 26 20 4c 55 f.defined(LUA_VERSION_NUM).&&.LU
224c0 41 5f 56 45 52 53 49 4f 4e 5f 4e 55 4d 20 3e 3d 20 35 30 31 5c 6e 22 29 3b 0a 20 6f 75 74 70 75 A_VERSION_NUM.>=.501\n");..outpu
224e0 74 28 70 72 65 2e 2e 22 54 4f 4c 55 41 5f 41 50 49 20 69 6e 74 20 6c 75 61 6f 70 65 6e 5f 22 2e t(pre.."TOLUA_API.int.luaopen_".
22500 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 20 28 6c 75 61 5f 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f .self.name..".(lua_State*.tolua_
22520 53 29 20 7b 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 20 72 65 74 75 72 6e 20 74 6f 6c S).{")..output(pre..".return.tol
22540 75 61 5f 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 5f 6f 70 65 6e 28 74 6f 6c 75 61 5f 53 29 ua_"..self.name.."_open(tolua_S)
22560 3b 22 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 22 7d 3b 22 29 0a 20 6f 75 74 70 75 74 28 22 ;")..output(pre.."};")..output("
22580 23 65 6e 64 69 66 5c 6e 5c 6e 22 29 0a 0a 09 70 6f 70 28 29 0a 65 6e 64 0a 0a 2d 2d 20 77 72 69 #endif\n\n")...pop().end..--.wri
225a0 74 65 20 68 65 61 64 65 72 20 66 69 6c 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 50 61 63 te.header.file.function.classPac
225c0 6b 61 67 65 3a 68 65 61 64 65 72 20 28 29 0a 20 6f 75 74 70 75 74 28 27 2f 2a 5c 6e 27 29 20 6f kage:header.()..output('/*\n').o
225e0 75 74 70 75 74 28 27 2a 2a 20 4c 75 61 20 62 69 6e 64 69 6e 67 3a 20 27 2e 2e 73 65 6c 66 2e 6e utput('**.Lua.binding:.'..self.n
22600 61 6d 65 2e 2e 27 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 27 2a 2a 20 47 65 6e 65 72 61 74 65 64 ame..'\n')..output('**.Generated
22620 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 62 79 20 27 2e 2e 54 4f 4c 55 41 5f 56 45 52 53 49 .automatically.by.'..TOLUA_VERSI
22640 4f 4e 2e 2e 27 20 6f 6e 20 27 2e 2e 64 61 74 65 28 29 2e 2e 27 2e 5c 6e 27 29 0a 20 6f 75 74 70 ON..'.on.'..date()..'.\n')..outp
22660 75 74 28 27 2a 2f 5c 6e 5c 6e 27 29 0a 0a 20 69 66 20 6e 6f 74 20 66 6c 61 67 73 2e 68 20 74 68 ut('*/\n\n')...if.not.flags.h.th
22680 65 6e 0a 20 20 6f 75 74 70 75 74 28 27 2f 2a 20 45 78 70 6f 72 74 65 64 20 66 75 6e 63 74 69 6f en...output('/*.Exported.functio
226a0 6e 20 2a 2f 27 29 0a 20 20 6f 75 74 70 75 74 28 27 54 4f 4c 55 41 5f 41 50 49 20 69 6e 74 20 20 n.*/')...output('TOLUA_API.int..
226c0 74 6f 6c 75 61 5f 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5f 6f 70 65 6e 20 28 6c 75 61 5f tolua_'..self.name..'_open.(lua_
226e0 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 5c 6e 27 State*.tolua_S);')...output('\n'
22700 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 )..end.end..--.Internal.construc
22720 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 50 61 63 6b 61 67 65 20 28 73 65 6c 66 29 0a 20 73 65 tor.function._Package.(self)..se
22740 74 6d 65 74 61 74 61 62 6c 65 28 73 65 6c 66 2c 63 6c 61 73 73 50 61 63 6b 61 67 65 29 0a 20 72 tmetatable(self,classPackage)..r
22760 65 74 75 72 6e 20 73 65 6c 66 0a 65 6e 64 0a 0a 2d 2d 20 50 61 72 73 65 20 43 20 68 65 61 64 65 eturn.self.end..--.Parse.C.heade
22780 72 20 66 69 6c 65 20 77 69 74 68 20 74 6f 6c 75 61 20 64 69 72 65 63 74 69 76 65 73 0a 2d 2d 20 r.file.with.tolua.directives.--.
227a0 2a 2a 2a 20 54 68 61 6e 6b 73 20 74 6f 20 41 72 69 65 6c 20 4d 61 6e 7a 75 72 20 66 6f 72 20 66 ***.Thanks.to.Ariel.Manzur.for.f
227c0 69 78 69 6e 67 20 62 75 67 73 20 69 6e 20 6e 65 73 74 65 64 20 64 69 72 65 63 74 69 76 65 73 20 ixing.bugs.in.nested.directives.
227e0 2a 2a 2a 0a 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 5f 63 6f 64 65 28 66 6e 2c 73 29 0a ***.function.extract_code(fn,s).
22800 09 6c 6f 63 61 6c 20 63 6f 64 65 20 3d 20 27 5c 6e 24 23 69 6e 63 6c 75 64 65 20 22 27 2e 2e 66 .local.code.=.'\n$#include."'..f
22820 6e 2e 2e 27 22 5c 6e 27 0a 09 73 3d 20 22 5c 6e 22 20 2e 2e 20 73 20 2e 2e 20 22 5c 6e 22 20 2d n..'"\n'..s=."\n"....s...."\n".-
22840 2d 20 61 64 64 20 62 6c 61 6e 6b 20 6c 69 6e 65 73 20 61 73 20 73 65 6e 74 69 6e 65 6c 73 0a 09 -.add.blank.lines.as.sentinels..
22860 6c 6f 63 61 6c 20 5f 2c 65 2c 63 2c 74 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 20 22 5c 6e 28 5b local._,e,c,t.=.strfind(s,."\n([
22880 5e 5c 6e 5d 2d 29 5b 54 74 5d 5b 4f 6f 5d 5b 4c 6c 5d 5b 55 75 5d 5b 41 61 5d 5f 28 5b 5e 25 73 ^\n]-)[Tt][Oo][Ll][Uu][Aa]_([^%s
228a0 5d 2a 29 5b 5e 5c 6e 5d 2a 5c 6e 22 29 0a 09 77 68 69 6c 65 20 65 20 64 6f 0a 09 09 74 20 3d 20 ]*)[^\n]*\n")..while.e.do...t.=.
228c0 73 74 72 6c 6f 77 65 72 28 74 29 0a 09 09 69 66 20 74 20 3d 3d 20 22 62 65 67 69 6e 22 20 74 68 strlower(t)...if.t.==."begin".th
228e0 65 6e 0a 09 09 09 5f 2c 65 2c 63 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 22 28 2e 2d 29 5c 6e 5b en...._,e,c.=.strfind(s,"(.-)\n[
22900 5e 5c 6e 5d 2a 5b 54 74 5d 5b 4f 6f 5d 5b 4c 6c 5d 5b 55 75 5d 5b 41 61 5d 5f 5b 45 65 5d 5b 4e ^\n]*[Tt][Oo][Ll][Uu][Aa]_[Ee][N
22920 6e 5d 5b 44 64 5d 5b 5e 5c 6e 5d 2a 5c 6e 22 2c 65 29 0a 09 09 09 69 66 20 6e 6f 74 20 65 20 74 n][Dd][^\n]*\n",e)....if.not.e.t
22940 68 65 6e 0a 09 09 09 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 22 55 6e 62 61 6c 61 6e 63 65 64 20 hen.....tolua_error("Unbalanced.
22960 27 74 6f 6c 75 61 5f 62 65 67 69 6e 27 20 64 69 72 65 63 74 69 76 65 20 69 6e 20 68 65 61 64 65 'tolua_begin'.directive.in.heade
22980 72 20 66 69 6c 65 22 29 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 09 09 63 6f 64 65 20 3d 20 63 r.file")....end...end...code.=.c
229a0 6f 64 65 20 2e 2e 20 63 20 2e 2e 20 22 5c 6e 22 0a 09 20 5f 2c 65 2c 63 2c 74 20 3d 20 73 74 72 ode....c...."\n"..._,e,c,t.=.str
229c0 66 69 6e 64 28 73 2c 20 22 5c 6e 28 5b 5e 5c 6e 5d 2d 29 5b 54 74 5d 5b 4f 6f 5d 5b 4c 6c 5d 5b find(s,."\n([^\n]-)[Tt][Oo][Ll][
229e0 55 75 5d 5b 41 61 5d 5f 28 5b 5e 25 73 5d 2a 29 5b 5e 5c 6e 5d 2a 5c 6e 22 2c 65 29 0a 09 65 6e Uu][Aa]_([^%s]*)[^\n]*\n",e)..en
22a00 64 0a 09 72 65 74 75 72 6e 20 63 6f 64 65 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 d..return.code.end..--.Construct
22a20 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 2c 20 or.--.Expects.the.package.name,.
22a40 74 68 65 20 66 69 6c 65 20 65 78 74 65 6e 73 69 6f 6e 2c 20 61 6e 64 20 74 68 65 20 66 69 6c 65 the.file.extension,.and.the.file
22a60 20 74 65 78 74 2e 0a 66 75 6e 63 74 69 6f 6e 20 50 61 63 6b 61 67 65 20 28 6e 61 6d 65 2c 66 6e .text..function.Package.(name,fn
22a80 29 0a 20 6c 6f 63 61 6c 20 65 78 74 20 3d 20 22 70 6b 67 22 0a 0a 20 2d 2d 20 6f 70 65 6e 20 69 )..local.ext.=."pkg"...--.open.i
22aa0 6e 70 75 74 20 66 69 6c 65 2c 20 69 66 20 61 6e 79 0a 20 6c 6f 63 61 6c 20 73 74 2c 6d 73 67 0a nput.file,.if.any..local.st,msg.
22ac0 20 69 66 20 66 6e 20 74 68 65 6e 0a 20 20 73 74 2c 20 6d 73 67 20 3d 20 72 65 61 64 66 72 6f 6d .if.fn.then...st,.msg.=.readfrom
22ae0 28 66 6c 61 67 73 2e 66 29 0a 20 20 69 66 20 6e 6f 74 20 73 74 20 74 68 65 6e 0a 20 20 20 65 72 (flags.f)...if.not.st.then....er
22b00 72 6f 72 28 27 23 27 2e 2e 6d 73 67 29 0a 20 20 65 6e 64 0a 20 20 6c 6f 63 61 6c 20 5f 3b 20 5f ror('#'..msg)...end...local._;._
22b20 2c 20 5f 2c 20 65 78 74 20 3d 20 73 74 72 66 69 6e 64 28 66 6e 2c 22 2e 2a 25 2e 28 2e 2a 29 24 ,._,.ext.=.strfind(fn,".*%.(.*)$
22b40 22 29 0a 20 65 6e 64 0a 20 6c 6f 63 61 6c 20 63 6f 64 65 0a 20 69 66 20 65 78 74 20 3d 3d 20 27 ")..end..local.code..if.ext.==.'
22b60 70 6b 67 27 20 74 68 65 6e 0a 20 20 63 6f 64 65 20 3d 20 70 72 65 70 28 73 74 29 0a 20 65 6c 73 pkg'.then...code.=.prep(st)..els
22b80 65 0a 20 20 63 6f 64 65 20 3d 20 22 5c 6e 22 20 2e 2e 20 72 65 61 64 28 27 2a 61 27 29 0a 20 20 e...code.=."\n"....read('*a')...
22ba0 69 66 20 65 78 74 20 3d 3d 20 27 68 27 20 6f 72 20 65 78 74 20 3d 3d 20 27 68 70 70 27 20 74 68 if.ext.==.'h'.or.ext.==.'hpp'.th
22bc0 65 6e 0a 20 20 20 63 6f 64 65 20 3d 20 65 78 74 72 61 63 74 5f 63 6f 64 65 28 66 6e 2c 63 6f 64 en....code.=.extract_code(fn,cod
22be0 65 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 0a 20 2d 2d 20 63 6c 6f 73 65 20 66 69 6c 65 0a 20 69 e)...end..end...--.close.file..i
22c00 66 20 66 6e 20 74 68 65 6e 0a 20 20 72 65 61 64 66 72 6f 6d 28 29 0a 20 65 6e 64 0a 0a 20 2d 2d f.fn.then...readfrom()..end...--
22c20 20 64 65 61 6c 20 77 69 74 68 20 69 6e 63 6c 75 64 65 20 64 69 72 65 63 74 69 76 65 0a 20 6c 6f .deal.with.include.directive..lo
22c40 63 61 6c 20 6e 73 75 62 73 74 0a 20 72 65 70 65 61 74 0a 20 20 63 6f 64 65 2c 6e 73 75 62 73 74 cal.nsubst..repeat...code,nsubst
22c60 20 3d 20 67 73 75 62 28 63 6f 64 65 2c 27 5c 6e 25 73 2a 25 24 28 2e 29 66 69 6c 65 25 73 2a 22 .=.gsub(code,'\n%s*%$(.)file%s*"
22c80 28 2e 2d 29 22 28 5b 5e 5c 6e 5d 2a 29 5c 6e 27 2c 0a 09 09 66 75 6e 63 74 69 6f 6e 20 28 6b 69 (.-)"([^\n]*)\n',...function.(ki
22ca0 6e 64 2c 66 6e 2c 65 78 74 72 61 29 0a 09 09 09 6c 6f 63 61 6c 20 5f 2c 20 5f 2c 20 65 78 74 20 nd,fn,extra)....local._,._,.ext.
22cc0 3d 20 73 74 72 66 69 6e 64 28 66 6e 2c 22 2e 2a 25 2e 28 2e 2a 29 24 22 29 0a 09 09 09 6c 6f 63 =.strfind(fn,".*%.(.*)$")....loc
22ce0 61 6c 20 66 70 2c 6d 73 67 20 3d 20 6f 70 65 6e 66 69 6c 65 28 66 6e 2c 27 72 27 29 0a 09 09 09 al.fp,msg.=.openfile(fn,'r')....
22d00 69 66 20 6e 6f 74 20 66 70 20 74 68 65 6e 0a 09 09 09 09 65 72 72 6f 72 28 27 23 27 2e 2e 6d 73 if.not.fp.then.....error('#'..ms
22d20 67 2e 2e 27 3a 20 27 2e 2e 66 6e 29 0a 09 09 09 65 6e 64 0a 09 09 09 69 66 20 6b 69 6e 64 20 3d g..':.'..fn)....end....if.kind.=
22d40 3d 20 27 70 27 20 74 68 65 6e 0a 09 09 09 09 6c 6f 63 61 6c 20 73 20 3d 20 70 72 65 70 28 66 70 =.'p'.then.....local.s.=.prep(fp
22d60 29 0a 09 09 09 09 63 6c 6f 73 65 66 69 6c 65 28 66 70 29 0a 09 09 09 09 72 65 74 75 72 6e 20 73 ).....closefile(fp).....return.s
22d80 0a 09 09 09 65 6e 64 0a 09 09 09 6c 6f 63 61 6c 20 73 20 3d 20 72 65 61 64 28 66 70 2c 27 2a 61 ....end....local.s.=.read(fp,'*a
22da0 27 29 0a 09 09 09 63 6c 6f 73 65 66 69 6c 65 28 66 70 29 0a 09 09 09 69 66 20 6b 69 6e 64 20 3d ')....closefile(fp)....if.kind.=
22dc0 3d 20 27 63 27 20 6f 72 20 6b 69 6e 64 20 3d 3d 20 27 68 27 20 74 68 65 6e 0a 09 09 09 09 72 65 =.'c'.or.kind.==.'h'.then.....re
22de0 74 75 72 6e 20 65 78 74 72 61 63 74 5f 63 6f 64 65 28 66 6e 2c 73 29 0a 09 09 09 65 6c 73 65 69 turn.extract_code(fn,s)....elsei
22e00 66 20 6b 69 6e 64 20 3d 3d 20 27 6c 27 20 74 68 65 6e 0a 09 09 09 09 72 65 74 75 72 6e 20 22 5c f.kind.==.'l'.then.....return."\
22e20 6e 24 5b 2d 2d 23 23 22 2e 2e 66 6e 2e 2e 22 5c 6e 22 20 2e 2e 20 73 20 2e 2e 20 22 5c 6e 24 5d n$[--##"..fn.."\n"....s...."\n$]
22e40 5c 6e 22 0a 09 09 09 65 6c 73 65 69 66 20 6b 69 6e 64 20 3d 3d 20 27 69 27 20 74 68 65 6e 0a 09 \n"....elseif.kind.==.'i'.then..
22e60 09 09 09 6c 6f 63 61 6c 20 74 20 3d 20 7b 63 6f 64 65 3d 73 7d 0a 09 09 09 09 65 78 74 72 61 20 ...local.t.=.{code=s}.....extra.
22e80 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 65 78 74 72 61 2c 20 22 5e 25 73 2a 2c 25 73 2a 22 2c =.string.gsub(extra,."^%s*,%s*",
22ea0 20 22 22 29 0a 09 09 09 09 6c 6f 63 61 6c 20 70 61 72 73 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f ."").....local.pars.=.split_c_to
22ec0 6b 65 6e 73 28 65 78 74 72 61 2c 20 22 2c 22 29 0a 09 09 09 09 69 6e 63 6c 75 64 65 5f 66 69 6c kens(extra,.",").....include_fil
22ee0 65 5f 68 6f 6f 6b 28 74 2c 20 66 6e 2c 20 75 6e 70 61 63 6b 28 70 61 72 73 29 29 0a 09 09 09 09 e_hook(t,.fn,.unpack(pars)).....
22f00 72 65 74 75 72 6e 20 22 5c 6e 5c 6e 22 20 2e 2e 20 74 2e 63 6f 64 65 0a 09 09 09 65 6c 73 65 0a return."\n\n"....t.code....else.
22f20 09 09 09 09 65 72 72 6f 72 28 27 23 49 6e 76 61 6c 69 64 20 69 6e 63 6c 75 64 65 20 64 69 72 65 ....error('#Invalid.include.dire
22f40 63 74 69 76 65 20 28 75 73 65 20 24 63 66 69 6c 65 2c 20 24 70 66 69 6c 65 2c 20 24 6c 66 69 6c ctive.(use.$cfile,.$pfile,.$lfil
22f60 65 20 6f 72 20 24 69 66 69 6c 65 29 27 29 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 29 0a 20 75 6e e.or.$ifile)')....end...end)..un
22f80 74 69 6c 20 6e 73 75 62 73 74 3d 3d 30 0a 0a 20 2d 2d 20 64 65 61 6c 20 77 69 74 68 20 72 65 6e til.nsubst==0...--.deal.with.ren
22fa0 61 6d 69 6e 67 20 64 69 72 65 63 74 69 76 65 0a 20 72 65 70 65 61 74 20 2d 2d 20 49 20 64 6f 6e aming.directive..repeat.--.I.don
22fc0 27 74 20 6b 6e 6f 77 20 77 68 79 20 74 68 69 73 20 69 73 20 6e 65 63 65 73 61 72 79 0a 09 63 6f 't.know.why.this.is.necesary..co
22fe0 64 65 2c 6e 73 75 62 73 74 20 3d 20 67 73 75 62 28 63 6f 64 65 2c 27 5c 6e 25 73 2a 25 24 72 65 de,nsubst.=.gsub(code,'\n%s*%$re
23000 6e 61 6d 69 6e 67 25 73 2a 28 2e 2d 29 25 73 2a 5c 6e 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 72 naming%s*(.-)%s*\n',.function.(r
23020 29 20 61 70 70 65 6e 64 72 65 6e 61 6d 69 6e 67 28 72 29 20 72 65 74 75 72 6e 20 22 5c 6e 22 20 ).appendrenaming(r).return."\n".
23040 65 6e 64 29 0a 20 75 6e 74 69 6c 20 6e 73 75 62 73 74 20 3d 3d 20 30 0a 0a 20 6c 6f 63 61 6c 20 end)..until.nsubst.==.0...local.
23060 74 20 3d 20 5f 50 61 63 6b 61 67 65 28 5f 43 6f 6e 74 61 69 6e 65 72 7b 6e 61 6d 65 3d 6e 61 6d t.=._Package(_Container{name=nam
23080 65 2c 20 63 6f 64 65 3d 63 6f 64 65 7d 29 0a 20 70 75 73 68 28 74 29 0a 20 70 72 65 70 72 6f 63 e,.code=code})..push(t)..preproc
230a0 65 73 73 5f 68 6f 6f 6b 28 74 29 0a 20 74 3a 70 72 65 70 72 6f 63 65 73 73 28 29 0a 20 70 72 65 ess_hook(t)..t:preprocess()..pre
230c0 70 61 72 73 65 5f 68 6f 6f 6b 28 74 29 0a 20 74 3a 70 61 72 73 65 28 74 2e 63 6f 64 65 29 0a 20 parse_hook(t)..t:parse(t.code)..
230e0 70 6f 70 28 29 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 0a 73 65 74 6d 65 74 61 74 61 62 pop()..return.t.end...setmetatab
23100 6c 65 28 5f 65 78 74 72 61 5f 70 61 72 61 6d 65 74 65 72 73 2c 20 7b 20 5f 5f 69 6e 64 65 78 20 le(_extra_parameters,.{.__index.
23120 3d 20 5f 47 20 7d 29 0a 0a 66 75 6e 63 74 69 6f 6e 20 70 72 65 70 28 66 69 6c 65 29 0a 0a 20 20 =._G.})..function.prep(file)....
23140 6c 6f 63 61 6c 20 63 68 75 6e 6b 20 3d 20 7b 27 6c 6f 63 61 6c 20 5f 5f 72 65 74 20 3d 20 7b 22 local.chunk.=.{'local.__ret.=.{"
23160 5c 5c 6e 22 7d 5c 6e 27 7d 0a 20 20 66 6f 72 20 6c 69 6e 65 20 69 6e 20 66 69 6c 65 3a 6c 69 6e \\n"}\n'}...for.line.in.file:lin
23180 65 73 28 29 20 64 6f 0a 20 20 20 20 20 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 6c 69 6e 65 es().do......if.string.find(line
231a0 2c 20 22 5e 23 23 22 29 20 74 68 65 6e 0a 20 20 20 20 20 20 74 61 62 6c 65 2e 69 6e 73 65 72 74 ,."^##").then.......table.insert
231c0 28 63 68 75 6e 6b 2c 20 73 74 72 69 6e 67 2e 73 75 62 28 6c 69 6e 65 2c 20 33 29 20 2e 2e 20 22 (chunk,.string.sub(line,.3)...."
231e0 5c 6e 22 29 0a 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 6c 6f 63 61 6c 20 6c 61 73 74 20 \n")......else.......local.last.
23200 3d 20 31 0a 20 20 20 20 20 20 66 6f 72 20 74 65 78 74 2c 20 65 78 70 72 2c 20 69 6e 64 65 78 20 =.1.......for.text,.expr,.index.
23220 69 6e 20 73 74 72 69 6e 67 2e 67 66 69 6e 64 28 6c 69 6e 65 2c 20 22 28 2e 2d 29 24 28 25 62 28 in.string.gfind(line,."(.-)$(%b(
23240 29 29 28 29 22 29 20 64 6f 20 0a 20 20 20 20 20 20 20 20 6c 61 73 74 20 3d 20 69 6e 64 65 78 0a ))()").do..........last.=.index.
23260 20 20 20 20 20 20 20 20 69 66 20 74 65 78 74 20 7e 3d 20 22 22 20 74 68 65 6e 0a 20 20 20 20 20 ........if.text.~=."".then......
23280 20 20 20 20 20 74 61 62 6c 65 2e 69 6e 73 65 72 74 28 63 68 75 6e 6b 2c 20 73 74 72 69 6e 67 2e .....table.insert(chunk,.string.
232a0 66 6f 72 6d 61 74 28 27 74 61 62 6c 65 2e 69 6e 73 65 72 74 28 5f 5f 72 65 74 2c 20 25 71 20 29 format('table.insert(__ret,.%q.)
232c0 27 2c 20 74 65 78 74 29 29 0a 20 20 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 20 74 61 ',.text)).........end.........ta
232e0 62 6c 65 2e 69 6e 73 65 72 74 28 63 68 75 6e 6b 2c 20 73 74 72 69 6e 67 2e 66 6f 72 6d 61 74 28 ble.insert(chunk,.string.format(
23300 27 74 61 62 6c 65 2e 69 6e 73 65 72 74 28 5f 5f 72 65 74 2c 20 25 73 20 29 27 2c 20 65 78 70 72 'table.insert(__ret,.%s.)',.expr
23320 29 29 0a 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 74 61 62 6c 65 2e 69 6e 73 65 72 74 28 )).......end.......table.insert(
23340 63 68 75 6e 6b 2c 20 73 74 72 69 6e 67 2e 66 6f 72 6d 61 74 28 27 74 61 62 6c 65 2e 69 6e 73 65 chunk,.string.format('table.inse
23360 72 74 28 5f 5f 72 65 74 2c 20 25 71 29 5c 6e 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rt(__ret,.%q)\n',...............
23380 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 73 74 72 69 6e ...........................strin
233a0 67 2e 73 75 62 28 6c 69 6e 65 2c 20 6c 61 73 74 29 2e 2e 22 5c 6e 22 29 29 0a 20 20 20 20 65 6e g.sub(line,.last).."\n")).....en
233c0 64 0a 20 20 65 6e 64 0a 20 20 74 61 62 6c 65 2e 69 6e 73 65 72 74 28 63 68 75 6e 6b 2c 20 27 5c d...end...table.insert(chunk,.'\
233e0 6e 72 65 74 75 72 6e 20 74 61 62 6c 65 2e 63 6f 6e 63 61 74 28 5f 5f 72 65 74 29 5c 6e 27 29 0a nreturn.table.concat(__ret)\n').
23400 20 20 6c 6f 63 61 6c 20 66 2c 65 20 3d 20 6c 6f 61 64 73 74 72 69 6e 67 28 74 61 62 6c 65 2e 63 ..local.f,e.=.loadstring(table.c
23420 6f 6e 63 61 74 28 63 68 75 6e 6b 29 29 0a 20 20 69 66 20 65 20 74 68 65 6e 0a 20 20 09 65 72 72 oncat(chunk))...if.e.then....err
23440 6f 72 28 22 23 22 2e 2e 65 29 0a 20 20 65 6e 64 0a 20 20 73 65 74 66 65 6e 76 28 66 2c 20 5f 65 or("#"..e)...end...setfenv(f,._e
23460 78 74 72 61 5f 70 61 72 61 6d 65 74 65 72 73 29 0a 20 20 72 65 74 75 72 6e 20 66 28 29 0a 65 6e xtra_parameters)...return.f().en
23480 64 20 00 00 00 00 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 6d 6f 64 75 6c 65 20 63 6c 61 73 73 0a 2d d.......--.tolua:.module.class.-
234a0 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 -.Written.by.Waldemar.Celes.--.T
234c0 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 eCGraf/PUC-Rio.--.Jul.1998.--.$I
234e0 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 d:.$..--.This.code.is.free.softw
23500 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 are;.you.can.redistribute.it.and
23520 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 /or.modify.it..--.The.software.p
23540 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 rovided.hereunder.is.on.an."as.i
23560 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 s".basis,.and.--.the.author.has.
23580 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e no.obligation.to.provide.mainten
235a0 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e ance,.support,.updates,.--.enhan
235c0 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 0a 2d 2d cements,.or.modifications.....--
235e0 20 4d 6f 64 75 6c 65 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 6d 6f 64 75 .Module.class.--.Represents.modu
23600 6c 65 2e 0a 2d 2d 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 20 61 72 65 20 le..--.The.following.fields.are.
23620 73 74 6f 72 65 64 3a 0a 2d 2d 20 20 20 20 7b 69 7d 20 3d 20 6c 69 73 74 20 6f 66 20 6f 62 6a 65 stored:.--....{i}.=.list.of.obje
23640 63 74 73 20 69 6e 20 74 68 65 20 6d 6f 64 75 6c 65 2e 0a 63 6c 61 73 73 4d 6f 64 75 6c 65 20 3d cts.in.the.module..classModule.=
23660 20 7b 0a 20 63 6c 61 73 73 74 79 70 65 20 3d 20 27 6d 6f 64 75 6c 65 27 0a 7d 0a 63 6c 61 73 73 .{..classtype.=.'module'.}.class
23680 4d 6f 64 75 6c 65 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 4d 6f 64 75 6c 65 0a 73 65 74 Module.__index.=.classModule.set
236a0 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 4d 6f 64 75 6c 65 2c 63 6c 61 73 73 43 6f 6e 74 61 metatable(classModule,classConta
236c0 69 6e 65 72 29 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 6d 6f 64 75 6c 65 0a 66 75 6e 63 74 69 iner)..--.register.module.functi
236e0 6f 6e 20 63 6c 61 73 73 4d 6f 64 75 6c 65 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 20 70 on.classModule:register.(pre)..p
23700 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 70 75 73 68 28 73 65 6c 66 29 0a 20 6f 75 74 70 re.=.pre.or.''..push(self)..outp
23720 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 2c 22 27 ut(pre..'tolua_module(tolua_S,"'
23740 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 22 2c 27 2c 73 65 6c 66 3a 68 61 73 76 61 72 28 29 2c ..self.name..'",',self:hasvar(),
23760 27 29 3b 27 29 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 62 65 67 69 6e 6d ');')..output(pre..'tolua_beginm
23780 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 22 29 odule(tolua_S,"'..self.name..'")
237a0 3b 27 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f ;')..local.i=1..while.self[i].do
237c0 0a 20 20 73 65 6c 66 5b 69 5d 3a 72 65 67 69 73 74 65 72 28 70 72 65 2e 2e 27 20 27 29 0a 20 20 ...self[i]:register(pre..'.')...
237e0 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 i.=.i+1..end..output(pre..'tolua
23800 5f 65 6e 64 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 29 3b 27 29 0a 09 70 6f 70 28 29 0a 65 6e _endmodule(tolua_S);')..pop().en
23820 64 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 d..--.Print.method.function.clas
23840 73 4d 6f 64 75 6c 65 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 sModule:print.(ident,close)..pri
23860 6e 74 28 69 64 65 6e 74 2e 2e 22 4d 6f 64 75 6c 65 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e nt(ident.."Module{")..print(iden
23880 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 3b 22 29 t..".name.=.'"..self.name.."';")
238a0 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 20 ..local.i=1..while.self[i].do...
238c0 73 65 6c 66 5b 69 5d 3a 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 22 2c 22 2c 22 29 0a 20 20 self[i]:print(ident..".",",")...
238e0 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e 2e i.=.i+1..end..print(ident.."}"..
23900 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 close).end..--.Internal.construc
23920 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 4d 6f 64 75 6c 65 20 28 74 29 0a 20 73 65 74 6d 65 74 tor.function._Module.(t)..setmet
23940 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 4d 6f 64 75 6c 65 29 0a 20 61 70 70 65 6e 64 28 74 29 atable(t,classModule)..append(t)
23960 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d ..return.t.end..--.Constructor.-
23980 2d 20 45 78 70 65 63 74 73 20 74 77 6f 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e -.Expects.two.string.representin
239a0 67 20 74 68 65 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 20 61 6e 64 20 62 6f 64 79 2e 0a 66 75 6e 63 g.the.module.name.and.body..func
239c0 74 69 6f 6e 20 4d 6f 64 75 6c 65 20 28 6e 2c 62 29 0a 20 6c 6f 63 61 6c 20 74 20 3d 20 5f 4d 6f tion.Module.(n,b)..local.t.=._Mo
239e0 64 75 6c 65 28 5f 43 6f 6e 74 61 69 6e 65 72 7b 6e 61 6d 65 3d 6e 7d 29 0a 20 70 75 73 68 28 74 dule(_Container{name=n})..push(t
23a00 29 0a 20 74 3a 70 61 72 73 65 28 73 74 72 73 75 62 28 62 2c 32 2c 73 74 72 6c 65 6e 28 62 29 2d )..t:parse(strsub(b,2,strlen(b)-
23a20 31 29 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 62 72 61 63 65 73 0a 20 70 6f 70 28 29 0a 20 1)).--.eliminate.braces..pop()..
23a40 72 65 74 75 72 6e 20 74 0a 65 6e 64 20 00 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 6e 61 6d 65 73 70 return.t.end....--.tolua:.namesp
23a60 61 63 65 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 ace.class.--.Written.by.Waldemar
23a80 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c .Celes.--.TeCGraf/PUC-Rio.--.Jul
23aa0 20 32 30 30 33 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 .2003.--.$Id:.$..--.This.code.is
23ac0 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 .free.software;.you.can.redistri
23ae0 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 bute.it.and/or.modify.it..--.The
23b00 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 .software.provided.hereunder.is.
23b20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 on.an."as.is".basis,.and.--.the.
23b40 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 author.has.no.obligation.to.prov
23b60 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 ide.maintenance,.support,.update
23b80 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 s,.--.enhancements,.or.modificat
23ba0 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 4e 61 6d 65 73 70 61 63 65 20 63 6c 61 73 73 0a 2d 2d 20 52 65 ions....--.Namespace.class.--.Re
23bc0 70 72 65 73 65 6e 74 73 20 61 20 6e 61 6d 65 73 61 70 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 2e presents.a.namesapce.definition.
23be0 0a 2d 2d 20 53 74 6f 72 65 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 6c 64 73 3a .--.Stores.the.following.fields:
23c00 0a 2d 2d 20 20 20 20 6e 61 6d 65 20 3d 20 63 6c 61 73 73 20 6e 61 6d 65 0a 2d 2d 20 20 20 20 7b .--....name.=.class.name.--....{
23c20 69 7d 20 20 3d 20 6c 69 73 74 20 6f 66 20 6d 65 6d 62 65 72 73 0a 63 6c 61 73 73 4e 61 6d 65 73 i}..=.list.of.members.classNames
23c40 70 61 63 65 20 3d 20 7b 0a 20 63 6c 61 73 73 74 79 70 65 20 3d 20 27 6e 61 6d 65 73 70 61 63 65 pace.=.{..classtype.=.'namespace
23c60 27 2c 0a 20 6e 61 6d 65 20 3d 20 27 27 2c 0a 7d 0a 63 6c 61 73 73 4e 61 6d 65 73 70 61 63 65 2e ',..name.=.'',.}.classNamespace.
23c80 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 4e 61 6d 65 73 70 61 63 65 0a 73 65 74 6d 65 74 61 __index.=.classNamespace.setmeta
23ca0 74 61 62 6c 65 28 63 6c 61 73 73 4e 61 6d 65 73 70 61 63 65 2c 63 6c 61 73 73 4d 6f 64 75 6c 65 table(classNamespace,classModule
23cc0 29 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 )..--.Print.method.function.clas
23ce0 73 4e 61 6d 65 73 70 61 63 65 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 sNamespace:print.(ident,close)..
23d00 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 4e 61 6d 65 73 70 61 63 65 7b 22 29 0a 20 70 72 69 6e print(ident.."Namespace{")..prin
23d20 74 28 69 64 65 6e 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e t(ident..".name.=.'"..self.name.
23d40 2e 22 27 2c 22 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d ."',")..local.i=1..while.self[i]
23d60 20 64 6f 0a 20 20 73 65 6c 66 5b 69 5d 3a 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 22 2c 22 .do...self[i]:print(ident..".","
23d80 2c 22 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e ,")...i.=.i+1..end..print(ident.
23da0 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f ."}"..close).end..--.Internal.co
23dc0 6e 73 74 72 75 63 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 4e 61 6d 65 73 70 61 63 65 20 28 74 nstructor.function._Namespace.(t
23de0 29 0a 20 73 65 74 6d 65 74 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 4e 61 6d 65 73 70 61 63 65 )..setmetatable(t,classNamespace
23e00 29 0a 20 61 70 70 65 6e 64 28 74 29 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 )..append(t)..return.t.end..--.C
23e20 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 20 74 68 65 20 6e 61 6d 65 20 61 onstructor.--.Expects.the.name.a
23e40 6e 64 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 2e 0a 66 75 nd.the.body.of.the.namespace..fu
23e60 6e 63 74 69 6f 6e 20 4e 61 6d 65 73 70 61 63 65 20 28 6e 2c 62 29 0a 20 6c 6f 63 61 6c 20 63 20 nction.Namespace.(n,b)..local.c.
23e80 3d 20 5f 4e 61 6d 65 73 70 61 63 65 28 5f 43 6f 6e 74 61 69 6e 65 72 7b 6e 61 6d 65 3d 6e 7d 29 =._Namespace(_Container{name=n})
23ea0 0a 20 70 75 73 68 28 63 29 0a 20 63 3a 70 61 72 73 65 28 73 74 72 73 75 62 28 62 2c 32 2c 73 74 ..push(c)..c:parse(strsub(b,2,st
23ec0 72 6c 65 6e 28 62 29 2d 31 29 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 62 72 61 63 65 73 0a rlen(b)-1)).--.eliminate.braces.
23ee0 20 70 6f 70 28 29 0a 65 6e 64 20 00 00 00 00 00 2d 2d 20 74 6f 6c 75 61 3a 20 64 65 66 69 6e 65 .pop().end......--.tolua:.define
23f00 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 .class.--.Written.by.Waldemar.Ce
23f20 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 les.--.TeCGraf/PUC-Rio.--.Jul.19
23f40 39 38 0a 2d 2d 20 24 49 64 3a 20 64 65 66 69 6e 65 2e 6c 75 61 2c 76 20 31 2e 32 20 31 39 39 39 98.--.$Id:.define.lua,v.1.2.1999
23f60 2f 30 37 2f 32 38 20 32 32 3a 32 31 3a 30 38 20 63 65 6c 65 73 20 45 78 70 20 24 0a 0a 2d 2d 20 /07/28.22:21:08.celes.Exp.$..--.
23f80 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 This.code.is.free.software;.you.
23fa0 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 can.redistribute.it.and/or.modif
23fc0 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 y.it..--.The.software.provided.h
23fe0 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c ereunder.is.on.an."as.is".basis,
24000 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 .and.--.the.author.has.no.obliga
24020 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 tion.to.provide.maintenance,.sup
24040 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 port,.updates,.--.enhancements,.
24060 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 44 65 66 69 6e 65 20 63 6c or.modifications....--.Define.cl
24080 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 20 6e 75 6d 65 72 69 63 20 63 6f 6e 73 ass.--.Represents.a.numeric.cons
240a0 74 20 64 65 66 69 6e 69 74 69 6f 6e 0a 2d 2d 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 t.definition.--.The.following.fi
240c0 6c 64 73 20 61 72 65 20 73 74 6f 72 65 64 3a 0a 2d 2d 20 20 20 6e 61 6d 65 20 3d 20 63 6f 6e 73 lds.are.stored:.--...name.=.cons
240e0 74 61 6e 74 20 6e 61 6d 65 0a 63 6c 61 73 73 44 65 66 69 6e 65 20 3d 20 7b 0a 20 6e 61 6d 65 20 tant.name.classDefine.=.{..name.
24100 3d 20 27 27 2c 0a 7d 0a 63 6c 61 73 73 44 65 66 69 6e 65 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c =.'',.}.classDefine.__index.=.cl
24120 61 73 73 44 65 66 69 6e 65 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 44 65 66 69 assDefine.setmetatable(classDefi
24140 6e 65 2c 63 6c 61 73 73 46 65 61 74 75 72 65 29 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 64 65 ne,classFeature)..--.register.de
24160 66 69 6e 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 44 65 66 69 6e 65 3a 72 65 67 69 73 74 fine.function.classDefine:regist
24180 65 72 20 28 70 72 65 29 0a 09 69 66 20 6e 6f 74 20 73 65 6c 66 3a 63 68 65 63 6b 5f 70 75 62 6c er.(pre)..if.not.self:check_publ
241a0 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 0a 09 65 6e 64 0a 0a ic_access().then...return..end..
241c0 20 70 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 .pre.=.pre.or.''..output(pre..'t
241e0 6f 6c 75 61 5f 63 6f 6e 73 74 61 6e 74 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c olua_constant(tolua_S,"'..self.l
24200 6e 61 6d 65 2e 2e 27 22 2c 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 29 3b 27 29 0a 65 6e 64 name..'",'..self.name..');').end
24220 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 ..--.Print.method.function.class
24240 44 65 66 69 6e 65 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e Define:print.(ident,close)..prin
24260 74 28 69 64 65 6e 74 2e 2e 22 44 65 66 69 6e 65 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 t(ident.."Define{")..print(ident
24280 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a ..".name.=.'"..self.name.."',").
242a0 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6c 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 .print(ident..".lname.=.'"..self
242c0 2e 6c 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e .lname.."',")..print(ident.."}".
242e0 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 .close).end...--.Internal.constr
24300 75 63 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 44 65 66 69 6e 65 20 28 74 29 0a 20 73 65 74 6d uctor.function._Define.(t)..setm
24320 65 74 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 44 65 66 69 6e 65 29 0a 20 74 3a 62 75 69 6c 64 etatable(t,classDefine)..t:build
24340 6e 61 6d 65 73 28 29 0a 0a 20 69 66 20 74 2e 6e 61 6d 65 20 3d 3d 20 27 27 20 74 68 65 6e 0a 20 names()...if.t.name.==.''.then..
24360 20 65 72 72 6f 72 28 22 23 69 6e 76 61 6c 69 64 20 64 65 66 69 6e 65 22 29 0a 20 65 6e 64 0a 0a .error("#invalid.define")..end..
24380 20 61 70 70 65 6e 64 28 74 29 0a 20 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e .append(t)..return.t.end..--.Con
243a0 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 78 70 65 63 74 73 20 61 20 73 74 72 69 6e 67 20 72 65 70 structor.--.Expects.a.string.rep
243c0 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 63 6f 6e 73 74 61 6e 74 20 6e 61 6d 65 0a 66 75 6e 63 resenting.the.constant.name.func
243e0 74 69 6f 6e 20 44 65 66 69 6e 65 20 28 6e 29 0a 20 72 65 74 75 72 6e 20 5f 44 65 66 69 6e 65 7b tion.Define.(n)..return._Define{
24400 0a 20 20 6e 61 6d 65 20 3d 20 6e 0a 20 7d 0a 65 6e 64 20 00 00 00 00 00 2d 2d 20 74 6f 6c 75 61 ...name.=.n..}.end......--.tolua
24420 3a 20 76 61 72 69 61 62 6c 65 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 :.variable.class.--.Written.by.W
24440 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f aldemar.Celes.--.TeCGraf/PUC-Rio
24460 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 .--.Jul.1998.--.$Id:.$..--.This.
24480 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 code.is.free.software;.you.can.r
244a0 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e edistribute.it.and/or.modify.it.
244c0 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e .--.The.software.provided.hereun
244e0 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a der.is.on.an."as.is".basis,.and.
24500 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 --.the.author.has.no.obligation.
24520 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c to.provide.maintenance,.support,
24540 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f .updates,.--.enhancements,.or.mo
24560 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 56 61 72 69 61 62 6c 65 20 63 6c 61 73 73 difications....--.Variable.class
24580 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 20 65 78 74 65 72 6e 20 76 61 72 69 61 62 6c 65 .--.Represents.a.extern.variable
245a0 20 6f 72 20 61 20 70 75 62 6c 69 63 20 6d 65 6d 62 65 72 20 6f 66 20 61 20 63 6c 61 73 73 2e 0a .or.a.public.member.of.a.class..
245c0 2d 2d 20 53 74 6f 72 65 73 20 61 6c 6c 20 66 69 65 6c 64 73 20 70 72 65 73 65 6e 74 20 69 6e 20 --.Stores.all.fields.present.in.
245e0 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 63 6c 61 73 73 56 61 72 69 61 62 6c 65 20 3d 20 7b a.declaration..classVariable.=.{
24600 0a 20 5f 67 65 74 20 3d 20 7b 7d 2c 20 20 20 2d 2d 20 6d 61 70 70 65 64 20 67 65 74 20 66 75 6e .._get.=.{},...--.mapped.get.fun
24620 63 74 69 6f 6e 73 0a 20 5f 73 65 74 20 3d 20 7b 7d 2c 20 20 20 2d 2d 20 6d 61 70 70 65 64 20 73 ctions.._set.=.{},...--.mapped.s
24640 65 74 20 66 75 6e 63 74 69 6f 6e 73 0a 7d 0a 63 6c 61 73 73 56 61 72 69 61 62 6c 65 2e 5f 5f 69 et.functions.}.classVariable.__i
24660 6e 64 65 78 20 3d 20 63 6c 61 73 73 56 61 72 69 61 62 6c 65 0a 73 65 74 6d 65 74 61 74 61 62 6c ndex.=.classVariable.setmetatabl
24680 65 28 63 6c 61 73 73 56 61 72 69 61 62 6c 65 2c 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e e(classVariable,classDeclaration
246a0 29 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 )..--.Print.method.function.clas
246c0 73 56 61 72 69 61 62 6c 65 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 sVariable:print.(ident,close)..p
246e0 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 56 61 72 69 61 62 6c 65 7b 22 29 0a 20 70 72 69 6e 74 28 rint(ident.."Variable{")..print(
24700 69 64 65 6e 74 2e 2e 22 20 6d 6f 64 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6d 6f 64 2e 2e 22 27 ident..".mod..=.'"..self.mod.."'
24720 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 74 79 70 65 20 3d 20 27 22 2e 2e 73 ,")..print(ident..".type.=.'"..s
24740 65 6c 66 2e 74 79 70 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 elf.type.."',")..print(ident..".
24760 70 74 72 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 70 74 72 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e ptr..=.'"..self.ptr.."',")..prin
24780 74 28 69 64 65 6e 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e t(ident..".name.=.'"..self.name.
247a0 2e 22 27 2c 22 29 0a 20 69 66 20 73 65 6c 66 2e 64 69 6d 20 74 68 65 6e 20 70 72 69 6e 74 28 69 ."',")..if.self.dim.then.print(i
247c0 64 65 6e 74 2e 2e 22 20 64 69 6d 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 22 27 2c 22 dent..".dim.=.'"..self.dim.."',"
247e0 29 20 65 6e 64 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 64 65 66 20 20 3d 20 27 22 2e ).end..print(ident..".def..=.'".
24800 2e 73 65 6c 66 2e 64 65 66 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 .self.def.."',")..print(ident.."
24820 20 72 65 74 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 72 65 74 2e 2e 22 27 2c 22 29 0a 20 70 72 69 .ret..=.'"..self.ret.."',")..pri
24840 6e 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d 2d 20 47 65 nt(ident.."}"..close).end..--.Ge
24860 6e 65 72 61 74 65 73 20 43 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 0a 66 75 6e 63 74 69 6f 6e nerates.C.function.name.function
24880 20 63 6c 61 73 73 56 61 72 69 61 62 6c 65 3a 63 66 75 6e 63 6e 61 6d 65 20 28 70 72 65 66 69 78 .classVariable:cfuncname.(prefix
248a0 29 0a 20 6c 6f 63 61 6c 20 70 61 72 65 6e 74 20 3d 20 22 22 0a 20 6c 6f 63 61 6c 20 75 6e 73 69 )..local.parent.=.""..local.unsi
248c0 67 6e 65 64 20 3d 20 22 22 0a 20 6c 6f 63 61 6c 20 70 74 72 20 3d 20 22 22 0a 0a 20 6c 6f 63 61 gned.=.""..local.ptr.=.""...loca
248e0 6c 20 70 20 3d 20 73 65 6c 66 3a 69 6e 6d 6f 64 75 6c 65 28 29 20 6f 72 20 73 65 6c 66 3a 69 6e l.p.=.self:inmodule().or.self:in
24900 6e 61 6d 65 73 70 61 63 65 28 29 20 6f 72 20 73 65 6c 66 3a 69 6e 63 6c 61 73 73 28 29 0a 0a 20 namespace().or.self:inclass()...
24920 69 66 20 70 20 74 68 65 6e 0a 20 09 69 66 20 73 65 6c 66 2e 70 61 72 65 6e 74 2e 63 6c 61 73 73 if.p.then...if.self.parent.class
24940 74 79 70 65 20 3d 3d 20 27 63 6c 61 73 73 27 20 74 68 65 6e 0a 09 09 70 61 72 65 6e 74 20 3d 20 type.==.'class'.then...parent.=.
24960 22 5f 22 20 2e 2e 20 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 0a 09 65 6c 73 65 0a 09 20 "_"....self.parent.type..else...
24980 20 70 61 72 65 6e 74 20 3d 20 22 5f 22 20 2e 2e 20 70 0a 09 65 6e 64 0a 20 65 6e 64 0a 0a 20 69 .parent.=."_"....p..end..end...i
249a0 66 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 22 28 75 6e 73 69 67 6e 65 64 29 22 29 f.strfind(self.mod,"(unsigned)")
249c0 20 74 68 65 6e 0a 20 20 75 6e 73 69 67 6e 65 64 20 3d 20 22 5f 75 6e 73 69 67 6e 65 64 22 0a 20 .then...unsigned.=."_unsigned"..
249e0 65 6e 64 0a 0a 20 69 66 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 22 2a 22 20 74 68 65 6e 20 70 74 end...if.self.ptr.==."*".then.pt
24a00 72 20 3d 20 22 5f 70 74 72 22 0a 20 65 6c 73 65 69 66 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 22 r.=."_ptr"..elseif.self.ptr.==."
24a20 26 22 20 74 68 65 6e 20 70 74 72 20 3d 20 22 5f 72 65 66 22 0a 20 65 6e 64 0a 0a 20 6c 6f 63 61 &".then.ptr.=."_ref"..end...loca
24a40 6c 20 6e 61 6d 65 20 3d 20 20 70 72 65 66 69 78 20 2e 2e 20 70 61 72 65 6e 74 20 2e 2e 20 75 6e l.name.=..prefix....parent....un
24a60 73 69 67 6e 65 64 20 2e 2e 20 22 5f 22 20 2e 2e 20 67 73 75 62 28 73 65 6c 66 2e 6c 6e 61 6d 65 signed...."_"....gsub(self.lname
24a80 20 6f 72 20 73 65 6c 66 2e 6e 61 6d 65 2c 22 2e 2a 3a 3a 22 2c 22 22 29 20 2e 2e 20 70 74 72 0a .or.self.name,".*::","")....ptr.
24aa0 0a 09 6e 61 6d 65 20 3d 20 63 6c 65 61 6e 5f 74 65 6d 70 6c 61 74 65 28 6e 61 6d 65 29 0a 20 72 ..name.=.clean_template(name)..r
24ac0 65 74 75 72 6e 20 6e 61 6d 65 0a 0a 65 6e 64 0a 0a 2d 2d 20 63 68 65 63 6b 20 69 66 20 69 74 20 eturn.name..end..--.check.if.it.
24ae0 69 73 20 61 20 76 61 72 69 61 62 6c 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 56 61 72 69 is.a.variable.function.classVari
24b00 61 62 6c 65 3a 69 73 76 61 72 69 61 62 6c 65 20 28 29 0a 20 72 65 74 75 72 6e 20 74 72 75 65 0a able:isvariable.()..return.true.
24b20 65 6e 64 0a 0a 2d 2d 20 67 65 74 20 76 61 72 69 61 62 6c 65 20 76 61 6c 75 65 0a 66 75 6e 63 74 end..--.get.variable.value.funct
24b40 69 6f 6e 20 63 6c 61 73 73 56 61 72 69 61 62 6c 65 3a 67 65 74 76 61 6c 75 65 20 28 63 6c 61 73 ion.classVariable:getvalue.(clas
24b60 73 2c 73 74 61 74 69 63 2c 20 70 72 6f 70 5f 67 65 74 29 0a 0a 09 6c 6f 63 61 6c 20 6e 61 6d 65 s,static,.prop_get)...local.name
24b80 0a 09 69 66 20 70 72 6f 70 5f 67 65 74 20 74 68 65 6e 0a 0a 09 09 6e 61 6d 65 20 3d 20 70 72 6f ..if.prop_get.then....name.=.pro
24ba0 70 5f 67 65 74 2e 2e 22 28 29 22 0a 09 65 6c 73 65 0a 09 09 6e 61 6d 65 20 3d 20 73 65 6c 66 2e p_get.."()"..else...name.=.self.
24bc0 6e 61 6d 65 0a 09 65 6e 64 0a 0a 09 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 20 name..end...if.class.and.static.
24be0 74 68 65 6e 0a 09 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2e 2e then...return.self.parent.type..
24c00 27 3a 3a 27 2e 2e 6e 61 6d 65 0a 09 65 6c 73 65 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 09 20 '::'..name..elseif.class.then...
24c20 72 65 74 75 72 6e 20 27 73 65 6c 66 2d 3e 27 2e 2e 6e 61 6d 65 0a 09 65 6c 73 65 0a 09 20 72 65 return.'self->'..name..else...re
24c40 74 75 72 6e 20 6e 61 6d 65 0a 09 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 67 65 74 20 76 61 72 69 61 turn.name..end.end..--.get.varia
24c60 62 6c 65 20 70 6f 69 6e 74 65 72 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 ble.pointer.value.function.class
24c80 56 61 72 69 61 62 6c 65 3a 67 65 74 70 6f 69 6e 74 65 72 76 61 6c 75 65 20 28 63 6c 61 73 73 2c Variable:getpointervalue.(class,
24ca0 73 74 61 74 69 63 29 0a 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 20 74 68 65 static)..if.class.and.static.the
24cc0 6e 0a 20 20 72 65 74 75 72 6e 20 63 6c 61 73 73 2e 2e 27 3a 3a 70 27 0a 20 65 6c 73 65 69 66 20 n...return.class..'::p'..elseif.
24ce0 63 6c 61 73 73 20 74 68 65 6e 0a 20 20 72 65 74 75 72 6e 20 27 73 65 6c 66 2d 3e 70 27 0a 20 65 class.then...return.'self->p'..e
24d00 6c 73 65 0a 20 20 72 65 74 75 72 6e 20 27 70 27 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 57 72 lse...return.'p'..end.end..--.Wr
24d20 69 74 65 20 62 69 6e 64 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 0a 66 75 6e 63 74 69 6f 6e 20 63 ite.binding.functions.function.c
24d40 6c 61 73 73 56 61 72 69 61 62 6c 65 3a 73 75 70 63 6f 64 65 20 28 29 0a 0a 20 6c 6f 63 61 6c 20 lassVariable:supcode.()...local.
24d60 63 6c 61 73 73 20 3d 20 73 65 6c 66 3a 69 6e 63 6c 61 73 73 28 29 0a 0a 09 6c 6f 63 61 6c 20 70 class.=.self:inclass()...local.p
24d80 72 6f 70 5f 67 65 74 2c 70 72 6f 70 5f 73 65 74 0a 09 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 rop_get,prop_set..if.string.find
24da0 28 73 65 6c 66 2e 6d 6f 64 2c 20 27 74 6f 6c 75 61 5f 70 72 6f 70 65 72 74 79 27 29 20 74 68 65 (self.mod,.'tolua_property').the
24dc0 6e 0a 0a 09 09 6c 6f 63 61 6c 20 5f 2c 5f 2c 74 79 70 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e n....local._,_,type.=.string.fin
24de0 64 28 73 65 6c 66 2e 6d 6f 64 2c 20 22 74 6f 6c 75 61 5f 70 72 6f 70 65 72 74 79 5f 5f 28 5b 5e d(self.mod,."tolua_property__([^
24e00 25 73 5d 2a 29 22 29 0a 09 09 74 79 70 65 20 3d 20 74 79 70 65 20 6f 72 20 22 64 65 66 61 75 6c %s]*)")...type.=.type.or."defaul
24e20 74 22 0a 09 09 70 72 6f 70 5f 67 65 74 2c 70 72 6f 70 5f 73 65 74 20 3d 20 67 65 74 5f 70 72 6f t"...prop_get,prop_set.=.get_pro
24e40 70 65 72 74 79 5f 6d 65 74 68 6f 64 73 28 74 79 70 65 2c 20 73 65 6c 66 2e 6e 61 6d 65 29 0a 09 perty_methods(type,.self.name)..
24e60 09 73 65 6c 66 2e 6d 6f 64 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 65 6c 66 2e 6d 6f 64 .self.mod.=.string.gsub(self.mod
24e80 2c 20 22 74 6f 6c 75 61 5f 70 72 6f 70 65 72 74 79 5b 5e 25 73 5d 2a 22 2c 20 22 22 29 0a 09 65 ,."tolua_property[^%s]*",."")..e
24ea0 6e 64 0a 0a 20 2d 2d 20 67 65 74 20 66 75 6e 63 74 69 6f 6e 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d nd...--.get.function.-----------
24ec0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
24ee0 2d 2d 2d 2d 2d 0a 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 22 2f -----..if.class.then...output("/
24f00 2a 20 67 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 2e 6e 61 6d 65 2c 22 20 6f 66 20 *.get.function:",self.name,".of.
24f20 63 6c 61 73 73 20 22 2c 63 6c 61 73 73 2c 22 20 2a 2f 22 29 0a 20 65 6c 73 65 0a 20 20 6f 75 74 class.",class,".*/")..else...out
24f40 70 75 74 28 22 2f 2a 20 67 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 2e 6e 61 6d 65 put("/*.get.function:",self.name
24f60 2c 22 20 2a 2f 22 29 0a 20 65 6e 64 0a 20 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 20 3d 20 73 65 ,".*/")..end..self.cgetname.=.se
24f80 6c 66 3a 63 66 75 6e 63 6e 61 6d 65 28 22 74 6f 6c 75 61 5f 67 65 74 22 29 0a 20 6f 75 74 70 75 lf:cfuncname("tolua_get")..outpu
24fa0 74 28 22 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5f 22 2e 2e 73 65 6c 66 t("#ifndef.TOLUA_DISABLE_"..self
24fc0 2e 63 67 65 74 6e 61 6d 65 29 0a 20 6f 75 74 70 75 74 28 22 5c 6e 73 74 61 74 69 63 20 69 6e 74 .cgetname)..output("\nstatic.int
24fe0 22 2c 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 2c 22 28 6c 75 61 5f 53 74 61 74 65 2a 20 74 6f 6c ",self.cgetname,"(lua_State*.tol
25000 75 61 5f 53 29 22 29 0a 20 6f 75 74 70 75 74 28 22 7b 22 29 0a 0a 20 2d 2d 20 64 65 63 6c 61 72 ua_S)")..output("{")...--.declar
25020 65 20 73 65 6c 66 2c 20 69 66 20 74 68 65 20 63 61 73 65 0a 20 6c 6f 63 61 6c 20 5f 2c 5f 2c 73 e.self,.if.the.case..local._,_,s
25040 74 61 74 69 63 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 27 5e 25 73 2a 28 73 tatic.=.strfind(self.mod,'^%s*(s
25060 74 61 74 69 63 29 27 29 0a 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 3d 3d 6e tatic)')..if.class.and.static==n
25080 69 6c 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 27 20 27 2c 73 65 6c 66 2e 70 61 72 65 6e 74 il.then...output('.',self.parent
250a0 2e 74 79 70 65 2c 27 2a 27 2c 27 73 65 6c 66 20 3d 20 27 29 0a 20 20 6f 75 74 70 75 74 28 27 28 .type,'*','self.=.')...output('(
250c0 27 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 29 20 27 29 0a 20 20 6c 6f 63 61 ',self.parent.type,'*).')...loca
250e0 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 74 69 6f 6e 28 73 65 6c 66 l.to_func.=.get_to_function(self
25100 2e 70 61 72 65 6e 74 2e 74 79 70 65 29 0a 20 20 6f 75 74 70 75 74 28 74 6f 5f 66 75 6e 63 2c 27 .parent.type)...output(to_func,'
25120 28 74 6f 6c 75 61 5f 53 2c 31 2c 30 29 3b 27 29 0a 20 65 6c 73 65 69 66 20 73 74 61 74 69 63 20 (tolua_S,1,0);')..elseif.static.
25140 74 68 65 6e 0a 20 20 5f 2c 5f 2c 73 65 6c 66 2e 6d 6f 64 20 3d 20 73 74 72 66 69 6e 64 28 73 65 then..._,_,self.mod.=.strfind(se
25160 6c 66 2e 6d 6f 64 2c 27 5e 25 73 2a 73 74 61 74 69 63 25 73 25 73 2a 28 2e 2a 29 27 29 0a 20 65 lf.mod,'^%s*static%s%s*(.*)')..e
25180 6e 64 0a 0a 0a 20 2d 2d 20 63 68 65 63 6b 20 73 65 6c 66 20 76 61 6c 75 65 0a 20 69 66 20 63 6c nd....--.check.self.value..if.cl
251a0 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 3d 3d 6e 69 6c 20 74 68 65 6e 0a 09 20 6f 75 74 70 75 ass.and.static==nil.then...outpu
251c0 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 20 20 6f t('#ifndef.TOLUA_RELEASE\n')...o
251e0 75 74 70 75 74 28 27 20 20 69 66 20 28 21 73 65 6c 66 29 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 utput('..if.(!self).tolua_error(
25200 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 6f 75 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 22 69 tolua_S,"'..output_error_hook("i
25220 6e 76 61 6c 69 64 20 5c 27 73 65 6c 66 5c 27 20 69 6e 20 61 63 63 65 73 73 69 6e 67 20 76 61 72 nvalid.\'self\'.in.accessing.var
25240 69 61 62 6c 65 20 5c 27 25 73 5c 27 22 2c 20 73 65 6c 66 2e 6e 61 6d 65 29 2e 2e 27 22 2c 4e 55 iable.\'%s\'",.self.name)..'",NU
25260 4c 4c 29 3b 27 29 3b 0a 09 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 20 65 6e LL);');...output('#endif\n')..en
25280 64 0a 0a 20 2d 2d 20 72 65 74 75 72 6e 20 76 61 6c 75 65 0a 20 69 66 20 73 74 72 69 6e 67 2e 66 d...--.return.value..if.string.f
252a0 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 20 27 74 6f 6c 75 61 5f 69 6e 68 65 72 69 74 73 27 29 20 ind(self.mod,.'tolua_inherits').
252c0 74 68 65 6e 0a 09 6c 6f 63 61 6c 20 70 75 73 68 5f 66 75 6e 63 20 3d 20 67 65 74 5f 70 75 73 68 then..local.push_func.=.get_push
252e0 5f 66 75 6e 63 74 69 6f 6e 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 09 6f 75 74 70 75 74 28 27 23 _function(self.type)...output('#
25300 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 20 ifdef.__cplusplus\n')..output('.
25320 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 73 74 .',push_func,'(tolua_S,(void*)st
25340 61 74 69 63 5f 63 61 73 74 3c 27 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 27 2a 3e 28 73 65 6c 66 atic_cast<'..self.type..'*>(self
25360 29 2c 20 22 27 2c 73 65 6c 66 2e 74 79 70 65 2c 27 22 29 3b 27 29 0a 09 6f 75 74 70 75 74 28 27 ),."',self.type,'");')..output('
25380 23 65 6c 73 65 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 #else\n')..output('..',push_func
253a0 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 28 28 27 2e 2e 73 65 6c 66 2e 74 79 70 65 ,'(tolua_S,(void*)(('..self.type
253c0 2e 2e 27 2a 29 73 65 6c 66 29 2c 20 22 27 2c 73 65 6c 66 2e 74 79 70 65 2c 27 22 29 3b 27 29 0a ..'*)self),."',self.type,'");').
253e0 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 20 65 6c 73 65 0a 09 6c 6f 63 61 6c .output('#endif\n')..else..local
25400 20 74 2c 63 74 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 0a 09 69 66 20 74 .t,ct.=.isbasic(self.type)..if.t
25420 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 27 20 20 74 6f 6c 75 61 5f 70 75 73 68 27 2e 2e 74 .then...output('..tolua_push'..t
25440 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 28 27 2c 63 74 2c 27 29 27 2e 2e 73 65 6c 66 3a 67 65 74 76 ..'(tolua_S,(',ct,')'..self:getv
25460 61 6c 75 65 28 63 6c 61 73 73 2c 73 74 61 74 69 63 2c 70 72 6f 70 5f 67 65 74 29 2e 2e 27 29 3b alue(class,static,prop_get)..');
25480 27 29 0a 09 65 6c 73 65 0a 09 09 6c 6f 63 61 6c 20 70 75 73 68 5f 66 75 6e 63 20 3d 20 67 65 74 ')..else...local.push_func.=.get
254a0 5f 70 75 73 68 5f 66 75 6e 63 74 69 6f 6e 28 73 65 6c 66 2e 74 79 70 65 29 0a 09 09 74 20 3d 20 _push_function(self.type)...t.=.
254c0 73 65 6c 66 2e 74 79 70 65 0a 09 09 69 66 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 26 27 20 6f self.type...if.self.ptr.==.'&'.o
254e0 72 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 27 20 74 68 65 6e 0a 09 09 09 6f 75 74 70 75 74 28 r.self.ptr.==.''.then....output(
25500 27 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 '..',push_func,'(tolua_S,(void*)
25520 26 27 2e 2e 73 65 6c 66 3a 67 65 74 76 61 6c 75 65 28 63 6c 61 73 73 2c 73 74 61 74 69 63 2c 70 &'..self:getvalue(class,static,p
25540 72 6f 70 5f 67 65 74 29 2e 2e 27 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 09 09 65 6c 73 65 0a 09 rop_get)..',"',t,'");')...else..
25560 09 09 6f 75 74 70 75 74 28 27 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f ..output('..',push_func,'(tolua_
25580 53 2c 28 76 6f 69 64 2a 29 27 2e 2e 73 65 6c 66 3a 67 65 74 76 61 6c 75 65 28 63 6c 61 73 73 2c S,(void*)'..self:getvalue(class,
255a0 73 74 61 74 69 63 2c 70 72 6f 70 5f 67 65 74 29 2e 2e 27 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a static,prop_get)..',"',t,'");').
255c0 09 09 65 6e 64 0a 09 65 6e 64 0a 20 65 6e 64 0a 20 6f 75 74 70 75 74 28 27 20 72 65 74 75 72 6e ..end..end..end..output('.return
255e0 20 31 3b 27 29 0a 20 6f 75 74 70 75 74 28 27 7d 27 29 0a 20 6f 75 74 70 75 74 28 27 23 65 6e 64 .1;')..output('}')..output('#end
25600 69 66 20 2f 2f 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5c 6e 27 29 0a 20 if.//#ifndef.TOLUA_DISABLE\n')..
25620 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 0a 20 2d 2d 20 73 65 74 20 66 75 6e 63 74 69 6f 6e 20 2d output('\n')...--.set.function.-
25640 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
25660 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 69 66 20 6e 6f 74 20 28 73 74 72 66 69 6e 64 ---------------..if.not.(strfind
25680 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 25 73 2b 27 29 20 6f 72 20 73 74 72 69 6e 67 (self.type,'const%s+').or.string
256a0 2e 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 20 27 74 6f 6c 75 61 5f 72 65 61 64 6f 6e 6c 79 27 .find(self.mod,.'tolua_readonly'
256c0 29 20 6f 72 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 20 27 74 6f 6c 75 ).or.string.find(self.mod,.'tolu
256e0 61 5f 69 6e 68 65 72 69 74 73 27 29 29 20 20 74 68 65 6e 0a 20 20 69 66 20 63 6c 61 73 73 20 74 a_inherits'))..then...if.class.t
25700 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 22 2f 2a 20 73 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 hen....output("/*.set.function:"
25720 2c 73 65 6c 66 2e 6e 61 6d 65 2c 22 20 6f 66 20 63 6c 61 73 73 20 22 2c 63 6c 61 73 73 2c 22 20 ,self.name,".of.class.",class,".
25740 2a 2f 22 29 0a 20 20 65 6c 73 65 0a 20 20 20 6f 75 74 70 75 74 28 22 2f 2a 20 73 65 74 20 66 75 */")...else....output("/*.set.fu
25760 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 2e 6e 61 6d 65 2c 22 20 2a 2f 22 29 0a 20 20 65 6e 64 0a nction:",self.name,".*/")...end.
25780 20 20 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 20 3d 20 73 65 6c 66 3a 63 66 75 6e 63 6e 61 6d 65 ..self.csetname.=.self:cfuncname
257a0 28 22 74 6f 6c 75 61 5f 73 65 74 22 29 0a 20 20 6f 75 74 70 75 74 28 22 23 69 66 6e 64 65 66 20 ("tolua_set")...output("#ifndef.
257c0 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5f 22 2e 2e 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 29 0a TOLUA_DISABLE_"..self.csetname).
257e0 20 20 6f 75 74 70 75 74 28 22 5c 6e 73 74 61 74 69 63 20 69 6e 74 22 2c 73 65 6c 66 2e 63 73 65 ..output("\nstatic.int",self.cse
25800 74 6e 61 6d 65 2c 22 28 6c 75 61 5f 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 22 29 0a 20 20 tname,"(lua_State*.tolua_S)")...
25820 6f 75 74 70 75 74 28 22 7b 22 29 0a 0a 20 20 2d 2d 20 64 65 63 6c 61 72 65 20 73 65 6c 66 2c 20 output("{")....--.declare.self,.
25840 69 66 20 74 68 65 20 63 61 73 65 0a 20 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 if.the.case...if.class.and.stati
25860 63 3d 3d 6e 69 6c 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 20 27 2c 73 65 6c 66 2e 70 c==nil.then....output('.',self.p
25880 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 27 2c 27 73 65 6c 66 20 3d 20 27 29 0a 20 20 20 6f 75 74 arent.type,'*','self.=.')....out
258a0 70 75 74 28 27 28 27 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 29 20 27 29 0a put('(',self.parent.type,'*).').
258c0 20 20 20 6c 6f 63 61 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 74 69 ...local.to_func.=.get_to_functi
258e0 6f 6e 28 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 29 0a 20 20 20 6f 75 74 70 75 74 28 74 on(self.parent.type)....output(t
25900 6f 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 31 2c 30 29 3b 27 29 0a 20 20 20 2d 2d 20 63 o_func,'(tolua_S,1,0);')....--.c
25920 68 65 63 6b 20 73 65 6c 66 20 76 61 6c 75 65 0a 09 09 65 6e 64 0a 20 20 2d 2d 20 63 68 65 63 6b heck.self.value...end...--.check
25940 20 74 79 70 65 73 0a 09 09 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 .types...output('#ifndef.TOLUA_R
25960 45 4c 45 41 53 45 5c 6e 27 29 0a 09 09 6f 75 74 70 75 74 28 27 20 20 74 6f 6c 75 61 5f 45 72 72 ELEASE\n')...output('..tolua_Err
25980 6f 72 20 74 6f 6c 75 61 5f 65 72 72 3b 27 29 0a 20 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 or.tolua_err;')...if.class.and.s
259a0 74 61 74 69 63 3d 3d 6e 69 6c 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 20 20 69 66 20 tatic==nil.then....output('..if.
259c0 28 21 73 65 6c 66 29 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e (!self).tolua_error(tolua_S,"'..
259e0 6f 75 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 22 69 6e 76 61 6c 69 64 20 5c 27 73 65 6c output_error_hook("invalid.\'sel
25a00 66 5c 27 20 69 6e 20 61 63 63 65 73 73 69 6e 67 20 76 61 72 69 61 62 6c 65 20 5c 27 25 73 5c 27 f\'.in.accessing.variable.\'%s\'
25a20 22 2c 20 73 65 6c 66 2e 6e 61 6d 65 29 2e 2e 27 22 2c 4e 55 4c 4c 29 3b 27 29 3b 0a 20 20 65 6c ",.self.name)..'",NULL);');...el
25a40 73 65 69 66 20 73 74 61 74 69 63 20 74 68 65 6e 0a 20 20 20 5f 2c 5f 2c 73 65 6c 66 2e 6d 6f 64 seif.static.then...._,_,self.mod
25a60 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 27 5e 25 73 2a 73 74 61 74 69 63 25 .=.strfind(self.mod,'^%s*static%
25a80 73 25 73 2a 28 2e 2a 29 27 29 0a 20 20 65 6e 64 0a 0a 20 20 2d 2d 20 63 68 65 63 6b 20 76 61 72 s%s*(.*)')...end....--.check.var
25aa0 69 61 62 6c 65 20 74 79 70 65 0a 20 20 6f 75 74 70 75 74 28 27 20 20 69 66 20 28 27 2e 2e 73 65 iable.type...output('..if.('..se
25ac0 6c 66 3a 6f 75 74 63 68 65 63 6b 74 79 70 65 28 32 29 2e 2e 27 29 27 29 0a 20 20 6f 75 74 70 75 lf:outchecktype(2)..')')...outpu
25ae0 74 28 27 20 20 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 2c 22 23 76 69 6e 76 t('...tolua_error(tolua_S,"#vinv
25b00 61 6c 69 64 20 74 79 70 65 20 69 6e 20 76 61 72 69 61 62 6c 65 20 61 73 73 69 67 6e 6d 65 6e 74 alid.type.in.variable.assignment
25b20 2e 22 2c 26 74 6f 6c 75 61 5f 65 72 72 29 3b 27 29 0a 09 09 6f 75 74 70 75 74 28 27 23 65 6e 64 .",&tolua_err);')...output('#end
25b40 69 66 5c 6e 27 29 0a 0a 20 20 2d 2d 20 61 73 73 69 67 6e 20 76 61 6c 75 65 0a 09 09 6c 6f 63 61 if\n')....--.assign.value...loca
25b60 6c 20 64 65 66 20 3d 20 30 0a 09 09 69 66 20 73 65 6c 66 2e 64 65 66 20 7e 3d 20 27 27 20 74 68 l.def.=.0...if.self.def.~=.''.th
25b80 65 6e 20 64 65 66 20 3d 20 73 65 6c 66 2e 64 65 66 20 65 6e 64 0a 09 09 69 66 20 73 65 6c 66 2e en.def.=.self.def.end...if.self.
25ba0 74 79 70 65 20 3d 3d 20 27 63 68 61 72 2a 27 20 61 6e 64 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 type.==.'char*'.and.self.dim.~=.
25bc0 27 27 20 74 68 65 6e 20 2d 2d 20 69 73 20 73 74 72 69 6e 67 0a 09 09 09 6f 75 74 70 75 74 28 27 ''.then.--.is.string....output('
25be0 20 73 74 72 6e 63 70 79 28 28 63 68 61 72 2a 29 27 29 0a 09 09 09 69 66 20 63 6c 61 73 73 20 61 .strncpy((char*)')....if.class.a
25c00 6e 64 20 73 74 61 74 69 63 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 73 65 6c 66 2e 70 nd.static.then.....output(self.p
25c20 61 72 65 6e 74 2e 74 79 70 65 2e 2e 27 3a 3a 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 29 0a 09 09 09 arent.type..'::'..self.name)....
25c40 65 6c 73 65 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 27 73 65 elseif.class.then.....output('se
25c60 6c 66 2d 3e 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 29 0a 09 09 09 65 6c 73 65 0a 09 09 09 09 6f 75 lf->'..self.name)....else.....ou
25c80 74 70 75 74 28 73 65 6c 66 2e 6e 61 6d 65 29 0a 09 09 09 65 6e 64 0a 09 09 09 6f 75 74 70 75 74 tput(self.name)....end....output
25ca0 28 27 2c 28 63 6f 6e 73 74 20 63 68 61 72 2a 29 74 6f 6c 75 61 5f 74 6f 73 74 72 69 6e 67 28 74 (',(const.char*)tolua_tostring(t
25cc0 6f 6c 75 61 5f 53 2c 32 2c 27 2c 64 65 66 2c 27 29 2c 27 2c 73 65 6c 66 2e 64 69 6d 2c 27 2d 31 olua_S,2,',def,'),',self.dim,'-1
25ce0 29 3b 27 29 0a 09 09 65 6c 73 65 0a 09 09 09 6c 6f 63 61 6c 20 70 74 72 20 3d 20 27 27 0a 09 09 );')...else....local.ptr.=.''...
25d00 09 69 66 20 73 65 6c 66 2e 70 74 72 7e 3d 27 27 20 74 68 65 6e 20 70 74 72 20 3d 20 27 2a 27 20 .if.self.ptr~=''.then.ptr.=.'*'.
25d20 65 6e 64 0a 09 09 09 6f 75 74 70 75 74 28 27 20 27 29 0a 09 09 09 6c 6f 63 61 6c 20 6e 61 6d 65 end....output('.')....local.name
25d40 20 3d 20 70 72 6f 70 5f 73 65 74 20 6f 72 20 73 65 6c 66 2e 6e 61 6d 65 0a 09 09 09 69 66 20 63 .=.prop_set.or.self.name....if.c
25d60 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 lass.and.static.then.....output(
25d80 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2e 2e 27 3a 3a 27 2e 2e 6e 61 6d 65 29 0a 09 09 self.parent.type..'::'..name)...
25da0 09 65 6c 73 65 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 27 73 .elseif.class.then.....output('s
25dc0 65 6c 66 2d 3e 27 2e 2e 6e 61 6d 65 29 0a 09 09 09 65 6c 73 65 0a 09 09 09 09 6f 75 74 70 75 74 elf->'..name)....else.....output
25de0 28 6e 61 6d 65 29 0a 09 09 09 65 6e 64 0a 09 09 09 6c 6f 63 61 6c 20 74 20 3d 20 69 73 62 61 73 (name)....end....local.t.=.isbas
25e00 69 63 28 73 65 6c 66 2e 74 79 70 65 29 0a 09 09 09 69 66 20 70 72 6f 70 5f 73 65 74 20 74 68 65 ic(self.type)....if.prop_set.the
25e20 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 27 28 27 29 0a 09 09 09 65 6c 73 65 0a 09 09 09 09 6f 75 n.....output('(')....else.....ou
25e40 74 70 75 74 28 27 20 3d 20 27 29 0a 09 09 09 65 6e 64 0a 09 09 09 69 66 20 6e 6f 74 20 74 20 61 tput('.=.')....end....if.not.t.a
25e60 6e 64 20 70 74 72 3d 3d 27 27 20 74 68 65 6e 20 6f 75 74 70 75 74 28 27 2a 27 29 20 65 6e 64 0a nd.ptr==''.then.output('*').end.
25e80 09 09 09 6f 75 74 70 75 74 28 27 28 28 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e 74 79 70 ...output('((',self.mod,self.typ
25ea0 65 29 0a 09 09 09 69 66 20 6e 6f 74 20 74 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 27 e)....if.not.t.then.....output('
25ec0 2a 27 29 0a 09 09 09 65 6e 64 0a 09 09 09 6f 75 74 70 75 74 28 27 29 20 27 29 0a 09 09 09 69 66 *')....end....output(').')....if
25ee0 20 74 20 74 68 65 6e 0a 09 09 09 09 69 66 20 69 73 65 6e 75 6d 28 73 65 6c 66 2e 74 79 70 65 29 .t.then.....if.isenum(self.type)
25f00 20 74 68 65 6e 0a 09 09 09 09 09 6f 75 74 70 75 74 28 27 28 69 6e 74 29 20 27 29 0a 09 09 09 09 .then......output('(int).').....
25f20 65 6e 64 0a 09 09 09 09 6f 75 74 70 75 74 28 27 74 6f 6c 75 61 5f 74 6f 27 2e 2e 74 2c 27 28 74 end.....output('tolua_to'..t,'(t
25f40 6f 6c 75 61 5f 53 2c 32 2c 27 2c 64 65 66 2c 27 29 29 27 29 0a 09 09 09 65 6c 73 65 0a 09 09 09 olua_S,2,',def,'))')....else....
25f60 09 6c 6f 63 61 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 74 69 6f 6e .local.to_func.=.get_to_function
25f80 28 73 65 6c 66 2e 74 79 70 65 29 0a 09 09 09 09 6f 75 74 70 75 74 28 74 6f 5f 66 75 6e 63 2c 27 (self.type).....output(to_func,'
25fa0 28 74 6f 6c 75 61 5f 53 2c 32 2c 27 2c 64 65 66 2c 27 29 29 27 29 0a 09 09 09 65 6e 64 0a 09 09 (tolua_S,2,',def,'))')....end...
25fc0 09 69 66 20 70 72 6f 70 5f 73 65 74 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 70 75 74 28 22 29 22 .if.prop_set.then.....output(")"
25fe0 29 0a 09 09 09 65 6e 64 0a 09 09 09 6f 75 74 70 75 74 28 22 3b 22 29 0a 09 09 65 6e 64 0a 20 20 )....end....output(";")...end...
26000 6f 75 74 70 75 74 28 27 20 72 65 74 75 72 6e 20 30 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 7d output('.return.0;')...output('}
26020 27 29 0a 20 20 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 20 2f 2f 23 69 66 6e 64 65 66 20 54 4f ')...output('#endif.//#ifndef.TO
26040 4c 55 41 5f 44 49 53 41 42 4c 45 5c 6e 27 29 0a 20 20 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 20 LUA_DISABLE\n')...output('\n')..
26060 65 6e 64 0a 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 56 61 72 69 61 62 6c 65 end..end..function.classVariable
26080 3a 72 65 67 69 73 74 65 72 20 28 70 72 65 29 0a 0a 09 69 66 20 6e 6f 74 20 73 65 6c 66 3a 63 68 :register.(pre)...if.not.self:ch
260a0 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 eck_public_access().then...retur
260c0 6e 0a 09 65 6e 64 0a 20 70 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 6c 6f 63 61 6c 20 70 n..end..pre.=.pre.or.''..local.p
260e0 61 72 65 6e 74 20 3d 20 73 65 6c 66 3a 69 6e 6d 6f 64 75 6c 65 28 29 20 6f 72 20 73 65 6c 66 3a arent.=.self:inmodule().or.self:
26100 69 6e 6e 61 6d 65 73 70 61 63 65 28 29 20 6f 72 20 73 65 6c 66 3a 69 6e 63 6c 61 73 73 28 29 0a innamespace().or.self:inclass().
26120 20 69 66 20 6e 6f 74 20 70 61 72 65 6e 74 20 74 68 65 6e 0a 20 20 69 66 20 63 6c 61 73 73 56 61 .if.not.parent.then...if.classVa
26140 72 69 61 62 6c 65 2e 5f 77 61 72 6e 69 6e 67 3d 3d 6e 69 6c 20 74 68 65 6e 0a 20 20 20 77 61 72 riable._warning==nil.then....war
26160 6e 69 6e 67 28 22 4d 61 70 70 69 6e 67 20 76 61 72 69 61 62 6c 65 20 74 6f 20 67 6c 6f 62 61 6c ning("Mapping.variable.to.global
26180 20 6d 61 79 20 64 65 67 72 61 64 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 22 29 0a 20 20 20 63 6c .may.degrade.performance")....cl
261a0 61 73 73 56 61 72 69 61 62 6c 65 2e 5f 77 61 72 6e 69 6e 67 20 3d 20 31 0a 20 20 65 6e 64 0a 20 assVariable._warning.=.1...end..
261c0 65 6e 64 0a 20 69 66 20 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 20 74 68 65 6e 0a 20 20 6f 75 74 end..if.self.csetname.then...out
261e0 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 76 61 72 69 61 62 6c 65 28 74 6f 6c 75 61 5f 53 put(pre..'tolua_variable(tolua_S
26200 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e 2e 27 22 2c 27 2e 2e 73 65 6c 66 2e 63 67 65 74 ,"'..self.lname..'",'..self.cget
26220 6e 61 6d 65 2e 2e 27 2c 27 2e 2e 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 2e 2e 27 29 3b 27 29 0a name..','..self.csetname..');').
26240 20 65 6c 73 65 0a 20 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 76 61 72 69 61 .else...output(pre..'tolua_varia
26260 62 6c 65 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e 2e 27 22 2c 27 ble(tolua_S,"'..self.lname..'",'
26280 2e 2e 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 2e 2e 27 2c 4e 55 4c 4c 29 3b 27 29 0a 20 65 6e 64 ..self.cgetname..',NULL);')..end
262a0 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 74 6f 72 0a 66 75 .end..--.Internal.constructor.fu
262c0 6e 63 74 69 6f 6e 20 5f 56 61 72 69 61 62 6c 65 20 28 74 29 0a 20 73 65 74 6d 65 74 61 74 61 62 nction._Variable.(t)..setmetatab
262e0 6c 65 28 74 2c 63 6c 61 73 73 56 61 72 69 61 62 6c 65 29 0a 20 61 70 70 65 6e 64 28 74 29 0a 20 le(t,classVariable)..append(t)..
26300 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 return.t.end..--.Constructor.--.
26320 45 78 70 65 63 74 73 20 61 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 Expects.a.string.representing.th
26340 65 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 66 75 6e 63 74 69 6f 6e e.variable.declaration..function
26360 20 56 61 72 69 61 62 6c 65 20 28 73 29 0a 20 72 65 74 75 72 6e 20 5f 56 61 72 69 61 62 6c 65 20 .Variable.(s)..return._Variable.
26380 28 44 65 63 6c 61 72 61 74 69 6f 6e 28 73 2c 27 76 61 72 27 29 29 0a 65 6e 64 20 00 00 00 00 00 (Declaration(s,'var')).end......
263a0 2d 2d 20 74 6f 6c 75 61 3a 20 61 72 72 61 79 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e --.tolua:.array.class.--.Written
263c0 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 .by.Waldemar.Celes.--.TeCGraf/PU
263e0 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 39 0a 2d 2d 20 24 49 64 3a 20 61 72 72 61 79 2e C-Rio.--.Jul.1999.--.$Id:.array.
26400 6c 75 61 2c 76 20 31 2e 31 20 32 30 30 30 2f 31 31 2f 30 36 20 32 32 3a 30 33 3a 35 37 20 63 65 lua,v.1.1.2000/11/06.22:03:57.ce
26420 6c 65 73 20 45 78 70 20 24 0a 0a 2d 2d 20 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 les.Exp.$..--.This.code.is.free.
26440 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 software;.you.can.redistribute.i
26460 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 t.and/or.modify.it..--.The.softw
26480 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 are.provided.hereunder.is.on.an.
264a0 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 "as.is".basis,.and.--.the.author
264c0 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 .has.no.obligation.to.provide.ma
264e0 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 intenance,.support,.updates,.--.
26500 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a enhancements,.or.modifications..
26520 0a 0a 2d 2d 20 41 72 72 61 79 20 63 6c 61 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 ..--.Array.class.--.Represents.a
26540 20 65 78 74 65 72 6e 20 61 72 72 61 79 20 76 61 72 69 61 62 6c 65 20 6f 72 20 61 20 70 75 62 6c .extern.array.variable.or.a.publ
26560 69 63 20 6d 65 6d 62 65 72 20 6f 66 20 61 20 63 6c 61 73 73 2e 0a 2d 2d 20 53 74 6f 72 65 73 20 ic.member.of.a.class..--.Stores.
26580 61 6c 6c 20 66 69 65 6c 64 73 20 70 72 65 73 65 6e 74 20 69 6e 20 61 20 64 65 63 6c 61 72 61 74 all.fields.present.in.a.declarat
265a0 69 6f 6e 2e 0a 63 6c 61 73 73 41 72 72 61 79 20 3d 20 7b 0a 7d 0a 63 6c 61 73 73 41 72 72 61 79 ion..classArray.=.{.}.classArray
265c0 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 41 72 72 61 79 0a 73 65 74 6d 65 74 61 74 61 62 .__index.=.classArray.setmetatab
265e0 6c 65 28 63 6c 61 73 73 41 72 72 61 79 2c 63 6c 61 73 73 44 65 63 6c 61 72 61 74 69 6f 6e 29 0a le(classArray,classDeclaration).
26600 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 41 .--.Print.method.function.classA
26620 72 72 61 79 3a 70 72 69 6e 74 20 28 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 rray:print.(ident,close)..print(
26640 69 64 65 6e 74 2e 2e 22 41 72 72 61 79 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 ident.."Array{")..print(ident.."
26660 20 6d 6f 64 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6d 6f 64 2e 2e 22 27 2c 22 29 0a 20 70 72 69 .mod..=.'"..self.mod.."',")..pri
26680 6e 74 28 69 64 65 6e 74 2e 2e 22 20 74 79 70 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 74 79 70 65 nt(ident..".type.=.'"..self.type
266a0 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 70 74 72 20 20 3d 20 27 .."',")..print(ident..".ptr..=.'
266c0 22 2e 2e 73 65 6c 66 2e 70 74 72 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e "..self.ptr.."',")..print(ident.
266e0 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 .".name.=.'"..self.name.."',")..
26700 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 64 65 66 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 64 print(ident..".def..=.'"..self.d
26720 65 66 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 64 69 6d 20 20 3d ef.."',")..print(ident..".dim..=
26740 20 27 22 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e .'"..self.dim.."',")..print(iden
26760 74 2e 2e 22 20 72 65 74 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 72 65 74 2e 2e 22 27 2c 22 29 0a t..".ret..=.'"..self.ret.."',").
26780 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 2d .print(ident.."}"..close).end..-
267a0 2d 20 63 68 65 63 6b 20 69 66 20 69 74 20 69 73 20 61 20 76 61 72 69 61 62 6c 65 0a 66 75 6e 63 -.check.if.it.is.a.variable.func
267c0 74 69 6f 6e 20 63 6c 61 73 73 41 72 72 61 79 3a 69 73 76 61 72 69 61 62 6c 65 20 28 29 0a 20 72 tion.classArray:isvariable.()..r
267e0 65 74 75 72 6e 20 74 72 75 65 0a 65 6e 64 0a 0a 0a 2d 2d 20 67 65 74 20 76 61 72 69 61 62 6c 65 eturn.true.end...--.get.variable
26800 20 76 61 6c 75 65 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 41 72 72 61 79 3a 67 65 74 76 61 .value.function.classArray:getva
26820 6c 75 65 20 28 63 6c 61 73 73 2c 73 74 61 74 69 63 29 0a 20 69 66 20 63 6c 61 73 73 20 61 6e 64 lue.(class,static)..if.class.and
26840 20 73 74 61 74 69 63 20 74 68 65 6e 0a 20 20 72 65 74 75 72 6e 20 63 6c 61 73 73 2e 2e 27 3a 3a .static.then...return.class..'::
26860 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5b 74 6f 6c 75 61 5f 69 6e 64 65 78 5d 27 0a 20 65 '..self.name..'[tolua_index]'..e
26880 6c 73 65 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 20 20 72 65 74 75 72 6e 20 27 73 65 6c 66 2d lseif.class.then...return.'self-
268a0 3e 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5b 74 6f 6c 75 61 5f 69 6e 64 65 78 5d 27 0a 20 >'..self.name..'[tolua_index]'..
268c0 65 6c 73 65 0a 20 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5b 74 6f 6c 75 61 else...return.self.name..'[tolua
268e0 5f 69 6e 64 65 78 5d 27 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 57 72 69 74 65 20 62 69 6e 64 _index]'..end.end..--.Write.bind
26900 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 41 72 72 61 ing.functions.function.classArra
26920 79 3a 73 75 70 63 6f 64 65 20 28 29 0a 20 6c 6f 63 61 6c 20 63 6c 61 73 73 20 3d 20 73 65 6c 66 y:supcode.()..local.class.=.self
26940 3a 69 6e 63 6c 61 73 73 28 29 0a 0a 20 2d 2d 20 67 65 74 20 66 75 6e 63 74 69 6f 6e 20 2d 2d 2d :inclass()...--.get.function.---
26960 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
26980 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 20 20 6f -------------..if.class.then...o
269a0 75 74 70 75 74 28 22 2f 2a 20 67 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 2e 6e 61 utput("/*.get.function:",self.na
269c0 6d 65 2c 22 20 6f 66 20 63 6c 61 73 73 20 22 2c 63 6c 61 73 73 2c 22 20 2a 2f 22 29 0a 20 65 6c me,".of.class.",class,".*/")..el
269e0 73 65 0a 20 20 6f 75 74 70 75 74 28 22 2f 2a 20 67 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 se...output("/*.get.function:",s
26a00 65 6c 66 2e 6e 61 6d 65 2c 22 20 2a 2f 22 29 0a 20 65 6e 64 0a 20 73 65 6c 66 2e 63 67 65 74 6e elf.name,".*/")..end..self.cgetn
26a20 61 6d 65 20 3d 20 73 65 6c 66 3a 63 66 75 6e 63 6e 61 6d 65 28 22 74 6f 6c 75 61 5f 67 65 74 22 ame.=.self:cfuncname("tolua_get"
26a40 29 0a 20 6f 75 74 70 75 74 28 22 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 )..output("#ifndef.TOLUA_DISABLE
26a60 5f 22 2e 2e 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 29 0a 20 6f 75 74 70 75 74 28 22 5c 6e 73 74 _"..self.cgetname)..output("\nst
26a80 61 74 69 63 20 69 6e 74 22 2c 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 2c 22 28 6c 75 61 5f 53 74 atic.int",self.cgetname,"(lua_St
26aa0 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 22 29 0a 20 6f 75 74 70 75 74 28 22 7b 22 29 0a 20 6f 75 ate*.tolua_S)")..output("{")..ou
26ac0 74 70 75 74 28 22 20 69 6e 74 20 74 6f 6c 75 61 5f 69 6e 64 65 78 3b 22 29 0a 0a 20 2d 2d 20 64 tput(".int.tolua_index;")...--.d
26ae0 65 63 6c 61 72 65 20 73 65 6c 66 2c 20 69 66 20 74 68 65 20 63 61 73 65 0a 20 6c 6f 63 61 6c 20 eclare.self,.if.the.case..local.
26b00 5f 2c 5f 2c 73 74 61 74 69 63 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 27 5e _,_,static.=.strfind(self.mod,'^
26b20 25 73 2a 28 73 74 61 74 69 63 29 27 29 0a 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 %s*(static)')..if.class.and.stat
26b40 69 63 3d 3d 6e 69 6c 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 27 20 27 2c 73 65 6c 66 2e 70 ic==nil.then...output('.',self.p
26b60 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 27 2c 27 73 65 6c 66 3b 27 29 0a 20 20 6f 75 74 70 75 74 arent.type,'*','self;')...output
26b80 28 27 20 6c 75 61 5f 70 75 73 68 73 74 72 69 6e 67 28 74 6f 6c 75 61 5f 53 2c 22 2e 73 65 6c 66 ('.lua_pushstring(tolua_S,".self
26ba0 22 29 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 6c 75 61 5f 72 61 77 67 65 74 28 74 6f 6c 75 ");')...output('.lua_rawget(tolu
26bc0 61 5f 53 2c 31 29 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 73 65 6c 66 20 3d 20 27 29 0a 20 a_S,1);')...output('.self.=.')..
26be0 20 6f 75 74 70 75 74 28 27 28 27 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 29 .output('(',self.parent.type,'*)
26c00 20 27 29 0a 20 20 6f 75 74 70 75 74 28 27 6c 75 61 5f 74 6f 75 73 65 72 64 61 74 61 28 74 6f 6c .')...output('lua_touserdata(tol
26c20 75 61 5f 53 2c 2d 31 29 3b 27 29 0a 20 65 6c 73 65 69 66 20 73 74 61 74 69 63 20 74 68 65 6e 0a ua_S,-1);')..elseif.static.then.
26c40 20 20 5f 2c 5f 2c 73 65 6c 66 2e 6d 6f 64 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f .._,_,self.mod.=.strfind(self.mo
26c60 64 2c 27 5e 25 73 2a 73 74 61 74 69 63 25 73 25 73 2a 28 2e 2a 29 27 29 0a 20 65 6e 64 0a 0a 20 d,'^%s*static%s%s*(.*)')..end...
26c80 2d 2d 20 63 68 65 63 6b 20 69 6e 64 65 78 0a 09 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 --.check.index..output('#ifndef.
26ca0 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 20 7b 27 29 0a TOLUA_RELEASE\n')..output('.{').
26cc0 09 6f 75 74 70 75 74 28 27 20 20 74 6f 6c 75 61 5f 45 72 72 6f 72 20 74 6f 6c 75 61 5f 65 72 72 .output('..tolua_Error.tolua_err
26ce0 3b 27 29 0a 20 6f 75 74 70 75 74 28 27 20 20 69 66 20 28 21 74 6f 6c 75 61 5f 69 73 6e 75 6d 62 ;')..output('..if.(!tolua_isnumb
26d00 65 72 28 74 6f 6c 75 61 5f 53 2c 32 2c 30 2c 26 74 6f 6c 75 61 5f 65 72 72 29 29 27 29 0a 20 6f er(tolua_S,2,0,&tolua_err))')..o
26d20 75 74 70 75 74 28 27 20 20 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 2c 22 23 utput('...tolua_error(tolua_S,"#
26d40 76 69 6e 76 61 6c 69 64 20 74 79 70 65 20 69 6e 20 61 72 72 61 79 20 69 6e 64 65 78 69 6e 67 2e vinvalid.type.in.array.indexing.
26d60 22 2c 26 74 6f 6c 75 61 5f 65 72 72 29 3b 27 29 0a 09 6f 75 74 70 75 74 28 27 20 7d 27 29 0a 09 ",&tolua_err);')..output('.}')..
26d80 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 09 69 66 20 66 6c 61 67 73 5b 27 31 27 output('#endif\n')..if.flags['1'
26da0 5d 20 74 68 65 6e 20 2d 2d 20 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 ].then.--.for.compatibility.with
26dc0 20 74 6f 6c 75 61 35 20 3f 0a 09 09 6f 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f 69 6e 64 65 78 .tolua5.?...output('.tolua_index
26de0 20 3d 20 28 69 6e 74 29 74 6f 6c 75 61 5f 74 6f 6e 75 6d 62 65 72 28 74 6f 6c 75 61 5f 53 2c 32 .=.(int)tolua_tonumber(tolua_S,2
26e00 2c 30 29 2d 31 3b 27 29 0a 09 65 6c 73 65 0a 09 09 6f 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f ,0)-1;')..else...output('.tolua_
26e20 69 6e 64 65 78 20 3d 20 28 69 6e 74 29 74 6f 6c 75 61 5f 74 6f 6e 75 6d 62 65 72 28 74 6f 6c 75 index.=.(int)tolua_tonumber(tolu
26e40 61 5f 53 2c 32 2c 30 29 3b 27 29 0a 09 65 6e 64 0a 09 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 a_S,2,0);')..end..output('#ifnde
26e60 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 69 66 20 73 65 6c 66 2e 64 69 6d f.TOLUA_RELEASE\n')..if.self.dim
26e80 20 61 6e 64 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 74 68 65 6e 0a 09 20 20 6f 75 74 70 .and.self.dim.~=.''.then....outp
26ea0 75 74 28 27 20 69 66 20 28 74 6f 6c 75 61 5f 69 6e 64 65 78 3c 30 20 7c 7c 20 74 6f 6c 75 61 5f ut('.if.(tolua_index<0.||.tolua_
26ec0 69 6e 64 65 78 3e 3d 27 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 27 29 27 29 0a 09 65 6c 73 65 0a 09 index>='..self.dim..')')..else..
26ee0 20 20 6f 75 74 70 75 74 28 27 20 69 66 20 28 74 6f 6c 75 61 5f 69 6e 64 65 78 3c 30 29 27 29 0a ..output('.if.(tolua_index<0)').
26f00 09 65 6e 64 0a 20 6f 75 74 70 75 74 28 27 20 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 .end..output('..tolua_error(tolu
26f20 61 5f 53 2c 22 61 72 72 61 79 20 69 6e 64 65 78 69 6e 67 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 a_S,"array.indexing.out.of.range
26f40 2e 22 2c 4e 55 4c 4c 29 3b 27 29 0a 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a .",NULL);')..output('#endif\n').
26f60 0a 20 2d 2d 20 72 65 74 75 72 6e 20 76 61 6c 75 65 0a 20 6c 6f 63 61 6c 20 74 2c 63 74 20 3d 20 ..--.return.value..local.t,ct.=.
26f80 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 70 65 29 0a 20 6c 6f 63 61 6c 20 70 75 73 68 5f 66 isbasic(self.type)..local.push_f
26fa0 75 6e 63 20 3d 20 67 65 74 5f 70 75 73 68 5f 66 75 6e 63 74 69 6f 6e 28 74 29 0a 20 69 66 20 74 unc.=.get_push_function(t)..if.t
26fc0 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f 70 75 73 68 27 2e 2e 74 2e .then...output('.tolua_push'..t.
26fe0 2e 27 28 74 6f 6c 75 61 5f 53 2c 28 27 2c 63 74 2c 27 29 27 2e 2e 73 65 6c 66 3a 67 65 74 76 61 .'(tolua_S,(',ct,')'..self:getva
27000 6c 75 65 28 63 6c 61 73 73 2c 73 74 61 74 69 63 29 2e 2e 27 29 3b 27 29 0a 20 65 6c 73 65 0a 09 lue(class,static)..');')..else..
27020 09 74 20 3d 20 73 65 6c 66 2e 74 79 70 65 0a 20 20 69 66 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 .t.=.self.type...if.self.ptr.==.
27040 27 26 27 20 6f 72 20 73 65 6c 66 2e 70 74 72 20 3d 3d 20 27 27 20 74 68 65 6e 0a 20 20 20 6f 75 '&'.or.self.ptr.==.''.then....ou
27060 74 70 75 74 28 27 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f tput('.',push_func,'(tolua_S,(vo
27080 69 64 2a 29 26 27 2e 2e 73 65 6c 66 3a 67 65 74 76 61 6c 75 65 28 63 6c 61 73 73 2c 73 74 61 74 id*)&'..self:getvalue(class,stat
270a0 69 63 29 2e 2e 27 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 20 20 65 6c 73 65 0a 20 20 20 6f 75 74 ic)..',"',t,'");')...else....out
270c0 70 75 74 28 27 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 put('.',push_func,'(tolua_S,(voi
270e0 64 2a 29 27 2e 2e 73 65 6c 66 3a 67 65 74 76 61 6c 75 65 28 63 6c 61 73 73 2c 73 74 61 74 69 63 d*)'..self:getvalue(class,static
27100 29 2e 2e 27 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 20 6f 75 74 )..',"',t,'");')...end..end..out
27120 70 75 74 28 27 20 72 65 74 75 72 6e 20 31 3b 27 29 0a 20 6f 75 74 70 75 74 28 27 7d 27 29 0a 20 put('.return.1;')..output('}')..
27140 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 20 2f 2f 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 output('#endif.//#ifndef.TOLUA_D
27160 49 53 41 42 4c 45 5c 6e 27 29 0a 20 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 0a 20 2d 2d 20 73 65 ISABLE\n')..output('\n')...--.se
27180 74 20 66 75 6e 63 74 69 6f 6e 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d t.function.---------------------
271a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 69 66 20 ---------------------------..if.
271c0 6e 6f 74 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 74 79 70 65 2c 27 63 6f 6e 73 74 27 29 20 74 not.strfind(self.type,'const').t
271e0 68 65 6e 0a 20 20 69 66 20 63 6c 61 73 73 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 22 2f hen...if.class.then....output("/
27200 2a 20 73 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 2e 6e 61 6d 65 2c 22 20 6f 66 20 *.set.function:",self.name,".of.
27220 63 6c 61 73 73 20 22 2c 63 6c 61 73 73 2c 22 20 2a 2f 22 29 0a 20 20 65 6c 73 65 0a 20 20 20 6f class.",class,".*/")...else....o
27240 75 74 70 75 74 28 22 2f 2a 20 73 65 74 20 66 75 6e 63 74 69 6f 6e 3a 22 2c 73 65 6c 66 2e 6e 61 utput("/*.set.function:",self.na
27260 6d 65 2c 22 20 2a 2f 22 29 0a 20 20 65 6e 64 0a 20 20 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 20 me,".*/")...end...self.csetname.
27280 3d 20 73 65 6c 66 3a 63 66 75 6e 63 6e 61 6d 65 28 22 74 6f 6c 75 61 5f 73 65 74 22 29 0a 20 20 =.self:cfuncname("tolua_set")...
272a0 6f 75 74 70 75 74 28 22 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5f 22 2e output("#ifndef.TOLUA_DISABLE_".
272c0 2e 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 29 0a 20 20 6f 75 74 70 75 74 28 22 5c 6e 73 74 61 74 .self.csetname)...output("\nstat
272e0 69 63 20 69 6e 74 22 2c 73 65 6c 66 2e 63 73 65 74 6e 61 6d 65 2c 22 28 6c 75 61 5f 53 74 61 74 ic.int",self.csetname,"(lua_Stat
27300 65 2a 20 74 6f 6c 75 61 5f 53 29 22 29 0a 20 20 6f 75 74 70 75 74 28 22 7b 22 29 0a 0a 20 20 2d e*.tolua_S)")...output("{")....-
27320 2d 20 64 65 63 6c 61 72 65 20 69 6e 64 65 78 0a 20 20 6f 75 74 70 75 74 28 27 20 69 6e 74 20 74 -.declare.index...output('.int.t
27340 6f 6c 75 61 5f 69 6e 64 65 78 3b 27 29 0a 0a 20 20 2d 2d 20 64 65 63 6c 61 72 65 20 73 65 6c 66 olua_index;')....--.declare.self
27360 2c 20 69 66 20 74 68 65 20 63 61 73 65 0a 20 20 6c 6f 63 61 6c 20 5f 2c 5f 2c 73 74 61 74 69 63 ,.if.the.case...local._,_,static
27380 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 2c 27 5e 25 73 2a 28 73 74 61 74 69 63 .=.strfind(self.mod,'^%s*(static
273a0 29 27 29 0a 20 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 3d 3d 6e 69 6c 20 74 )')...if.class.and.static==nil.t
273c0 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 20 27 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 hen....output('.',self.parent.ty
273e0 70 65 2c 27 2a 27 2c 27 73 65 6c 66 3b 27 29 0a 20 20 20 6f 75 74 70 75 74 28 27 20 6c 75 61 5f pe,'*','self;')....output('.lua_
27400 70 75 73 68 73 74 72 69 6e 67 28 74 6f 6c 75 61 5f 53 2c 22 2e 73 65 6c 66 22 29 3b 27 29 0a 20 pushstring(tolua_S,".self");')..
27420 20 20 6f 75 74 70 75 74 28 27 20 6c 75 61 5f 72 61 77 67 65 74 28 74 6f 6c 75 61 5f 53 2c 31 29 ..output('.lua_rawget(tolua_S,1)
27440 3b 27 29 0a 20 20 20 6f 75 74 70 75 74 28 27 20 73 65 6c 66 20 3d 20 27 29 0a 20 20 20 6f 75 74 ;')....output('.self.=.')....out
27460 70 75 74 28 27 28 27 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 29 20 27 29 0a put('(',self.parent.type,'*).').
27480 20 20 20 6f 75 74 70 75 74 28 27 6c 75 61 5f 74 6f 75 73 65 72 64 61 74 61 28 74 6f 6c 75 61 5f ...output('lua_touserdata(tolua_
274a0 53 2c 2d 31 29 3b 27 29 0a 20 20 65 6c 73 65 69 66 20 73 74 61 74 69 63 20 74 68 65 6e 0a 20 20 S,-1);')...elseif.static.then...
274c0 20 5f 2c 5f 2c 73 65 6c 66 2e 6d 6f 64 20 3d 20 73 74 72 66 69 6e 64 28 73 65 6c 66 2e 6d 6f 64 ._,_,self.mod.=.strfind(self.mod
274e0 2c 27 5e 25 73 2a 73 74 61 74 69 63 25 73 25 73 2a 28 2e 2a 29 27 29 0a 20 20 65 6e 64 0a 0a 20 ,'^%s*static%s%s*(.*)')...end...
27500 20 2d 2d 20 63 68 65 63 6b 20 69 6e 64 65 78 0a 09 20 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 .--.check.index...output('#ifnde
27520 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 20 6f 75 74 70 75 74 28 27 20 7b f.TOLUA_RELEASE\n')...output('.{
27540 27 29 0a 09 20 6f 75 74 70 75 74 28 27 20 20 74 6f 6c 75 61 5f 45 72 72 6f 72 20 74 6f 6c 75 61 ')...output('..tolua_Error.tolua
27560 5f 65 72 72 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 20 69 66 20 28 21 74 6f 6c 75 61 5f 69 _err;')...output('..if.(!tolua_i
27580 73 6e 75 6d 62 65 72 28 74 6f 6c 75 61 5f 53 2c 32 2c 30 2c 26 74 6f 6c 75 61 5f 65 72 72 29 29 snumber(tolua_S,2,0,&tolua_err))
275a0 27 29 0a 20 20 6f 75 74 70 75 74 28 27 20 20 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 ')...output('...tolua_error(tolu
275c0 61 5f 53 2c 22 23 76 69 6e 76 61 6c 69 64 20 74 79 70 65 20 69 6e 20 61 72 72 61 79 20 69 6e 64 a_S,"#vinvalid.type.in.array.ind
275e0 65 78 69 6e 67 2e 22 2c 26 74 6f 6c 75 61 5f 65 72 72 29 3b 27 29 0a 09 09 6f 75 74 70 75 74 28 exing.",&tolua_err);')...output(
27600 27 20 7d 27 29 0a 09 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 0a 09 69 66 20 '.}')...output('#endif\n')...if.
27620 66 6c 61 67 73 5b 27 31 27 5d 20 74 68 65 6e 20 2d 2d 20 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 flags['1'].then.--.for.compatibi
27640 6c 69 74 79 20 77 69 74 68 20 74 6f 6c 75 61 35 20 3f 0a 09 09 6f 75 74 70 75 74 28 27 20 74 6f lity.with.tolua5.?...output('.to
27660 6c 75 61 5f 69 6e 64 65 78 20 3d 20 28 69 6e 74 29 74 6f 6c 75 61 5f 74 6f 6e 75 6d 62 65 72 28 lua_index.=.(int)tolua_tonumber(
27680 74 6f 6c 75 61 5f 53 2c 32 2c 30 29 2d 31 3b 27 29 0a 09 65 6c 73 65 0a 09 09 6f 75 74 70 75 74 tolua_S,2,0)-1;')..else...output
276a0 28 27 20 74 6f 6c 75 61 5f 69 6e 64 65 78 20 3d 20 28 69 6e 74 29 74 6f 6c 75 61 5f 74 6f 6e 75 ('.tolua_index.=.(int)tolua_tonu
276c0 6d 62 65 72 28 74 6f 6c 75 61 5f 53 2c 32 2c 30 29 3b 27 29 0a 09 65 6e 64 0a 0a 09 20 6f 75 74 mber(tolua_S,2,0);')..end....out
276e0 70 75 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 put('#ifndef.TOLUA_RELEASE\n')..
27700 69 66 20 73 65 6c 66 2e 64 69 6d 20 61 6e 64 20 73 65 6c 66 2e 64 69 6d 20 7e 3d 20 27 27 20 74 if.self.dim.and.self.dim.~=.''.t
27720 68 65 6e 0a 09 20 20 6f 75 74 70 75 74 28 27 20 69 66 20 28 74 6f 6c 75 61 5f 69 6e 64 65 78 3c hen....output('.if.(tolua_index<
27740 30 20 7c 7c 20 74 6f 6c 75 61 5f 69 6e 64 65 78 3e 3d 27 2e 2e 73 65 6c 66 2e 64 69 6d 2e 2e 27 0.||.tolua_index>='..self.dim..'
27760 29 27 29 0a 09 65 6c 73 65 0a 09 20 20 6f 75 74 70 75 74 28 27 20 69 66 20 28 74 6f 6c 75 61 5f )')..else....output('.if.(tolua_
27780 69 6e 64 65 78 3c 30 29 27 29 0a 09 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 20 20 74 6f 6c 75 index<0)')..end...output('..tolu
277a0 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 2c 22 61 72 72 61 79 20 69 6e 64 65 78 69 6e 67 20 a_error(tolua_S,"array.indexing.
277c0 6f 75 74 20 6f 66 20 72 61 6e 67 65 2e 22 2c 4e 55 4c 4c 29 3b 27 29 0a 09 09 6f 75 74 70 75 74 out.of.range.",NULL);')...output
277e0 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 0a 20 20 2d 2d 20 61 73 73 69 67 6e 20 76 61 6c 75 65 0a ('#endif\n')....--.assign.value.
27800 20 20 6c 6f 63 61 6c 20 70 74 72 20 3d 20 27 27 0a 20 20 69 66 20 73 65 6c 66 2e 70 74 72 7e 3d ..local.ptr.=.''...if.self.ptr~=
27820 27 27 20 74 68 65 6e 20 70 74 72 20 3d 20 27 2a 27 20 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 ''.then.ptr.=.'*'.end...output('
27840 20 27 29 0a 20 20 69 66 20 63 6c 61 73 73 20 61 6e 64 20 73 74 61 74 69 63 20 74 68 65 6e 0a 20 .')...if.class.and.static.then..
27860 20 20 6f 75 74 70 75 74 28 63 6c 61 73 73 2e 2e 27 3a 3a 27 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e ..output(class..'::'..self.name.
27880 2e 27 5b 74 6f 6c 75 61 5f 69 6e 64 65 78 5d 27 29 0a 20 20 65 6c 73 65 69 66 20 63 6c 61 73 73 .'[tolua_index]')...elseif.class
278a0 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 73 65 6c 66 2d 3e 27 2e 2e 73 65 6c 66 2e 6e .then....output('self->'..self.n
278c0 61 6d 65 2e 2e 27 5b 74 6f 6c 75 61 5f 69 6e 64 65 78 5d 27 29 0a 20 20 65 6c 73 65 0a 20 20 20 ame..'[tolua_index]')...else....
278e0 6f 75 74 70 75 74 28 73 65 6c 66 2e 6e 61 6d 65 2e 2e 27 5b 74 6f 6c 75 61 5f 69 6e 64 65 78 5d output(self.name..'[tolua_index]
27900 27 29 0a 20 20 65 6e 64 0a 20 20 6c 6f 63 61 6c 20 74 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c ')...end...local.t.=.isbasic(sel
27920 66 2e 74 79 70 65 29 0a 20 20 6f 75 74 70 75 74 28 27 20 3d 20 27 29 0a 20 20 69 66 20 6e 6f 74 f.type)...output('.=.')...if.not
27940 20 74 20 61 6e 64 20 70 74 72 3d 3d 27 27 20 74 68 65 6e 20 6f 75 74 70 75 74 28 27 2a 27 29 20 .t.and.ptr==''.then.output('*').
27960 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 28 28 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e end...output('((',self.mod,self.
27980 74 79 70 65 29 0a 20 20 69 66 20 6e 6f 74 20 74 20 74 68 65 6e 0a 20 20 20 6f 75 74 70 75 74 28 type)...if.not.t.then....output(
279a0 27 2a 27 29 0a 20 20 65 6e 64 0a 20 20 6f 75 74 70 75 74 28 27 29 20 27 29 0a 20 20 6c 6f 63 61 '*')...end...output(').')...loca
279c0 6c 20 64 65 66 20 3d 20 30 0a 20 20 69 66 20 73 65 6c 66 2e 64 65 66 20 7e 3d 20 27 27 20 74 68 l.def.=.0...if.self.def.~=.''.th
279e0 65 6e 20 64 65 66 20 3d 20 73 65 6c 66 2e 64 65 66 20 65 6e 64 0a 20 20 69 66 20 74 20 74 68 65 en.def.=.self.def.end...if.t.the
27a00 6e 0a 20 20 20 6f 75 74 70 75 74 28 27 74 6f 6c 75 61 5f 74 6f 27 2e 2e 74 2c 27 28 74 6f 6c 75 n....output('tolua_to'..t,'(tolu
27a20 61 5f 53 2c 33 2c 27 2c 64 65 66 2c 27 29 29 3b 27 29 0a 20 20 65 6c 73 65 0a 20 20 20 6c 6f 63 a_S,3,',def,'));')...else....loc
27a40 61 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 74 69 6f 6e 28 73 65 6c al.to_func.=.get_to_function(sel
27a60 66 2e 74 79 70 65 29 0a 20 20 20 6f 75 74 70 75 74 28 74 6f 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 f.type)....output(to_func,'(tolu
27a80 61 5f 53 2c 33 2c 27 2c 64 65 66 2c 27 29 29 3b 27 29 0a 20 20 65 6e 64 0a 20 20 6f 75 74 70 75 a_S,3,',def,'));')...end...outpu
27aa0 74 28 27 20 72 65 74 75 72 6e 20 30 3b 27 29 0a 20 20 6f 75 74 70 75 74 28 27 7d 27 29 0a 20 20 t('.return.0;')...output('}')...
27ac0 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 20 2f 2f 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 44 output('#endif.//#ifndef.TOLUA_D
27ae0 49 53 41 42 4c 45 5c 6e 27 29 0a 20 20 6f 75 74 70 75 74 28 27 5c 6e 27 29 0a 20 65 6e 64 0a 0a ISABLE\n')...output('\n')..end..
27b00 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 41 72 72 61 79 3a 72 65 67 69 73 74 65 end..function.classArray:registe
27b20 72 20 28 70 72 65 29 0a 09 69 66 20 6e 6f 74 20 73 65 6c 66 3a 63 68 65 63 6b 5f 70 75 62 6c 69 r.(pre)..if.not.self:check_publi
27b40 63 5f 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 0a 09 65 6e 64 0a 0a 20 c_access().then...return..end...
27b60 70 72 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 69 66 20 73 65 6c 66 2e 63 73 65 74 6e 61 6d pre.=.pre.or.''..if.self.csetnam
27b80 65 20 74 68 65 6e 0a 20 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 61 72 72 61 e.then...output(pre..'tolua_arra
27ba0 79 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e 2e 27 22 2c 27 2e 2e y(tolua_S,"'..self.lname..'",'..
27bc0 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 2e 2e 27 2c 27 2e 2e 73 65 6c 66 2e 63 73 65 74 6e 61 6d self.cgetname..','..self.csetnam
27be0 65 2e 2e 27 29 3b 27 29 0a 20 65 6c 73 65 0a 20 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f e..');')..else...output(pre..'to
27c00 6c 75 61 5f 61 72 72 61 79 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 lua_array(tolua_S,"'..self.lname
27c20 2e 2e 27 22 2c 27 2e 2e 73 65 6c 66 2e 63 67 65 74 6e 61 6d 65 2e 2e 27 2c 4e 55 4c 4c 29 3b 27 ..'",'..self.cgetname..',NULL);'
27c40 29 0a 20 65 6e 64 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 )..end.end..--.Internal.construc
27c60 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 41 72 72 61 79 20 28 74 29 0a 20 73 65 74 6d 65 74 61 tor.function._Array.(t)..setmeta
27c80 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 41 72 72 61 79 29 0a 20 61 70 70 65 6e 64 28 74 29 0a 20 table(t,classArray)..append(t)..
27ca0 72 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 return.t.end..--.Constructor.--.
27cc0 45 78 70 65 63 74 73 20 61 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 Expects.a.string.representing.th
27ce0 65 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 66 75 6e 63 74 69 6f 6e e.variable.declaration..function
27d00 20 41 72 72 61 79 20 28 73 29 0a 20 72 65 74 75 72 6e 20 5f 41 72 72 61 79 20 28 44 65 63 6c 61 .Array.(s)..return._Array.(Decla
27d20 72 61 74 69 6f 6e 28 73 2c 27 76 61 72 27 29 29 0a 65 6e 64 20 00 00 00 2d 2d 20 74 6f 6c 75 61 ration(s,'var')).end....--.tolua
27d40 3a 20 6f 70 65 72 61 74 6f 72 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e 20 62 79 20 57 :.operator.class.--.Written.by.W
27d60 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 43 2d 52 69 6f aldemar.Celes.--.TeCGraf/PUC-Rio
27d80 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 54 68 69 73 20 .--.Jul.1998.--.$Id:.$..--.This.
27da0 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 code.is.free.software;.you.can.r
27dc0 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 2e edistribute.it.and/or.modify.it.
27de0 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 75 6e .--.The.software.provided.hereun
27e00 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e 64 0a der.is.on.an."as.is".basis,.and.
27e20 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f 6e 20 --.the.author.has.no.obligation.
27e40 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 74 2c to.provide.maintenance,.support,
27e60 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 6d 6f .updates,.--.enhancements,.or.mo
27e80 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 4f 70 65 72 61 74 6f 72 20 63 6c 61 73 73 difications....--.Operator.class
27ea0 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 6e 20 6f 70 65 72 61 74 6f 72 20 66 75 6e 63 74 .--.Represents.an.operator.funct
27ec0 69 6f 6e 20 6f 72 20 61 20 63 6c 61 73 73 20 6f 70 65 72 61 74 6f 72 20 6d 65 74 68 6f 64 2e 0a ion.or.a.class.operator.method..
27ee0 2d 2d 20 49 74 20 73 74 6f 72 65 73 20 74 68 65 20 73 61 6d 65 20 66 69 65 6c 64 73 20 61 73 20 --.It.stores.the.same.fields.as.
27f00 66 75 6e 63 74 69 6f 6e 73 20 64 6f 20 70 6c 75 73 3a 0a 2d 2d 20 20 6b 69 6e 64 20 3d 20 73 65 functions.do.plus:.--..kind.=.se
27f20 74 20 6f 66 20 63 68 61 72 61 63 74 65 72 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 t.of.character.representing.the.
27f40 6f 70 65 72 61 74 6f 72 20 28 61 73 20 69 74 20 61 70 70 65 72 73 20 69 6e 20 43 2b 2b 20 63 6f operator.(as.it.appers.in.C++.co
27f60 64 65 29 0a 63 6c 61 73 73 4f 70 65 72 61 74 6f 72 20 3d 20 7b 0a 20 6b 69 6e 64 20 3d 20 27 27 de).classOperator.=.{..kind.=.''
27f80 2c 0a 7d 0a 63 6c 61 73 73 4f 70 65 72 61 74 6f 72 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 ,.}.classOperator.__index.=.clas
27fa0 73 4f 70 65 72 61 74 6f 72 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 4f 70 65 72 sOperator.setmetatable(classOper
27fc0 61 74 6f 72 2c 63 6c 61 73 73 46 75 6e 63 74 69 6f 6e 29 0a 0a 2d 2d 20 74 61 62 6c 65 20 74 6f ator,classFunction)..--.table.to
27fe0 20 74 72 61 6e 73 66 6f 72 6d 20 6f 70 65 72 61 74 6f 72 20 6b 69 6e 64 20 69 6e 74 6f 20 74 68 .transform.operator.kind.into.th
28000 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 74 61 67 20 6d 65 74 68 6f 64 20 6e 61 6d 65 0a 5f 54 e.appropriate.tag.method.name._T
28020 4d 20 3d 20 7b 5b 27 2b 27 5d 20 3d 20 27 61 64 64 27 2c 0a 20 20 20 20 20 20 20 5b 27 2d 27 5d M.=.{['+'].=.'add',........['-']
28040 20 3d 20 27 73 75 62 27 2c 0a 20 20 20 20 20 20 20 5b 27 2a 27 5d 20 3d 20 27 6d 75 6c 27 2c 0a .=.'sub',........['*'].=.'mul',.
28060 20 20 20 20 20 20 20 5b 27 2f 27 5d 20 3d 20 27 64 69 76 27 2c 0a 20 20 20 20 20 20 20 5b 27 3c .......['/'].=.'div',........['<
28080 27 5d 20 3d 20 27 6c 74 27 2c 0a 20 20 20 20 20 20 20 5b 27 3c 3d 27 5d 20 3d 20 27 6c 65 27 2c '].=.'lt',........['<='].=.'le',
280a0 0a 20 20 20 20 20 20 20 5b 27 3d 3d 27 5d 20 3d 20 27 65 71 27 2c 0a 20 20 20 20 20 20 20 5b 27 ........['=='].=.'eq',........['
280c0 5b 5d 27 5d 20 3d 20 27 67 65 74 69 27 2c 0a 20 20 20 20 20 20 20 5b 27 26 5b 5d 27 5d 20 3d 20 []'].=.'geti',........['&[]'].=.
280e0 27 73 65 74 69 27 2c 0a 20 20 20 20 20 20 20 2d 2d 5b 27 2d 3e 27 5d 20 3d 20 27 66 6c 65 63 68 'seti',........--['->'].=.'flech
28100 69 74 61 27 2c 0a 20 20 20 20 20 20 7d 0a 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 74 68 6f 64 0a ita',.......}...--.Print.method.
28120 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 4f 70 65 72 61 74 6f 72 3a 70 72 69 6e 74 20 28 69 64 function.classOperator:print.(id
28140 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 4f 70 65 72 61 74 ent,close)..print(ident.."Operat
28160 6f 72 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6b 69 6e 64 20 20 3d 20 27 22 or{")..print(ident..".kind..=.'"
28180 2e 2e 73 65 6c 66 2e 6b 69 6e 64 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e ..self.kind.."',")..print(ident.
281a0 2e 22 20 6d 6f 64 20 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6d 6f 64 2e 2e 22 27 2c 22 29 0a 20 70 .".mod..=.'"..self.mod.."',")..p
281c0 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 74 79 70 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 74 79 rint(ident..".type.=.'"..self.ty
281e0 70 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 70 74 72 20 20 3d pe.."',")..print(ident..".ptr..=
28200 20 27 22 2e 2e 73 65 6c 66 2e 70 74 72 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e .'"..self.ptr.."',")..print(iden
28220 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 2c 22 29 t..".name.=.'"..self.name.."',")
28240 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 63 6f 6e 73 74 20 3d 20 27 22 2e 2e 73 65 6c ..print(ident..".const.=.'"..sel
28260 66 2e 63 6f 6e 73 74 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 63 f.const.."',")..print(ident..".c
28280 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 name.=.'"..self.cname.."',")..pr
282a0 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6c 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6c 6e int(ident..".lname.=.'"..self.ln
282c0 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 61 72 67 73 20 ame.."',")..print(ident..".args.
282e0 3d 20 7b 22 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 2e 61 72 67 =.{")..local.i=1..while.self.arg
28300 73 5b 69 5d 20 64 6f 0a 20 20 73 65 6c 66 2e 61 72 67 73 5b 69 5d 3a 70 72 69 6e 74 28 69 64 65 s[i].do...self.args[i]:print(ide
28320 6e 74 2e 2e 22 20 20 22 2c 22 2c 22 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 70 72 nt.."..",",")...i.=.i+1..end..pr
28340 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 7d 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 int(ident..".}")..print(ident.."
28360 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 4f 70 }"..close).end..function.classOp
28380 65 72 61 74 6f 72 3a 73 75 70 63 6f 64 65 5f 74 6d 70 28 29 0a 0a 09 69 66 20 6e 6f 74 20 5f 54 erator:supcode_tmp()...if.not._T
283a0 4d 5b 73 65 6c 66 2e 6b 69 6e 64 5d 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 20 63 6c 61 73 73 M[self.kind].then...return.class
283c0 46 75 6e 63 74 69 6f 6e 2e 73 75 70 63 6f 64 65 28 73 65 6c 66 29 0a 09 65 6e 64 0a 0a 09 2d 2d Function.supcode(self)..end...--
283e0 20 6e 6f 20 6f 76 65 72 6c 6f 61 64 2c 20 6e 6f 20 70 61 72 61 6d 65 74 65 72 73 2c 20 61 6c 77 .no.overload,.no.parameters,.alw
28400 61 79 73 20 69 6e 63 6c 61 73 73 0a 09 6f 75 74 70 75 74 28 22 2f 2a 20 6d 65 74 68 6f 64 3a 22 ays.inclass..output("/*.method:"
28420 2c 73 65 6c 66 2e 6e 61 6d 65 2c 22 20 6f 66 20 63 6c 61 73 73 20 22 2c 73 65 6c 66 3a 69 6e 63 ,self.name,".of.class.",self:inc
28440 6c 61 73 73 28 29 2c 22 20 2a 2f 22 29 0a 0a 09 6f 75 74 70 75 74 28 22 23 69 66 6e 64 65 66 20 lass(),".*/")...output("#ifndef.
28460 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5f 22 2e 2e 73 65 6c 66 2e 63 6e 61 6d 65 29 0a 09 6f 75 TOLUA_DISABLE_"..self.cname)..ou
28480 74 70 75 74 28 22 5c 6e 73 74 61 74 69 63 20 69 6e 74 22 2c 73 65 6c 66 2e 63 6e 61 6d 65 2c 22 tput("\nstatic.int",self.cname,"
284a0 28 6c 75 61 5f 53 74 61 74 65 2a 20 74 6f 6c 75 61 5f 53 29 22 29 0a 0a 09 69 66 20 6f 76 65 72 (lua_State*.tolua_S)")...if.over
284c0 6c 6f 61 64 20 3c 20 30 20 74 68 65 6e 0a 09 20 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 load.<.0.then...output('#ifndef.
284e0 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a 09 65 6e 64 0a 09 6f 75 74 70 75 74 28 27 TOLUA_RELEASE\n')..end..output('
28500 20 74 6f 6c 75 61 5f 45 72 72 6f 72 20 74 6f 6c 75 61 5f 65 72 72 3b 27 29 0a 09 6f 75 74 70 75 .tolua_Error.tolua_err;')..outpu
28520 74 28 27 20 69 66 20 28 5c 6e 27 29 0a 09 2d 2d 20 63 68 65 63 6b 20 73 65 6c 66 0a 09 6c 6f 63 t('.if.(\n')..--.check.self..loc
28540 61 6c 20 69 73 5f 66 75 6e 63 20 3d 20 67 65 74 5f 69 73 5f 66 75 6e 63 74 69 6f 6e 28 73 65 6c al.is_func.=.get_is_function(sel
28560 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 29 0a 09 6f 75 74 70 75 74 28 27 20 20 20 20 20 21 27 2e f.parent.type)..output('.....!'.
28580 2e 69 73 5f 66 75 6e 63 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 31 2c 22 27 2e 2e 73 65 6c 66 2e 70 .is_func..'(tolua_S,1,"'..self.p
285a0 61 72 65 6e 74 2e 74 79 70 65 2e 2e 27 22 2c 30 2c 26 74 6f 6c 75 61 5f 65 72 72 29 20 7c 7c 5c arent.type..'",0,&tolua_err).||\
285c0 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 20 20 20 20 20 21 74 6f 6c 75 61 5f 69 73 6e 6f 6f 62 6a n')..output('.....!tolua_isnoobj
285e0 28 74 6f 6c 75 61 5f 53 2c 32 2c 26 74 6f 6c 75 61 5f 65 72 72 29 5c 6e 20 29 27 29 0a 09 6f 75 (tolua_S,2,&tolua_err)\n.)')..ou
28600 74 70 75 74 28 27 20 20 67 6f 74 6f 20 74 6f 6c 75 61 5f 6c 65 72 72 6f 72 3b 27 29 0a 0a 09 6f tput('..goto.tolua_lerror;')...o
28620 75 74 70 75 74 28 27 20 65 6c 73 65 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 utput('.else\n')..output('#endif
28640 5c 6e 27 29 20 2d 2d 20 74 6f 6c 75 61 5f 72 65 6c 65 61 73 65 0a 09 6f 75 74 70 75 74 28 27 20 \n').--.tolua_release..output('.
28660 7b 27 29 0a 0a 09 2d 2d 20 64 65 63 6c 61 72 65 20 73 65 6c 66 0a 09 6f 75 74 70 75 74 28 27 20 {')...--.declare.self..output('.
28680 27 2c 73 65 6c 66 2e 63 6f 6e 73 74 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a ',self.const,self.parent.type,'*
286a0 27 2c 27 73 65 6c 66 20 3d 20 27 29 0a 09 6f 75 74 70 75 74 28 27 28 27 2c 73 65 6c 66 2e 63 6f ','self.=.')..output('(',self.co
286c0 6e 73 74 2c 73 65 6c 66 2e 70 61 72 65 6e 74 2e 74 79 70 65 2c 27 2a 29 20 27 29 0a 09 6c 6f 63 nst,self.parent.type,'*).')..loc
286e0 61 6c 20 74 6f 5f 66 75 6e 63 20 3d 20 67 65 74 5f 74 6f 5f 66 75 6e 63 28 73 65 6c 66 2e 70 61 al.to_func.=.get_to_func(self.pa
28700 72 65 6e 74 2e 74 79 70 65 29 0a 09 6f 75 74 70 75 74 28 74 6f 5f 66 75 6e 63 2c 27 28 74 6f 6c rent.type)..output(to_func,'(tol
28720 75 61 5f 53 2c 31 2c 30 29 3b 27 29 0a 0a 09 2d 2d 20 63 68 65 63 6b 20 73 65 6c 66 0a 09 6f 75 ua_S,1,0);')...--.check.self..ou
28740 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c 6e 27 29 0a tput('#ifndef.TOLUA_RELEASE\n').
28760 09 6f 75 74 70 75 74 28 27 20 20 69 66 20 28 21 73 65 6c 66 29 20 74 6f 6c 75 61 5f 65 72 72 6f .output('..if.(!self).tolua_erro
28780 72 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 6f 75 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 r(tolua_S,"'..output_error_hook(
287a0 22 69 6e 76 61 6c 69 64 20 5c 27 73 65 6c 66 5c 27 20 69 6e 20 66 75 6e 63 74 69 6f 6e 20 5c 27 "invalid.\'self\'.in.function.\'
287c0 25 73 5c 27 22 2c 20 73 65 6c 66 2e 6e 61 6d 65 29 2e 2e 27 22 2c 4e 55 4c 4c 29 3b 27 29 3b 0a %s\'",.self.name)..'",NULL);');.
287e0 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 0a 09 2d 2d 20 63 61 73 74 20 73 65 .output('#endif\n')...--.cast.se
28800 6c 66 0a 09 6f 75 74 70 75 74 28 27 20 20 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e 74 79 lf..output('..',self.mod,self.ty
28820 70 65 2c 73 65 6c 66 2e 70 74 72 2c 27 74 6f 6c 75 61 5f 72 65 74 20 3d 20 27 29 0a 09 6f 75 74 pe,self.ptr,'tolua_ret.=.')..out
28840 70 75 74 28 27 28 27 2c 73 65 6c 66 2e 6d 6f 64 2c 73 65 6c 66 2e 74 79 70 65 2c 73 65 6c 66 2e put('(',self.mod,self.type,self.
28860 70 74 72 2c 27 29 28 2a 73 65 6c 66 29 3b 27 29 0a 0a 09 2d 2d 20 72 65 74 75 72 6e 20 76 61 6c ptr,')(*self);')...--.return.val
28880 75 65 0a 09 6c 6f 63 61 6c 20 74 2c 63 74 20 3d 20 69 73 62 61 73 69 63 28 73 65 6c 66 2e 74 79 ue..local.t,ct.=.isbasic(self.ty
288a0 70 65 29 0a 09 69 66 20 74 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 27 20 20 20 74 6f 6c 75 pe)..if.t.then...output('...tolu
288c0 61 5f 70 75 73 68 27 2e 2e 74 2e 2e 27 28 74 6f 6c 75 61 5f 53 2c 28 27 2c 63 74 2c 27 29 74 6f a_push'..t..'(tolua_S,(',ct,')to
288e0 6c 75 61 5f 72 65 74 29 3b 27 29 0a 09 65 6c 73 65 0a 09 09 74 20 3d 20 73 65 6c 66 2e 74 79 70 lua_ret);')..else...t.=.self.typ
28900 65 0a 09 09 6c 6f 63 61 6c 20 70 75 73 68 5f 66 75 6e 63 20 3d 20 67 65 74 5f 70 75 73 68 5f 66 e...local.push_func.=.get_push_f
28920 75 6e 63 74 69 6f 6e 28 74 29 0a 09 09 6e 65 77 5f 74 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 unction(t)...new_t.=.string.gsub
28940 28 74 2c 20 22 63 6f 6e 73 74 25 73 2b 22 2c 20 22 22 29 0a 09 09 69 66 20 73 65 6c 66 2e 70 74 (t,."const%s+",."")...if.self.pt
28960 72 20 3d 3d 20 27 27 20 74 68 65 6e 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 7b 27 29 0a 09 r.==.''.then....output('...{')..
28980 09 09 6f 75 74 70 75 74 28 27 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c 6e 27 29 ..output('#ifdef.__cplusplus\n')
289a0 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 20 76 6f 69 64 2a 20 74 6f 6c 75 61 5f 6f 62 6a 20 ....output('....void*.tolua_obj.
289c0 3d 20 4d 74 6f 6c 75 61 5f 6e 65 77 28 28 27 2c 6e 65 77 5f 74 2c 27 29 28 74 6f 6c 75 61 5f 72 =.Mtolua_new((',new_t,')(tolua_r
289e0 65 74 29 29 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 20 27 2c 70 75 73 68 5f 66 75 et));')....output('....',push_fu
28a00 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 74 6f 6c 75 61 5f 6f 62 6a 2c 22 27 2c 74 2c 27 22 29 3b nc,'(tolua_S,tolua_obj,"',t,'");
28a20 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 72 65 67 69 73 74 65 72 ')....output('....tolua_register
28a40 5f 67 63 28 74 6f 6c 75 61 5f 53 2c 6c 75 61 5f 67 65 74 74 6f 70 28 74 6f 6c 75 61 5f 53 29 29 _gc(tolua_S,lua_gettop(tolua_S))
28a60 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 23 65 6c 73 65 5c 6e 27 29 0a 09 09 09 6f 75 74 70 ;')....output('#else\n')....outp
28a80 75 74 28 27 20 20 20 20 76 6f 69 64 2a 20 74 6f 6c 75 61 5f 6f 62 6a 20 3d 20 74 6f 6c 75 61 5f ut('....void*.tolua_obj.=.tolua_
28aa0 63 6f 70 79 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 26 74 6f 6c 75 61 5f 72 65 74 2c 73 copy(tolua_S,(void*)&tolua_ret,s
28ac0 69 7a 65 6f 66 28 27 2c 74 2c 27 29 29 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 20 izeof(',t,'));')....output('....
28ae0 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 74 6f 6c 75 61 5f 6f 62 6a 2c ',push_func,'(tolua_S,tolua_obj,
28b00 22 27 2c 74 2c 27 22 29 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 "',t,'");')....output('....tolua
28b20 5f 72 65 67 69 73 74 65 72 5f 67 63 28 74 6f 6c 75 61 5f 53 2c 6c 75 61 5f 67 65 74 74 6f 70 28 _register_gc(tolua_S,lua_gettop(
28b40 74 6f 6c 75 61 5f 53 29 29 3b 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e tolua_S));')....output('#endif\n
28b60 27 29 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 7d 27 29 0a 09 09 65 6c 73 65 69 66 20 73 65 ')....output('...}')...elseif.se
28b80 6c 66 2e 70 74 72 20 3d 3d 20 27 26 27 20 74 68 65 6e 0a 09 09 09 6f 75 74 70 75 74 28 27 20 20 lf.ptr.==.'&'.then....output('..
28ba0 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 26 74 .',push_func,'(tolua_S,(void*)&t
28bc0 6f 6c 75 61 5f 72 65 74 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 09 09 65 6c 73 65 0a 09 09 09 69 olua_ret,"',t,'");')...else....i
28be0 66 20 6c 6f 63 61 6c 5f 63 6f 6e 73 74 72 75 63 74 6f 72 20 74 68 65 6e 0a 09 09 09 09 6f 75 74 f.local_constructor.then.....out
28c00 70 75 74 28 27 20 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 put('...',push_func,'(tolua_S,(v
28c20 6f 69 64 20 2a 29 74 6f 6c 75 61 5f 72 65 74 2c 22 27 2c 74 2c 27 22 29 3b 27 29 0a 09 09 09 09 oid.*)tolua_ret,"',t,'");').....
28c40 6f 75 74 70 75 74 28 27 20 20 20 20 74 6f 6c 75 61 5f 72 65 67 69 73 74 65 72 5f 67 63 28 74 6f output('....tolua_register_gc(to
28c60 6c 75 61 5f 53 2c 6c 75 61 5f 67 65 74 74 6f 70 28 74 6f 6c 75 61 5f 53 29 29 3b 27 29 0a 09 09 lua_S,lua_gettop(tolua_S));')...
28c80 09 65 6c 73 65 0a 09 09 09 09 6f 75 74 70 75 74 28 27 20 20 20 27 2c 70 75 73 68 5f 66 75 6e 63 .else.....output('...',push_func
28ca0 2c 27 28 74 6f 6c 75 61 5f 53 2c 28 76 6f 69 64 2a 29 74 6f 6c 75 61 5f 72 65 74 2c 22 27 2c 74 ,'(tolua_S,(void*)tolua_ret,"',t
28cc0 2c 27 22 29 3b 27 29 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 0a 09 6f 75 74 70 ,'");')....end...end..end...outp
28ce0 75 74 28 27 20 20 7d 27 29 0a 09 6f 75 74 70 75 74 28 27 20 72 65 74 75 72 6e 20 31 3b 27 29 0a ut('..}')..output('.return.1;').
28d00 0a 09 6f 75 74 70 75 74 28 27 23 69 66 6e 64 65 66 20 54 4f 4c 55 41 5f 52 45 4c 45 41 53 45 5c ..output('#ifndef.TOLUA_RELEASE\
28d20 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 74 6f 6c 75 61 5f 6c 65 72 72 6f 72 3a 5c 6e 27 29 0a 09 n')..output('tolua_lerror:\n')..
28d40 6f 75 74 70 75 74 28 27 20 74 6f 6c 75 61 5f 65 72 72 6f 72 28 74 6f 6c 75 61 5f 53 2c 22 27 2e output('.tolua_error(tolua_S,"'.
28d60 2e 6f 75 74 70 75 74 5f 65 72 72 6f 72 5f 68 6f 6f 6b 28 22 23 66 65 72 72 6f 72 20 69 6e 20 66 .output_error_hook("#ferror.in.f
28d80 75 6e 63 74 69 6f 6e 20 5c 27 25 73 5c 27 2e 22 2c 20 73 65 6c 66 2e 6c 6e 61 6d 65 29 2e 2e 27 unction.\'%s\'.",.self.lname)..'
28da0 22 2c 26 74 6f 6c 75 61 5f 65 72 72 29 3b 27 29 0a 09 6f 75 74 70 75 74 28 27 20 72 65 74 75 72 ",&tolua_err);')..output('.retur
28dc0 6e 20 30 3b 27 29 0a 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 5c 6e 27 29 0a 0a 0a 09 6f 75 n.0;')..output('#endif\n')....ou
28de0 74 70 75 74 28 27 7d 27 29 0a 09 6f 75 74 70 75 74 28 27 23 65 6e 64 69 66 20 2f 2f 23 69 66 6e tput('}')..output('#endif.//#ifn
28e00 64 65 66 20 54 4f 4c 55 41 5f 44 49 53 41 42 4c 45 5c 6e 27 29 0a 09 6f 75 74 70 75 74 28 27 5c def.TOLUA_DISABLE\n')..output('\
28e20 6e 27 29 0a 65 6e 64 0a 0a 2d 2d 20 49 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 74 6f 72 n').end..--.Internal.constructor
28e40 0a 66 75 6e 63 74 69 6f 6e 20 5f 4f 70 65 72 61 74 6f 72 20 28 74 29 0a 20 73 65 74 6d 65 74 61 .function._Operator.(t)..setmeta
28e60 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 4f 70 65 72 61 74 6f 72 29 0a 0a 20 69 66 20 74 2e 63 6f table(t,classOperator)...if.t.co
28e80 6e 73 74 20 7e 3d 20 27 63 6f 6e 73 74 27 20 61 6e 64 20 74 2e 63 6f 6e 73 74 20 7e 3d 20 27 27 nst.~=.'const'.and.t.const.~=.''
28ea0 20 74 68 65 6e 0a 20 20 65 72 72 6f 72 28 22 23 69 6e 76 61 6c 69 64 20 27 63 6f 6e 73 74 27 20 .then...error("#invalid.'const'.
28ec0 73 70 65 63 69 66 69 63 61 74 69 6f 6e 22 29 0a 20 65 6e 64 0a 0a 20 61 70 70 65 6e 64 28 74 29 specification")..end...append(t)
28ee0 0a 20 69 66 20 6e 6f 74 20 74 3a 69 6e 63 6c 61 73 73 28 29 20 74 68 65 6e 0a 20 20 65 72 72 6f ..if.not.t:inclass().then...erro
28f00 72 28 22 23 6f 70 65 72 61 74 6f 72 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 64 65 66 69 6e 65 64 r("#operator.can.only.be.defined
28f20 20 61 73 20 63 6c 61 73 73 20 6d 65 6d 62 65 72 22 29 0a 20 65 6e 64 0a 0a 20 2d 2d 74 2e 6e 61 .as.class.member")..end...--t.na
28f40 6d 65 20 3d 20 74 2e 6e 61 6d 65 20 2e 2e 20 22 5f 22 20 2e 2e 20 28 5f 54 4d 5b 74 2e 6b 69 6e me.=.t.name...."_"....(_TM[t.kin
28f60 64 5d 20 6f 72 20 74 2e 6b 69 6e 64 29 0a 20 74 2e 63 6e 61 6d 65 20 3d 20 74 3a 63 66 75 6e 63 d].or.t.kind)..t.cname.=.t:cfunc
28f80 6e 61 6d 65 28 22 74 6f 6c 75 61 22 29 2e 2e 74 3a 6f 76 65 72 6c 6f 61 64 28 74 29 0a 20 74 2e name("tolua")..t:overload(t)..t.
28fa0 6e 61 6d 65 20 3d 20 22 6f 70 65 72 61 74 6f 72 22 20 2e 2e 20 74 2e 6b 69 6e 64 20 20 2d 2d 20 name.=."operator"....t.kind..--.
28fc0 73 65 74 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 61 6c 6c 69 6e 67 20 6e 61 6d 65 0a 20 72 65 set.appropriate.calling.name..re
28fe0 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 66 75 6e 63 74 turn.t.end..--.Constructor.funct
29000 69 6f 6e 20 4f 70 65 72 61 74 6f 72 20 28 64 2c 6b 2c 61 2c 63 29 0a 0a 09 6c 6f 63 61 6c 20 6f ion.Operator.(d,k,a,c)...local.o
29020 70 5f 6b 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 6b 2c 20 22 5e 25 73 2a 22 2c 20 22 22 29 p_k.=.string.gsub(k,."^%s*",."")
29040 0a 09 6f 70 5f 6b 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 6b 2c 20 22 25 73 2a 24 22 2c 20 ..op_k.=.string.gsub(k,."%s*$",.
29060 22 22 29 0a 09 2d 2d 69 66 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 6b 2c 20 22 5e 5b 25 77 5f 3a "")..--if.string.find(k,."^[%w_:
29080 25 64 3c 3e 25 2a 25 26 5d 2b 24 22 29 20 74 68 65 6e 0a 09 69 66 20 64 20 3d 3d 20 22 6f 70 65 %d<>%*%&]+$").then..if.d.==."ope
290a0 72 61 74 6f 72 22 20 61 6e 64 20 6b 20 7e 3d 20 27 27 20 74 68 65 6e 0a 0a 09 09 64 20 3d 20 6b rator".and.k.~=.''.then....d.=.k
290c0 2e 2e 22 20 6f 70 65 72 61 74 6f 72 22 0a 09 65 6c 73 65 69 66 20 6e 6f 74 20 5f 54 4d 5b 6f 70 ..".operator"..elseif.not._TM[op
290e0 5f 6b 5d 20 74 68 65 6e 0a 0a 09 09 69 66 20 66 6c 61 67 73 5b 27 57 27 5d 20 74 68 65 6e 0a 09 _k].then....if.flags['W'].then..
29100 09 09 65 72 72 6f 72 28 22 74 6f 6c 75 61 3a 20 6e 6f 20 73 75 70 70 6f 72 74 20 66 6f 72 20 6f ..error("tolua:.no.support.for.o
29120 70 65 72 61 74 6f 72 22 20 2e 2e 20 66 2e 6b 69 6e 64 29 0a 09 09 65 6c 73 65 0a 09 09 09 77 61 perator"....f.kind)...else....wa
29140 72 6e 69 6e 67 28 22 4e 6f 20 73 75 70 70 6f 72 74 20 66 6f 72 20 6f 70 65 72 61 74 6f 72 20 22 rning("No.support.for.operator."
29160 2e 2e 6f 70 5f 6b 2e 2e 22 2c 20 69 67 6e 6f 72 69 6e 67 22 29 0a 09 09 09 72 65 74 75 72 6e 20 ..op_k..",.ignoring")....return.
29180 6e 69 6c 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 0a 09 6c 6f 63 61 6c 20 72 65 66 20 3d 20 27 27 0a nil...end..end...local.ref.=.''.
291a0 20 6c 6f 63 61 6c 20 74 20 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 73 74 72 73 75 62 .local.t.=.split_c_tokens(strsub
291c0 28 61 2c 32 2c 73 74 72 6c 65 6e 28 61 29 2d 31 29 2c 27 2c 27 29 20 2d 2d 20 65 6c 69 6d 69 6e (a,2,strlen(a)-1),',').--.elimin
291e0 61 74 65 20 62 72 61 63 65 73 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 6c 6f 63 61 6c 20 6c 20 3d ate.braces..local.i=1..local.l.=
29200 20 7b 6e 3d 30 7d 0a 20 77 68 69 6c 65 20 74 5b 69 5d 20 64 6f 0a 20 20 6c 2e 6e 20 3d 20 6c 2e .{n=0}..while.t[i].do...l.n.=.l.
29220 6e 2b 31 0a 20 20 6c 5b 6c 2e 6e 5d 20 3d 20 44 65 63 6c 61 72 61 74 69 6f 6e 28 74 5b 69 5d 2c n+1...l[l.n].=.Declaration(t[i],
29240 27 76 61 72 27 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 69 66 20 6b 20 3d 3d 20 27 'var')...i.=.i+1..end..if.k.==.'
29260 5b 5d 27 20 74 68 65 6e 0a 09 20 6c 6f 63 61 6c 20 5f 0a 09 20 5f 2c 20 5f 2c 20 72 65 66 20 3d []'.then...local._..._,._,.ref.=
29280 20 73 74 72 66 69 6e 64 28 64 2c 27 28 26 29 27 29 0a 20 20 64 20 3d 20 67 73 75 62 28 64 2c 27 .strfind(d,'(&)')...d.=.gsub(d,'
292a0 26 27 2c 27 27 29 0a 20 65 6c 73 65 69 66 20 6b 3d 3d 27 26 5b 5d 27 20 74 68 65 6e 0a 20 20 6c &','')..elseif.k=='&[]'.then...l
292c0 2e 6e 20 3d 20 6c 2e 6e 2b 31 0a 20 20 6c 5b 6c 2e 6e 5d 20 3d 20 44 65 63 6c 61 72 61 74 69 6f .n.=.l.n+1...l[l.n].=.Declaratio
292e0 6e 28 64 2c 27 76 61 72 27 29 0a 20 20 6c 5b 6c 2e 6e 5d 2e 6e 61 6d 65 20 3d 20 27 74 6f 6c 75 n(d,'var')...l[l.n].name.=.'tolu
29300 61 5f 76 61 6c 75 65 27 0a 20 65 6e 64 0a 20 6c 6f 63 61 6c 20 66 20 3d 20 44 65 63 6c 61 72 61 a_value'..end..local.f.=.Declara
29320 74 69 6f 6e 28 64 2c 27 66 75 6e 63 27 29 0a 20 69 66 20 6b 20 3d 3d 20 27 5b 5d 27 20 61 6e 64 tion(d,'func')..if.k.==.'[]'.and
29340 20 28 6c 5b 31 5d 3d 3d 6e 69 6c 20 6f 72 20 69 73 62 61 73 69 63 28 6c 5b 31 5d 2e 74 79 70 65 .(l[1]==nil.or.isbasic(l[1].type
29360 29 7e 3d 27 6e 75 6d 62 65 72 27 29 20 74 68 65 6e 0a 20 20 65 72 72 6f 72 28 27 6f 70 65 72 61 )~='number').then...error('opera
29380 74 6f 72 5b 5d 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 64 65 66 69 6e 65 64 20 66 6f 72 20 6e 75 tor[].can.only.be.defined.for.nu
293a0 6d 65 72 69 63 20 69 6e 64 65 78 2e 27 29 0a 20 65 6e 64 0a 20 66 2e 61 72 67 73 20 3d 20 6c 0a meric.index.')..end..f.args.=.l.
293c0 20 66 2e 63 6f 6e 73 74 20 3d 20 63 0a 20 66 2e 6b 69 6e 64 20 3d 20 6f 70 5f 6b 0a 20 66 2e 6c .f.const.=.c..f.kind.=.op_k..f.l
293e0 6e 61 6d 65 20 3d 20 22 2e 22 2e 2e 28 5f 54 4d 5b 66 2e 6b 69 6e 64 5d 20 6f 72 20 66 2e 6b 69 name.=."."..(_TM[f.kind].or.f.ki
29400 6e 64 29 0a 20 69 66 20 6e 6f 74 20 5f 54 4d 5b 66 2e 6b 69 6e 64 5d 20 74 68 65 6e 0a 20 09 66 nd)..if.not._TM[f.kind].then...f
29420 2e 63 61 73 74 5f 6f 70 65 72 61 74 6f 72 20 3d 20 74 72 75 65 0a 20 65 6e 64 0a 20 69 66 20 66 .cast_operator.=.true..end..if.f
29440 2e 6b 69 6e 64 20 3d 3d 20 27 5b 5d 27 20 61 6e 64 20 72 65 66 3d 3d 27 26 27 20 61 6e 64 20 66 .kind.==.'[]'.and.ref=='&'.and.f
29460 2e 63 6f 6e 73 74 7e 3d 27 63 6f 6e 73 74 27 20 74 68 65 6e 0a 20 20 4f 70 65 72 61 74 6f 72 28 .const~='const'.then...Operator(
29480 64 2c 27 26 27 2e 2e 6b 2c 61 2c 63 29 20 09 2d 2d 20 63 72 65 61 74 65 20 63 6f 72 72 65 73 70 d,'&'..k,a,c)..--.create.corresp
294a0 6f 64 69 6e 67 20 73 65 74 20 6f 70 65 72 61 74 6f 72 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e 20 oding.set.operator..end..return.
294c0 5f 4f 70 65 72 61 74 6f 72 28 66 29 0a 65 6e 64 20 00 00 00 00 00 00 00 0a 5f 67 6c 6f 62 61 6c _Operator(f).end........._global
294e0 5f 74 65 6d 70 6c 61 74 65 73 20 3d 20 7b 7d 0a 0a 63 6c 61 73 73 54 65 6d 70 6c 61 74 65 43 6c _templates.=.{}..classTemplateCl
29500 61 73 73 20 3d 20 7b 0a 0a 09 6e 61 6d 65 20 3d 20 27 27 2c 0a 09 62 6f 64 79 20 3d 20 27 27 2c ass.=.{...name.=.'',..body.=.'',
29520 0a 09 70 61 72 65 6e 74 73 20 3d 20 7b 7d 2c 0a 09 61 72 67 73 20 3d 20 7b 7d 2c 20 2d 2d 20 74 ..parents.=.{},..args.=.{},.--.t
29540 68 65 20 74 65 6d 70 6c 61 74 65 20 61 72 67 75 6d 65 6e 74 73 0a 7d 0a 0a 63 6c 61 73 73 54 65 he.template.arguments.}..classTe
29560 6d 70 6c 61 74 65 43 6c 61 73 73 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 54 65 6d 70 6c mplateClass.__index.=.classTempl
29580 61 74 65 43 6c 61 73 73 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 54 65 6d 70 6c 61 74 ateClass...function.classTemplat
295a0 65 43 6c 61 73 73 3a 74 68 72 6f 77 28 74 79 70 65 73 2c 20 6c 6f 63 61 6c 5f 73 63 6f 70 65 29 eClass:throw(types,.local_scope)
295c0 0a 0a 09 2d 2d 69 66 20 74 61 62 6c 65 2e 67 65 74 6e 28 74 79 70 65 73 29 20 7e 3d 20 74 61 62 ...--if.table.getn(types).~=.tab
295e0 6c 65 2e 67 65 74 6e 28 73 65 6c 66 2e 61 72 67 73 29 20 74 68 65 6e 0a 09 2d 2d 09 65 72 72 6f le.getn(self.args).then..--.erro
29600 72 28 22 23 69 6e 76 61 6c 69 64 20 70 61 72 61 6d 65 74 65 72 20 63 6f 75 6e 74 22 29 0a 09 2d r("#invalid.parameter.count")..-
29620 2d 65 6e 64 0a 0a 09 2d 2d 20 72 65 70 6c 61 63 65 0a 09 66 6f 72 20 69 20 3d 31 20 2c 20 74 79 -end...--.replace..for.i.=1.,.ty
29640 70 65 73 2e 6e 20 64 6f 0a 0a 09 09 6c 6f 63 61 6c 20 49 6c 20 3d 20 73 70 6c 69 74 5f 63 5f 74 pes.n.do....local.Il.=.split_c_t
29660 6f 6b 65 6e 73 28 74 79 70 65 73 5b 69 5d 2c 20 22 20 22 29 0a 09 09 69 66 20 74 61 62 6c 65 2e okens(types[i],.".")...if.table.
29680 67 65 74 6e 28 49 6c 29 20 7e 3d 20 74 61 62 6c 65 2e 67 65 74 6e 28 73 65 6c 66 2e 61 72 67 73 getn(Il).~=.table.getn(self.args
296a0 29 20 74 68 65 6e 0a 09 09 09 65 72 72 6f 72 28 22 23 69 6e 76 61 6c 69 64 20 70 61 72 61 6d 65 ).then....error("#invalid.parame
296c0 74 65 72 20 63 6f 75 6e 74 20 66 6f 72 20 22 2e 2e 74 79 70 65 73 5b 69 5d 29 0a 09 09 65 6e 64 ter.count.for."..types[i])...end
296e0 0a 09 09 6c 6f 63 61 6c 20 62 49 20 3d 20 73 65 6c 66 2e 62 6f 64 79 0a 09 09 6c 6f 63 61 6c 20 ...local.bI.=.self.body...local.
29700 70 49 20 3d 20 7b 7d 0a 09 09 66 6f 72 20 6a 20 3d 20 31 2c 73 65 6c 66 2e 61 72 67 73 2e 6e 20 pI.=.{}...for.j.=.1,self.args.n.
29720 64 6f 0a 09 09 09 2d 2d 54 6c 5b 6a 5d 20 3d 20 66 69 6e 64 74 79 70 65 28 54 6c 5b 6a 5d 29 20 do....--Tl[j].=.findtype(Tl[j]).
29740 6f 72 20 54 6c 5b 6a 5d 0a 09 09 09 62 49 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 62 49 2c or.Tl[j]....bI.=.string.gsub(bI,
29760 20 22 28 5b 5e 5f 25 77 5d 29 22 2e 2e 73 65 6c 66 2e 61 72 67 73 5b 6a 5d 2e 2e 22 28 5b 5e 5f ."([^_%w])"..self.args[j].."([^_
29780 25 77 5d 29 22 2c 20 22 25 31 22 2e 2e 49 6c 5b 6a 5d 2e 2e 22 25 32 22 29 0a 09 09 09 69 66 20 %w])",."%1"..Il[j].."%2")....if.
297a0 73 65 6c 66 2e 70 61 72 65 6e 74 73 20 74 68 65 6e 0a 09 09 09 09 66 6f 72 20 69 3d 31 2c 74 61 self.parents.then.....for.i=1,ta
297c0 62 6c 65 2e 67 65 74 6e 28 73 65 6c 66 2e 70 61 72 65 6e 74 73 29 20 64 6f 0a 09 09 09 09 09 70 ble.getn(self.parents).do......p
297e0 49 5b 69 5d 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 73 65 6c 66 2e 70 61 72 65 6e 74 73 5b I[i].=.string.gsub(self.parents[
29800 69 5d 2c 20 22 28 5b 5e 5f 25 77 5d 3f 29 22 2e 2e 73 65 6c 66 2e 61 72 67 73 5b 6a 5d 2e 2e 22 i],."([^_%w]?)"..self.args[j].."
29820 28 5b 5e 5f 25 77 5d 3f 29 22 2c 20 22 25 31 22 2e 2e 49 6c 5b 6a 5d 2e 2e 22 25 32 22 29 0a 09 ([^_%w]?)",."%1"..Il[j].."%2")..
29840 09 09 09 65 6e 64 0a 09 09 09 65 6e 64 0a 09 09 65 6e 64 0a 09 09 2d 2d 6c 6f 63 61 6c 20 61 70 ...end....end...end...--local.ap
29860 70 65 6e 64 20 3d 20 22 3c 22 2e 2e 73 74 72 69 6e 67 2e 67 73 75 62 28 74 79 70 65 73 5b 69 5d pend.=."<"..string.gsub(types[i]
29880 2c 20 22 25 73 2b 22 2c 20 22 2c 22 29 2e 2e 22 3e 22 0a 09 09 6c 6f 63 61 6c 20 61 70 70 65 6e ,."%s+",.",")..">"...local.appen
298a0 64 20 3d 20 22 3c 22 2e 2e 63 6f 6e 63 61 74 28 49 6c 2c 20 31 2c 20 74 61 62 6c 65 2e 67 65 74 d.=."<"..concat(Il,.1,.table.get
298c0 6e 28 49 6c 29 2c 20 22 2c 22 29 2e 2e 22 3e 22 0a 09 09 61 70 70 65 6e 64 20 3d 20 73 74 72 69 n(Il),.",")..">"...append.=.stri
298e0 6e 67 2e 67 73 75 62 28 61 70 70 65 6e 64 2c 20 22 25 73 2a 2c 25 73 2a 22 2c 20 22 2c 22 29 0a ng.gsub(append,."%s*,%s*",.",").
29900 09 09 61 70 70 65 6e 64 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 61 70 70 65 6e 64 2c 20 22 ..append.=.string.gsub(append,."
29920 3e 3e 22 2c 20 22 3e 20 3e 22 29 0a 09 09 66 6f 72 20 69 3d 31 2c 74 61 62 6c 65 2e 67 65 74 6e >>",.">.>")...for.i=1,table.getn
29940 28 70 49 29 20 64 6f 0a 09 09 09 2d 2d 70 49 5b 69 5d 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 (pI).do....--pI[i].=.string.gsub
29960 28 70 49 5b 69 5d 2c 20 22 3e 3e 22 2c 20 22 3e 20 3e 22 29 0a 09 09 09 70 49 5b 69 5d 20 3d 20 (pI[i],.">>",.">.>")....pI[i].=.
29980 72 65 73 6f 6c 76 65 5f 74 65 6d 70 6c 61 74 65 5f 74 79 70 65 73 28 70 49 5b 69 5d 29 0a 09 09 resolve_template_types(pI[i])...
299a0 65 6e 64 0a 09 09 62 49 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 62 49 2c 20 22 3e 3e 22 2c end...bI.=.string.gsub(bI,.">>",
299c0 20 22 3e 20 3e 22 29 0a 09 09 6c 6f 63 61 6c 20 6e 20 3d 20 73 65 6c 66 2e 6e 61 6d 65 0a 09 09 .">.>")...local.n.=.self.name...
299e0 69 66 20 6c 6f 63 61 6c 5f 73 63 6f 70 65 20 74 68 65 6e 0a 09 09 09 6e 20 3d 20 73 65 6c 66 2e if.local_scope.then....n.=.self.
29a00 6c 6f 63 61 6c 5f 6e 61 6d 65 0a 09 09 65 6e 64 0a 0a 09 09 43 6c 61 73 73 28 6e 2e 2e 61 70 70 local_name...end....Class(n..app
29a20 65 6e 64 2c 20 70 49 2c 20 62 49 29 0a 09 65 6e 64 0a 65 6e 64 0a 0a 0a 66 75 6e 63 74 69 6f 6e end,.pI,.bI)..end.end...function
29a40 20 54 65 6d 70 6c 61 74 65 43 6c 61 73 73 28 6e 61 6d 65 2c 20 70 61 72 65 6e 74 73 2c 20 62 6f .TemplateClass(name,.parents,.bo
29a60 64 79 2c 20 70 61 72 61 6d 65 74 65 72 73 29 0a 0a 09 6c 6f 63 61 6c 20 6f 20 3d 20 7b 0a 09 0a dy,.parameters)...local.o.=.{...
29a80 09 09 70 61 72 65 6e 74 73 20 3d 20 70 61 72 65 6e 74 73 2c 0a 09 09 62 6f 64 79 20 3d 20 62 6f ..parents.=.parents,...body.=.bo
29aa0 64 79 2c 0a 09 09 61 72 67 73 20 3d 20 70 61 72 61 6d 65 74 65 72 73 2c 0a 09 7d 0a 09 0a 09 6c dy,...args.=.parameters,..}....l
29ac0 6f 63 61 6c 20 6f 6e 61 6d 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 6e 61 6d 65 2c 20 22 ocal.oname.=.string.gsub(name,."
29ae0 40 2e 2a 24 22 2c 20 22 22 29 0a 09 6f 6e 61 6d 65 20 3d 20 67 65 74 6e 61 6d 65 73 70 61 63 65 @.*$",."")..oname.=.getnamespace
29b00 28 63 6c 61 73 73 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 29 2e 2e 6f 6e 61 6d 65 0a 09 6f 2e (classContainer.curr)..oname..o.
29b20 6e 61 6d 65 20 3d 20 6f 6e 61 6d 65 0a 0a 09 6f 2e 6c 6f 63 61 6c 5f 6e 61 6d 65 20 3d 20 6e 61 name.=.oname...o.local_name.=.na
29b40 6d 65 0a 09 0a 09 73 65 74 6d 65 74 61 74 61 62 6c 65 28 6f 2c 20 63 6c 61 73 73 54 65 6d 70 6c me....setmetatable(o,.classTempl
29b60 61 74 65 43 6c 61 73 73 29 0a 0a 09 69 66 20 5f 67 6c 6f 62 61 6c 5f 74 65 6d 70 6c 61 74 65 73 ateClass)...if._global_templates
29b80 5b 6f 6e 61 6d 65 5d 20 74 68 65 6e 0a 09 09 77 61 72 6e 69 6e 67 28 22 44 75 70 6c 69 63 61 74 [oname].then...warning("Duplicat
29ba0 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66 20 74 65 6d 70 6c 61 74 65 20 22 2e 2e 6f 6e 61 e.declaration.of.template."..ona
29bc0 6d 65 29 0a 09 65 6c 73 65 0a 09 09 5f 67 6c 6f 62 61 6c 5f 74 65 6d 70 6c 61 74 65 73 5b 6f 6e me)..else..._global_templates[on
29be0 61 6d 65 5d 20 3d 20 6f 0a 09 65 6e 64 0a 0a 09 72 65 74 75 72 6e 20 6f 0a 65 6e 64 20 00 00 00 ame].=.o..end...return.o.end....
29c00 2d 2d 20 74 6f 6c 75 61 3a 20 63 6c 61 73 73 20 63 6c 61 73 73 0a 2d 2d 20 57 72 69 74 74 65 6e --.tolua:.class.class.--.Written
29c20 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 2f 50 55 .by.Waldemar.Celes.--.TeCGraf/PU
29c40 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 2d 2d 20 C-Rio.--.Jul.1998.--.$Id:.$..--.
29c60 54 68 69 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 This.code.is.free.software;.you.
29c80 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 can.redistribute.it.and/or.modif
29ca0 79 20 69 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 y.it..--.The.software.provided.h
29cc0 65 72 65 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c ereunder.is.on.an."as.is".basis,
29ce0 20 61 6e 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 .and.--.the.author.has.no.obliga
29d00 74 69 6f 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 tion.to.provide.maintenance,.sup
29d20 70 6f 72 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 port,.updates,.--.enhancements,.
29d40 6f 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 0a 2d 2d 20 43 6c 61 73 73 20 63 6c 61 or.modifications....--.Class.cla
29d60 73 73 0a 2d 2d 20 52 65 70 72 65 73 65 6e 74 73 20 61 20 63 6c 61 73 73 20 64 65 66 69 6e 69 74 ss.--.Represents.a.class.definit
29d80 69 6f 6e 2e 0a 2d 2d 20 53 74 6f 72 65 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 69 65 ion..--.Stores.the.following.fie
29da0 6c 64 73 3a 0a 2d 2d 20 20 20 20 6e 61 6d 65 20 3d 20 63 6c 61 73 73 20 6e 61 6d 65 0a 2d 2d 20 lds:.--....name.=.class.name.--.
29dc0 20 20 20 62 61 73 65 20 3d 20 63 6c 61 73 73 20 62 61 73 65 2c 20 69 66 20 61 6e 79 20 28 6f 6e ...base.=.class.base,.if.any.(on
29de0 6c 79 20 73 69 6e 67 6c 65 20 69 6e 68 65 72 69 74 61 6e 63 65 20 69 73 20 73 75 70 70 6f 72 74 ly.single.inheritance.is.support
29e00 65 64 29 0a 2d 2d 20 20 20 20 7b 69 7d 20 20 3d 20 6c 69 73 74 20 6f 66 20 6d 65 6d 62 65 72 73 ed).--....{i}..=.list.of.members
29e20 0a 63 6c 61 73 73 43 6c 61 73 73 20 3d 20 7b 0a 20 63 6c 61 73 73 74 79 70 65 20 3d 20 27 63 6c .classClass.=.{..classtype.=.'cl
29e40 61 73 73 27 2c 0a 20 6e 61 6d 65 20 3d 20 27 27 2c 0a 20 62 61 73 65 20 3d 20 27 27 2c 0a 20 74 ass',..name.=.'',..base.=.'',..t
29e60 79 70 65 20 3d 20 27 27 2c 0a 20 62 74 79 70 65 20 3d 20 27 27 2c 0a 20 63 74 79 70 65 20 3d 20 ype.=.'',..btype.=.'',..ctype.=.
29e80 27 27 2c 0a 7d 0a 63 6c 61 73 73 43 6c 61 73 73 2e 5f 5f 69 6e 64 65 78 20 3d 20 63 6c 61 73 73 '',.}.classClass.__index.=.class
29ea0 43 6c 61 73 73 0a 73 65 74 6d 65 74 61 74 61 62 6c 65 28 63 6c 61 73 73 43 6c 61 73 73 2c 63 6c Class.setmetatable(classClass,cl
29ec0 61 73 73 43 6f 6e 74 61 69 6e 65 72 29 0a 0a 0a 2d 2d 20 72 65 67 69 73 74 65 72 20 63 6c 61 73 assContainer)...--.register.clas
29ee0 73 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6c 61 73 73 3a 72 65 67 69 73 74 65 72 20 28 s.function.classClass:register.(
29f00 70 72 65 29 0a 0a 09 69 66 20 6e 6f 74 20 73 65 6c 66 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f pre)...if.not.self:check_public_
29f20 61 63 63 65 73 73 28 29 20 74 68 65 6e 0a 09 09 72 65 74 75 72 6e 0a 09 65 6e 64 0a 0a 20 70 72 access().then...return..end...pr
29f40 65 20 3d 20 70 72 65 20 6f 72 20 27 27 0a 20 70 75 73 68 28 73 65 6c 66 29 0a 09 69 66 20 5f 63 e.=.pre.or.''..push(self)..if._c
29f60 6f 6c 6c 65 63 74 5b 73 65 6c 66 2e 74 79 70 65 5d 20 74 68 65 6e 0a 09 09 6f 75 74 70 75 74 28 ollect[self.type].then...output(
29f80 70 72 65 2c 27 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 5c 6e 27 29 0a 20 20 6f 75 pre,'#ifdef.__cplusplus\n')...ou
29fa0 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 63 63 6c 61 73 73 28 74 6f 6c 75 61 5f 53 2c tput(pre..'tolua_cclass(tolua_S,
29fc0 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e 2e 27 22 2c 22 27 2e 2e 73 65 6c 66 2e 74 79 70 65 "'..self.lname..'","'..self.type
29fe0 2e 2e 27 22 2c 22 27 2e 2e 73 65 6c 66 2e 62 74 79 70 65 2e 2e 27 22 2c 27 2e 2e 5f 63 6f 6c 6c ..'","'..self.btype..'",'.._coll
2a000 65 63 74 5b 73 65 6c 66 2e 74 79 70 65 5d 2e 2e 27 29 3b 27 29 0a 09 09 6f 75 74 70 75 74 28 70 ect[self.type]..');')...output(p
2a020 72 65 2c 27 23 65 6c 73 65 5c 6e 27 29 0a 20 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c re,'#else\n')...output(pre..'tol
2a040 75 61 5f 63 63 6c 61 73 73 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 ua_cclass(tolua_S,"'..self.lname
2a060 2e 2e 27 22 2c 22 27 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 27 22 2c 22 27 2e 2e 73 65 6c 66 2e ..'","'..self.type..'","'..self.
2a080 62 74 79 70 65 2e 2e 27 22 2c 4e 55 4c 4c 29 3b 27 29 0a 09 09 6f 75 74 70 75 74 28 70 72 65 2c btype..'",NULL);')...output(pre,
2a0a0 27 23 65 6e 64 69 66 5c 6e 27 29 0a 09 65 6c 73 65 0a 20 20 6f 75 74 70 75 74 28 70 72 65 2e 2e '#endif\n')..else...output(pre..
2a0c0 27 74 6f 6c 75 61 5f 63 63 6c 61 73 73 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 'tolua_cclass(tolua_S,"'..self.l
2a0e0 6e 61 6d 65 2e 2e 27 22 2c 22 27 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 27 22 2c 22 27 2e 2e 73 name..'","'..self.type..'","'..s
2a100 65 6c 66 2e 62 74 79 70 65 2e 2e 27 22 2c 4e 55 4c 4c 29 3b 27 29 0a 09 65 6e 64 0a 09 69 66 20 elf.btype..'",NULL);')..end..if.
2a120 73 65 6c 66 2e 65 78 74 72 61 5f 62 61 73 65 73 20 74 68 65 6e 0a 09 09 66 6f 72 20 6b 2c 62 61 self.extra_bases.then...for.k,ba
2a140 73 65 20 69 6e 20 69 70 61 69 72 73 28 73 65 6c 66 2e 65 78 74 72 61 5f 62 61 73 65 73 29 20 64 se.in.ipairs(self.extra_bases).d
2a160 6f 0a 09 09 09 2d 2d 20 6e 6f 74 20 6e 6f 77 0a 20 20 20 2d 2d 6f 75 74 70 75 74 28 70 72 65 2e o....--.not.now....--output(pre.
2a180 2e 27 20 74 6f 6c 75 61 5f 61 64 64 62 61 73 65 28 74 6f 6c 75 61 5f 53 2c 20 22 27 2e 2e 73 65 .'.tolua_addbase(tolua_S,."'..se
2a1a0 6c 66 2e 74 79 70 65 2e 2e 27 22 2c 20 22 27 2e 2e 62 61 73 65 2e 2e 27 22 29 3b 27 29 0a 09 09 lf.type..'",."'..base..'");')...
2a1c0 65 6e 64 0a 09 65 6e 64 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 6f 6c 75 61 5f 62 65 67 end..end..output(pre..'tolua_beg
2a1e0 69 6e 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 2c 22 27 2e 2e 73 65 6c 66 2e 6c 6e 61 6d 65 2e inmodule(tolua_S,"'..self.lname.
2a200 2e 27 22 29 3b 27 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 .'");')..local.i=1..while.self[i
2a220 5d 20 64 6f 0a 20 20 73 65 6c 66 5b 69 5d 3a 72 65 67 69 73 74 65 72 28 70 72 65 2e 2e 27 20 27 ].do...self[i]:register(pre..'.'
2a240 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 6f 75 74 70 75 74 28 70 72 65 2e 2e 27 74 )...i.=.i+1..end..output(pre..'t
2a260 6f 6c 75 61 5f 65 6e 64 6d 6f 64 75 6c 65 28 74 6f 6c 75 61 5f 53 29 3b 27 29 0a 09 70 6f 70 28 olua_endmodule(tolua_S);')..pop(
2a280 29 0a 65 6e 64 0a 0a 2d 2d 20 72 65 74 75 72 6e 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 72 65 71 75 ).end..--.return.collection.requ
2a2a0 69 72 65 6d 65 6e 74 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6c 61 73 73 3a 72 65 71 75 irement.function.classClass:requ
2a2c0 69 72 65 63 6f 6c 6c 65 63 74 69 6f 6e 20 28 74 29 0a 09 69 66 20 73 65 6c 66 2e 66 6c 61 67 73 irecollection.(t)..if.self.flags
2a2e0 2e 70 72 6f 74 65 63 74 65 64 5f 64 65 73 74 72 75 63 74 6f 72 20 6f 72 20 28 6e 6f 74 20 73 65 .protected_destructor.or.(not.se
2a300 6c 66 3a 63 68 65 63 6b 5f 70 75 62 6c 69 63 5f 61 63 63 65 73 73 28 29 29 20 74 68 65 6e 0a 09 lf:check_public_access()).then..
2a320 09 72 65 74 75 72 6e 20 66 61 6c 73 65 0a 09 65 6e 64 0a 20 70 75 73 68 28 73 65 6c 66 29 0a 09 .return.false..end..push(self)..
2a340 6c 6f 63 61 6c 20 72 20 3d 20 66 61 6c 73 65 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c local.r.=.false..local.i=1..whil
2a360 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 20 72 20 3d 20 73 65 6c 66 5b 69 5d 3a 72 65 71 75 69 e.self[i].do...r.=.self[i]:requi
2a380 72 65 63 6f 6c 6c 65 63 74 69 6f 6e 28 74 29 20 6f 72 20 72 0a 20 20 69 20 3d 20 69 2b 31 0a 20 recollection(t).or.r...i.=.i+1..
2a3a0 65 6e 64 0a 09 70 6f 70 28 29 0a 09 2d 2d 20 6f 6e 6c 79 20 63 6c 61 73 73 20 74 68 61 74 20 65 end..pop()..--.only.class.that.e
2a3c0 78 70 6f 72 74 73 20 64 65 73 74 72 75 63 74 6f 72 20 63 61 6e 20 62 65 20 61 70 70 72 6f 70 72 xports.destructor.can.be.appropr
2a3e0 69 61 74 65 6c 79 20 63 6f 6c 6c 65 63 74 65 64 0a 09 2d 2d 20 63 6c 61 73 73 65 73 20 74 68 61 iately.collected..--.classes.tha
2a400 74 20 65 78 70 6f 72 74 20 63 6f 6e 73 74 72 75 63 74 6f 72 73 20 6e 65 65 64 20 74 6f 20 68 61 t.export.constructors.need.to.ha
2a420 76 65 20 61 20 63 6f 6c 6c 65 63 74 6f 72 20 28 6f 76 65 72 72 69 64 65 64 20 62 79 20 2d 44 20 ve.a.collector.(overrided.by.-D.
2a440 66 6c 61 67 20 6f 6e 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 29 0a 09 69 66 20 73 65 6c 66 2e 5f flag.on.command.line)..if.self._
2a460 64 65 6c 65 74 65 20 6f 72 20 28 28 6e 6f 74 20 66 6c 61 67 73 5b 27 44 27 5d 29 20 61 6e 64 20 delete.or.((not.flags['D']).and.
2a480 73 65 6c 66 2e 5f 6e 65 77 29 20 74 68 65 6e 0a 09 09 2d 2d 74 5b 73 65 6c 66 2e 74 79 70 65 5d self._new).then...--t[self.type]
2a4a0 20 3d 20 22 74 6f 6c 75 61 5f 63 6f 6c 6c 65 63 74 5f 22 20 2e 2e 20 67 73 75 62 28 73 65 6c 66 .=."tolua_collect_"....gsub(self
2a4c0 2e 74 79 70 65 2c 22 3a 3a 22 2c 22 5f 22 29 0a 09 09 74 5b 73 65 6c 66 2e 74 79 70 65 5d 20 3d .type,"::","_")...t[self.type].=
2a4e0 20 22 74 6f 6c 75 61 5f 63 6f 6c 6c 65 63 74 5f 22 20 2e 2e 20 63 6c 65 61 6e 5f 74 65 6d 70 6c ."tolua_collect_"....clean_templ
2a500 61 74 65 28 73 65 6c 66 2e 74 79 70 65 29 0a 09 09 72 20 3d 20 74 72 75 65 0a 09 65 6e 64 0a 20 ate(self.type)...r.=.true..end..
2a520 72 65 74 75 72 6e 20 72 0a 65 6e 64 0a 0a 2d 2d 20 6f 75 74 70 75 74 20 74 61 67 73 0a 66 75 6e return.r.end..--.output.tags.fun
2a540 63 74 69 6f 6e 20 63 6c 61 73 73 43 6c 61 73 73 3a 64 65 63 6c 74 79 70 65 20 28 29 0a 20 70 75 ction.classClass:decltype.()..pu
2a560 73 68 28 73 65 6c 66 29 0a 09 73 65 6c 66 2e 74 79 70 65 20 3d 20 72 65 67 74 79 70 65 28 73 65 sh(self)..self.type.=.regtype(se
2a580 6c 66 2e 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 20 6f 72 20 73 65 6c 66 2e 6e 61 6d 65 29 0a 09 lf.original_name.or.self.name)..
2a5a0 73 65 6c 66 2e 62 74 79 70 65 20 3d 20 74 79 70 65 76 61 72 28 73 65 6c 66 2e 62 61 73 65 29 0a self.btype.=.typevar(self.base).
2a5c0 09 73 65 6c 66 2e 63 74 79 70 65 20 3d 20 27 63 6f 6e 73 74 20 27 2e 2e 73 65 6c 66 2e 74 79 70 .self.ctype.=.'const.'..self.typ
2a5e0 65 0a 09 69 66 20 73 65 6c 66 2e 65 78 74 72 61 5f 62 61 73 65 73 20 74 68 65 6e 0a 09 09 66 6f e..if.self.extra_bases.then...fo
2a600 72 20 69 3d 31 2c 74 61 62 6c 65 2e 67 65 74 6e 28 73 65 6c 66 2e 65 78 74 72 61 5f 62 61 73 65 r.i=1,table.getn(self.extra_base
2a620 73 29 20 64 6f 0a 09 09 09 73 65 6c 66 2e 65 78 74 72 61 5f 62 61 73 65 73 5b 69 5d 20 3d 20 74 s).do....self.extra_bases[i].=.t
2a640 79 70 65 76 61 72 28 73 65 6c 66 2e 65 78 74 72 61 5f 62 61 73 65 73 5b 69 5d 29 0a 09 09 65 6e ypevar(self.extra_bases[i])...en
2a660 64 0a 09 65 6e 64 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 68 69 6c 65 20 73 65 6c 66 5b 69 5d d..end..local.i=1..while.self[i]
2a680 20 64 6f 0a 20 20 73 65 6c 66 5b 69 5d 3a 64 65 63 6c 74 79 70 65 28 29 0a 20 20 69 20 3d 20 69 .do...self[i]:decltype()...i.=.i
2a6a0 2b 31 0a 20 65 6e 64 0a 09 70 6f 70 28 29 0a 65 6e 64 0a 0a 0a 2d 2d 20 50 72 69 6e 74 20 6d 65 +1..end..pop().end...--.Print.me
2a6c0 74 68 6f 64 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6c 61 73 73 3a 70 72 69 6e 74 20 28 thod.function.classClass:print.(
2a6e0 69 64 65 6e 74 2c 63 6c 6f 73 65 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 43 6c 61 73 ident,close)..print(ident.."Clas
2a700 73 7b 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6e 61 6d 65 20 3d 20 27 22 2e 2e s{")..print(ident..".name.=.'"..
2a720 73 65 6c 66 2e 6e 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 self.name.."',")..print(ident.."
2a740 20 62 61 73 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 62 61 73 65 2e 2e 22 27 3b 22 29 0a 20 70 72 .base.=.'"..self.base.."';")..pr
2a760 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 6c 6e 61 6d 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 6c 6e int(ident..".lname.=.'"..self.ln
2a780 61 6d 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 74 79 70 65 20 ame.."',")..print(ident..".type.
2a7a0 3d 20 27 22 2e 2e 73 65 6c 66 2e 74 79 70 65 2e 2e 22 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 =.'"..self.type.."',")..print(id
2a7c0 65 6e 74 2e 2e 22 20 62 74 79 70 65 20 3d 20 27 22 2e 2e 73 65 6c 66 2e 62 74 79 70 65 2e 2e 22 ent..".btype.=.'"..self.btype.."
2a7e0 27 2c 22 29 0a 20 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 20 63 74 79 70 65 20 3d 20 27 22 2e ',")..print(ident..".ctype.=.'".
2a800 2e 73 65 6c 66 2e 63 74 79 70 65 2e 2e 22 27 2c 22 29 0a 20 6c 6f 63 61 6c 20 69 3d 31 0a 20 77 .self.ctype.."',")..local.i=1..w
2a820 68 69 6c 65 20 73 65 6c 66 5b 69 5d 20 64 6f 0a 20 20 73 65 6c 66 5b 69 5d 3a 70 72 69 6e 74 28 hile.self[i].do...self[i]:print(
2a840 69 64 65 6e 74 2e 2e 22 20 22 2c 22 2c 22 29 0a 20 20 69 20 3d 20 69 2b 31 0a 20 65 6e 64 0a 20 ident..".",",")...i.=.i+1..end..
2a860 70 72 69 6e 74 28 69 64 65 6e 74 2e 2e 22 7d 22 2e 2e 63 6c 6f 73 65 29 0a 65 6e 64 0a 0a 66 75 print(ident.."}"..close).end..fu
2a880 6e 63 74 69 6f 6e 20 63 6c 61 73 73 43 6c 61 73 73 3a 73 65 74 5f 70 72 6f 74 65 63 74 65 64 5f nction.classClass:set_protected_
2a8a0 64 65 73 74 72 75 63 74 6f 72 28 70 29 0a 09 73 65 6c 66 2e 66 6c 61 67 73 2e 70 72 6f 74 65 63 destructor(p)..self.flags.protec
2a8c0 74 65 64 5f 64 65 73 74 72 75 63 74 6f 72 20 3d 20 73 65 6c 66 2e 66 6c 61 67 73 2e 70 72 6f 74 ted_destructor.=.self.flags.prot
2a8e0 65 63 74 65 64 5f 64 65 73 74 72 75 63 74 6f 72 20 6f 72 20 70 0a 65 6e 64 0a 0a 2d 2d 20 49 6e ected_destructor.or.p.end..--.In
2a900 74 65 72 6e 61 6c 20 63 6f 6e 73 74 72 75 63 74 6f 72 0a 66 75 6e 63 74 69 6f 6e 20 5f 43 6c 61 ternal.constructor.function._Cla
2a920 73 73 20 28 74 29 0a 20 73 65 74 6d 65 74 61 74 61 62 6c 65 28 74 2c 63 6c 61 73 73 43 6c 61 73 ss.(t)..setmetatable(t,classClas
2a940 73 29 0a 20 74 3a 62 75 69 6c 64 6e 61 6d 65 73 28 29 0a 20 61 70 70 65 6e 64 28 74 29 0a 20 72 s)..t:buildnames()..append(t)..r
2a960 65 74 75 72 6e 20 74 0a 65 6e 64 0a 0a 2d 2d 20 43 6f 6e 73 74 72 75 63 74 6f 72 0a 2d 2d 20 45 eturn.t.end..--.Constructor.--.E
2a980 78 70 65 63 74 73 20 74 68 65 20 6e 61 6d 65 2c 20 74 68 65 20 62 61 73 65 20 28 61 72 72 61 79 xpects.the.name,.the.base.(array
2a9a0 29 20 61 6e 64 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 65 20 63 6c 61 73 73 2e 0a 66 75 6e ).and.the.body.of.the.class..fun
2a9c0 63 74 69 6f 6e 20 43 6c 61 73 73 20 28 6e 2c 70 2c 62 29 0a 0a 09 69 66 20 74 61 62 6c 65 2e 67 ction.Class.(n,p,b)...if.table.g
2a9e0 65 74 6e 28 70 29 20 3e 20 31 20 74 68 65 6e 0a 09 09 62 20 3d 20 73 74 72 69 6e 67 2e 73 75 62 etn(p).>.1.then...b.=.string.sub
2aa00 28 62 2c 20 31 2c 20 2d 32 29 0a 09 09 66 6f 72 20 69 3d 32 2c 74 61 62 6c 65 2e 67 65 74 6e 28 (b,.1,.-2)...for.i=2,table.getn(
2aa20 70 29 2c 31 20 64 6f 0a 09 09 09 62 20 3d 20 62 2e 2e 22 5c 6e 20 74 6f 6c 75 61 5f 69 6e 68 65 p),1.do....b.=.b.."\n.tolua_inhe
2aa40 72 69 74 73 20 22 2e 2e 70 5b 69 5d 2e 2e 22 20 5f 5f 22 2e 2e 70 5b 69 5d 2e 2e 22 5f 5f 3b 5c rits."..p[i]..".__"..p[i].."__;\
2aa60 6e 22 0a 09 09 65 6e 64 0a 09 09 62 20 3d 20 62 2e 2e 22 5c 6e 7d 22 0a 09 65 6e 64 0a 0a 09 2d n"...end...b.=.b.."\n}"..end...-
2aa80 2d 20 63 68 65 63 6b 20 66 6f 72 20 74 65 6d 70 6c 61 74 65 0a 09 62 20 3d 20 73 74 72 69 6e 67 -.check.for.template..b.=.string
2aaa0 2e 67 73 75 62 28 62 2c 20 22 5e 7b 25 73 2a 54 45 4d 50 4c 41 54 45 5f 42 49 4e 44 22 2c 20 22 .gsub(b,."^{%s*TEMPLATE_BIND",."
2aac0 7b 5c 6e 54 4f 4c 55 41 5f 54 45 4d 50 4c 41 54 45 5f 42 49 4e 44 22 29 0a 09 6c 6f 63 61 6c 20 {\nTOLUA_TEMPLATE_BIND")..local.
2aae0 74 2c 5f 2c 54 2c 49 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 62 2c 20 27 5e 7b 25 73 2a 54 t,_,T,I.=.string.find(b,.'^{%s*T
2ab00 4f 4c 55 41 5f 54 45 4d 50 4c 41 54 45 5f 42 49 4e 44 25 73 2a 25 28 2b 25 73 2a 5c 22 3f 28 5b OLUA_TEMPLATE_BIND%s*%(+%s*\"?([
2ab20 5e 5c 22 2c 5d 2a 29 5c 22 3f 25 73 2a 2c 25 73 2a 28 5b 5e 25 29 5d 2a 29 25 73 2a 25 29 2b 27 ^\",]*)\"?%s*,%s*([^%)]*)%s*%)+'
2ab40 29 0a 09 69 66 20 74 20 74 68 65 6e 0a 0a 09 09 2d 2d 20 72 65 6d 6f 76 65 20 71 75 6f 74 65 73 )..if.t.then....--.remove.quotes
2ab60 0a 09 09 49 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 49 2c 20 22 5c 22 22 2c 20 22 22 29 0a ...I.=.string.gsub(I,."\"",."").
2ab80 09 09 54 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 54 2c 20 22 5c 22 22 2c 20 22 22 29 0a 09 ..T.=.string.gsub(T,."\"",."")..
2aba0 09 2d 2d 20 67 65 74 20 74 79 70 65 20 6c 69 73 74 0a 09 09 6c 6f 63 61 6c 20 74 79 70 65 73 20 .--.get.type.list...local.types.
2abc0 3d 20 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 49 2c 20 22 2c 22 29 0a 09 09 2d 2d 20 72 65 =.split_c_tokens(I,.",")...--.re
2abe0 6d 6f 76 65 20 54 45 4d 50 4c 41 54 45 5f 42 49 4e 44 20 6c 69 6e 65 0a 09 09 6c 6f 63 61 6c 20 move.TEMPLATE_BIND.line...local.
2ac00 62 73 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 62 2c 20 22 5e 7b 25 73 2a 54 4f 4c 55 41 5f bs.=.string.gsub(b,."^{%s*TOLUA_
2ac20 54 45 4d 50 4c 41 54 45 5f 42 49 4e 44 5b 5e 5c 6e 5d 2a 5c 6e 22 2c 20 22 7b 5c 6e 22 29 0a 09 TEMPLATE_BIND[^\n]*\n",."{\n")..
2ac40 09 09 0a 09 09 6c 6f 63 61 6c 20 54 6c 20 3d 20 73 70 6c 69 74 28 54 2c 20 22 20 22 29 0a 09 09 .....local.Tl.=.split(T,.".")...
2ac60 6c 6f 63 61 6c 20 74 63 20 3d 20 54 65 6d 70 6c 61 74 65 43 6c 61 73 73 28 6e 2c 20 70 2c 20 62 local.tc.=.TemplateClass(n,.p,.b
2ac80 73 2c 20 54 6c 29 0a 0a 09 09 0a 09 09 74 63 3a 74 68 72 6f 77 28 74 79 70 65 73 2c 20 74 72 75 s,.Tl).......tc:throw(types,.tru
2aca0 65 29 0a 09 09 2d 2d 66 6f 72 20 69 3d 31 2c 74 79 70 65 73 2e 6e 20 64 6f 0a 09 09 2d 2d 09 74 e)...--for.i=1,types.n.do...--.t
2acc0 63 3a 74 68 72 6f 77 28 73 70 6c 69 74 5f 63 5f 74 6f 6b 65 6e 73 28 74 79 70 65 73 5b 69 5d 2c c:throw(split_c_tokens(types[i],
2ace0 20 22 20 22 29 2c 20 74 72 75 65 29 0a 09 09 2d 2d 65 6e 64 0a 09 09 72 65 74 75 72 6e 0a 09 65 ."."),.true)...--end...return..e
2ad00 6e 64 0a 09 0a 09 6c 6f 63 61 6c 20 6d 62 61 73 65 0a 0a 09 69 66 20 70 20 74 68 65 6e 0a 09 09 nd....local.mbase...if.p.then...
2ad20 6d 62 61 73 65 20 3d 20 74 61 62 6c 65 2e 72 65 6d 6f 76 65 28 70 2c 20 31 29 0a 09 09 69 66 20 mbase.=.table.remove(p,.1)...if.
2ad40 6e 6f 74 20 70 5b 31 5d 20 74 68 65 6e 20 70 20 3d 20 6e 69 6c 20 65 6e 64 0a 09 65 6e 64 0a 0a not.p[1].then.p.=.nil.end..end..
2ad60 09 6d 62 61 73 65 20 3d 20 6d 62 61 73 65 20 61 6e 64 20 72 65 73 6f 6c 76 65 5f 74 65 6d 70 6c .mbase.=.mbase.and.resolve_templ
2ad80 61 74 65 5f 74 79 70 65 73 28 6d 62 61 73 65 29 0a 0a 09 6c 6f 63 61 6c 20 63 0a 09 6c 6f 63 61 ate_types(mbase)...local.c..loca
2ada0 6c 20 6f 6e 61 6d 65 20 3d 20 73 74 72 69 6e 67 2e 67 73 75 62 28 6e 2c 20 22 40 2e 2a 24 22 2c l.oname.=.string.gsub(n,."@.*$",
2adc0 20 22 22 29 0a 09 6f 6e 61 6d 65 20 3d 20 67 65 74 6e 61 6d 65 73 70 61 63 65 28 63 6c 61 73 73 ."")..oname.=.getnamespace(class
2ade0 43 6f 6e 74 61 69 6e 65 72 2e 63 75 72 72 29 2e 2e 6f 6e 61 6d 65 0a 0a 09 69 66 20 5f 67 6c 6f Container.curr)..oname...if._glo
2ae00 62 61 6c 5f 63 6c 61 73 73 65 73 5b 6f 6e 61 6d 65 5d 20 74 68 65 6e 0a 09 09 63 20 3d 20 5f 67 bal_classes[oname].then...c.=._g
2ae20 6c 6f 62 61 6c 5f 63 6c 61 73 73 65 73 5b 6f 6e 61 6d 65 5d 0a 09 09 69 66 20 6d 62 61 73 65 20 lobal_classes[oname]...if.mbase.
2ae40 61 6e 64 20 28 28 6e 6f 74 20 63 2e 62 61 73 65 29 20 6f 72 20 63 2e 62 61 73 65 20 3d 3d 20 22 and.((not.c.base).or.c.base.==."
2ae60 22 29 20 74 68 65 6e 0a 09 09 09 63 2e 62 61 73 65 20 3d 20 6d 62 61 73 65 0a 09 09 65 6e 64 0a ").then....c.base.=.mbase...end.
2ae80 09 65 6c 73 65 0a 09 09 63 20 3d 20 5f 43 6c 61 73 73 28 5f 43 6f 6e 74 61 69 6e 65 72 7b 6e 61 .else...c.=._Class(_Container{na
2aea0 6d 65 3d 6e 2c 20 62 61 73 65 3d 6d 62 61 73 65 2c 20 65 78 74 72 61 5f 62 61 73 65 73 3d 70 7d me=n,.base=mbase,.extra_bases=p}
2aec0 29 0a 0a 09 09 6c 6f 63 61 6c 20 66 74 20 3d 20 67 65 74 6e 61 6d 65 73 70 61 63 65 28 63 2e 70 )....local.ft.=.getnamespace(c.p
2aee0 61 72 65 6e 74 29 2e 2e 63 2e 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 0a 09 09 61 70 70 65 6e 64 arent)..c.original_name...append
2af00 5f 67 6c 6f 62 61 6c 5f 74 79 70 65 28 66 74 2c 20 63 29 0a 09 65 6e 64 0a 0a 09 70 75 73 68 28 _global_type(ft,.c)..end...push(
2af20 63 29 0a 09 63 3a 70 61 72 73 65 28 73 74 72 73 75 62 28 62 2c 32 2c 73 74 72 6c 65 6e 28 62 29 c)..c:parse(strsub(b,2,strlen(b)
2af40 2d 31 29 29 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 62 72 61 63 65 73 0a 09 70 6f 70 28 29 0a -1)).--.eliminate.braces..pop().
2af60 65 6e 64 20 00 00 00 00 2d 2d 20 6d 61 72 6b 20 75 70 20 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 end.....--.mark.up.comments.and.
2af80 73 74 72 69 6e 67 73 0a 53 54 52 31 20 3d 20 22 5c 30 30 31 22 0a 53 54 52 32 20 3d 20 22 5c 30 strings.STR1.=."\001".STR2.=."\0
2afa0 30 32 22 0a 53 54 52 33 20 3d 20 22 5c 30 30 33 22 0a 53 54 52 34 20 3d 20 22 5c 30 30 34 22 0a 02".STR3.=."\003".STR4.=."\004".
2afc0 52 45 4d 20 20 3d 20 22 5c 30 30 35 22 0a 41 4e 59 20 20 3d 20 22 28 5b 5c 30 30 31 2d 5c 30 30 REM..=."\005".ANY..=."([\001-\00
2afe0 35 5d 29 22 0a 45 53 43 31 20 3d 20 22 5c 30 30 36 22 0a 45 53 43 32 20 3d 20 22 5c 30 30 37 22 5])".ESC1.=."\006".ESC2.=."\007"
2b000 0a 0a 4d 41 53 4b 20 3d 20 7b 20 2d 2d 20 74 68 65 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 6f ..MASK.=.{.--.the.substitution.o
2b020 72 64 65 72 20 69 73 20 69 6d 70 6f 72 74 61 6e 74 0a 20 7b 45 53 43 31 2c 20 22 5c 5c 27 22 7d rder.is.important..{ESC1,."\\'"}
2b040 2c 0a 20 7b 45 53 43 32 2c 20 27 5c 5c 22 27 7d 2c 0a 20 7b 53 54 52 31 2c 20 22 27 22 7d 2c 0a ,..{ESC2,.'\\"'},..{STR1,."'"},.
2b060 20 7b 53 54 52 32 2c 20 27 22 27 7d 2c 0a 20 7b 53 54 52 33 2c 20 22 25 5b 25 5b 22 7d 2c 0a 20 .{STR2,.'"'},..{STR3,."%[%["},..
2b080 7b 53 54 52 34 2c 20 22 25 5d 25 5d 22 7d 2c 0a 20 7b 52 45 4d 20 2c 20 22 25 2d 25 2d 22 7d 2c {STR4,."%]%]"},..{REM.,."%-%-"},
2b0a0 0a 7d 0a 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 73 6b 20 28 73 29 0a 20 66 6f 72 20 69 20 3d 20 31 .}..function.mask.(s)..for.i.=.1
2b0c0 2c 67 65 74 6e 28 4d 41 53 4b 29 20 20 64 6f 0a 20 20 73 20 3d 20 67 73 75 62 28 73 2c 4d 41 53 ,getn(MASK)..do...s.=.gsub(s,MAS
2b0e0 4b 5b 69 5d 5b 32 5d 2c 4d 41 53 4b 5b 69 5d 5b 31 5d 29 0a 20 65 6e 64 0a 20 72 65 74 75 72 6e K[i][2],MASK[i][1])..end..return
2b100 20 73 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 75 6e 6d 61 73 6b 20 28 73 29 0a 20 66 6f 72 .s.end..function.unmask.(s)..for
2b120 20 69 20 3d 20 31 2c 67 65 74 6e 28 4d 41 53 4b 29 20 20 64 6f 0a 20 20 73 20 3d 20 67 73 75 62 .i.=.1,getn(MASK)..do...s.=.gsub
2b140 28 73 2c 4d 41 53 4b 5b 69 5d 5b 31 5d 2c 4d 41 53 4b 5b 69 5d 5b 32 5d 29 0a 20 65 6e 64 0a 20 (s,MASK[i][1],MASK[i][2])..end..
2b160 72 65 74 75 72 6e 20 73 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 6c 65 61 6e 20 28 73 29 return.s.end..function.clean.(s)
2b180 0a 20 2d 2d 20 63 68 65 63 6b 20 66 6f 72 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 ..--.check.for.compilation.error
2b1a0 0a 20 6c 6f 63 61 6c 20 63 6f 64 65 20 3d 20 22 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 ..local.code.=."return.function.
2b1c0 28 29 5c 6e 22 20 2e 2e 20 73 20 2e 2e 20 22 5c 6e 20 65 6e 64 22 0a 20 69 66 20 6e 6f 74 20 64 ()\n"....s...."\n.end"..if.not.d
2b1e0 6f 73 74 72 69 6e 67 28 63 6f 64 65 29 20 74 68 65 6e 0a 20 20 72 65 74 75 72 6e 20 6e 69 6c 0a ostring(code).then...return.nil.
2b200 20 65 6e 64 0a 0a 20 69 66 20 66 6c 61 67 73 5b 27 43 27 5d 20 74 68 65 6e 0a 20 09 72 65 74 75 .end...if.flags['C'].then...retu
2b220 72 6e 20 73 0a 20 65 6e 64 0a 0a 20 6c 6f 63 61 6c 20 53 20 3d 20 22 22 20 2d 2d 20 73 61 76 65 rn.s..end...local.S.=."".--.save
2b240 64 20 73 74 72 69 6e 67 0a 0a 20 73 20 3d 20 6d 61 73 6b 28 73 29 0a 0a 20 2d 2d 20 72 65 6d 6f d.string...s.=.mask(s)...--.remo
2b260 76 65 20 62 6c 61 6e 6b 73 20 61 6e 64 20 63 6f 6d 6d 65 6e 74 73 0a 20 77 68 69 6c 65 20 31 20 ve.blanks.and.comments..while.1.
2b280 64 6f 0a 20 20 6c 6f 63 61 6c 20 62 2c 65 2c 64 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 41 4e 59 do...local.b,e,d.=.strfind(s,ANY
2b2a0 29 0a 20 20 69 66 20 62 20 74 68 65 6e 0a 20 20 20 53 20 3d 20 53 2e 2e 73 74 72 73 75 62 28 73 )...if.b.then....S.=.S..strsub(s
2b2c0 2c 31 2c 62 2d 31 29 0a 20 20 20 73 20 3d 20 73 74 72 73 75 62 28 73 2c 62 2b 31 29 0a 20 20 20 ,1,b-1)....s.=.strsub(s,b+1)....
2b2e0 69 66 20 64 3d 3d 53 54 52 31 20 6f 72 20 64 3d 3d 53 54 52 32 20 74 68 65 6e 0a 20 20 20 20 65 if.d==STR1.or.d==STR2.then.....e
2b300 20 3d 20 73 74 72 66 69 6e 64 28 73 2c 64 29 0a 20 20 20 20 53 20 3d 20 53 20 2e 2e 64 2e 2e 73 .=.strfind(s,d).....S.=.S...d..s
2b320 74 72 73 75 62 28 73 2c 31 2c 65 29 0a 20 20 20 20 73 20 3d 20 73 74 72 73 75 62 28 73 2c 65 2b trsub(s,1,e).....s.=.strsub(s,e+
2b340 31 29 0a 20 20 20 65 6c 73 65 69 66 20 64 3d 3d 53 54 52 33 20 74 68 65 6e 0a 20 20 20 20 65 20 1)....elseif.d==STR3.then.....e.
2b360 3d 20 73 74 72 66 69 6e 64 28 73 2c 53 54 52 34 29 0a 20 20 20 20 53 20 3d 20 53 2e 2e 64 2e 2e =.strfind(s,STR4).....S.=.S..d..
2b380 73 74 72 73 75 62 28 73 2c 31 2c 65 29 0a 20 20 20 20 73 20 3d 20 73 74 72 73 75 62 28 73 2c 65 strsub(s,1,e).....s.=.strsub(s,e
2b3a0 2b 31 29 0a 20 20 20 65 6c 73 65 69 66 20 64 3d 3d 52 45 4d 20 74 68 65 6e 0a 20 20 20 20 73 20 +1)....elseif.d==REM.then.....s.
2b3c0 3d 20 67 73 75 62 28 73 2c 22 5b 5e 5c 6e 5d 2a 28 5c 6e 3f 29 22 2c 22 25 31 22 2c 31 29 0a 20 =.gsub(s,"[^\n]*(\n?)","%1",1)..
2b3e0 20 20 65 6e 64 0a 20 20 65 6c 73 65 0a 20 20 20 53 20 3d 20 53 2e 2e 73 0a 20 20 20 62 72 65 61 ..end...else....S.=.S..s....brea
2b400 6b 0a 20 20 65 6e 64 0a 20 65 6e 64 0a 20 2d 2d 20 65 6c 69 6d 69 6e 61 74 65 20 75 6e 65 63 65 k...end..end..--.eliminate.unece
2b420 73 73 61 72 79 20 73 70 61 63 65 73 0a 20 53 20 3d 20 67 73 75 62 28 53 2c 22 5b 20 5c 74 5d 2b ssary.spaces..S.=.gsub(S,"[.\t]+
2b440 22 2c 22 20 22 29 0a 20 53 20 3d 20 67 73 75 62 28 53 2c 22 5b 20 5c 74 5d 2a 5c 6e 5b 20 5c 74 ",".")..S.=.gsub(S,"[.\t]*\n[.\t
2b460 5d 2a 22 2c 22 5c 6e 22 29 0a 09 53 20 3d 20 67 73 75 62 28 53 2c 22 5c 6e 2b 22 2c 22 5c 6e 22 ]*","\n")..S.=.gsub(S,"\n+","\n"
2b480 29 0a 20 53 20 3d 20 75 6e 6d 61 73 6b 28 53 29 0a 20 72 65 74 75 72 6e 20 53 0a 65 6e 64 20 00 )..S.=.unmask(S)..return.S.end..
2b4a0 2d 2d 20 47 65 6e 65 72 61 74 65 20 62 69 6e 64 69 6e 67 20 63 6f 64 65 0a 2d 2d 20 57 72 69 74 --.Generate.binding.code.--.Writ
2b4c0 74 65 6e 20 62 79 20 57 61 6c 64 65 6d 61 72 20 43 65 6c 65 73 0a 2d 2d 20 54 65 43 47 72 61 66 ten.by.Waldemar.Celes.--.TeCGraf
2b4e0 2f 50 55 43 2d 52 69 6f 0a 2d 2d 20 4a 75 6c 20 31 39 39 38 0a 2d 2d 20 4c 61 73 74 20 75 70 64 /PUC-Rio.--.Jul.1998.--.Last.upd
2b500 61 74 65 3a 20 41 70 72 20 32 30 30 33 0a 2d 2d 20 24 49 64 3a 20 24 0a 0a 0a 2d 2d 20 54 68 69 ate:.Apr.2003.--.$Id:.$...--.Thi
2b520 73 20 63 6f 64 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e s.code.is.free.software;.you.can
2b540 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 .redistribute.it.and/or.modify.i
2b560 74 2e 0a 2d 2d 20 54 68 65 20 73 6f 66 74 77 61 72 65 20 70 72 6f 76 69 64 65 64 20 68 65 72 65 t..--.The.software.provided.here
2b580 75 6e 64 65 72 20 69 73 20 6f 6e 20 61 6e 20 22 61 73 20 69 73 22 20 62 61 73 69 73 2c 20 61 6e under.is.on.an."as.is".basis,.an
2b5a0 64 0a 2d 2d 20 74 68 65 20 61 75 74 68 6f 72 20 68 61 73 20 6e 6f 20 6f 62 6c 69 67 61 74 69 6f d.--.the.author.has.no.obligatio
2b5c0 6e 20 74 6f 20 70 72 6f 76 69 64 65 20 6d 61 69 6e 74 65 6e 61 6e 63 65 2c 20 73 75 70 70 6f 72 n.to.provide.maintenance,.suppor
2b5e0 74 2c 20 75 70 64 61 74 65 73 2c 0a 2d 2d 20 65 6e 68 61 6e 63 65 6d 65 6e 74 73 2c 20 6f 72 20 t,.updates,.--.enhancements,.or.
2b600 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 0a 0a 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 5f 65 modifications...function.parse_e
2b620 78 74 72 61 28 29 0a 0a 09 66 6f 72 20 6b 2c 76 20 69 6e 20 69 70 61 69 72 73 28 5f 65 78 74 72 xtra()...for.k,v.in.ipairs(_extr
2b640 61 5f 70 61 72 61 6d 65 74 65 72 73 20 6f 72 20 7b 7d 29 20 64 6f 0a 09 09 0a 09 09 6c 6f 63 61 a_parameters.or.{}).do......loca
2b660 6c 20 62 2c 65 2c 6e 61 6d 65 2c 76 61 6c 75 65 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 76 l.b,e,name,value.=.string.find(v
2b680 2c 20 22 5e 28 5b 5e 3d 5d 2a 29 3d 28 2e 2a 29 24 22 29 0a 09 09 69 66 20 62 20 74 68 65 6e 0a ,."^([^=]*)=(.*)$")...if.b.then.
2b6a0 09 09 09 5f 65 78 74 72 61 5f 70 61 72 61 6d 65 74 65 72 73 5b 6e 61 6d 65 5d 20 3d 20 76 61 6c ..._extra_parameters[name].=.val
2b6c0 75 65 0a 09 09 65 6c 73 65 0a 09 09 09 5f 65 78 74 72 61 5f 70 61 72 61 6d 65 74 65 72 73 5b 76 ue...else...._extra_parameters[v
2b6e0 5d 20 3d 20 74 72 75 65 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 65 6e 64 0a 0a 66 75 6e 63 74 69 6f ].=.true...end..end.end..functio
2b700 6e 20 64 6f 69 74 20 28 29 0a 09 2d 2d 20 64 65 66 69 6e 65 20 70 61 63 6b 61 67 65 20 6e 61 6d n.doit.()..--.define.package.nam
2b720 65 2c 20 69 66 20 6e 6f 74 20 70 72 6f 76 69 64 65 64 0a 09 69 66 20 6e 6f 74 20 66 6c 61 67 73 e,.if.not.provided..if.not.flags
2b740 2e 6e 20 74 68 65 6e 0a 09 09 69 66 20 66 6c 61 67 73 2e 66 20 74 68 65 6e 0a 09 09 09 66 6c 61 .n.then...if.flags.f.then....fla
2b760 67 73 2e 6e 20 3d 20 67 73 75 62 28 66 6c 61 67 73 2e 66 2c 22 25 2e 2e 2a 24 22 2c 22 22 29 0a gs.n.=.gsub(flags.f,"%..*$","").
2b780 09 09 09 5f 2c 5f 2c 66 6c 61 67 73 2e 6e 20 3d 20 73 74 72 69 6e 67 2e 66 69 6e 64 28 66 6c 61 ..._,_,flags.n.=.string.find(fla
2b7a0 67 73 2e 6e 2c 20 22 28 5b 5e 2f 5c 5c 5d 2a 29 24 22 29 0a 09 09 65 6c 73 65 0a 09 09 09 65 72 gs.n,."([^/\\]*)$")...else....er
2b7c0 72 6f 72 28 22 23 6e 6f 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 6e 6f 72 20 69 6e 70 75 74 20 ror("#no.package.name.nor.input.
2b7e0 66 69 6c 65 20 70 72 6f 76 69 64 65 64 22 29 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 0a 09 2d 2d 20 file.provided")...end..end...--.
2b800 70 61 72 73 65 20 74 61 62 6c 65 20 77 69 74 68 20 65 78 74 72 61 20 70 61 72 61 6d 74 65 72 73 parse.table.with.extra.paramters
2b820 0a 09 70 61 72 73 65 5f 65 78 74 72 61 28 29 0a 0a 09 2d 2d 20 64 6f 20 74 68 69 73 20 61 66 74 ..parse_extra()...--.do.this.aft
2b840 65 72 20 73 65 74 74 69 6e 67 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 0a 09 69 66 20 er.setting.the.package.name..if.
2b860 66 6c 61 67 73 5b 27 4c 27 5d 20 74 68 65 6e 0a 09 09 64 6f 66 69 6c 65 28 66 6c 61 67 73 5b 27 flags['L'].then...dofile(flags['
2b880 4c 27 5d 29 0a 09 65 6e 64 0a 0a 09 2d 2d 20 61 64 64 20 63 70 70 73 74 72 69 6e 67 0a 09 69 66 L'])..end...--.add.cppstring..if
2b8a0 20 6e 6f 74 20 66 6c 61 67 73 5b 27 53 27 5d 20 74 68 65 6e 0a 09 09 5f 62 61 73 69 63 5b 27 73 .not.flags['S'].then..._basic['s
2b8c0 74 72 69 6e 67 27 5d 20 3d 20 27 63 70 70 73 74 72 69 6e 67 27 0a 09 09 5f 62 61 73 69 63 5b 27 tring'].=.'cppstring'..._basic['
2b8e0 73 74 64 3a 3a 73 74 72 69 6e 67 27 5d 20 3d 20 27 63 70 70 73 74 72 69 6e 67 27 0a 09 09 5f 62 std::string'].=.'cppstring'..._b
2b900 61 73 69 63 5b 27 41 53 74 72 69 6e 67 27 5d 20 3d 20 27 63 70 70 73 74 72 69 6e 67 27 0a 09 09 asic['AString'].=.'cppstring'...
2b920 5f 62 61 73 69 63 5f 63 74 79 70 65 2e 63 70 70 73 74 72 69 6e 67 20 3d 20 27 63 6f 6e 73 74 20 _basic_ctype.cppstring.=.'const.
2b940 63 68 61 72 2a 27 0a 09 65 6e 64 0a 0a 09 2d 2d 20 70 72 6f 63 63 65 73 73 20 70 61 63 6b 61 67 char*'..end...--.proccess.packag
2b960 65 0a 09 6c 6f 63 61 6c 20 70 20 20 3d 20 50 61 63 6b 61 67 65 28 66 6c 61 67 73 2e 6e 2c 66 6c e..local.p..=.Package(flags.n,fl
2b980 61 67 73 2e 66 29 0a 0a 09 69 66 20 66 6c 61 67 73 2e 70 20 74 68 65 6e 0a 09 09 72 65 74 75 72 ags.f)...if.flags.p.then...retur
2b9a0 6e 20 20 20 20 20 20 20 20 2d 2d 20 6f 6e 6c 79 20 70 61 72 73 65 0a 09 65 6e 64 0a 0a 09 69 66 n........--.only.parse..end...if
2b9c0 20 66 6c 61 67 73 2e 6f 20 74 68 65 6e 0a 09 09 6c 6f 63 61 6c 20 73 74 2c 6d 73 67 20 3d 20 77 .flags.o.then...local.st,msg.=.w
2b9e0 72 69 74 65 74 6f 28 66 6c 61 67 73 2e 6f 29 0a 09 09 69 66 20 6e 6f 74 20 73 74 20 74 68 65 6e riteto(flags.o)...if.not.st.then
2ba00 0a 09 09 09 65 72 72 6f 72 28 27 23 27 2e 2e 6d 73 67 29 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 0a ....error('#'..msg)...end..end..
2ba20 09 70 3a 64 65 63 6c 74 79 70 65 28 29 0a 09 69 66 20 66 6c 61 67 73 2e 50 20 74 68 65 6e 0a 09 .p:decltype()..if.flags.P.then..
2ba40 09 70 3a 70 72 69 6e 74 28 29 0a 09 65 6c 73 65 0a 09 09 70 75 73 68 28 70 29 0a 09 09 70 72 65 .p:print()..else...push(p)...pre
2ba60 5f 6f 75 74 70 75 74 5f 68 6f 6f 6b 28 70 29 0a 09 09 70 6f 70 28 29 0a 09 09 70 3a 70 72 65 61 _output_hook(p)...pop()...p:prea
2ba80 6d 62 6c 65 28 29 0a 09 09 70 3a 73 75 70 63 6f 64 65 28 29 0a 09 09 70 75 73 68 28 70 29 0a 09 mble()...p:supcode()...push(p)..
2baa0 09 70 72 65 5f 72 65 67 69 73 74 65 72 5f 68 6f 6f 6b 28 70 29 0a 09 09 70 6f 70 28 29 0a 09 09 .pre_register_hook(p)...pop()...
2bac0 70 3a 72 65 67 69 73 74 65 72 28 29 0a 09 09 70 75 73 68 28 70 29 0a 09 09 70 6f 73 74 5f 6f 75 p:register()...push(p)...post_ou
2bae0 74 70 75 74 5f 68 6f 6f 6b 28 70 29 0a 09 09 70 6f 70 28 29 0a 09 65 6e 64 0a 0a 09 69 66 20 66 tput_hook(p)...pop()..end...if.f
2bb00 6c 61 67 73 2e 6f 20 74 68 65 6e 0a 09 09 77 72 69 74 65 74 6f 28 29 0a 09 65 6e 64 0a 0a 09 2d lags.o.then...writeto()..end...-
2bb20 2d 20 77 72 69 74 65 20 68 65 61 64 65 72 20 66 69 6c 65 0a 09 69 66 20 6e 6f 74 20 66 6c 61 67 -.write.header.file..if.not.flag
2bb40 73 2e 50 20 74 68 65 6e 0a 09 09 69 66 20 66 6c 61 67 73 2e 48 20 74 68 65 6e 0a 09 09 09 6c 6f s.P.then...if.flags.H.then....lo
2bb60 63 61 6c 20 73 74 2c 6d 73 67 20 3d 20 77 72 69 74 65 74 6f 28 66 6c 61 67 73 2e 48 29 0a 09 09 cal.st,msg.=.writeto(flags.H)...
2bb80 09 69 66 20 6e 6f 74 20 73 74 20 74 68 65 6e 0a 09 09 09 09 65 72 72 6f 72 28 27 23 27 2e 2e 6d .if.not.st.then.....error('#'..m
2bba0 73 67 29 0a 09 09 09 65 6e 64 0a 09 09 09 70 3a 68 65 61 64 65 72 28 29 0a 09 09 09 77 72 69 74 sg)....end....p:header()....writ
2bbc0 65 74 6f 28 29 0a 09 09 65 6e 64 0a 09 65 6e 64 0a 65 6e 64 0a 0a 00 00 0a 6c 6f 63 61 6c 20 65 eto()...end..end.end.....local.e
2bbe0 72 72 2c 6d 73 67 20 3d 20 70 63 61 6c 6c 28 64 6f 69 74 29 0a 69 66 20 6e 6f 74 20 65 72 72 20 rr,msg.=.pcall(doit).if.not.err.
2bc00 74 68 65 6e 0a 20 6c 6f 63 61 6c 20 5f 2c 5f 2c 6c 61 62 65 6c 2c 6d 73 67 20 3d 20 73 74 72 66 then..local._,_,label,msg.=.strf
2bc20 69 6e 64 28 6d 73 67 2c 22 28 2e 2d 3a 2e 2d 3a 25 73 2a 29 28 2e 2a 29 22 29 0a 20 74 6f 6c 75 ind(msg,"(.-:.-:%s*)(.*)")..tolu
2bc40 61 5f 65 72 72 6f 72 28 6d 73 67 2c 6c 61 62 65 6c 29 0a 20 70 72 69 6e 74 28 64 65 62 75 67 2e a_error(msg,label)..print(debug.
2bc60 74 72 61 63 65 62 61 63 6b 28 29 29 0a 65 6e 64 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 traceback()).end................
2bc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2be00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 18 00 00 00 18 00 00 80 00 00 00 00 00 00 00 00 ................................
2be20 04 00 00 00 00 00 01 00 01 00 00 00 30 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 ............0...................
2be40 09 04 00 00 48 00 00 00 58 00 03 00 5a 01 00 00 e4 04 00 00 00 00 00 00 3c 61 73 73 65 6d 62 6c ....H...X...Z...........<assembl
2be60 79 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 63 68 65 6d 61 73 2d 6d 69 63 72 6f 73 6f 66 74 2d 63 y.xmlns="urn:schemas-microsoft-c
2be80 6f 6d 3a 61 73 6d 2e 76 31 22 20 6d 61 6e 69 66 65 73 74 56 65 72 73 69 6f 6e 3d 22 31 2e 30 22 om:asm.v1".manifestVersion="1.0"
2bea0 3e 0d 0a 20 20 3c 74 72 75 73 74 49 6e 66 6f 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 63 68 65 6d >....<trustInfo.xmlns="urn:schem
2bec0 61 73 2d 6d 69 63 72 6f 73 6f 66 74 2d 63 6f 6d 3a 61 73 6d 2e 76 33 22 3e 0d 0a 20 20 20 20 3c as-microsoft-com:asm.v3">......<
2bee0 73 65 63 75 72 69 74 79 3e 0d 0a 20 20 20 20 20 20 3c 72 65 71 75 65 73 74 65 64 50 72 69 76 69 security>........<requestedPrivi
2bf00 6c 65 67 65 73 3e 0d 0a 20 20 20 20 20 20 20 20 3c 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 leges>..........<requestedExecut
2bf20 69 6f 6e 4c 65 76 65 6c 20 6c 65 76 65 6c 3d 22 61 73 49 6e 76 6f 6b 65 72 22 20 75 69 41 63 63 ionLevel.level="asInvoker".uiAcc
2bf40 65 73 73 3d 22 66 61 6c 73 65 22 3e 3c 2f 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 69 6f 6e ess="false"></requestedExecution
2bf60 4c 65 76 65 6c 3e 0d 0a 20 20 20 20 20 20 3c 2f 72 65 71 75 65 73 74 65 64 50 72 69 76 69 6c 65 Level>........</requestedPrivile
2bf80 67 65 73 3e 0d 0a 20 20 20 20 3c 2f 73 65 63 75 72 69 74 79 3e 0d 0a 20 20 3c 2f 74 72 75 73 74 ges>......</security>....</trust
2bfa0 49 6e 66 6f 3e 0d 0a 3c 2f 61 73 73 65 6d 62 6c 79 3e 50 41 50 41 44 44 49 4e 47 58 58 50 41 44 Info>..</assembly>PAPADDINGXXPAD
2bfc0 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 DINGPADDINGXXPADDINGPADDINGXXPAD
2bfe0 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 DINGPADDINGXXPADDINGPADDINGXXPAD
2c000 00 10 00 00 00 02 00 00 01 30 23 30 45 30 52 30 5e 30 67 30 75 30 80 30 89 30 a2 30 b8 30 e6 30 .........0#0E0R0^0g0u0.0.0.0.0.0
2c020 ef 30 f5 30 fa 30 03 31 08 31 15 31 1d 31 36 31 54 31 60 31 78 31 7d 31 8c 31 d0 31 d7 31 dc 31 .0.0.0.1.1.1.161T1`1x1}1.1.1.1.1
2c040 e3 31 f0 31 fd 31 0a 32 11 32 18 32 25 32 2c 32 33 32 3a 32 51 32 58 32 5d 32 78 32 7d 32 b0 32 .1.1.1.2.2.2%2,232:2Q2X2]2x2}2.2
2c060 b5 32 c6 32 d2 32 e8 32 ec 32 f0 32 f4 32 f8 32 fc 32 00 33 04 33 08 33 0c 33 10 33 14 33 18 33 .2.2.2.2.2.2.2.2.2.3.3.3.3.3.3.3
2c080 1c 33 20 33 24 33 28 33 8d 33 9b 33 ae 33 b7 33 bc 33 c6 33 de 33 f1 33 fb 33 13 34 26 34 30 34 .3.3$3(3.3.3.3.3.3.3.3.3.3.4&404
2c0a0 48 34 5b 34 65 34 7d 34 90 34 9a 34 b2 34 c5 34 cf 34 e7 34 fa 34 04 35 1c 35 2f 35 39 35 51 35 H4[4e4}4.4.4.4.4.4.4.4.5.5/595Q5
2c0c0 64 35 6e 35 86 35 99 35 a3 35 bb 35 ce 35 d8 35 f0 35 03 36 0d 36 25 36 38 36 42 36 5a 36 6d 36 d5n5.5.5.5.5.5.5.5.6.6%686B6Z6m6
2c0e0 77 36 8f 36 a2 36 ac 36 c4 36 d7 36 e1 36 f9 36 0c 37 16 37 2e 37 41 37 4b 37 63 37 76 37 80 37 w6.6.6.6.6.6.6.6.7.7.7A7K7c7v7.7
2c100 98 37 ab 37 b5 37 cd 37 e0 37 ea 37 02 38 15 38 1f 38 37 38 4a 38 54 38 6a 38 95 38 9c 38 ae 38 .7.7.7.7.7.7.8.8.878J8T8j8.8.8.8
2c120 b3 38 ba 38 c6 38 d7 38 f9 38 1d 39 2d 39 3d 39 47 39 60 39 83 39 96 39 a3 39 a8 39 af 39 b5 39 .8.8.8.8.8.9-9=9G9`9.9.9.9.9.9.9
2c140 c3 39 d5 39 e0 39 f2 39 fb 39 1a 3a 3c 3a 42 3a 78 3a 95 3a c7 3a ec 3a 06 3b 0d 3b 16 3b 1f 3b .9.9.9.9.9.:<:B:x:.:.:.:.;.;.;.;
2c160 3a 3b 46 3b 4d 3b 54 3b 60 3b 70 3b 7c 3b 88 3b aa 3b b8 3b c8 3b cf 3b e9 3b ef 3b f4 3b 07 3c :;F;M;T;`;p;|;.;.;.;.;.;.;.;.;.<
2c180 10 3c 22 3c 2e 3c 34 3c 41 3c 4a 3c 5f 3c 66 3c 70 3c 77 3c 85 3c 92 3c ac 3c c3 3c cb 3c d4 3c .<"<.<4<A<J<_<f<p<w<.<.<.<.<.<.<
2c1a0 e1 3c f6 3c fd 3c 12 3d 23 3d 30 3d 42 3d 47 3d 50 3d 5a 3d 67 3d 71 3d 7e 3d 88 3d 98 3d a2 3d .<.<.<.=#=0=B=G=P=Z=g=q=~=.=.=.=
2c1c0 af 3d b9 3d c9 3d d3 3d e0 3d ea 3d f8 3d 23 3e 48 3e 64 3e 7d 3e c1 3e c8 3e cf 3e d5 3e e3 3e .=.=.=.=.=.=.=#>H>d>}>.>.>.>.>.>
2c1e0 f5 3e 07 3f 1e 3f 27 3f 37 3f 54 3f 5e 3f 6b 3f 74 3f 8c 3f 99 3f a2 3f bc 3f d3 3f fc 3f 00 00 .>.?.?'?7?T?^?k?t?.?.?.?.?.?.?..
2c200 00 20 00 00 04 02 00 00 0d 30 27 30 40 30 66 30 74 30 7a 30 91 30 9a 30 a3 30 af 30 b8 30 d9 30 .........0'0@0f0t0z0.0.0.0.0.0.0
2c220 e0 30 e6 30 f1 30 fc 30 17 31 29 31 4c 31 58 31 5f 31 86 31 a9 31 bd 31 d4 31 df 31 e8 31 f6 31 .0.0.0.0.1)1L1X1_1.1.1.1.1.1.1.1
2c240 fc 31 17 32 33 32 46 32 56 32 62 32 73 32 95 32 a1 32 aa 32 c3 32 e3 32 f1 32 f7 32 0c 33 22 33 .1.232F2V2b2s2.2.2.2.2.2.2.2.3"3
2c260 30 33 41 33 4a 33 53 33 5f 33 66 33 91 33 bd 33 c2 33 c9 33 ee 33 0b 34 14 34 26 34 3c 34 49 34 03A3J3S3_3f3.3.3.3.3.3.4.4&4<4I4
2c280 4e 34 55 34 5d 34 66 34 6c 34 7a 34 ba 34 d3 34 f4 34 0b 35 11 35 1a 35 26 35 45 35 5f 35 6e 35 N4U4]4f4l4z4.4.4.4.5.5.5&5E5_5n5
2c2a0 8c 35 9a 35 aa 35 b6 35 bf 35 cd 35 d9 35 f6 35 0b 36 20 36 58 36 6a 36 71 36 7a 36 90 36 9c 36 .5.5.5.5.5.5.5.5.6.6X6j6q6z6.6.6
2c2c0 a8 36 b8 36 d8 36 e8 36 f1 36 fe 36 04 37 0a 37 27 37 38 37 41 37 4d 37 60 37 75 37 96 37 b6 37 .6.6.6.6.6.6.7.7'787A7M7`7u7.7.7
2c2e0 d6 37 f6 37 16 38 36 38 5d 38 6d 38 76 38 83 38 89 38 8f 38 99 38 aa 38 bb 38 c4 38 d4 38 dd 38 .7.7.868]8m8v8.8.8.8.8.8.8.8.8.8
2c300 f0 38 05 39 2d 39 33 39 45 39 4b 39 59 39 60 39 77 39 7e 39 8c 39 9d 39 a4 39 ab 39 be 39 c6 39 .8.9-939E9K9Y9`9w9~9.9.9.9.9.9.9
2c320 cd 39 d6 39 e2 39 f5 39 fa 39 03 3a 0a 3a 13 3a 1d 3a 27 3a 34 3a 41 3a 4e 3a 58 3a 65 3a 6f 3a .9.9.9.9.9.:.:.:.:':4:A:N:X:e:o:
2c340 7f 3a 89 3a 96 3a a0 3a b0 3a ba 3a c7 3a d1 3a de 3a eb 3a f8 3a 00 3b 0f 3b 2a 3b 42 3b 48 3b .:.:.:.:.:.:.:.:.:.:.:.;.;*;B;H;
2c360 4d 3b 56 3b 64 3b 6a 3b 7b 3b 95 3b a3 3b bb 3b c4 3b cc 3b da 3b e3 3b f9 3b 0a 3c 15 3c 1f 3c M;V;d;j;{;.;.;.;.;.;.;.;.;.<.<.<
2c380 33 3c 41 3c 5f 3c 84 3c 8d 3c 96 3c b3 3c cd 3c e3 3c f5 3c 14 3d 1f 3d 34 3d 41 3d 48 3d 56 3d 3<A<_<.<.<.<.<.<.<.<.=.=4=A=H=V=
2c3a0 6c 3d 74 3d 82 3d 8e 3d a5 3d ae 3d c2 3d c7 3d ce 3d dc 3d e8 3d f4 3d fd 3d 0d 3e 12 3e 19 3e l=t=.=.=.=.=.=.=.=.=.=.=.=.>.>.>
2c3c0 27 3e 30 3e 37 3e 40 3e 49 3e 57 3e 9d 3e a4 3e b1 3e b8 3e d9 3e e0 3e ed 3e f4 3e 04 3f 15 3f '>0>7>@>I>W>.>.>.>.>.>.>.>.>.?.?
2c3e0 22 3f 29 3f 32 3f 3b 3f 4b 3f 5d 3f 69 3f 77 3f 7f 3f 99 3f a8 3f b5 3f c1 3f d1 3f d8 3f e7 3f "?)?2?;?K?]?i?w?.?.?.?.?.?.?.?.?
2c400 f3 3f 00 00 00 30 00 00 2c 01 00 00 00 30 24 30 36 30 44 30 59 30 63 30 89 30 bc 30 cb 30 d4 30 .?...0..,....0$060D0Y0c0.0.0.0.0
2c420 f8 30 27 31 30 31 ac 31 b3 31 d5 31 dc 31 57 32 60 32 8d 32 a8 32 ae 32 b7 32 be 32 e0 32 3f 33 .0'101.1.1.1.1W2`2.2.2.2.2.2.2?3
2c440 47 33 5a 33 65 33 6a 33 7a 33 84 33 8b 33 96 33 9f 33 b5 33 c0 33 da 33 e6 33 ee 33 fe 33 13 34 G3Z3e3j3z3.3.3.3.3.3.3.3.3.3.3.4
2c460 53 34 60 34 8a 34 8f 34 9a 34 9f 34 bd 34 6e 35 7b 35 88 35 ad 35 be 35 c5 35 cb 35 dd 35 e5 35 S4`4.4.4.4.4.4n5{5.5.5.5.5.5.5.5
2c480 f0 35 41 36 46 36 50 36 8a 36 8f 36 96 36 9c 36 48 38 5a 38 a9 38 af 38 c0 38 d6 38 e8 38 38 39 .5A6F6P6.6.6.6.6H8Z8.8.8.8.8.889
2c4a0 3e 39 5e 39 95 39 a6 39 f8 39 fe 39 04 3a 0a 3a 10 3a 16 3a 1d 3a 24 3a 2b 3a 32 3a 39 3a 40 3a >9^9.9.9.9.9.:.:.:.:.:$:+:2:9:@:
2c4c0 47 3a 4f 3a 57 3a 5f 3a 6b 3a 74 3a 79 3a 7f 3a 89 3a 92 3a 9d 3a a9 3a ae 3a be 3a c3 3a c9 3a G:O:W:_:k:t:y:.:.:.:.:.:.:.:.:.:
2c4e0 cf 3a e5 3a ec 3a f5 3a 09 3b 2a 3b 30 3b 62 3b b9 3b c1 3b 01 3c 0b 3c 33 3c 4c 3c 8d 3c bd 3c .:.:.:.:.;*;0;b;.;.;.<.<3<L<.<.<
2c500 cf 3c 21 3d 27 3d 60 3d 69 3d 75 3d ac 3d b5 3d c1 3d fa 3d 03 3e 0f 3e 28 3e 49 3e 55 3e 7c 3e .<!='=`=i=u=.=.=.=.=.>.>(>I>U>|>
2c520 89 3e 8e 3e 9c 3e 77 3f 9a 3f a5 3f c8 3f 00 00 00 40 00 00 64 00 00 00 17 30 5e 30 65 30 6f 30 .>.>.>w?.?.?.?...@..d....0^0e0o0
2c540 99 30 a7 30 ad 30 d0 30 d7 30 f0 30 04 31 0a 31 13 31 26 31 4a 31 df 31 ff 31 42 32 54 32 00 33 .0.0.0.0.0.0.1.1.1&1J1.1.1B2T2.3
2c560 08 33 1d 33 28 33 0f 34 b1 34 cf 34 f5 34 55 35 68 35 83 35 ce 38 be 39 48 3b 77 3b 9c 3b 7f 3d .3.3(3.4.4.4.4U5h5.5.8.9H;w;.;.=
2c580 7b 3f 7f 3f 83 3f 87 3f 8b 3f 8f 3f 93 3f 97 3f d6 3f e8 3f 00 50 00 00 3c 01 00 00 ba 30 c4 30 {?.?.?.?.?.?.?.?.?.?.P..<....0.0
2c5a0 d1 30 ec 30 f3 30 0b 31 37 31 53 31 76 31 89 31 b9 31 d6 31 32 32 0c 33 14 33 2c 33 44 33 9b 33 .0.0.0.171S1v1.1.1.122.3.3,3D3.3
2c5c0 b4 33 ba 33 c5 33 d1 33 e6 33 ed 33 01 34 08 34 2f 34 35 34 40 34 4c 34 61 34 68 34 7c 34 83 34 .3.3.3.3.3.3.4.4/454@4L4a4h4|4.4
2c5e0 9b 34 a7 34 ad 34 b9 34 c8 34 ce 34 d7 34 e3 34 f1 34 f7 34 03 35 09 35 16 35 20 35 27 35 3f 35 .4.4.4.4.4.4.4.4.4.4.5.5.5.5'5?5
2c600 4e 35 55 35 62 35 85 35 9a 35 c0 35 00 36 06 36 30 36 36 36 52 36 6a 36 90 36 0a 37 2d 37 37 37 N5U5b5.5.5.5.6.60666R6j6.6.7-777
2c620 6f 37 77 37 c1 37 c8 37 e3 37 e8 37 f0 37 f6 37 fd 37 03 38 0a 38 10 38 18 38 1f 38 24 38 2c 38 o7w7.7.7.7.7.7.7.7.8.8.8.8.8$8,8
2c640 35 38 41 38 46 38 4b 38 51 38 55 38 5b 38 60 38 66 38 6b 38 7a 38 90 38 9b 38 a0 38 ab 38 b0 38 58A8F8K8Q8U8[8`8f8k8z8.8.8.8.8.8
2c660 bb 38 c0 38 cd 38 db 38 e1 38 ee 38 0e 39 14 39 30 39 60 39 97 39 af 39 ba 39 de 39 e7 39 ee 39 .8.8.8.8.8.8.9.909`9.9.9.9.9.9.9
2c680 f7 39 37 3a 3c 3a 64 3a 89 3a ae 3a c1 3a d9 3a eb 3a 0f 3b 38 3b 43 3b bd 3b d6 3b ff 3b 04 3c .97:<:d:.:.:.:.:.:.;8;C;.;.;.;.<
2c6a0 1b 3c 6f 3c 74 3c 95 3c 9a 3c bf 3c 78 3d 7d 3d 8f 3d ad 3d c1 3d c7 3d 30 3e 67 3e 72 3e 93 3e .<o<t<.<.<.<x=}=.=.=.=.=0>g>r>.>
2c6c0 0c 3f 12 3f 2b 3f 31 3f e1 3f e6 3f eb 3f f0 3f 00 60 00 00 d8 00 00 00 00 30 2f 30 3d 30 84 30 .?.?+?1?.?.?.?.?.`.......0/0=0.0
2c6e0 89 30 ce 30 d3 30 da 30 df 30 e6 30 eb 30 5a 31 63 31 69 31 f3 31 02 32 11 32 1a 32 2f 32 5f 32 .0.0.0.0.0.0.0Z1c1i1.1.2.2.2/2_2
2c700 80 32 8d 32 f1 32 f7 32 00 33 0f 33 47 33 51 33 a1 33 ac 33 b6 33 c7 33 d2 33 85 35 96 35 9e 35 .2.2.2.2.3.3G3Q3.3.3.3.3.3.5.5.5
2c720 a4 35 a9 35 af 35 1b 36 21 36 37 36 42 36 59 36 65 36 72 36 79 36 b0 36 ff 36 12 37 44 37 5d 37 .5.5.5.6!676B6Y6e6r6y6.6.6.7D7]7
2c740 7f 37 84 37 92 37 a1 37 c4 37 d1 37 dd 37 e5 37 ed 37 f9 37 1d 38 25 38 35 38 3a 38 7d 3a 8b 3a .7.7.7.7.7.7.7.7.7.7.8%858:8}:.:
2c760 91 3a ab 3a b0 3a bf 3a c8 3a d5 3a e0 3a f2 3a 05 3b 10 3b 16 3b 1c 3b 21 3b 2a 3b 47 3b 4d 3b .:.:.:.:.:.:.:.:.;.;.;.;!;*;G;M;
2c780 58 3b 5d 3b 65 3b 6b 3b 75 3b 7c 3b 90 3b 97 3b 9d 3b ab 3b b2 3b b7 3b c0 3b cd 3b d3 3b ed 3b X;];e;k;u;|;.;.;.;.;.;.;.;.;.;.;
2c7a0 fe 3b 04 3c 15 3c 7a 3c 00 70 00 00 70 00 00 00 16 30 22 30 55 30 7b 30 b5 30 fa 30 cd 32 d8 32 .;.<.<z<.p..p....0"0U0{0.0.0.2.2
2c7c0 e0 32 f4 32 fd 32 59 33 6e 33 b4 33 ba 33 c6 33 1b 34 4e 34 86 34 f1 34 f7 34 48 35 4e 35 72 35 .2.2.2Y3n3.3.3.3.4N4.4.4.4H5N5r5
2c7e0 95 35 c9 35 cf 35 db 35 22 36 ad 36 36 37 9b 37 4f 38 6f 38 5f 39 88 39 e1 39 6f 3b 4f 3c 18 3d .5.5.5.5"6.667.7O8o8_9.9.9o;O<.=
2c800 49 3d 5f 3d a0 3d bf 3d 5c 3e 90 3e bf 3e 38 3f 64 3f 8c 3f c3 3f cd 3f 00 80 00 00 8c 00 00 00 I=_=.=.=\>.>.>8?d?.?.?.?........
2c820 3b 30 68 30 dc 30 19 31 30 31 a3 32 b4 32 ee 32 fb 32 05 33 13 33 1c 33 26 33 5a 33 65 33 6f 33 ;0h0.0.101.2.2.2.2.3.3.3&3Z3e3o3
2c840 88 33 92 33 a5 33 c9 33 00 34 35 34 48 34 b8 34 d5 34 1d 35 89 35 a8 35 1d 36 29 36 3c 36 4e 36 .3.3.3.3.454H4.4.4.5.5.5.6)6<6N6
2c860 69 36 71 36 79 36 90 36 a9 36 c5 36 ce 36 d4 36 dd 36 e2 36 f1 36 18 37 41 37 52 37 75 37 3a 38 i6q6y6.6.6.6.6.6.6.6.6.7A7R7u7:8
2c880 64 38 af 38 fb 38 4a 39 92 39 f8 39 0f 3a 20 3a 5c 3a 86 3b 8d 3b e7 3b f2 3b ac 3d ca 3d 20 3f d8.8.8J9.9.9.:.:\:.;.;.;.;.=.=.?
2c8a0 91 3f 9d 3f 00 90 00 00 30 01 00 00 a9 30 e5 30 f3 30 f9 30 09 31 0e 31 26 31 2c 31 3b 31 41 31 .?.?....0....0.0.0.0.1.1&1,1;1A1
2c8c0 50 31 56 31 64 31 6d 31 7c 31 81 31 8b 31 99 31 d9 31 f6 31 13 32 e3 33 ea 33 f0 33 17 34 4f 34 P1V1d1m1|1.1.1.1.1.1.2.3.3.3.4O4
2c8e0 92 34 98 34 cc 34 d7 34 fa 34 be 35 cb 35 0a 36 3f 36 58 36 5f 36 67 36 6c 36 70 36 74 36 9d 36 .4.4.4.4.4.5.5.6?6X6_6g6l6p6t6.6
2c900 c3 36 e1 36 e8 36 ec 36 f0 36 f4 36 f8 36 fc 36 00 37 04 37 4e 37 54 37 58 37 5c 37 60 37 c6 37 .6.6.6.6.6.6.6.6.7.7N7T7X7\7`7.7
2c920 d1 37 ec 37 f3 37 f8 37 fc 37 00 38 21 38 4b 38 7d 38 84 38 88 38 8c 38 90 38 94 38 98 38 9c 38 .7.7.7.7.7.8!8K8}8.8.8.8.8.8.8.8
2c940 a0 38 ea 38 f0 38 f4 38 f8 38 fc 38 fa 39 2f 3a 48 3a 4f 3a 57 3a 5c 3a 60 3a 64 3a 8d 3a b3 3a .8.8.8.8.8.8.9/:H:O:W:\:`:d:.:.:
2c960 d1 3a d8 3a dc 3a e0 3a e4 3a e8 3a ec 3a f0 3a f4 3a 3e 3b 44 3b 48 3b 4c 3b 50 3b b6 3b c1 3b .:.:.:.:.:.:.:.:.:>;D;H;L;P;.;.;
2c980 dc 3b e3 3b e8 3b ec 3b f0 3b 11 3c 3b 3c 6d 3c 74 3c 78 3c 7c 3c 80 3c 84 3c 88 3c 8c 3c 90 3c .;.;.;.;.;.<;<m<t<x<|<.<.<.<.<.<
2c9a0 da 3c e0 3c e4 3c e8 3c ec 3c 4c 3d 89 3d 93 3d ab 3d d4 3d 08 3e 37 3e d8 3e e6 3e ee 3e fb 3e .<.<.<.<.<L=.=.=.=.=.>7>.>.>.>.>
2c9c0 19 3f 23 3f 2c 3f 37 3f 4c 3f 53 3f 59 3f 6f 3f 8a 3f 00 00 00 a0 00 00 80 00 00 00 2f 30 9d 30 .?#?,?7?L?S?Y?o?.?........../0.0
2c9e0 09 31 16 31 2f 31 4d 31 8b 31 ba 31 ae 32 be 32 d9 32 f9 32 4f 33 60 33 9b 33 b7 33 12 34 1d 34 .1.1/1M1.1.1.2.2.2.2O3`3.3.3.4.4
2ca00 4b 34 59 34 68 34 7a 34 87 34 93 34 9d 34 a5 34 b0 34 e0 34 10 35 a7 35 57 36 7a 36 f8 36 c9 37 K4Y4h4z4.4.4.4.4.4.4.5.5W6z6.6.7
2ca20 51 38 5b 38 73 38 7a 38 84 38 8c 38 99 38 a0 38 d0 38 69 39 de 39 eb 3b fd 3b 0f 3c 31 3c 43 3c Q8[8s8z8.8.8.8.8.8i9.9.;.;.<1<C<
2ca40 55 3c 67 3c 79 3c 8b 3c 9d 3c d7 3d 02 3f b7 3f cc 3f 00 00 00 b0 00 00 34 00 00 00 31 30 3d 30 U<g<y<.<.<.=.?.?.?......4...10=0
2ca60 b5 30 cf 30 d8 30 39 33 40 33 bb 35 c1 35 c6 35 cc 35 d3 35 e5 35 01 36 1e 36 4a 36 83 36 90 36 .0.0.093@3.5.5.5.5.5.5.6.6J6.6.6
2ca80 6f 37 7e 37 90 39 00 00 00 c0 00 00 1c 00 00 00 d8 31 dc 31 e0 31 e4 31 e8 31 f4 31 f8 31 30 32 o7~7.9...........1.1.1.1.1.1.102
2caa0 34 32 00 00 00 80 01 00 58 00 00 00 4c 35 50 35 98 35 b8 35 d4 35 d8 35 f8 35 18 36 34 36 38 36 42......X...L5P5.5.5.5.5.5.64686
2cac0 58 36 78 36 84 36 a0 36 c0 36 cc 36 e8 36 f4 36 10 37 2c 37 30 37 4c 37 50 37 70 37 8c 37 90 37 X6x6.6.6.6.6.6.6.7,707L7P7p7.7.7
2cae0 b0 37 d0 37 f0 37 10 38 30 38 50 38 70 38 90 38 b0 38 d0 38 f0 38 10 39 2c 39 30 39 00 a0 01 00 .7.7.7.808P8p8.8.8.8.8.9,909....
2cb00 e8 00 00 00 00 30 08 30 80 32 f8 33 fc 33 7c 35 84 35 8c 35 94 35 9c 35 a4 35 ac 35 b4 35 bc 35 .....0.0.2.3.3|5.5.5.5.5.5.5.5.5
2cb20 c4 35 cc 35 d4 35 dc 35 e4 35 ec 35 f4 35 fc 35 04 36 0c 36 14 36 1c 36 24 36 2c 36 30 36 34 36 .5.5.5.5.5.5.5.5.6.6.6.6$6,60646
2cb40 38 36 3c 36 40 36 44 36 48 36 4c 36 50 36 54 36 98 3a 90 3b f8 3b 08 3c 18 3c 28 3c 38 3c 5c 3c 86<6@6D6H6L6P6T6.:.;.;.<.<(<8<\<
2cb60 68 3c 6c 3c 70 3c 74 3c 78 3c 80 3c 84 3c b0 3c b4 3c b8 3c bc 3c c0 3c c4 3c c8 3c cc 3c d0 3c h<l<p<t<x<.<.<.<.<.<.<.<.<.<.<.<
2cb80 d4 3c d8 3c dc 3c e0 3c e4 3c e8 3c ec 3c f0 3c f4 3c f8 3c fc 3c 00 3d 04 3d 08 3d 0c 3d 10 3d .<.<.<.<.<.<.<.<.<.<.<.=.=.=.=.=
2cba0 14 3d 18 3d 1c 3d 20 3d 24 3d 28 3d 2c 3d 30 3d 34 3d 38 3d 3c 3d 40 3d 44 3d 48 3d 4c 3d 50 3d .=.=.=.=$=(=,=0=4=8=<=@=D=H=L=P=
2cbc0 54 3d 58 3d 5c 3d 60 3d 70 3d 78 3d 7c 3d 80 3d 84 3d 88 3d 8c 3d 90 3d 94 3d 98 3d 9c 3d a8 3d T=X=\=`=p=x=|=.=.=.=.=.=.=.=.=.=
2cbe0 68 3e 6c 3e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 h>l>............................
2cc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ccc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ce00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ce20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ce40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ce60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ce80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cf00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cf20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cf40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cf60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cf80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................