ofs | hex dump | ascii |
---|
0000 | 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 02 00 03 00 01 00 00 00 b1 64 00 09 34 00 00 00 | .ELF.....................d..4... |
0020 | 00 00 00 00 00 00 00 00 34 00 20 00 02 00 00 00 00 00 00 00 01 00 00 00 74 00 00 00 74 00 00 09 | ........4...............t...t... |
0040 | 74 00 00 09 ff 82 00 00 ff 82 00 00 05 00 00 00 00 10 00 00 01 00 00 00 73 83 00 00 73 03 00 0a | t.......................s...s... |
0060 | 73 03 00 0a 36 49 00 00 36 49 00 00 06 00 00 00 00 10 00 00 b8 01 00 00 00 cd 80 b8 03 00 00 00 | s...6I..6I...................... |
0080 | cd 80 c3 b8 04 00 00 00 cd 80 c3 b8 05 00 00 00 cd 80 c3 b8 06 00 00 00 cd 80 c3 b8 08 00 00 00 | ................................ |
00a0 | cd 80 c3 b8 0a 00 00 00 cd 80 c3 b8 26 00 00 00 cd 80 c3 b8 5a 00 00 00 cd 80 c3 bb 00 00 00 00 | ............&.......Z........... |
00c0 | b8 01 00 00 00 cd 80 55 89 e5 50 51 52 53 8b 5d 08 8b 4d 0c 81 c1 04 00 00 00 8b 55 0c 8b 12 b8 | .......U..PQRS.]..M........U.... |
00e0 | 04 00 00 00 cd 80 3d 00 00 00 00 0f 8c 08 00 00 00 5b 5a 59 58 89 ec 5d c3 bb ff 00 00 00 b8 01 | ......=..........[ZYX..]........ |
0100 | 00 00 00 cd 80 68 63 09 00 0a 68 34 00 00 00 68 34 00 00 00 e8 12 00 00 00 81 c4 0c 00 00 00 bb | .....hc...h4...h4............... |
0120 | 00 00 00 00 b8 01 00 00 00 cd 80 55 89 e5 50 51 53 8b 45 08 8b 5d 0c 39 d8 75 17 68 80 09 00 0a | ...........U..PQS.E..].9.u.h.... |
0140 | 68 02 00 00 00 e8 7d ff ff ff 81 c4 08 00 00 00 eb 2f 8b 4d 10 51 68 02 00 00 00 e8 67 ff ff ff | h.....}........../.M.Qh.....g... |
0160 | 81 c4 08 00 00 00 68 73 03 00 0a 68 02 00 00 00 e8 52 ff ff ff 81 c4 08 00 00 00 ff 05 78 03 00 | ......hs...h.....R...........x.. |
0180 | 0a 5b 59 58 89 ec 5d c3 e8 ad 7d 00 00 8b 1d 78 03 00 0a b8 01 00 00 00 cd 80 55 89 e5 51 52 53 | .[YX..]...}....x..........U..QRS |
01a0 | 56 57 8b 7d 08 8b 55 0c 8b 12 8b 75 0c 81 c6 04 00 00 00 b9 00 00 00 00 b8 00 00 00 00 bb 00 00 | VW.}..U....u.................... |
01c0 | 00 00 39 d1 7d 14 8a 07 8a 1e 3d 00 00 00 00 74 19 39 d8 75 15 41 47 46 eb e8 8a 07 3d 00 00 00 | ..9.}.....=....t.9.u.AGF....=... |
01e0 | 00 75 07 b8 01 00 00 00 eb 05 b8 00 00 00 00 5f 5e 5b 5a 59 89 ec 5d c3 68 85 09 00 0a 68 86 03 | .u............._^[ZY..].h....h.. |
0200 | 00 0a e8 93 ff ff ff 81 c4 08 00 00 00 68 89 09 00 0a 68 01 00 00 00 50 e8 0e ff ff ff 81 c4 0c | .............h....h....P........ |
0220 | 00 00 00 c3 68 c1 09 00 0a 68 86 03 00 0a e8 67 ff ff ff 81 c4 08 00 00 00 68 c8 09 00 0a 68 00 | ....h....h.....g.........h....h. |
0240 | 00 00 00 50 e8 e2 fe ff ff 81 c4 0c 00 00 00 c3 68 04 0a 00 0a 68 87 03 00 0a e8 3b ff ff ff 81 | ...P............h....h.....;.... |
0260 | c4 08 00 00 00 68 0b 0a 00 0a 68 01 00 00 00 50 e8 b6 fe ff ff 81 c4 0c 00 00 00 c3 68 3e 0a 00 | .....h....h....P............h>.. |
0280 | 0a 68 87 03 00 0a e8 0f ff ff ff 81 c4 08 00 00 00 68 45 0a 00 0a 68 00 00 00 00 50 e8 8a fe ff | .h...............hE...h....P.... |
02a0 | ff 81 c4 0c 00 00 00 c3 68 78 0a 00 0a 68 87 03 00 0a e8 e3 fe ff ff 81 c4 08 00 00 00 68 7c 0a | ........hx...h...............h|. |
02c0 | 00 0a 68 00 00 00 00 50 e8 5e fe ff ff 81 c4 0c 00 00 00 c3 68 af 0a 00 0a 68 87 03 00 0a e8 b7 | ..h....P.^..........h....h...... |
02e0 | fe ff ff 81 c4 08 00 00 00 68 b5 0a 00 0a 68 00 00 00 00 50 e8 32 fe ff ff 81 c4 0c 00 00 00 c3 | .........h....h....P.2.......... |
0300 | 68 ea 0a 00 0a 68 87 03 00 0a e8 8b fe ff ff 81 c4 08 00 00 00 68 f2 0a 00 0a 68 00 00 00 00 50 | h....h...............h....h....P |
0320 | e8 06 fe ff ff 81 c4 0c 00 00 00 c3 68 00 00 00 00 68 00 00 00 00 89 e1 51 68 00 10 00 00 e8 17 | ............h....h......Qh...... |
0340 | 00 00 00 81 c4 08 00 00 00 8b 01 c7 00 34 00 00 00 89 c3 b8 01 00 00 00 cd 80 55 89 e5 50 53 8b | .............4............U..PS. |
0360 | 45 08 89 05 8f 03 00 0a bb 8b 03 00 0a b8 5a 00 00 00 cd 80 8b 5d 0c 89 03 03 45 08 89 43 04 5b | E.............Z......]....E..C.[ |
0380 | 58 89 ec 5d c3 e8 b0 7b 00 00 8b 1d 78 03 00 0a b8 01 00 00 00 cd 80 55 89 e5 51 52 56 57 8b 75 | X..]...{....x..........U..QRVW.u |
03a0 | 08 8b 7d 0c 8b 0e 39 0f 75 29 81 c6 04 00 00 00 01 f1 81 c7 04 00 00 00 31 c0 31 d2 39 ce 73 0c | ..}...9.u)..............1.1.9.s. |
03c0 | 8a 06 8a 17 39 d0 75 0b 46 47 eb f0 b8 01 00 00 00 eb 05 b8 00 00 00 00 5f 5e 5a 59 89 ec 5d c3 | ....9.u.FG.............._^ZY..]. |
03e0 | 68 26 0b 00 0a 68 2a 0b 00 0a e8 a8 ff ff ff 81 c4 08 00 00 00 68 2e 0b 00 0a 68 01 00 00 00 50 | h&...h*..............h....h....P |
0400 | e8 26 fd ff ff 81 c4 0c 00 00 00 c3 68 5a 0b 00 0a 68 61 0b 00 0a e8 7c ff ff ff 81 c4 08 00 00 | .&..........hZ...ha....|........ |
0420 | 00 68 65 0b 00 0a 68 00 00 00 00 50 e8 fa fc ff ff 81 c4 0c 00 00 00 c3 68 95 0b 00 0a 68 9c 0b | .he...h....P............h....h.. |
0440 | 00 0a e8 50 ff ff ff 81 c4 08 00 00 00 68 a3 0b 00 0a 68 01 00 00 00 50 e8 ce fc ff ff 81 c4 0c | ...P.........h....h....P........ |
0460 | 00 00 00 c3 68 c5 0b 00 0a 68 cc 0b 00 0a e8 24 ff ff ff 81 c4 08 00 00 00 68 d3 0b 00 0a 68 00 | ....h....h.....$.........h....h. |
0480 | 00 00 00 50 e8 a2 fc ff ff 81 c4 0c 00 00 00 c3 55 89 e5 50 ff 75 0c ff 75 08 e8 f8 fe ff ff 81 | ...P............U..P.u..u....... |
04a0 | c4 08 00 00 00 ff 75 10 68 01 00 00 00 50 e8 78 fc ff ff 81 c4 0c 00 00 00 58 89 ec 5d c3 68 05 | ......u.h....P.x.........X..].h. |
04c0 | 0c 00 0a 68 0c 0c 00 0a e8 c3 ff ff ff 81 c4 08 00 00 00 c3 55 89 e5 50 51 8b 45 08 8b 48 08 8d | ...h................U..PQ.E..H.. |
04e0 | 4c 08 0c c7 00 00 00 00 00 c7 40 04 00 00 00 00 81 c0 0c 00 00 00 39 c8 73 06 c6 00 00 40 eb f6 | L.........@...........9.s....@.. |
0500 | 59 58 89 ec 5d c3 55 89 e5 50 8b 45 08 c7 40 04 00 00 00 00 58 89 ec 5d c3 55 89 e5 50 51 8b 4d | YX..].U..P.E..@.....X..].U..PQ.M |
0520 | 08 68 a7 03 00 0a 51 e8 2e fe ff ff 81 c4 08 00 00 00 8b 05 a7 03 00 0a 89 05 a3 03 00 0a 81 e9 | .h....Q......................... |
0540 | 0c 00 00 00 89 48 08 59 58 89 ec 5d c3 55 89 e5 50 51 52 53 56 57 8b 3d a3 03 00 0a 8b 75 08 8b | .....H.YX..].U..PQRSVW.=.....u.. |
0560 | 0f 8b 57 08 56 8d 5c 17 0c 53 8d 5c 0f 0c 53 e8 2d 05 00 00 81 c4 0c 00 00 00 3d 00 00 00 00 74 | ..W.V.\..S.\..S.-.........=....t |
0580 | 20 01 07 8b 0f 68 73 03 00 0a 8d 5c 17 0c 53 8d 5c 0f 0c 53 e8 08 05 00 00 81 c4 0c 00 00 00 01 | .....hs....\..S.\..S............ |
05a0 | 07 5f 5e 5b 5a 59 58 89 ec 5d c3 ff 35 a3 03 00 0a b8 af 03 00 0a 89 05 a3 03 00 0a e8 c8 04 00 | ._^[ZYX..]..5................... |
05c0 | 00 68 13 0c 00 0a e8 82 ff ff ff 81 c4 04 00 00 00 68 19 0c 00 0a 68 41 62 0a 00 b8 af 03 00 0a | .h...............h....hAb....... |
05e0 | ff 70 0c e8 43 fb ff ff 81 c4 0c 00 00 00 8f 05 a3 03 00 0a c3 ff 35 a3 03 00 0a b8 af 03 00 0a | .p..C.................5......... |
0600 | 89 05 a3 03 00 0a e8 7e 04 00 00 68 32 0c 00 0a e8 38 ff ff ff 81 c4 04 00 00 00 68 37 0c 00 0a | .......~...h2....8.........h7... |
0620 | e8 28 ff ff ff 81 c4 04 00 00 00 68 3c 0c 00 0a 68 43 0a 44 0a b8 af 03 00 0a ff 70 0c e8 e9 fa | .(.........h<...hC.D.......p.... |
0640 | ff ff 81 c4 0c 00 00 00 8f 05 a3 03 00 0a c3 ff 35 a3 03 00 0a b8 af 03 00 0a 89 05 a3 03 00 0a | ................5............... |
0660 | e8 24 04 00 00 68 56 0c 00 0a e8 de fe ff ff 81 c4 04 00 00 00 68 5a 0c 00 0a 68 00 00 00 00 b8 | .$...hV..............hZ...h..... |
0680 | af 03 00 0a ff 70 0c e8 9f fa ff ff 81 c4 0c 00 00 00 8f 05 a3 03 00 0a c3 55 89 e5 ff 35 a3 03 | .....p...................U...5.. |
06a0 | 00 0a e8 5f fe ff ff 81 c4 04 00 00 00 ff 75 0c ff 75 08 e8 0a 00 00 00 81 c4 08 00 00 00 89 ec | ..._..........u..u.............. |
06c0 | 5d c3 55 89 e5 50 ff 75 08 e8 1f 00 00 00 81 c4 04 00 00 00 ff 75 0c 68 01 00 00 00 50 e8 49 fa | ].U..P.u.............u.h....P.I. |
06e0 | ff ff 81 c4 0c 00 00 00 58 89 ec 5d c3 55 89 e5 51 56 8b 35 a3 03 00 0a 8b 0e ff 76 04 39 4e 04 | ........X..].U..QV.5.......v.9N. |
0700 | 7d 3d ff 75 08 56 e8 d1 01 00 00 81 c4 08 00 00 00 3d 00 00 00 00 74 19 56 e8 d2 02 00 00 81 c4 | }=.u.V...........=....t.V....... |
0720 | 04 00 00 00 81 c4 04 00 00 00 b8 01 00 00 00 eb 16 56 e8 b9 02 00 00 81 c4 04 00 00 00 eb be 8f | .................V.............. |
0740 | 46 04 b8 00 00 00 00 59 89 ec 5d c3 ff 35 a3 03 00 0a b8 af 03 00 0a 89 05 a3 03 00 0a e8 27 03 | F......Y..]..5................'. |
0760 | 00 00 68 77 0c 00 0a e8 e1 fd ff ff 81 c4 04 00 00 00 68 7d 0c 00 0a e8 71 ff ff ff 81 c4 04 00 | ..hw..............h}....q....... |
0780 | 00 00 68 83 0c 00 0a 68 01 00 00 00 50 e8 99 f9 ff ff 81 c4 0c 00 00 00 8f 05 a3 03 00 0a c3 ff | ..h....h....P................... |
07a0 | 35 a3 03 00 0a b8 af 03 00 0a 89 05 a3 03 00 0a e8 d4 02 00 00 68 a0 0c 00 0a e8 8e fd ff ff 81 | 5....................h.......... |
07c0 | c4 04 00 00 00 68 a6 0c 00 0a e8 7e fd ff ff 81 c4 04 00 00 00 68 ac 0c 00 0a e8 0e ff ff ff 81 | .....h.....~.........h.......... |
07e0 | c4 04 00 00 00 68 b2 0c 00 0a 68 01 00 00 00 50 e8 36 f9 ff ff 81 c4 0c 00 00 00 8f 05 a3 03 00 | .....h....h....P.6.............. |
0800 | 0a c3 ff 35 a3 03 00 0a b8 af 03 00 0a 89 05 a3 03 00 0a e8 71 02 00 00 68 e1 0c 00 0a e8 2b fd | ...5................q...h.....+. |
0820 | ff ff 81 c4 04 00 00 00 68 e7 0c 00 0a e8 bb fe ff ff 81 c4 04 00 00 00 68 ed 0c 00 0a e8 ab fe | ........h...............h....... |
0840 | ff ff 81 c4 04 00 00 00 68 f3 0c 00 0a 68 00 00 00 00 50 e8 d3 f8 ff ff 81 c4 0c 00 00 00 8f 05 | ........h....h....P............. |
0860 | a3 03 00 0a c3 ff 35 a3 03 00 0a b8 af 03 00 0a 89 05 a3 03 00 0a e8 0e 02 00 00 68 2d 0d 00 0a | ......5....................h-... |
0880 | e8 c8 fc ff ff 81 c4 04 00 00 00 68 33 0d 00 0a 68 00 00 00 00 b8 af 03 00 0a ff 70 04 e8 89 f8 | ...........h3...h..........p.... |
08a0 | ff ff 81 c4 0c 00 00 00 68 82 0d 00 0a e8 3b fe ff ff 81 c4 04 00 00 00 68 88 0d 00 0a 68 00 00 | ........h.....;.........h....h.. |
08c0 | 00 00 b8 af 03 00 0a ff 70 04 e8 5c f8 ff ff 81 c4 0c 00 00 00 8f 05 a3 03 00 0a c3 55 89 e5 51 | ........p..\................U..Q |
08e0 | 52 53 56 57 8b 55 0c 8d 72 04 8b 02 8d 0c 06 8b 7d 08 8d 5f 0c 8b 07 8d 14 03 8b 47 04 8d 3c 03 | RSVW.U..r.......}.._.......G..<. |
0900 | 39 ce 73 1e b8 00 00 00 00 39 d7 73 2a 31 c0 31 db 8a 07 8a 1e 39 d8 b8 00 00 00 00 75 19 47 46 | 9.s......9.s*1.1.....9......u.GF |
0920 | eb de 31 c0 8a 07 3d 0a 00 00 00 b8 01 00 00 00 74 05 b8 00 00 00 00 5f 5e 5b 5a 59 89 ec 5d c3 | ..1...=.........t......_^[ZY..]. |
0940 | 68 c2 0d 00 0a 68 c3 03 00 0a e8 8d ff ff ff 81 c4 08 00 00 00 68 cf 0d 00 0a 68 00 00 00 00 50 | h....h...............h....h....P |
0960 | e8 c6 f7 ff ff 81 c4 0c 00 00 00 c3 68 f9 0d 00 0a 68 c3 03 00 0a e8 61 ff ff ff 81 c4 08 00 00 | ............h....h.....a........ |
0980 | 00 68 fd 0d 00 0a 68 00 00 00 00 50 e8 9a f7 ff ff 81 c4 0c 00 00 00 c3 68 27 0e 00 0a 68 c3 03 | .h....h....P............h'...h.. |
09a0 | 00 0a e8 35 ff ff ff 81 c4 08 00 00 00 68 2d 0e 00 0a 68 00 00 00 00 50 e8 6e f7 ff ff 81 c4 0c | ...5.........h-...h....P.n...... |
09c0 | 00 00 00 c3 68 57 0e 00 0a 68 c3 03 00 0a e8 09 ff ff ff 81 c4 08 00 00 00 68 60 0e 00 0a 68 01 | ....hW...h...............h`...h. |
09e0 | 00 00 00 50 e8 42 f7 ff ff 81 c4 0c 00 00 00 c3 55 89 e5 50 51 52 53 8b 4d 08 8d 51 0c 8b 01 8d | ...P.B..........U..PQRS.M..Q.... |
0a00 | 1c 02 8b 41 04 8d 0c 02 89 c2 39 d9 73 0f 42 31 c0 8a 01 3d 0a 00 00 00 74 03 41 eb ed 8b 4d 08 | ...A......9.s.B1...=....t.A...M. |
0a20 | 89 51 04 5b 5a 59 58 89 ec 5d c3 68 d7 03 00 0a e8 bb ff ff ff 81 c4 04 00 00 00 68 85 0e 00 0a | .Q.[ZYX..].h...............h.... |
0a40 | 68 00 00 00 00 b8 d7 03 00 0a 8b 40 04 50 e8 d8 f6 ff ff 81 c4 0c 00 00 00 c3 68 eb 03 00 0a e8 | h..........@.P............h..... |
0a60 | 8c ff ff ff 81 c4 04 00 00 00 68 a6 0e 00 0a 68 05 00 00 00 b8 eb 03 00 0a 8b 40 04 50 e8 a9 f6 | ..........h....h..........@.P... |
0a80 | ff ff 81 c4 0c 00 00 00 c3 55 89 e5 ff 35 a3 03 00 0a e8 3d fa ff ff 81 c4 04 00 00 00 89 ec 5d | .........U...5.....=...........] |
0aa0 | c3 55 89 e5 51 8b 45 10 8b 08 8d 4c 08 04 51 8d 48 04 51 ff 75 0c ff 75 08 e8 0b 00 00 00 81 c4 | .U..Q.E....L..Q.H.Q.u..u........ |
0ac0 | 10 00 00 00 59 89 ec 5d c3 55 89 e5 51 52 53 56 57 b8 00 00 00 00 8b 7d 08 8b 55 0c 8b 75 10 8b | ....Y..].U..QRSVW......}..U..u.. |
0ae0 | 4d 14 39 ce 73 0d 39 d7 73 12 8a 1e 88 1f 40 46 47 eb ef 5f 5e 5b 5a 59 89 ec 5d c3 68 c8 0e 00 | M.9.s.9.s.....@FG.._^[ZY..].h... |
0b00 | 0a 68 02 00 00 00 e8 bc f5 ff ff 81 c4 08 00 00 00 bb 01 00 00 00 b8 01 00 00 00 cd 80 55 89 e5 | .h...........................U.. |
0b20 | 81 7d 08 00 00 00 08 73 13 ff 75 0c ff 75 08 e8 93 f5 ff ff 81 c4 08 00 00 00 eb 2a 50 51 52 53 | .}.....s..u..u.............*PQRS |
0b40 | 8b 4d 08 8b 11 8b 59 08 ff 75 0c 8d 5c 19 0c 53 8d 5c 11 0c 53 e8 47 ff ff ff 81 c4 0c 00 00 00 | .M....Y..u..\..S.\..S.G......... |
0b60 | 01 01 5b 5a 59 58 89 ec 5d c3 68 ff 03 00 0a e8 60 f9 ff ff 81 c4 04 00 00 00 68 dc 0e 00 0a 68 | ..[ZYX..].h.....`.........h....h |
0b80 | ff 03 00 0a e8 94 ff ff ff 81 c4 08 00 00 00 68 e2 0e 00 0a 68 41 62 00 00 b8 ff 03 00 0a ff 70 | ...............h....hAb........p |
0ba0 | 0c e8 85 f5 ff ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a e8 1d f9 ff ff 81 c4 04 00 00 00 68 fb 0e | .............h...............h.. |
0bc0 | 00 0a 68 ff 03 00 0a e8 51 ff ff ff 81 c4 08 00 00 00 68 00 0f 00 0a 68 ff 03 00 0a e8 3c ff ff | ..h.....Q.........h....h.....<.. |
0be0 | ff 81 c4 08 00 00 00 68 05 0f 00 0a 68 43 44 00 00 b8 ff 03 00 0a ff 70 0c e8 2d f5 ff ff 81 c4 | .......h....hCD........p..-..... |
0c00 | 0c 00 00 00 c3 55 89 e5 51 52 56 57 8b 75 08 8b 06 8d 54 06 0c 81 c6 0c 00 00 00 8b 7d 0c 39 07 | .....U..QRVW.u....T.........}.9. |
0c20 | 75 1a 81 c7 04 00 00 00 31 c0 31 c9 39 d6 73 13 8a 06 8a 0f 39 c8 75 04 46 47 eb f0 b8 00 00 00 | u.......1.1.9.s.....9.u.FG...... |
0c40 | 00 eb 05 b8 01 00 00 00 5f 5e 5a 59 89 ec 5d c3 55 89 e5 68 ff 03 00 0a e8 77 f8 ff ff 81 c4 04 | ........_^ZY..].U..h.....w...... |
0c60 | 00 00 00 68 1f 0f 00 0a 68 ff 03 00 0a e8 ab fe ff ff 81 c4 08 00 00 00 68 26 0f 00 0a 68 ff 03 | ...h....h...............h&...h.. |
0c80 | 00 0a e8 7e ff ff ff 81 c4 08 00 00 00 68 2d 0f 00 0a 68 01 00 00 00 50 e8 8e f4 ff ff 81 c4 0c | ...~.........h-...h....P........ |
0ca0 | 00 00 00 89 ec 5d c3 55 89 e5 68 ff 03 00 0a e8 20 f8 ff ff 81 c4 04 00 00 00 68 4b 0f 00 0a 68 | .....].U..h...............hK...h |
0cc0 | ff 03 00 0a e8 54 fe ff ff 81 c4 08 00 00 00 68 52 0f 00 0a 68 ff 03 00 0a e8 27 ff ff ff 81 c4 | .....T.........hR...h.....'..... |
0ce0 | 08 00 00 00 68 59 0f 00 0a 68 00 00 00 00 50 e8 37 f4 ff ff 81 c4 0c 00 00 00 89 ec 5d c3 55 89 | ....hY...h....P.7...........].U. |
0d00 | e5 68 ff 03 00 0a e8 c9 f7 ff ff 81 c4 04 00 00 00 68 79 0f 00 0a 68 ff 03 00 0a e8 fd fd ff ff | .h...............hy...h......... |
0d20 | 81 c4 08 00 00 00 68 80 0f 00 0a 68 ff 03 00 0a e8 d0 fe ff ff 81 c4 08 00 00 00 68 88 0f 00 0a | ......h....h...............h.... |
0d40 | 68 00 00 00 00 50 e8 e0 f3 ff ff 81 c4 0c 00 00 00 89 ec 5d c3 55 89 e5 50 ff 75 0c ff 75 08 e8 | h....P.............].U..P.u..u.. |
0d60 | a1 fe ff ff 81 c4 08 00 00 00 ff 75 10 68 01 00 00 00 50 e8 b3 f3 ff ff 81 c4 0c 00 00 00 58 89 | ...........u.h....P...........X. |
0d80 | ec 5d c3 55 89 e5 51 52 56 57 8b 75 08 8b 4e 04 8b 7d 0c 31 d2 31 c0 31 db 3b 0e 7d 1b 8a 44 0e | .].U..QRVW.u..N..}.1.1.1.;.}..D. |
0da0 | 0c 3d 0a 00 00 00 74 10 3b 17 7d 1b 8a 5c 17 04 39 d8 75 13 41 42 eb e1 41 3b 17 7c 0a b8 01 00 | .=....t.;.}..\..9.u.AB..A;.|.... |
0dc0 | 00 00 89 4e 04 eb 05 b8 00 00 00 00 5f 5e 5a 59 89 ec 5d c3 55 89 e5 68 ff 03 00 0a e8 f3 f6 ff | ...N........_^ZY..].U..h........ |
0de0 | ff 81 c4 04 00 00 00 68 b3 0f 00 0a 68 ff 03 00 0a e8 27 fd ff ff 81 c4 08 00 00 00 68 be 0f 00 | .......h....h.....'.........h... |
0e00 | 0a 68 ff 03 00 0a e8 78 ff ff ff 81 c4 08 00 00 00 68 c5 0f 00 0a 68 01 00 00 00 50 e8 0a f3 ff | .h.....x.........h....h....P.... |
0e20 | ff 81 c4 0c 00 00 00 89 ec 5d c3 55 89 e5 68 ff 03 00 0a e8 9c f6 ff ff 81 c4 04 00 00 00 68 f9 | .........].U..h...............h. |
0e40 | 0f 00 0a 68 ff 03 00 0a e8 d0 fc ff ff 81 c4 08 00 00 00 68 04 10 00 0a 68 ff 03 00 0a e8 21 ff | ...h...............h....h.....!. |
0e60 | ff ff 81 c4 08 00 00 00 68 0b 10 00 0a 68 00 00 00 00 50 e8 b3 f2 ff ff 81 c4 0c 00 00 00 89 ec | ........h....h....P............. |
0e80 | 5d c3 55 89 e5 68 ff 03 00 0a e8 45 f6 ff ff 81 c4 04 00 00 00 68 41 10 00 0a 68 ff 03 00 0a e8 | ].U..h.....E.........hA...h..... |
0ea0 | 79 fc ff ff 81 c4 08 00 00 00 68 4d 10 00 0a 68 ff 03 00 0a e8 ca fe ff ff 81 c4 08 00 00 00 68 | y.........hM...h...............h |
0ec0 | 54 10 00 0a 68 ff 03 00 0a e8 b5 fe ff ff 81 c4 08 00 00 00 68 5b 10 00 0a 68 01 00 00 00 50 e8 | T...h...............h[...h....P. |
0ee0 | 47 f2 ff ff 81 c4 0c 00 00 00 89 ec 5d c3 55 89 e5 68 ff 03 00 0a e8 d9 f5 ff ff 81 c4 04 00 00 | G...........].U..h.............. |
0f00 | 00 68 8c 10 00 0a 68 ff 03 00 0a e8 0d fc ff ff 81 c4 08 00 00 00 68 97 10 00 0a 68 ff 03 00 0a | .h....h...............h....h.... |
0f20 | e8 5e fe ff ff 81 c4 08 00 00 00 68 9e 10 00 0a 68 ff 03 00 0a e8 49 fe ff ff 81 c4 08 00 00 00 | .^.........h....h.....I......... |
0f40 | 68 a5 10 00 0a 68 01 00 00 00 50 e8 db f1 ff ff 81 c4 0c 00 00 00 89 ec 5d c3 55 89 e5 68 ff 03 | h....h....P.............].U..h.. |
0f60 | 00 0a e8 6d f5 ff ff 81 c4 04 00 00 00 68 d6 10 00 0a 68 ff 03 00 0a e8 07 fe ff ff 81 c4 08 00 | ...m.........h....h............. |
0f80 | 00 00 68 da 10 00 0a 68 01 00 00 00 50 e8 99 f1 ff ff 81 c4 0c 00 00 00 68 14 11 00 0a 68 ff 03 | ..h....h....P...........h....h.. |
0fa0 | 00 0a e8 dc fd ff ff 81 c4 08 00 00 00 68 18 11 00 0a 68 01 00 00 00 50 e8 6e f1 ff ff 81 c4 0c | .............h....h....P.n...... |
0fc0 | 00 00 00 89 ec 5d c3 55 89 e5 50 ff 75 0c ff 75 08 e8 ad fd ff ff 81 c4 08 00 00 00 ff 75 10 68 | .....].U..P.u..u.............u.h |
0fe0 | 01 00 00 00 50 e8 41 f1 ff ff 81 c4 0c 00 00 00 58 89 ec 5d c3 55 89 e5 50 51 8b 45 0c f7 d8 8d | ....P.A.........X..].U..PQ.E.... |
1000 | 44 05 0c 8b 4d 08 89 01 c7 41 04 00 00 00 00 59 58 89 ec 5d c3 8b 44 24 04 81 38 00 00 00 00 75 | D...M....A.....YX..]..D$..8....u |
1020 | 0b 8b 5c 24 08 b8 01 00 00 00 cd 80 8b 4c 24 08 41 89 48 04 8b 20 c3 55 89 e5 68 00 00 00 00 68 | ..\$.........L$.A.H....U..h....h |
1040 | 00 00 00 00 89 e0 68 04 00 00 00 50 e8 a4 ff ff ff 81 c4 08 00 00 00 50 e8 21 00 00 00 58 68 54 | ......h....P...........P.!...XhT |
1060 | 11 00 0a 68 02 00 00 00 ff 70 04 e8 bb f0 ff ff 81 c4 0c 00 00 00 81 c4 08 00 00 00 5d c3 55 89 | ...h.....p..................].U. |
1080 | e5 ff 75 08 e8 24 00 00 00 81 c4 04 00 00 00 68 7b 11 00 0a 68 00 00 00 00 68 01 00 00 00 e8 88 | ..u..$.........h{...h....h...... |
10a0 | f0 ff ff 81 c4 0c 00 00 00 89 ec 5d c3 55 89 e5 68 01 00 00 00 ff 75 08 e8 58 ff ff ff 89 ec 5d | ...........].U..h.....u..X.....] |
10c0 | c3 55 89 e5 81 7d 08 00 00 00 08 73 13 ff 75 0c ff 75 08 e8 9f 00 00 00 81 c4 08 00 00 00 eb 38 | .U...}.....s..u..u.............8 |
10e0 | 56 57 8b 75 08 8b 7d 0c 8b 06 8d 44 06 0c 50 8b 46 04 8d 44 06 0c 50 8b 47 08 8d 44 07 0c 50 8b | VW.u..}....D..P.F..D..P.G..D..P. |
1100 | 07 8d 44 07 0c 50 e8 39 00 00 00 81 c4 10 00 00 00 01 07 01 46 04 5f 5e 89 ec 5d c3 55 89 e5 51 | ..D..P.9............F._^..].U..Q |
1120 | 8b 45 10 8b 08 8d 4c 08 04 51 8d 48 04 51 ff 75 0c ff 75 08 e8 0b 00 00 00 81 c4 10 00 00 00 59 | .E....L..Q.H.Q.u..u............Y |
1140 | 89 ec 5d c3 55 89 e5 51 52 53 56 57 b8 00 00 00 00 8b 7d 08 8b 55 0c 8b 75 10 8b 4d 14 39 ce 73 | ..].U..QRSVW......}..U..u..M.9.s |
1160 | 0d 39 d7 73 09 8a 1e 88 1f 40 46 47 eb ef 5f 5e 5b 5a 59 89 ec 5d c3 55 89 e5 51 52 53 56 8b 75 | .9.s.....@FG.._^[ZY..].U..QRSV.u |
1180 | 0c 8b 06 8b 56 08 8b 5d 08 8d 4c 06 0c 29 c2 b8 03 00 00 00 cd 80 01 06 5e 5b 5a 59 89 ec 5d c3 | ....V..]..L..)..........^[ZY..]. |
11a0 | 68 ff 03 00 0a e8 2a f3 ff ff 81 c4 04 00 00 00 68 1b 04 00 0a e8 1a f3 ff ff 81 c4 04 00 00 00 | h.....*.........h............... |
11c0 | 68 a2 11 00 0a 68 ff 03 00 0a e8 4e f9 ff ff 81 c4 08 00 00 00 68 1b 04 00 0a 68 ff 03 00 0a e8 | h....h.....N.........h....h..... |
11e0 | dd fe ff ff 81 c4 08 00 00 00 68 a8 11 00 0a 68 02 00 00 00 50 e8 31 ef ff ff 81 c4 0c 00 00 00 | ..........h....h....P.1......... |
1200 | 68 ce 11 00 0a 68 e6 11 00 0a 68 1b 04 00 0a e8 41 fb ff ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a | h....h....h.....A..........h.... |
1220 | e8 af f2 ff ff 81 c4 04 00 00 00 68 1b 04 00 0a e8 9f f2 ff ff 81 c4 04 00 00 00 68 ec 11 00 0a | ...........h...............h.... |
1240 | 68 ff 03 00 0a e8 d3 f8 ff ff 81 c4 08 00 00 00 68 1b 04 00 0a 68 ff 03 00 0a e8 62 fe ff ff 81 | h...............h....h.....b.... |
1260 | c4 08 00 00 00 68 f1 11 00 0a 68 ff 03 00 0a e8 a9 f8 ff ff 81 c4 08 00 00 00 68 1b 04 00 0a 68 | .....h....h...............h....h |
1280 | ff 03 00 0a e8 38 fe ff ff 81 c4 08 00 00 00 68 f6 11 00 0a 68 13 12 00 0a 68 1b 04 00 0a e8 b2 | .....8.........h....h....h...... |
12a0 | fa ff ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a e8 20 f2 ff ff 81 c4 04 00 00 00 68 1b 04 00 0a e8 | ..........h...............h..... |
12c0 | 10 f2 ff ff 81 c4 04 00 00 00 68 19 12 00 0a 68 ff 03 00 0a e8 44 f8 ff ff 81 c4 08 00 00 00 68 | ..........h....h.....D.........h |
12e0 | 1b 04 00 0a 68 ff 03 00 0a e8 d3 fd ff ff 81 c4 08 00 00 00 68 1b 04 00 0a 68 ff 03 00 0a e8 be | ....h...............h....h...... |
1300 | fd ff ff 81 c4 08 00 00 00 68 1f 12 00 0a 68 00 00 00 00 50 e8 12 ee ff ff 81 c4 0c 00 00 00 c3 | .........h....h....P............ |
1320 | 55 89 e5 51 56 8b 75 08 8b 4e 08 3b 4e 04 7c 2d 8d 46 04 50 e8 9b f1 ff ff 81 c4 04 00 00 00 31 | U..QV.u..N.;N.|-.F.P...........1 |
1340 | c9 50 ff 36 e8 78 fd ff ff 81 c4 08 00 00 00 3d 00 00 00 00 75 07 b8 ff ff ff ff eb 09 31 c0 8a | .P.6.x.........=....u........1.. |
1360 | 44 0e 10 ff 46 08 5e 59 89 ec 5d c3 68 ff 03 00 0a e8 5e f1 ff ff 81 c4 04 00 00 00 68 4b 04 00 | D...F.^Y..].h.....^.........hK.. |
1380 | 0a e8 4e f1 ff ff 81 c4 04 00 00 00 68 49 12 00 0a 68 ff 03 00 0a e8 82 f7 ff ff 81 c4 08 00 00 | ..N.........hI...h.............. |
13a0 | 00 68 47 04 00 0a e8 75 ff ff ff 81 c4 04 00 00 00 68 4f 12 00 0a 68 41 00 00 00 50 e8 6a ed ff | .hG....u.........hO...hA...P.j.. |
13c0 | ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a e8 02 f1 ff ff 81 c4 04 00 00 00 68 4b 04 00 0a e8 f2 f0 | ........h...............hK...... |
13e0 | ff ff 81 c4 04 00 00 00 68 75 12 00 0a 68 ff 03 00 0a e8 26 f7 ff ff 81 c4 08 00 00 00 68 47 04 | ........hu...h.....&.........hG. |
1400 | 00 0a e8 19 ff ff ff 81 c4 04 00 00 00 68 47 04 00 0a e8 09 ff ff ff 81 c4 04 00 00 00 68 7b 12 | .............hG..............h{. |
1420 | 00 0a 68 62 00 00 00 50 e8 fe ec ff ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a e8 96 f0 ff ff 81 c4 | ..hb...P............h........... |
1440 | 04 00 00 00 68 4b 04 00 0a e8 86 f0 ff ff 81 c4 04 00 00 00 68 47 04 00 0a e8 c2 fe ff ff 81 c4 | ....hK..............hG.......... |
1460 | 04 00 00 00 68 a3 12 00 0a 68 ff ff ff ff 50 e8 b7 ec ff ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a | ....h....h....P............h.... |
1480 | e8 4f f0 ff ff 81 c4 04 00 00 00 68 4b 04 00 0a e8 3f f0 ff ff 81 c4 04 00 00 00 68 ce 12 00 0a | .O.........hK....?.........h.... |
14a0 | 68 ff 03 00 0a e8 73 f6 ff ff 81 c4 08 00 00 00 b8 47 04 00 0a c7 40 08 06 00 00 00 68 47 04 00 | h.....s..........G....@.....hG.. |
14c0 | 0a e8 5a fe ff ff 81 c4 04 00 00 00 68 da 12 00 0a 68 41 00 00 00 50 e8 4f ec ff ff 81 c4 0c 00 | ..Z.........h....hA...P.O....... |
14e0 | 00 00 c3 55 89 e5 81 7d 08 00 00 00 08 73 13 ff 75 0c ff 75 08 e8 46 00 00 00 81 c4 08 00 00 00 | ...U...}.....s..u..u..F......... |
1500 | eb 3a 50 56 57 8b 7d 08 8b 75 0c 8b 06 8d 44 06 0c 50 8b 46 04 8d 44 06 0c 50 8b 47 08 8d 44 07 | .:PVW.}..u....D..P.F..D..P.G..D. |
1520 | 0c 50 8b 07 8d 44 07 0c 50 e8 9b f5 ff ff 81 c4 10 00 00 00 01 07 01 46 04 5f 5e 58 89 ec 5d c3 | .P...D..P..............F._^X..]. |
1540 | 55 89 e5 50 51 52 53 56 57 8b 75 0c 8b 7e 04 8b 16 8b 5d 08 8d 4c 3e 0c 29 fa b8 04 00 00 00 cd | U..PQRSVW.u..~....]..L>.)....... |
1560 | 80 3d 00 00 00 00 0f 8c 0d 00 00 00 01 46 04 5f 5e 5b 5a 59 58 89 ec 5d c3 68 08 13 00 0a 68 02 | .=...........F._^[ZYX..].h....h. |
1580 | 00 00 00 e8 3f eb ff ff 81 c4 08 00 00 00 bb 01 00 00 00 b8 01 00 00 00 cd 80 68 ff 03 00 0a e8 | ....?.....................h..... |
15a0 | 30 ef ff ff 81 c4 04 00 00 00 68 7f 05 00 0a e8 20 ef ff ff 81 c4 04 00 00 00 68 33 13 00 0a 68 | 0.........h...............h3...h |
15c0 | 7f 05 00 0a e8 54 f5 ff ff 81 c4 08 00 00 00 68 7f 05 00 0a 68 ff 03 00 0a e8 05 ff ff ff 81 c4 | .....T.........h....h........... |
15e0 | 08 00 00 00 68 39 13 00 0a 68 59 13 00 0a 68 ff 03 00 0a e8 5d f7 ff ff 81 c4 0c 00 00 00 c3 68 | ....h9...hY...h.....]..........h |
1600 | ff 03 00 0a e8 cb ee ff ff 81 c4 04 00 00 00 68 7f 05 00 0a e8 bb ee ff ff 81 c4 04 00 00 00 68 | ...............h...............h |
1620 | 5f 13 00 0a 68 7f 05 00 0a e8 ef f4 ff ff 81 c4 08 00 00 00 68 7f 05 00 0a 68 ff 03 00 0a e8 a0 | _...h...............h....h...... |
1640 | fe ff ff 81 c4 08 00 00 00 68 64 13 00 0a 68 7f 05 00 0a e8 c5 f4 ff ff 81 c4 08 00 00 00 68 7f | .........hd...h...............h. |
1660 | 05 00 0a 68 ff 03 00 0a e8 76 fe ff ff 81 c4 08 00 00 00 68 69 13 00 0a 68 8a 13 00 0a 68 ff 03 | ...h.....v.........hi...h....h.. |
1680 | 00 0a e8 ce f6 ff ff 81 c4 0c 00 00 00 c3 55 89 e5 68 90 13 00 0a ff 75 0c e8 7f f4 ff ff 81 c4 | ..............U..h.....u........ |
16a0 | 08 00 00 00 ff 75 10 ff 75 0c e8 6e f4 ff ff 81 c4 08 00 00 00 68 73 03 00 0a ff 75 0c e8 5b f4 | .....u..u..n.........hs....u..[. |
16c0 | ff ff 81 c4 08 00 00 00 68 01 00 00 00 ff 75 08 e8 40 f9 ff ff 89 ec 5d c3 55 89 e5 51 57 8b 7d | ........h.....u..@.....].U..QW.} |
16e0 | 08 8b 4f 04 3b 4f 0c 7c 1d 57 e8 29 00 00 00 81 c4 04 00 00 00 8d 47 04 50 e8 d6 ed ff ff 81 c4 | ..O.;O.|.W.)..........G.P....... |
1700 | 04 00 00 00 31 c9 31 c0 8a 45 0c 88 44 0f 10 ff 47 04 5f 59 89 ec 5d c3 55 89 e5 50 51 8b 45 08 | ....1.1..E..D...G._Y..].U..PQ.E. |
1720 | 8d 48 04 51 ff 30 e8 b8 fd ff ff 81 c4 08 00 00 00 59 58 89 ec 5d c3 68 ff 03 00 0a e8 93 ed ff | .H.Q.0...........YX..].h........ |
1740 | ff 81 c4 04 00 00 00 68 4b 04 00 0a e8 83 ed ff ff 81 c4 04 00 00 00 68 41 00 00 00 68 47 04 00 | .......hK..............hA...hG.. |
1760 | 0a e8 73 ff ff ff 81 c4 08 00 00 00 68 47 04 00 0a e8 a2 ff ff ff 81 c4 04 00 00 00 68 9b 13 00 | ..s.........hG..............h... |
1780 | 0a 68 c2 13 00 0a 68 ff 03 00 0a e8 c5 f5 ff ff 81 c4 0c 00 00 00 c3 68 ff 03 00 0a e8 33 ed ff | .h....h................h.....3.. |
17a0 | ff 81 c4 04 00 00 00 68 4b 04 00 0a e8 23 ed ff ff 81 c4 04 00 00 00 68 c7 13 00 0a 68 4b 04 00 | .......hK....#.........h....hK.. |
17c0 | pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: #ffffcc }
.highlight .c { color: #888888 } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
.highlight .k { color: #008800; font-weight: bold } /* Keyword */
.highlight .ch { color: #888888 } /* Comment.Hashbang */
.highlight .cm { color: #888888 } /* Comment.Multiline */
.highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */
.highlight .cpf { color: #888888 } /* Comment.PreprocFile */
.highlight .c1 { color: #888888 } /* Comment.Single */
.highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #333333 } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #666666 } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008800 } /* Keyword.Pseudo */
.highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */
.highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */
.highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */
.highlight .na { color: #336699 } /* Name.Attribute */
.highlight .nb { color: #003388 } /* Name.Builtin */
.highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */
.highlight .no { color: #003366; font-weight: bold } /* Name.Constant */
.highlight .nd { color: #555555 } /* Name.Decorator */
.highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */
.highlight .nl { color: #336699; font-style: italic } /* Name.Label */
.highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */
.highlight .py { color: #336699; font-weight: bold } /* Name.Property */
.highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #336699 } /* Name.Variable */
.highlight .ow { color: #008800 } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */
.highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */
.highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */
.highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
.highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */
.highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */
.highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */
.highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */
.highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */
.highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */
.highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */
.highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */
.highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */
.highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */
.highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */
.highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */
.highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */
.highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */
.highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */
.highlight .vc { color: #336699 } /* Name.Variable.Class */
.highlight .vg { color: #dd7700 } /* Name.Variable.Global */
.highlight .vi { color: #3333bb } /* Name.Variable.Instance */
.highlight .vm { color: #336699 } /* Name.Variable.Magic */
.highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */# A table is like an array, except that you can index it with arbitrary types
# and not just non-negative whole numbers.
# incomplete; doesn't handle hash conflicts
scenario table-read-write [
local-scope
tab:&:table:num:num <- new-table 30
run [
put-index tab, 12, 34
60:num/raw, 61:bool/raw <- index tab, 12
]
memory-should-contain [
60 <- 34
61 <- 1 # found
]
]
scenario table-read-write-non-integer [
local-scope
tab:&:table:text:num <- new-table 30
run [
put-index tab, [abc def], 34
1:num/raw, 2:bool/raw <- index tab, [abc def]
]
memory-should-contain [
1 <- 34
2 <- 1 # found
]
]
scenario table-read-not-found [
local-scope
tab:&:table:text:num <- new-table 30
run [
1:num/raw, 2:bool/raw <- index tab, [abc def]
]
memory-should-contain [
1 <- 0
2 <- 0 # not found
]
]
container table:_key:_value [
length:num
capacity:num
data:&:@:table-row:_key:_value
]
container table-row:_key:_value [
occupied?:bool
key:_key
value:_value
]
def new-table capacity:num -> result:&:table:_key:_value [
local-scope
load-ingredients
result <- new {(table _key _value): type}
data:&:@:table-row:_key:_value <- new {(table-row _key _value): type}, capacity
*result <- merge 0/length, capacity, data
]
# todo: tag results as /required so that call-sites are forbidden from ignoring them
# then we could handle conflicts simply by resizing the table
def put-index table:&:table:_key:_value, key:_key, value:_value -> table:&:table:_key:_value [
local-scope
load-ingredients
hash:num <- hash key
hash <- abs hash
capacity:num <- get *table, capacity:offset
_, hash-key:num <- divide-with-remainder hash, capacity
hash-key <- abs hash-key # in case hash overflows from a double into a negative integer inside 'divide-with-remainder' above
table-data:&:@:table-row:_key:_value <- get *table, data:offset
x:table-row:_key:_value <- index *table-data, hash-key
occupied?:bool <- get x, occupied?:offset
not-occupied?:bool <- not occupied?:bool
assert not-occupied?, [can't handle collisions yet]
new-row:table-row:_key:_value <- merge 1/true, key, value
*table-data <- put-index *table-data, hash-key, new-row
]
def index table:&:table:_key:_value, key:_key -> result:_value, found?:bool [
local-scope
load-ingredients
hash:num <- hash key
hash <- abs hash
capacity:num <- get *table, capacity:offset
_, hash-key:num <- divide-with-remainder hash, capacity
hash-key <- abs hash-key # in case hash overflows from a double into a negative integer inside 'divide-with-remainder' above
table-data:&:@:table-row:_key:_value <- get *table, data:offset
x:table-row:_key:_value <- index *table-data, hash-key
empty:&:_value <- new _value:type
result <- copy *empty
found?:bool <- get x, occupied?:offset
return-unless found?
key2:_key <- get x, key:offset
found?:bool <- equal key, key2
return-unless found?
result <- get x, value:offset
]
def abs n:num -> result:num [
local-scope
load-ingredients
positive?:bool <- greater-or-equal n, 0
return-if positive?, n
result <- multiply n, -1
]
|