ofs | hex dump | ascii |
---|
0000 | 42 42 33 44 4e a1 00 00 01 00 00 00 42 52 55 53 2e 00 00 00 01 00 00 00 42 72 75 73 68 2e 30 30 | BB3DN.......BRUS........Brush.00 |
0020 | 31 00 00 00 80 3f 00 00 80 3f 00 00 80 3f 00 00 80 3f 00 00 00 00 01 00 00 00 00 00 00 00 ff ff | 1....?...?...?...?.............. |
0040 | ff ff 4e 4f 44 45 0c a1 00 00 64 74 72 61 63 6b 5f 73 77 72 63 72 5f 34 35 00 00 00 00 00 00 00 | ..NODE....dtrack_swrcr_45....... |
0060 | 00 bf 00 00 00 00 9d fa b4 3f 00 00 80 3f 9d fa b4 3f 15 ef c3 3e 00 00 00 00 5e 83 6c bf 00 00 | .........?...?...?...>....^.l... |
0080 | 00 00 4d 45 53 48 cc a0 00 00 ff ff ff ff 56 52 54 53 0c 88 00 00 01 00 00 00 01 00 00 00 02 00 | ..MESH........VRTS.............. |
00a0 | 00 00 a4 7c e1 3d 28 5c 0f 3e b2 4f 9e 3e 1c 41 8e 3d 67 65 33 3f 6b bf 35 3f a5 ff 00 3e 24 e4 | ...|.=(\.>.O.>.A.=ge3?k.5?...>$. |
00c0 | 04 3f 68 e0 bd 3d 28 5c 0f 3e d4 a8 90 3e 42 09 21 be 6e e1 36 3f 5d 8b 2e bf 4b 1f 37 3e 27 e4 | .?h..=(\.>...>B.!.n.6?]...K.7>'. |
00e0 | 04 3f 94 c1 1f 3e 28 5c 0f 3e a2 14 88 3e 68 e9 33 be 69 89 34 3f 60 d3 2f bf 4c 1f 37 3e 34 13 | .?...>(\.>...>h.3.i.4?`./.L.7>4. |
0100 | dd 3e 2e c8 38 3e 28 5c 0f 3e 1b c1 99 3e 4e 41 a7 3d 6b 93 35 3f 66 3d 33 3f a4 ff 00 3e 2e 13 | .>..8>(\.>...>NA.=k.5?f=3?...>.. |
0120 | dd 3e a8 1c 03 3d 28 5c 0f 3e d0 15 a1 3e 0c 01 86 3c 65 61 32 3f 6f 91 37 3f a7 ff 00 3e b1 3e | .>...=(\.>...>...<ea2?o.7?...>.> |
0140 | 1b 3f f0 bd ca 3c 28 5c 0f 3e 9c 84 97 3e ea 21 f5 bd 6d 5d 36 3f 62 07 31 bf 4a 1f 37 3e b3 3e | .?...<(\.>...>.!..m]6?b.1.J.7>.> |
0160 | 1b 3f 68 e0 bd 3d 28 5c 0f 3e d4 a8 90 3e 42 09 21 be 6e e1 36 3f 5d 8b 2e bf 4b 1f 37 3e 27 e4 | .?h..=(\.>...>B.!.n.6?]...K.7>'. |
0180 | 04 3f a4 7c e1 3d 28 5c 0f 3e b2 4f 9e 3e 1c 41 8e 3d 67 65 33 3f 6b bf 35 3f a5 ff 00 3e 24 e4 | .?.|.=(\.>.O.>.A.=ge3?k.5?...>$. |
01a0 | 04 3f 8e bc 84 bd c8 ba 22 3d f7 e9 9f 3e 13 95 09 bf 2c 2d 16 bf 36 15 1b 3f ca 00 96 3e 3c 99 | .?......"=...>....,-..6..?...><. |
01c0 | 31 3f a8 1c 03 3d c8 ba 22 3d d0 15 a1 3e 0c 01 86 3c 65 61 32 bf 6f 91 37 3f cb 00 96 3e af 3e | 1?...=.."=...>...<ea2.o.7?...>.> |
01e0 | 1b 3f f0 bd ca 3c c8 ba 22 3d 9c 84 97 3e ea 21 f5 bd 6d 5d 36 bf 62 07 31 bf e4 e1 75 3e b3 3e | .?...<.."=...>.!..m]6.b.1...u>.> |
0200 | 1b 3f 92 9c 85 bd c8 ba 22 3d 43 65 9e 3e 4f a5 27 bf 28 dd 13 bf f3 81 f9 be e0 e1 75 3e 40 99 | .?......"=Ce.>O.'.(.........u>@. |
0220 | 31 3f f0 bd ca 3c 28 5c 0f 3e 9c 84 97 3e ea 21 f5 bd 6d 5d 36 3f 62 07 31 bf 4a 1f 37 3e b3 3e | 1?...<(\.>...>.!..m]6?b.1.J.7>.> |
0240 | 1b 3f a8 1c 03 3d 28 5c 0f 3e d0 15 a1 3e 0c 01 86 3c 65 61 32 3f 6f 91 37 3f a7 ff 00 3e b1 3e | .?...=(\.>...>...<ea2?o.7?...>.> |
0260 | 1b 3f 8e bc 84 bd 28 5c 0f 3e f7 e9 9f 3e 13 95 09 bf 2c 2d 16 3f 36 15 1b 3f a9 ff 00 3e 3e 99 | .?....(\.>...>....,-.?6..?...>>. |
0280 | 31 3f 92 9c 85 bd 28 5c 0f 3e 43 65 9e 3e 4f a5 27 bf 28 dd 13 3f f3 81 f9 be 4a 1f 37 3e 40 99 | 1?....(\.>Ce.>O.'.(..?....J.7>@. |
02a0 | 31 3f 78 5c 9f 3e c8 ba 22 3d b4 b9 92 3e 02 09 01 3e 62 ef 30 bf 6c 2b 36 3f ce 00 96 3e fe a8 | 1?x\.>.."=...>...>b.0.l+6?...>.. |
02c0 | 83 3e 52 39 cf 3e c8 ba 22 3d 41 9e 86 3e b1 71 58 3e 64 1f 32 bf 5f b7 2f 3f cf 00 96 3e cc e7 | .>R9.>.."=A..>.qX>d.2._./?...>.. |
02e0 | 2d 3e c8 f9 c4 3e c8 ba 22 3d a2 15 54 3e d0 c9 67 be 6e 37 37 bf 52 21 29 bf f9 e1 75 3e d0 e7 | ->...>.."=..T>..g.n77.R!)...u>.. |
0300 | 2d 3e 60 a3 96 3e c8 ba 22 3d 40 f9 6f 3e 60 f9 2f be 6f 89 37 bf 5a f3 2c bf f5 e1 75 3e 02 a9 | ->`..>.."=@.o>`./.o.7.Z.,...u>.. |
0320 | 83 3e 60 69 7a 3e c8 ba 22 3d 63 3f 96 3e 2e 11 97 3d 6a 1f 35 bf 68 eb 33 3f ce 00 96 3e 16 5e | .>`iz>.."=c?.>...=j.5.h.3?...>.^ |
0340 | b0 3e 78 5c 9f 3e c8 ba 22 3d b4 b9 92 3e 02 09 01 3e 62 ef 30 bf 6c 2b 36 3f ce 00 96 3e fe a8 | .>x\.>.."=...>...>b.0.l+6?...>.. |
0360 | 83 3e 60 a3 96 3e c8 ba 22 3d 40 f9 6f 3e 60 f9 2f be 6f 89 37 bf 5a f3 2c bf f5 e1 75 3e 02 a9 | .>`..>.."=@.o>`./.o.7.Z.,...u>.. |
0380 | 83 3e 4c ca 64 3e c8 ba 22 3d 62 1c 7f 3e 44 c1 21 be 68 f9 33 bf 63 7f 31 bf f1 e1 75 3e 1c 5e | .>L.d>.."=b..>D.!.h.3.c.1...u>.^ |
03a0 | b0 3e 2e c8 38 3e c8 ba 22 3d 1b c1 99 3e 4e 41 a7 3d 6b 93 35 bf 66 3d 33 3f cd 00 96 3e 2e 13 | .>..8>.."=...>NA.=k.5.f=3?...>.. |
03c0 | dd 3e 60 69 7a 3e c8 ba 22 3d 63 3f 96 3e 2e 11 97 3d 6a 1f 35 bf 68 eb 33 3f ce 00 96 3e 16 5e | .>`iz>.."=c?.>...=j.5.h.3?...>.^ |
03e0 | b0 3e 4c ca 64 3e c8 ba 22 3d 62 1c 7f 3e 44 c1 21 be 68 f9 33 bf 63 7f 31 bf f1 e1 75 3e 1c 5e | .>L.d>.."=b..>D.!.h.3.c.1...u>.^ |
0400 | b0 3e 94 c1 1f 3e c8 ba 22 3d a2 14 88 3e 68 e9 33 be 69 89 34 bf 60 d3 2f bf ed e1 75 3e 34 13 | .>...>.."=...>h.3.i.4.`./...u>4. |
0420 | dd 3e a4 7c e1 3d c8 ba 22 3d b2 4f 9e 3e 1c 41 8e 3d 67 65 33 bf 6b bf 35 3f cc 00 96 3e 23 e4 | .>.|.=.."=.O.>.A.=ge3.k.5?...>#. |
0440 | 04 3f 2e c8 38 3e c8 ba 22 3d 1b c1 99 3e 4e 41 a7 3d 6b 93 35 bf 66 3d 33 3f cd 00 96 3e 2e 13 | .?..8>.."=...>NA.=k.5.f=3?...>.. |
0460 | dd 3e 94 c1 1f 3e c8 ba 22 3d a2 14 88 3e 68 e9 33 be 69 89 34 bf 60 d3 2f bf ed e1 75 3e 34 13 | .>...>.."=...>h.3.i.4.`./...u>4. |
0480 | dd 3e 68 e0 bd 3d c8 ba 22 3d d4 a8 90 3e 42 09 21 be 6e e1 36 bf 5d 8b 2e bf e8 e1 75 3e 27 e4 | .>h..=.."=...>B.!.n.6.].....u>'. |
04a0 | 04 3f a8 1c 03 3d c8 ba 22 3d d0 15 a1 3e 0c 01 86 3c 65 61 32 bf 6f 91 37 3f cb 00 96 3e af 3e | .?...=.."=...>...<ea2.o.7?...>.> |
04c0 | 1b 3f a4 7c e1 3d c8 ba 22 3d b2 4f 9e 3e 1c 41 8e 3d 67 65 33 bf 6b bf 35 3f cc 00 96 3e 23 e4 | .?.|.=.."=.O.>.A.=ge3.k.5?...>#. |
04e0 | 04 3f 68 e0 bd 3d c8 ba 22 3d d4 a8 90 3e 42 09 21 be 6e e1 36 bf 5d 8b 2e bf e8 e1 75 3e 27 e4 | .?h..=.."=...>B.!.n.6.].....u>'. |
0500 | 04 3f f0 bd ca 3c c8 ba 22 3d 9c 84 97 3e ea 21 f5 bd 6d 5d 36 bf 62 07 31 bf e4 e1 75 3e b3 3e | .?...<.."=...>.!..m]6.b.1...u>.> |
0520 | 1b 3f a8 1c 03 3d 28 5c 0f 3e d0 15 a1 3e 0c 01 86 3c 65 61 32 3f 6f 91 37 3f a7 ff 00 3e b1 3e | .?...=(\.>...>...<ea2?o.7?...>.> |
0540 | 1b 3f a8 1c 03 3d c8 ba 22 3d d0 15 a1 3e 0c 01 86 3c 65 61 32 bf 6f 91 37 3f f6 79 84 3d af 3e | .?...=.."=...>...<ea2.o.7?.y.=.> |
0560 | 1b 3f 8e bc 84 bd c8 ba 22 3d f7 e9 9f 3e 13 95 09 bf 2c 2d 16 bf 36 15 1b 3f f1 79 84 3d 3c 99 | .?......"=...>....,-..6..?.y.=<. |
0580 | 31 3f 8e bc 84 bd 28 5c 0f 3e f7 e9 9f 3e 13 95 09 bf 2c 2d 16 3f 36 15 1b 3f a9 ff 00 3e 3e 99 | 1?....(\.>...>....,-.?6..?...>>. |
05a0 | 31 3f c8 f9 c4 3e 28 5c 0f 3e a2 15 54 3e d0 c9 67 be 6e 37 37 3f 52 21 29 bf 4d 1f 37 3e d0 e7 | 1?...>(\.>..T>..g.n77?R!).M.7>.. |
05c0 | 2d 3e c8 f9 c4 3e c8 ba 22 3d a2 15 54 3e d0 c9 67 be 6e 37 37 bf 52 21 29 bf f9 e1 75 3e d0 e7 | ->...>.."=..T>..g.n77.R!)...u>.. |
05e0 | 2d 3e b4 20 f6 3e c8 ba 22 3d 56 31 2e 3e 5c d5 ad 3e 27 81 13 bf 7d 51 3e bf fd e1 75 3e 38 fb | ->...>.."=V1.>\..>'...}Q>...u>8. |
0600 | a8 3d b4 20 f6 3e 28 5c 0f 3e 56 31 2e 3e 5c d5 ad 3e 27 81 13 3f 7d 51 3e bf 4d 1f 37 3e 38 fb | .=...>(\.>V1.>\..>'..?}Q>.M.7>8. |
0620 | a8 3d 8e bc 84 bd 28 5c 0f 3e f7 e9 9f 3e 13 95 09 bf 2c 2d 16 3f 36 15 1b 3f a9 ff 00 3e 3e 99 | .=....(\.>...>....,-.?6..?...>>. |
0640 | 31 3f 8e bc 84 bd c8 ba 22 3d f7 e9 9f 3e 13 95 09 bf 2c 2d 16 bf 36 15 1b 3f f1 79 84 3d 3c 99 | 1?......"=...>....,-..6..?.y.=<. |
0660 | 31 3f 92 9c 85 bd c8 ba 22 3d 43 65 9e 3e 4f a5 27 bf 28 dd 13 bf f3 81 f9 be f1 79 84 3d 2a 21 | 1?......"=Ce.>O.'.(........y.=*! |
0680 | 3f 3f 92 9c 85 bd 28 5c 0f 3e 43 65 9e 3e 4f a5 27 bf 28 dd 13 3f f3 81 f9 be ac ff 00 3e 2a 21 | ??....(\.>Ce.>O.'.(..?.......>*! |
06a0 | 3f 3f 52 39 cf 3e 28 5c 0f 3e 41 9e 86 3e b1 71 58 3e 64 1f 32 3f 5f b7 2f 3f 9f ff 00 3e c8 e7 | ??R9.>(\.>A..>.qX>d.2?_./?...>.. |
06c0 | 2d 3e c8 f9 c4 3e 28 5c 0f 3e a2 15 54 3e d0 c9 67 be 6e 37 37 3f 52 21 29 bf 4d 1f 37 3e d0 e7 | ->...>(\.>..T>..g.n77?R!).M.7>.. |
06e0 | 2d 3e b4 20 f6 3e 28 5c 0f 3e 56 31 2e 3e 5c d5 ad 3e 27 81 13 3f 7d 51 3e bf 4d 1f 37 3e 38 fb | ->...>(\.>V1.>\..>'..?}Q>.M.7>8. |
0700 | a8 3d fa 5f 00 3f 28 5c 0f 3e 40 1b 69 3e 7b 4d 3d 3f 28 d9 13 3f 62 11 b1 3e 9e ff 00 3e 28 fb | .=._.?(\.>@.i>{M=?(..?b..>...>(. |
0720 | a8 3d b4 20 f6 3e 28 5c 0f 3e 56 31 2e 3e 5c d5 ad 3e 27 81 13 3f 7d 51 3e bf 9a ff 00 3e e0 ef | .=...>(\.>V1.>\..>'..?}Q>....>.. |
0740 | f2 3c b4 20 f6 3e c8 ba 22 3d 56 31 2e 3e 5c d5 ad 3e 27 81 13 bf 7d 51 3e bf 0e 7a 84 3d e0 ef | .<...>.."=V1.>\..>'...}Q>..z.=.. |
0760 | f2 3c fa 5f 00 3f c8 ba 22 3d 40 1b 69 3e 7b 4d 3d 3f 28 d9 13 bf 62 11 b1 3e 15 7a 84 3d 28 fb | .<._.?.."=@.i>{M=?(...b..>.z.=(. |
0780 | a8 3d fa 5f 00 3f 28 5c 0f 3e 40 1b 69 3e 7b 4d 3d 3f 28 d9 13 3f 62 11 b1 3e 9e ff 00 3e 28 fb | .=._.?(\.>@.i>{M=?(..?b..>...>(. |
07a0 | a8 3d 52 39 cf 3e c8 ba 22 3d 41 9e 86 3e b1 71 58 3e 64 1f 32 bf 5f b7 2f 3f cf 00 96 3e cc e7 | .=R9.>.."=A..>.qX>d.2._./?...>.. |
07c0 | 2d 3e fa 5f 00 3f c8 ba 22 3d 40 1b 69 3e 7b 4d 3d 3f 28 d9 13 bf 62 11 b1 3e d0 00 96 3e 38 fb | ->._.?.."=@.i>{M=?(...b..>...>8. |
07e0 | a8 3d b4 20 f6 3e c8 ba 22 3d 56 31 2e 3e 5c d5 ad 3e 27 81 13 bf 7d 51 3e bf fd e1 75 3e 38 fb | .=...>.."=V1.>\..>'...}Q>...u>8. |
0800 | a8 3d c8 f9 c4 3e c8 ba 22 3d a2 15 54 3e d0 c9 67 be 6e 37 37 bf 52 21 29 bf f9 e1 75 3e d0 e7 | .=...>.."=..T>..g.n77.R!)...u>.. |
0820 | 2d 3e 2e c8 38 3e 28 5c 0f 3e 1b c1 99 3e 4e 41 a7 3d 6b 93 35 3f 66 3d 33 3f a4 ff 00 3e 2e 13 | ->..8>(\.>...>NA.=k.5?f=3?...>.. |
0840 | dd 3e 94 c1 1f 3e 28 5c 0f 3e a2 14 88 3e 68 e9 33 be 69 89 34 3f 60 d3 2f bf 4c 1f 37 3e 34 13 | .>...>(\.>...>h.3.i.4?`./.L.7>4. |
0860 | dd 3e 4c ca 64 3e 28 5c 0f 3e 62 1c 7f 3e 44 c1 21 be 68 f9 33 3f 63 7f 31 bf 4c 1f 37 3e 1c 5e | .>L.d>(\.>b..>D.!.h.3?c.1.L.7>.^ |
0880 | b0 3e 60 69 7a 3e 28 5c 0f 3e 63 3f 96 3e 2e 11 97 3d 6a 1f 35 3f 68 eb 33 3f a2 ff 00 3e 14 5e | .>`iz>(\.>c?.>...=j.5?h.3?...>.^ |
08a0 | b0 3e 60 69 7a 3e 28 5c 0f 3e 63 3f 96 3e 2e 11 97 3d 6a 1f 35 3f 68 eb 33 3f a2 ff 00 3e 14 5e | .>`iz>(\.>c?.>...=j.5?h.3?...>.^ |
08c0 | b0 3e 4c ca 64 3e 28 5c 0f 3e 62 1c 7f 3e 44 c1 21 be 68 f9 33 3f 63 7f 31 bf 4c 1f 37 3e 1c 5e | .>L.d>(\.>b..>D.!.h.3?c.1.L.7>.^ |
08e0 | .>`..>(\.>@.o>`./.o.7?Z.,.L.7>.. |
0960 | 83 3e c8 f9 c4 3e 28 5c 0f 3e a2 15 54 3e d0 c9 67 be 6e 37 37 3f 52 21 29 bf 4d 1f 37 3e d0 e7 | .>...>(\.>..T>..g.n77?R!).M.7>.. |
0980 | 2d 3e 52 39 cf 3e 28 5c 0f 3e 41 9e 86 3e b1 71 58 3e 64 1f 32 3f 5f b7 2f 3f 9f ff 00 3e c8 e7 | ->R9.>(\.>A..>.qX>d.2?_./?...>.. |
09a0 | 2d 3e f0 bd ca 3c c8 ba 22 3d 9c 84 97 3e ea 21 f5 bd 6d 5d 36 bf 62 07 31 bf e4 e1 75 3e b3 3e | ->...<.."=...>.!..m]6.b.1...u>.> |
09c0 | 1b 3f f0 bd ca 3c 28 5c 0f 3e 9c 84 97 3e ea 21 f5 bd 6d 5d 36 3f 62 07 31 bf 4a 1f 37 3e b3 3e | .?...<(\.>...>.!..m]6?b.1.J.7>.> |
09e0 | 1b 3f 92 9c 85 bd 28 5c 0f 3e 43 65 9e 3e 4f a5 27 bf 28 dd 13 3f f3 81 f9 be 4a 1f 37 3e 40 99 | .?....(\.>Ce.>O.'.(..?....J.7>@. |
0a00 | 31 3f 92 9c 85 bd c8 ba 22 3d 43 65 9e 3e 4f a5 27 bf 28 dd 13 bf f3 81 f9 be e0 e1 75 3e 40 99 | 1?......"=Ce.>O.'.(.........u>@. |
0a20 | 31 3f f0 bd ca 3c 28 5c 0f 3e 9c 84 97 3e ea 21 f5 bd 6d 5d 36 3f 62 07 31 bf 4a 1f 37 3e b3 3e | 1?...<(\.>...>.!..m]6?b.1.J.7>.> |
0a40 | 1b 3f f0 bd ca 3c c8 ba 22 3d 9c 84 97 3e ea 21 f5 bd 6d 5d 36 bf 62 07 31 bf e4 e1 75 3e b3 3e | .?...<.."=...>.!..m]6.b.1...u>.> |
0a60 | 1b 3f 68 e0 bd 3d c8 ba 22 3d d4 a8 90 3e 42 09 21 be 6e e1 36 bf 5d 8b 2e bf e8 e1 75 3e 27 e4 | .?h..=.."=...>B.!.n.6.].....u>'. |
0a80 | 04 3f 68 e0 bd 3d 28 5c 0f 3e d4 a8 90 3e 42 09 21 be 6e e1 36 3f 5d 8b 2e bf 4b 1f 37 3e 27 e4 | .?h..=(\.>...>B.!.n.6?]...K.7>'. |
0aa0 | 04 3f 68 e0 bd 3d 28 5c 0f 3e d4 a8 90 3e 42 09 21 be 6e e1 36 3f 5d 8b 2e bf 4b 1f 37 3e 27 e4 | .?h..=(\.>...>B.!.n.6?]...K.7>'. |
0ac0 | 04 3f 68 e0 bd 3d c8 ba 22 3d d4 a8 90 3e 42 09 21 be 6e e1 36 bf 5d 8b 2e bf e8 e1 75 3e 27 e4 | .?h..=.."=...>B.!.n.6.].....u>'. |
0ae0 | 04 3f 94 c1 1f 3e c8 ba 22 3d a2 14 88 3e 68 e9 33 be 69 89 34 bf 60 d3 2f bf ed e1 75 3e 34 13 | .?...>.."=...>h.3.i.4.`./...u>4. |
0b00 | dd 3e 94 c1 1f 3e 28 5c 0f 3e a2 14 88 3e 68 e9 33 be 69 89 34 3f 60 d3 2f bf 4c 1f 37 3e 34 13 | .>...>(\.>...>h.3.i.4?`./.L.7>4. |
0b20 | dd 3e 94 c1 1f 3e 28 5c 0f 3e a2 14 88 3e 68 e9 33 be 69 89 34 3f 60 d3 2f bf 4c 1f 37 3e 34 13 | .>...>(\.>...>h.3.i.4?`./.L.7>4. |
0b40 | dd 3e 94 c1 1f 3e c8 ba 22 3d a2 14 88 3e 68 e9 33 be 69 89 34 bf 60 d3 2f bf ed e1 75 3e 34 13 | .>...>.."=...>h.3.i.4.`./...u>4. |
0b60 | dd 3e 4c ca 64 3e c8 ba 22 3d 62 1c 7f 3e 44 c1 21 be 68 f9 33 bf 63 7f 31 bf f1 e1 75 3e 1c 5e | .>L.d>.."=b..>D.!.h.3.c.1...u>.^ |
0b80 | b0 3e 4c ca 64 3e 28 5c 0f 3e 62 1c 7f 3e 44 c1 21 be 68 f9 33 3f 63 7f 31 bf 4c 1f 37 3e 1c 5e | .>L.d>(\.>b..>D.!.h.3?c.1.L.7>.^ |
0ba0 | b0 3e 4c ca 64 3e 28 5c 0f 3e 62 1c 7f 3e 44 c1 21 be 68 f9 33 3f 63 7f 31 bf 4c 1f 37 3e 1c 5e | .>L.d>(\.>b..>D.!.h.3?c.1.L.7>.^ |
0bc0 | b0 3e 4c ca 64 3e c8 ba 22 3d 62 1c 7f 3e 44 c1 21 be 68 f9 33 bf 63 7f 31 bf f1 e1 75 3e 1c 5e | .>L.d>.."=b..>D.!.h.3.c.1...u>.^ |
0be0 | b0 3e 60 a3 96 3e c8 ba 22 3d 40 f9 6f 3e 60 f9 2f be 6f 89 37 bf 5a f3 2c bf f5 e1 75 3e 02 a9 | .>`..>.."=@.o>`./.o.7.Z.,...u>.. |
0c00 | 83 3e 60 a3 96 3e 28 5c 0f 3e 40 f9 6f 3e 60 f9 2f be 6f 89 37 3f 5a f3 2c bf 4c 1f 37 3e 02 a9 | .>`..>(\.>@.o>`./.o.7?Z.,.L.7>.. |
0c20 | 83 3e 60 a3 96 3e 28 5c 0f 3e 40 f9 6f 3e 60 f9 2f be 6f 89 37 3f 5a f3 2c bf 4c 1f 37 3e 02 a9 | .>`..>(\.>@.o>`./.o.7?Z.,.L.7>.. |
0c40 | 83 3e 60 a3 96 3e c8 ba 22 3d 40 f9 6f 3e 60 f9 2f be 6f 89 37 bf 5a f3 2c bf f5 e1 75 3e 02 a9 | .>`..>.."=@.o>`./.o.7.Z.,...u>.. |
0c60 | 83 3e c8 f9 c4 3e c8 ba 22 3d a2 15 54 3e d0 c9 67 be 6e 37 37 bf 52 21 29 bf f9 e1 75 3e d0 e7 | .>...>.."=..T>..g.n77.R!)...u>.. |
0c80 | 2d 3e c8 f9 c4 3e 28 5c 0f 3e a2 15 54 3e d0 c9 67 be 6e 37 37 3f 52 21 29 bf 4d 1f 37 3e d0 e7 | ->...>(\.>..T>..g.n77?R!).M.7>.. |
0ca0 | 2d 3e fa 5f 00 3f 28 5c 0f 3e 40 1b 69 3e 7b 4d 3d 3f 28 d9 13 3f 62 11 b1 3e 9e ff 00 3e 28 fb | ->._.?(\.>@.i>{M=?(..?b..>...>(. |
0cc0 | a8 3d fa 5f 00 3f c8 ba 22 3d 40 1b 69 3e 7b 4d 3d 3f 28 d9 13 bf 62 11 b1 3e 15 7a 84 3d 28 fb | .=._.?.."=@.i>{M=?(...b..>.z.=(. |
0ce0 | <
sub = string.sub,
find = safe_string_find,
},
math = {
abs = math.abs,
acos = math.acos,
asin = math.asin,
atan = math.atan,
atan2 = math.atan2,
ceil = math.ceil,
cos = math.cos,
cosh = math.cosh,
deg = math.deg,
exp = math.exp,
floor = math.floor,
fmod = math.fmod,
frexp = math.frexp,
huge = math.huge,
ldexp = math.ldexp,
log = math.log,
log10 = math.log10,
max = math.max,
min = math.min,
modf = math.modf,
pi = math.pi,
pow = math.pow,
rad = math.rad,
random = math.random,
sin = math.sin,
sinh = math.sinh,
sqrt = math.sqrt,
tan = math.tan,
tanh = math.tanh,
},
table = {
concat = table.concat,
insert = table.insert,
maxn = table.maxn,
remove = table.remove,
sort = table.sort,
},
os = {
clock = os.clock,
difftime = os.difftime,
time = os.time,
date = safe_date,
},
POS = function(x,y,z) return {x=x, y=y, z=z} end,
getstate = advtrains.getstate,
setstate = advtrains.setstate,
is_passive = advtrains.is_passive,
--interrupts are handled per node, position unknown. (same goes for digilines)
--however external interrupts can be set here.
interrupt_pos = function(parpos, imesg)
local pos=atlatc.pcnaming.resolve_pos(parpos)
atlatc.interrupt.add(0, pos, {type="ext_int", ext_int=true, message=imesg})
end,
-- sends an atc command to train regardless of where it is in the world
atc_send_to_train = function(train_id, command)
assertt(command, "string")
local train = advtrains.trains[train_id]
if train then
advtrains.atc.train_set_command(train, command, true)
return true
else
return false
end
end,
}
-- If interlocking is present, enable route setting functions
if advtrains.interlocking then
local function gen_checks(signal, route_name, noroutesearch)
assertt(route_name, "string")
local pos = atlatc.pcnaming.resolve_pos(signal)
local sigd = advtrains.interlocking.db.get_sigd_for_signal(pos)
if not sigd then
error("There's no signal at "..minetest.pos_to_string(pos))
end
local tcbs = advtrains.interlocking.db.get_tcbs(sigd)
if not tcbs then
error("Inconsistent configuration, no tcbs for signal at "..minetest.pos_to_string(pos))
end
local routeid, route
if not noroutesearch then
for routeidt, routet in ipairs(tcbs.routes) do
if routet.name == route_name then
routeid = routeidt
route = routet
break
end
end
if not route then
error("No route called "..route_name.." at "..minetest.pos_to_string(pos))
end
end
return pos, sigd, tcbs, routeid, route
end
static_env.can_set_route = function(signal, route_name)
local pos, sigd, tcbs, routeid, route = gen_checks(signal, route_name)
-- if route is already set on signal, return whether it's committed
if tcbs.routeset == routeid then
return tcbs.route_committed
end
-- actually try setting route (parameter 'true' designates try-run
local ok = advtrains.interlocking.route.set_route(sigd, route, true)
return ok
end
static_env.set_route = function(signal, route_name)
local pos, sigd, tcbs, routeid, route = gen_checks(signal, route_name)
return advtrains.interlocking.route.update_route(sigd, tcbs, routeid)
end
static_env.cancel_route = function(signal)
local pos, sigd, tcbs, routeid, route = gen_checks(signal, "", true)
return advtrains.interlocking.route.update_route(sigd, tcbs, nil, true)
end
static_env.get_aspect = function(signal.=...>.."=....%..?(...*....z.=(. |
1680 | a8 3d 02 1e 00 3f c8 ba 22 3d c1 56 a0 be 2a ed 14 3f 28 cd 13 bf 25 a9 12 3f 0e 7a 84 3d e0 ef | .=...?.."=.V..*..?(...%..?.z.=.. |
16a0 | f2 3c d8 43 cc 3e c8 ba 22 3d 66 41 bf be fe c1 fe bc 66 f9 32 bf 6e dd 36 bf cf 00 96 3e cc e7 | .<.C.>.."=fA......f.2.n.6....>.. |
16c0 | 2d 3e 2f 81 cc 3e c8 ba 22 3d 66 f1 9f be b3 81 59 3c 6b a9 35 bf 69 55 34 3f f9 e1 75 3e d0 e7 | ->/..>.."=f.....Y<k.5.iU4?..u>.. |
16e0 | 2d 3e 02 1e 00 3f c8 ba 22 3d c1 56 a0 be 2a ed 14 3f 28 cd 13 bf 25 a9 12 3f fd e1 75 3e 38 fb | ->...?.."=.V..*..?(...%..?..u>8. |
1700 | a8 3d ac fe ff 3e c8 ba 22 3d c5 a6 bf be 25 a9 12 3f 28 cd 13 bf 2a ed 14 bf d0 00 96 3e 38 fb | .=...>.."=....%..?(...*......>8. |
1720 | a8 3d 14 df d7 3d 08 25 10 3e d7 f2 a9 be 3e c1 1e be 65 4d 32 3f 67 59 33 bf a4 ff 00 3e 2e 13 | .=...=.%.>....>...eM2?gY3....>.. |
1740 | dd 3e 5a ff 4e 3e 4e 71 0f 3e 51 7a b4 be ed 91 f6 bd 64 33 32 3f 6a 2f 35 bf a2 ff 00 3e 14 5e | .>Z.N>Nq.>Qz......d32?j/5....>.^ |
1760 | b0 3e 68 8b 48 3e f8 b0 0f 3e 0b d2 9a be 5c e1 ad 3d 71 43 38 3f 61 5f 30 3f 4c 1f 37 3e 1c 5e | .>h.H>...>....\..=qC8?a_0?L.7>.^ |
1780 | b0 3e aa 13 bf 3d 04 14 11 3e 28 5f 92 be 16 11 0b 3e 70 25 38 3f 5d 65 2e 3f 4c 1f 37 3e 34 13 | .>...=...>(_.....>p%8?]e.?L.7>4. |
17a0 | dd 3e 5a ff 4e 3e 4e 71 0f 3e 51 7a b4 be ed 91 f6 bd 64 33 32 3f 6a 2f 35 bf a2 ff 00 3e 14 5e | .>Z.N>Nq.>Qz......d32?j/5....>.^ |
17c0 | b0 3e 63 c6 97 3e 28 5c 0f 3e 30 14 bb be 38 01 9c bd 67 45 33 3f 6b b1 35 bf a0 ff 00 3e fc a8 | .>c..>(\.>0...8...gE3?k.5....>.. |
adj_diff = atlrwt.adj_diff,
adjust_cycle = atlrwt.adjust_cycle,
adjust = atlrwt.adjust,
to_string = atlrwt.to_string,
get_time_until = atlrwt.get_time_until,
next_rpt = atlrwt.next_rpt,
last_rpt = atlrwt.last_rpt,
time_from_last_rpt = atlrwt.time_from_last_rpt,
time_to_next_rpt = atlrwt.time_to_next_rpt,
}
end
for _, name in pairs(safe_globals) do
static_env[name] = _G[name]
end
--The environment all code calls get is a table that has set static_env as metatable.
--In general, every variable is local to a single code chunk, but kept persistent over code re-runs. Data is also saved, but functions and userdata and circular references are removed
--Init code and step code's environments are not saved
-- S - Table that can contain any save data global to the environment. Will be saved statically. Can't contain functions or userdata or circular references.
-- F - Table global to the environment, can contain volatile data that is deleted when server quits.
-- The init code should populate this table with functions and other definitions.
local proxy_env={}
--proxy_env gets a new metatable in every run, but is the shared environment of all functions ever defined.
-- returns: true, fenv if successful; nil, error if error
function env_proto:execute_code(localenv, code, evtdata, customfct)
-- create us a print function specific for this environment
if not self.safe_print_func then
local myenv = self
self.safe_print_func = function(...)
myenv:log("info", ...)
end
end
local metatbl ={
__index = function(t, i)
if i=="S" then
return self.sdata
elseif i=="F" then
return self.fdata
elseif i=="event" then
return evtdata
elseif customfct and customfct[i] then
return customfct[i]
elseif localenv and localenv[i] then
return localenv[i]
elseif i=="print" then
return self.safe_print_func
end
return static_env[i]
end,
__newindex = function(t, i, v)
if i=="S" or i=="F" or i=="event" or (customfct and customfct[i]) or static_env[i] then
debug.sethook()
error("Trying to overwrite environment contents")
end
localenv[i]=v
end,
}
setmetatable(proxy_env, metatbl)
local fun, err=loadstring(code)
if not fun then
return false, err
end
setfenv(fun, proxy_env)
local succ, data = pcall(fun)
if succ then
data=localenv
end
return succ, data
end
function env_proto:run_initcode()
if self.init_code and self.init_code~="" then
local old_fdata=self.fdata
self.fdata = {}
--atprint("[atlatc]Running initialization code for environment '"..self.name.."'")
local succ, err = self:execute_code({}, self.init_code, {type="init", init=true})
if not succ then
self:log("error", "Executing InitCode for '"..self.name.."' failed:"..err)
self | .>0..=P.%=....Z.-.k.5.^;/..z.=,. |
1d80 | dd 3e 50 04 4f 3e b0 18 23 3d ad 6f b4 be 03 b9 01 be 67 8f 33
self:log("warning", "The 'F' table has been restored to the previous state.")
end
end
end
end
-- log to environment subscribers. severity can be "error", "warning" or "info" (used by internal print)
function env_proto:log(severity, ...)
local text=advtrains.print_concat_table({"[atlatc "..self.name.." "..severity.."]", ...})
minetest.log("action", text)
for _, pname in ipairs(self.subscribers) do
minetest.chat_send_player(pname, text)
end
end
-- env.subscribers table may be directly altered by callers.
--- class interface
function atlatc.env_new(name)
local newenv={
name=name,
init_code="",
sdata={},
subscribers={},
}
setmetatable(newenv, {__index=env_proto})
return newenv
end
function atlatc.env_load(name, data)
local newenv={}
setmetatable(newenv, {__index=env_proto})
newenv:load(name, data)
return newenv
end
function atlatc.run_initcode()
for envname, env in pairs(atlatc.envs) do
env:run_initcode()
end
end
|