| ofs | hex dump | ascii |
|---|
| 0000 | 68 74 2d 32 30 32 33 30 37 30 33 2e 35 35 38 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ht-20230703.558/................ |
| 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 00 00 00 00 | ................................ |
| 0040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0060 | 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000755.0000000.0000000.0000 |
| 0080 | 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 31 33 34 36 00 20 35 00 00 00 | 0000000.00000000000.011346..5... |
| 00a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 00c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 00e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0100 | 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .ustar...root................... |
| 0120 | 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........root................... |
| 0140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01c0 | 00 00 00 00 00 00 00 00 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 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0200 | 68 74 2d 32 30 32 33 30 37 30 33 2e 35 35 38 2f 68 74 2d 70 6b 67 2e 65 6c 00 00 00 00 00 00 00 | ht-20230703.558/ht-pkg.el....... |
| 0220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0260 | 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000644.0000000.0000000.0000 |
| 0280 | 30 30 30 30 36 34 37 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 30 37 31 00 20 30 00 00 00 | 0000647.00000000000.013071..0... |
| 02a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 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 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .ustar...root................... |
| 0320 | 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........root................... |
| 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 | 28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 65 20 22 68 74 22 20 22 32 30 32 33 30 37 30 33 2e 35 | (define-package."ht"."20230703.5 |
| 0420 | 35 38 22 20 22 54 68 65 20 6d 69 73 73 69 6e 67 20 68 61 73 68 20 74 61 62 6c 65 20 6c 69 62 72 | 58"."The.missing.hash.table.libr |
| 0440 | 61 72 79 20 66 6f 72 20 45 6d 61 63 73 22 0a 20 20 27 28 28 64 61 73 68 20 22 32 2e 31 32 2e 30 | ary.for.Emacs"...'((dash."2.12.0 |
| 0460 | 22 29 29 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 31 63 34 39 61 61 64 31 63 38 32 30 63 38 36 66 37 | "))...:commit."1c49aad1c820c86f7 |
| 0480 | 65 65 33 35 62 66 39 66 66 66 38 34 32 39 35 30 32 66 36 30 66 65 66 22 20 3a 61 75 74 68 6f 72 | ee35bf9fff8429502f60fef".:author |
| 04a0 | 73 0a 20 20 27 28 28 22 57 69 6c 66 72 65 64 20 48 75 67 68 65 73 22 20 2e 20 22 6d 65 40 77 69 | s...'(("Wilfred.Hughes"..."me@wi |
| 04c0 | 6c 66 72 65 64 2e 6d 65 2e 75 6b 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 0a 20 20 | lfred.me.uk"))...:maintainers... |
| 04e0 | 27 28 28 22 57 69 6c 66 72 65 64 20 48 75 67 68 65 73 22 20 2e 20 22 6d 65 40 77 69 6c 66 72 65 | '(("Wilfred.Hughes"..."me@wilfre |
| 0500 | 64 2e 6d 65 2e 75 6b 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 0a 20 20 27 28 22 57 69 | d.me.uk"))...:maintainer...'("Wi |
| 0520 | 6c 66 72 65 64 20 48 75 67 68 65 73 22 20 2e 20 22 6d 65 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 | lfred.Hughes"..."me@wilfred.me.u |
| 0540 | 6b 22 29 0a 20 20 3a 6b 65 79 77 6f 72 64 73 0a 20 20 27 28 22 68 61 73 68 20 74 61 62 6c 65 22 | k")...:keywords...'("hash.table" |
| 0560 | 20 22 68 61 73 68 20 6d 61 70 22 20 22 68 61 73 68 22 29 29 0a 3b 3b 20 4c 6f 63 61 6c 20 56 61 | ."hash.map"."hash")).;;.Local.Va |
| 0580 | 72 69 61 62 6c 65 73 3a 0a 3b 3b 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 0a 3b | riables:.;;.no-byte-compile:.t.; |
| 05a0 | 3b 20 45 6e 64 3a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ;.End:.......................... |
| 05c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 05e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0600 | 68 74 2d 32 30 32 33 30 37 30 33 2e 35 35 38 2f 68 74 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 | ht-20230703.558/ht.el........... |
| 0620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0660 | 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000644.0000000.0000000.0000 |
| 0680 | 30 30 32 35 35 35 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 32 33 31 37 00 20 30 00 00 00 | 0025555.00000000000.012317..0... |
| 06a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 06c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 06e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0700 | 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .ustar...root................... |
| 0720 | 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........root................... |
| 0740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 07a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 07c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 07e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0800 | 3b 3b 3b 20 68 74 2e 65 6c 20 2d 2d 2d 20 54 68 65 20 6d 69 73 73 69 6e 67 20 68 61 73 68 20 74 | ;;;.ht.el.---.The.missing.hash.t |
| 0820 | 61 62 6c 65 20 6c 69 62 72 61 72 79 20 66 6f 72 20 45 6d 61 63 73 20 20 2d 2a 2d 20 6c 65 78 69 | able.library.for.Emacs..-*-.lexi |
| 0840 | 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 | cal-binding:.t;.-*-..;;.Copyrigh |
| 0860 | 74 20 28 43 29 20 32 30 31 33 20 57 69 6c 66 72 65 64 20 48 75 67 68 65 73 0a 0a 3b 3b 20 41 75 | t.(C).2013.Wilfred.Hughes..;;.Au |
| 0880 | 74 68 6f 72 3a 20 57 69 6c 66 72 65 64 20 48 75 67 68 65 73 20 3c 6d 65 40 77 69 6c 66 72 65 64 | thor:.Wilfred.Hughes.<me@wilfred |
| 08a0 | 2e 6d 65 2e 75 6b 3e 0a 3b 3b 20 56 65 72 73 69 6f 6e 3a 20 32 2e 34 0a 3b 3b 20 4b 65 79 77 6f | .me.uk>.;;.Version:.2.4.;;.Keywo |
| 08c0 | 72 64 73 3a 20 68 61 73 68 20 74 61 62 6c 65 2c 20 68 61 73 68 20 6d 61 70 2c 20 68 61 73 68 0a | rds:.hash.table,.hash.map,.hash. |
| 08e0 | 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28 64 61 73 68 20 22 32 2e 31 | ;;.Package-Requires:.((dash."2.1 |
| 0900 | 32 2e 30 22 29 29 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 | 2.0"))..;;.This.program.is.free. |
| 0920 | 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 |
| 0940 | 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 | t.and/or.modify.;;.it.under.the. |
| 0960 | 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 | terms.of.the.GNU.General.Public. |
| 0980 | 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 | License.as.published.by.;;.the.F |
| 09a0 | 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 | ree.Software.Foundation,.either. |
| 09c0 | 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 | version.3.of.the.License,.or.;;. |
| 09e0 | 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 | (at.your.option).any.later.versi |
| 0a00 | 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 | on...;;.This.program.is.distribu |
| 0a20 | 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 | ted.in.the.hope.that.it.will.be. |
| 0a40 | 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 | useful,.;;.but.WITHOUT.ANY.WARRA |
| 0a60 | 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 | NTY;.without.even.the.implied.wa |
| 0a80 | 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 | rranty.of.;;.MERCHANTABILITY.or. |
| 0aa0 | 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 | FITNESS.FOR.A.PARTICULAR.PURPOSE |
| 0ac0 | 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 | ...See.the.;;.GNU.General.Public |
| 0ae0 | 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 | .License.for.more.details...;;.Y |
| 0b00 | 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f | ou.should.have.received.a.copy.o |
| 0b20 | 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 | f.the.GNU.General.Public.License |
| 0b40 | 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 | .;;.along.with.this.program...If |
| 0b60 | 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 | .not,.see.<http://www.gnu.org/li |
| 0b80 | 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 | censes/>...;;;.Commentary:..;;.T |
| 0ba0 | 68 65 20 6d 69 73 73 69 6e 67 20 68 61 73 68 20 74 61 62 6c 65 20 6c 69 62 72 61 72 79 20 66 6f | he.missing.hash.table.library.fo |
| 0bc0 | 72 20 45 6d 61 63 73 2e 0a 3b 3b 0a 3b 3b 20 53 65 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | r.Emacs..;;.;;.See.documentation |
| 0be0 | 20 61 74 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 57 69 6c 66 72 65 64 2f 68 | .at.https://github.com/Wilfred/h |
| 0c00 | 74 2e 65 6c 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 64 61 73 68 29 | t.el..;;;.Code:..(require.'dash) |
| 0c20 | 0a 28 72 65 71 75 69 72 65 20 27 67 76 29 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c | .(require.'gv).(eval-when-compil |
| 0c40 | 65 0a 20 20 28 72 65 71 75 69 72 65 20 27 69 6e 6c 69 6e 65 29 29 0a 0a 28 64 65 66 6d 61 63 72 | e...(require.'inline))..(defmacr |
| 0c60 | 6f 20 68 74 20 28 26 72 65 73 74 20 70 61 69 72 73 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 68 | o.ht.(&rest.pairs)..."Create.a.h |
| 0c80 | 61 73 68 20 74 61 62 6c 65 20 77 69 74 68 20 74 68 65 20 6b 65 79 2d 76 61 6c 75 65 20 70 61 69 | ash.table.with.the.key-value.pai |
| 0ca0 | 72 73 20 67 69 76 65 6e 2e 0a 4b 65 79 73 20 61 72 65 20 63 6f 6d 70 61 72 65 64 20 77 69 74 68 | rs.given..Keys.are.compared.with |
| 0cc0 | 20 60 65 71 75 61 6c 27 2e 0a 0a 5c 28 66 6e 20 28 4b 45 59 2d 31 20 56 41 4c 55 45 2d 31 29 20 | .`equal'...\(fn.(KEY-1.VALUE-1). |
| 0ce0 | 28 4b 45 59 2d 32 20 56 41 4c 55 45 2d 32 29 20 2e 2e 2e 29 22 0a 20 20 28 6c 65 74 2a 20 28 28 | (KEY-2.VALUE-2)....)"...(let*.(( |
| 0d00 | 74 61 62 6c 65 2d 73 79 6d 62 6f 6c 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 68 74 2d 74 65 | table-symbol.(make-symbol."ht-te |
| 0d20 | 6d 70 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 61 73 73 69 67 6e 6d 65 6e 74 73 0a 20 20 20 20 | mp"))..........(assignments..... |
| 0d40 | 20 20 20 20 20 20 28 6d 61 70 63 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 | ......(mapcar............(lambda |
| 0d60 | 20 28 70 61 69 72 29 20 60 28 68 74 2d 73 65 74 21 20 2c 74 61 62 6c 65 2d 73 79 6d 62 6f 6c 20 | .(pair).`(ht-set!.,table-symbol. |
| 0d80 | 2c 40 70 61 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 70 61 69 72 73 29 29 29 0a 20 20 20 | ,@pair))............pairs))).... |
| 0da0 | 20 60 28 6c 65 74 20 28 28 2c 74 61 62 6c 65 2d 73 79 6d 62 6f 6c 20 28 68 74 2d 63 72 65 61 74 | .`(let.((,table-symbol.(ht-creat |
| 0dc0 | 65 29 29 29 0a 20 20 20 20 20 20 20 2c 40 61 73 73 69 67 6e 6d 65 6e 74 73 0a 20 20 20 20 20 20 | e)))........,@assignments....... |
| 0de0 | 20 2c 74 61 62 6c 65 2d 73 79 6d 62 6f 6c 29 29 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e | .,table-symbol)))..(define-inlin |
| 0e00 | 65 20 68 74 2d 73 65 74 21 20 28 74 61 62 6c 65 20 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 22 41 | e.ht-set!.(table.key.value)..."A |
| 0e20 | 73 73 6f 63 69 61 74 65 20 4b 45 59 20 69 6e 20 54 41 42 4c 45 20 77 69 74 68 20 56 41 4c 55 45 | ssociate.KEY.in.TABLE.with.VALUE |
| 0e40 | 2e 22 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 70 72 6f 67 31 20 6e 69 6c | ."...(inline-quote....(prog1.nil |
| 0e60 | 0a 20 20 20 20 20 28 70 75 74 68 61 73 68 20 2c 6b 65 79 20 2c 76 61 6c 75 65 20 2c 74 61 62 6c | ......(puthash.,key.,value.,tabl |
| 0e80 | 65 29 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 73 65 74 20 27 68 74 2d 73 65 74 | e))))..(defalias.'ht-set.'ht-set |
| 0ea0 | 21 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 63 72 65 61 74 65 20 28 26 6f | !)..(define-inline.ht-create.(&o |
| 0ec0 | 70 74 69 6f 6e 61 6c 20 74 65 73 74 29 0a 20 20 22 43 72 65 61 74 65 20 61 6e 20 65 6d 70 74 79 | ptional.test)..."Create.an.empty |
| 0ee0 | 20 68 61 73 68 20 74 61 62 6c 65 2e 0a 0a 54 45 53 54 20 69 6e 64 69 63 61 74 65 73 20 74 68 65 | .hash.table...TEST.indicates.the |
| 0f00 | 20 66 75 6e 63 74 69 6f 6e 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 61 72 65 20 74 68 65 20 68 61 | .function.used.to.compare.the.ha |
| 0f20 | 73 68 0a 6b 65 79 73 2e 20 20 44 65 66 61 75 6c 74 20 69 73 20 60 65 71 75 61 6c 27 2e 20 20 49 | sh.keys...Default.is.`equal'...I |
| 0f40 | 74 20 63 61 6e 20 62 65 20 60 65 71 27 2c 20 60 65 71 6c 27 2c 20 60 65 71 75 61 6c 27 20 6f 72 | t.can.be.`eq',.`eql',.`equal'.or |
| 0f60 | 20 61 0a 75 73 65 72 2d 73 75 70 70 6c 69 65 64 20 74 65 73 74 20 63 72 65 61 74 65 64 20 76 69 | .a.user-supplied.test.created.vi |
| 0f80 | 61 20 60 64 65 66 69 6e 65 2d 68 61 73 68 2d 74 61 62 6c 65 2d 74 65 73 74 27 2e 22 0a 20 20 28 | a.`define-hash-table-test'."...( |
| 0fa0 | 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 | declare.(side-effect-free.t))... |
| 0fc0 | 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 3a | (inline-quote.(make-hash-table.: |
| 0fe0 | 74 65 73 74 20 28 6f 72 20 2c 74 65 73 74 20 27 65 71 75 61 6c 29 29 29 29 0a 0a 28 64 65 66 75 | test.(or.,test.'equal))))..(defu |
| 1000 | 6e 20 68 74 3c 2d 61 6c 69 73 74 20 28 61 6c 69 73 74 20 26 6f 70 74 69 6f 6e 61 6c 20 74 65 73 | n.ht<-alist.(alist.&optional.tes |
| 1020 | 74 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 68 61 73 68 20 74 61 62 6c 65 20 77 69 74 68 20 69 | t)..."Create.a.hash.table.with.i |
| 1040 | 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 41 4c 49 53 54 | nitial.values.according.to.ALIST |
| 1060 | 2e 0a 0a 54 45 53 54 20 69 6e 64 69 63 61 74 65 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 75 | ...TEST.indicates.the.function.u |
| 1080 | 73 65 64 20 74 6f 20 63 6f 6d 70 61 72 65 20 74 68 65 20 68 61 73 68 0a 6b 65 79 73 2e 20 20 44 | sed.to.compare.the.hash.keys...D |
| 10a0 | 65 66 61 75 6c 74 20 69 73 20 60 65 71 75 61 6c 27 2e 20 20 49 74 20 63 61 6e 20 62 65 20 60 65 | efault.is.`equal'...It.can.be.`e |
| 10c0 | 71 27 2c 20 60 65 71 6c 27 2c 20 60 65 71 75 61 6c 27 20 6f 72 20 61 0a 75 73 65 72 2d 73 75 70 | q',.`eql',.`equal'.or.a.user-sup |
| 10e0 | 70 6c 69 65 64 20 74 65 73 74 20 63 72 65 61 74 65 64 20 76 69 61 20 60 64 65 66 69 6e 65 2d 68 | plied.test.created.via.`define-h |
| 1100 | 61 73 68 2d 74 61 62 6c 65 2d 74 65 73 74 27 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 | ash-table-test'."...(declare.(si |
| 1120 | 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 6c 65 74 20 28 28 68 20 28 68 | de-effect-free.t))...(let.((h.(h |
| 1140 | 74 2d 63 72 65 61 74 65 20 74 65 73 74 29 29 29 0a 20 20 20 20 3b 3b 20 74 68 65 20 66 69 72 73 | t-create.test))).....;;.the.firs |
| 1160 | 74 20 6b 65 79 2d 76 61 6c 75 65 20 70 61 69 72 20 69 6e 20 61 6e 20 61 6c 69 73 74 20 67 65 74 | t.key-value.pair.in.an.alist.get |
| 1180 | 73 20 70 72 65 63 65 64 65 6e 63 65 2c 20 73 6f 20 77 65 0a 20 20 20 20 3b 3b 20 73 74 61 72 74 | s.precedence,.so.we.....;;.start |
| 11a0 | 20 66 72 6f 6d 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 73 74 3a 0a 20 20 20 20 28 | .from.the.end.of.the.list:.....( |
| 11c0 | 64 6f 6c 69 73 74 20 28 70 61 69 72 20 28 72 65 76 65 72 73 65 20 61 6c 69 73 74 29 20 68 29 0a | dolist.(pair.(reverse.alist).h). |
| 11e0 | 20 20 20 20 20 20 28 6c 65 74 20 28 28 6b 65 79 20 28 63 61 72 20 70 61 69 72 29 29 0a 20 20 20 | ......(let.((key.(car.pair)).... |
| 1200 | 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65 20 28 63 64 72 20 70 61 69 72 29 29 29 0a 20 20 20 | .........(value.(cdr.pair))).... |
| 1220 | 20 20 20 20 20 28 68 74 2d 73 65 74 21 20 68 20 6b 65 79 20 76 61 6c 75 65 29 29 29 29 29 0a 0a | .....(ht-set!.h.key.value))))).. |
| 1240 | 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 66 72 6f 6d 2d 61 6c 69 73 74 20 27 68 74 3c 2d 61 6c | (defalias.'ht-from-alist.'ht<-al |
| 1260 | 69 73 74 29 0a 0a 28 64 65 66 75 6e 20 68 74 3c 2d 70 6c 69 73 74 20 28 70 6c 69 73 74 20 26 6f | ist)..(defun.ht<-plist.(plist.&o |
| 1280 | 70 74 69 6f 6e 61 6c 20 74 65 73 74 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 68 61 73 68 20 74 | ptional.test)..."Create.a.hash.t |
| 12a0 | 61 62 6c 65 20 77 69 74 68 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 20 61 63 63 6f 72 64 69 | able.with.initial.values.accordi |
| 12c0 | 6e 67 20 74 6f 20 50 4c 49 53 54 2e 0a 0a 54 45 53 54 20 69 6e 64 69 63 61 74 65 73 20 74 68 65 | ng.to.PLIST...TEST.indicates.the |
| 12e0 | 20 66 75 6e 63 74 69 6f 6e 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 61 72 65 20 74 68 65 20 68 61 | .function.used.to.compare.the.ha |
| 1300 | 73 68 0a 6b 65 79 73 2e 20 20 44 65 66 61 75 6c 74 20 69 73 20 60 65 71 75 61 6c 27 2e 20 20 49 | sh.keys...Default.is.`equal'...I |
| 1320 | 74 20 63 61 6e 20 62 65 20 60 65 71 27 2c 20 60 65 71 6c 27 2c 20 60 65 71 75 61 6c 27 20 6f 72 | t.can.be.`eq',.`eql',.`equal'.or |
| 1340 | 20 61 0a 75 73 65 72 2d 73 75 70 70 6c 69 65 64 20 74 65 73 74 20 63 72 65 61 74 65 64 20 76 69 | .a.user-supplied.test.created.vi |
| 1360 | 61 20 60 64 65 66 69 6e 65 2d 68 61 73 68 2d 74 61 62 6c 65 2d 74 65 73 74 27 2e 22 0a 20 20 28 | a.`define-hash-table-test'."...( |
| 1380 | 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 | declare.(side-effect-free.t))... |
| 13a0 | 28 6c 65 74 20 28 28 68 20 28 68 74 2d 63 72 65 61 74 65 20 74 65 73 74 29 29 29 0a 20 20 20 20 | (let.((h.(ht-create.test)))..... |
| 13c0 | 28 64 6f 6c 69 73 74 20 28 70 61 69 72 20 28 6e 72 65 76 65 72 73 65 20 28 2d 70 61 72 74 69 74 | (dolist.(pair.(nreverse.(-partit |
| 13e0 | 69 6f 6e 20 32 20 70 6c 69 73 74 29 29 20 68 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 6b 65 | ion.2.plist)).h).......(let.((ke |
| 1400 | 79 20 28 63 61 72 20 70 61 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65 | y.(car.pair)).............(value |
| 1420 | 20 28 63 61 64 72 20 70 61 69 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 68 74 2d 73 65 74 21 20 | .(cadr.pair))).........(ht-set!. |
| 1440 | 68 20 6b 65 79 20 76 61 6c 75 65 29 29 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d | h.key.value)))))..(defalias.'ht- |
| 1460 | 66 72 6f 6d 2d 70 6c 69 73 74 20 27 68 74 3c 2d 70 6c 69 73 74 29 0a 0a 28 64 65 66 69 6e 65 2d | from-plist.'ht<-plist)..(define- |
| 1480 | 69 6e 6c 69 6e 65 20 68 74 2d 67 65 74 20 28 74 61 62 6c 65 20 6b 65 79 20 26 6f 70 74 69 6f 6e | inline.ht-get.(table.key.&option |
| 14a0 | 61 6c 20 64 65 66 61 75 6c 74 29 0a 20 20 22 4c 6f 6f 6b 20 75 70 20 4b 45 59 20 69 6e 20 54 41 | al.default)..."Look.up.KEY.in.TA |
| 14c0 | 42 4c 45 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 76 61 6c | BLE,.and.return.the.matching.val |
| 14e0 | 75 65 2e 0a 49 66 20 4b 45 59 20 69 73 6e 27 74 20 70 72 65 73 65 6e 74 2c 20 72 65 74 75 72 6e | ue..If.KEY.isn't.present,.return |
| 1500 | 20 44 45 46 41 55 4c 54 20 28 6e 69 6c 20 69 66 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 29 2e | .DEFAULT.(nil.if.not.specified). |
| 1520 | 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 | "...(declare.(side-effect-free.t |
| 1540 | 29 29 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 67 65 74 68 61 73 68 20 2c | ))...(inline-quote....(gethash., |
| 1560 | 6b 65 79 20 2c 74 61 62 6c 65 20 2c 64 65 66 61 75 6c 74 29 29 29 0a 0a 3b 3b 20 44 6f 6e 27 74 | key.,table.,default)))..;;.Don't |
| 1580 | 20 75 73 65 20 60 68 74 2d 73 65 74 21 27 20 68 65 72 65 2c 20 67 76 20 73 65 74 74 65 72 20 77 | .use.`ht-set!'.here,.gv.setter.w |
| 15a0 | 61 73 20 61 73 73 75 6d 65 64 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 76 61 6c 75 65 0a 3b | as.assumed.to.return.the.value.; |
| 15c0 | 3b 20 74 6f 20 62 65 20 73 65 74 2e 0a 28 67 76 2d 64 65 66 69 6e 65 2d 73 65 74 74 65 72 20 68 | ;.to.be.set..(gv-define-setter.h |
| 15e0 | 74 2d 67 65 74 20 28 76 61 6c 75 65 20 74 61 62 6c 65 20 6b 65 79 29 20 60 28 70 75 74 68 61 73 | t-get.(value.table.key).`(puthas |
| 1600 | 68 20 2c 6b 65 79 20 2c 76 61 6c 75 65 20 2c 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 69 6e 65 2d | h.,key.,value.,table))..(define- |
| 1620 | 69 6e 6c 69 6e 65 20 68 74 2d 67 65 74 2a 20 28 74 61 62 6c 65 20 26 72 65 73 74 20 6b 65 79 73 | inline.ht-get*.(table.&rest.keys |
| 1640 | 29 0a 20 20 22 4c 6f 6f 6b 20 75 70 20 4b 45 59 53 20 69 6e 20 6e 65 73 74 65 64 20 68 61 73 68 | )..."Look.up.KEYS.in.nested.hash |
| 1660 | 20 74 61 62 6c 65 73 2c 20 73 74 61 72 74 69 6e 67 20 77 69 74 68 20 54 41 42 4c 45 2e 0a 54 68 | .tables,.starting.with.TABLE..Th |
| 1680 | 65 20 6c 6f 6f 6b 75 70 20 66 6f 72 20 65 61 63 68 20 6b 65 79 20 73 68 6f 75 6c 64 20 72 65 74 | e.lookup.for.each.key.should.ret |
| 16a0 | 75 72 6e 20 61 6e 6f 74 68 65 72 20 68 61 73 68 20 74 61 62 6c 65 2c 20 65 78 63 65 70 74 0a 66 | urn.another.hash.table,.except.f |
| 16c0 | 6f 72 20 74 68 65 20 66 69 6e 61 6c 20 6b 65 79 2c 20 77 68 69 63 68 20 6d 61 79 20 72 65 74 75 | or.the.final.key,.which.may.retu |
| 16e0 | 72 6e 20 61 6e 79 20 76 61 6c 75 65 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d | rn.any.value."...(declare.(side- |
| 1700 | 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 69 6e 6c 69 6e 65 2d 6c 65 74 65 76 61 | effect-free.t))...(inline-leteva |
| 1720 | 6c 73 20 28 74 61 62 6c 65 20 6b 65 79 73 29 0a 20 20 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 | ls.(table.keys).....(inline-quot |
| 1740 | 65 0a 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 2c 6b 65 79 | e......(progn........(while.,key |
| 1760 | 73 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 2c 74 61 62 6c 65 20 28 68 74 2d 67 65 74 20 | s..........(setf.,table.(ht-get. |
| 1780 | 2c 74 61 62 6c 65 20 28 70 6f 70 20 2c 6b 65 79 73 29 29 29 29 0a 20 20 20 20 20 20 20 2c 74 61 | ,table.(pop.,keys))))........,ta |
| 17a0 | 62 6c 65 29 29 29 29 0a 0a 28 70 75 74 20 27 68 74 2d 67 65 74 2a 20 27 63 6f 6d 70 69 6c 65 72 | ble))))..(put.'ht-get*.'compiler |
| 17c0 | 2d 6d 61 63 72 6f 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 20 74 61 62 6c 65 20 26 72 65 | -macro......(lambda.(_.table.&re |
| 17e0 | 73 74 20 6b 65 79 73 29 0a 20 20 20 20 20 20 20 28 2d 2d 72 65 64 75 63 65 2d 66 72 6f 6d 20 60 | st.keys)........(--reduce-from.` |
| 1800 | 28 68 74 2d 67 65 74 20 2c 61 63 63 20 2c 69 74 29 20 74 61 62 6c 65 20 6b 65 79 73 29 29 29 0a | (ht-get.,acc.,it).table.keys))). |
| 1820 | 0a 28 64 65 66 75 6e 20 68 74 2d 75 70 64 61 74 65 21 20 28 74 61 62 6c 65 20 66 72 6f 6d 2d 74 | .(defun.ht-update!.(table.from-t |
| 1840 | 61 62 6c 65 29 0a 20 20 22 55 70 64 61 74 65 20 54 41 42 4c 45 20 61 63 63 6f 72 64 69 6e 67 20 | able)..."Update.TABLE.according. |
| 1860 | 74 6f 20 65 76 65 72 79 20 6b 65 79 2d 76 61 6c 75 65 20 70 61 69 72 20 69 6e 20 46 52 4f 4d 2d | to.every.key-value.pair.in.FROM- |
| 1880 | 54 41 42 4c 45 2e 22 0a 20 20 28 6d 61 70 68 61 73 68 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 6b | TABLE."...(maphash....(lambda.(k |
| 18a0 | 65 79 20 76 61 6c 75 65 29 20 28 70 75 74 68 61 73 68 20 6b 65 79 20 76 61 6c 75 65 20 74 61 62 | ey.value).(puthash.key.value.tab |
| 18c0 | 6c 65 29 29 0a 20 20 20 66 72 6f 6d 2d 74 61 62 6c 65 29 0a 20 20 6e 69 6c 29 0a 0a 28 64 65 66 | le))....from-table)...nil)..(def |
| 18e0 | 61 6c 69 61 73 20 27 68 74 2d 75 70 64 61 74 65 20 27 68 74 2d 75 70 64 61 74 65 21 29 0a 0a 28 | alias.'ht-update.'ht-update!)..( |
| 1900 | 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 75 70 64 61 74 65 2d 77 69 74 68 21 20 28 74 | define-inline.ht-update-with!.(t |
| 1920 | 61 62 6c 65 20 6b 65 79 20 75 70 64 61 74 65 72 20 26 6f 70 74 69 6f 6e 61 6c 20 64 65 66 61 75 | able.key.updater.&optional.defau |
| 1940 | 6c 74 29 0a 20 20 22 55 70 64 61 74 65 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 4b 45 59 20 69 | lt)..."Update.the.value.of.KEY.i |
| 1960 | 6e 20 54 41 42 4c 45 20 77 69 74 68 20 55 50 44 41 54 45 52 2e 0a 49 66 20 74 68 65 20 76 61 6c | n.TABLE.with.UPDATER..If.the.val |
| 1980 | 75 65 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 64 6f 20 6e 6f 74 68 69 6e 67 2c 20 75 | ue.does.not.exist,.do.nothing,.u |
| 19a0 | 6e 6c 65 73 73 20 44 45 46 41 55 4c 54 20 69 73 0a 6e 6f 6e 2d 6e 69 6c 2c 20 69 6e 20 77 68 69 | nless.DEFAULT.is.non-nil,.in.whi |
| 19c0 | 63 68 20 63 61 73 65 20 61 63 74 20 61 73 20 69 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 44 | ch.case.act.as.if.the.value.is.D |
| 19e0 | 45 46 41 55 4c 54 2e 0a 0a 55 50 44 41 54 45 52 20 72 65 63 65 69 76 65 73 20 6f 6e 65 20 61 72 | EFAULT...UPDATER.receives.one.ar |
| 1a00 | 67 75 6d 65 6e 74 2c 20 74 68 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 69 74 73 20 72 65 74 75 72 | gument,.the.value,.and.its.retur |
| 1a20 | 6e 20 76 61 6c 75 65 0a 62 65 63 6f 6d 65 73 20 74 68 65 20 6e 65 77 20 76 61 6c 75 65 20 6f 66 | n.value.becomes.the.new.value.of |
| 1a40 | 20 4b 45 59 2e 22 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 6c 65 74 2a 20 | .KEY."...(inline-quote....(let*. |
| 1a60 | 28 28 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 | ((not-found-symbol.(make-symbol. |
| 1a80 | 22 68 74 2d 2d 6e 6f 74 2d 66 6f 75 6e 64 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 76 20 28 | "ht--not-found"))...........(v.( |
| 1aa0 | 67 65 74 68 61 73 68 20 2c 6b 65 79 20 2c 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | gethash.,key.,table............. |
| 1ac0 | 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 2c 64 65 66 61 75 6c 74 20 6e 6f 74 2d 66 6f 75 6e 64 | ..........(or.,default.not-found |
| 1ae0 | 2d 73 79 6d 62 6f 6c 29 29 29 29 0a 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 76 20 6e | -symbol))))......(unless.(eq.v.n |
| 1b00 | 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 6e | ot-found-symbol)........(prog1.n |
| 1b20 | 69 6c 0a 20 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 2c 6b 65 79 20 28 66 75 6e 63 61 | il..........(puthash.,key.(funca |
| 1b40 | 6c 6c 20 2c 75 70 64 61 74 65 72 20 76 29 20 2c 74 61 62 6c 65 29 29 29 29 29 29 0a 0a 28 64 65 | ll.,updater.v).,table))))))..(de |
| 1b60 | 66 75 6e 20 68 74 2d 6d 65 72 67 65 20 28 26 72 65 73 74 20 74 61 62 6c 65 73 29 0a 20 20 22 43 | fun.ht-merge.(&rest.tables)..."C |
| 1b80 | 72 65 74 65 20 61 20 6e 65 77 20 74 61 62 6c 65 20 74 68 61 74 20 69 6e 63 6c 75 64 65 73 20 61 | rete.a.new.table.that.includes.a |
| 1ba0 | 6c 6c 20 74 68 65 20 6b 65 79 2d 76 61 6c 75 65 20 70 61 69 72 73 20 66 72 6f 6d 20 54 41 42 4c | ll.the.key-value.pairs.from.TABL |
| 1bc0 | 45 53 2e 0a 49 66 20 6d 75 6c 74 69 70 6c 65 20 74 61 62 6c 65 73 20 68 61 76 65 20 74 68 65 20 | ES..If.multiple.tables.have.the. |
| 1be0 | 73 61 6d 65 20 6b 65 79 2c 20 74 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 6c 61 73 74 0a | same.key,.the.value.in.the.last. |
| 1c00 | 74 61 62 6c 65 20 69 73 20 75 73 65 64 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 65 72 67 65 64 20 | table.is.used."...(let.((merged. |
| 1c20 | 28 68 74 2d 63 72 65 61 74 65 29 29 29 0a 20 20 20 20 28 6d 61 70 63 20 28 6c 61 6d 62 64 61 20 | (ht-create))).....(mapc.(lambda. |
| 1c40 | 28 74 61 62 6c 65 29 20 28 68 74 2d 75 70 64 61 74 65 21 20 6d 65 72 67 65 64 20 74 61 62 6c 65 | (table).(ht-update!.merged.table |
| 1c60 | 29 29 20 74 61 62 6c 65 73 29 0a 20 20 20 20 6d 65 72 67 65 64 29 29 0a 0a 28 64 65 66 69 6e 65 | )).tables).....merged))..(define |
| 1c80 | 2d 69 6e 6c 69 6e 65 20 68 74 2d 72 65 6d 6f 76 65 21 20 28 74 61 62 6c 65 20 6b 65 79 29 0a 20 | -inline.ht-remove!.(table.key).. |
| 1ca0 | 20 22 52 65 6d 6f 76 65 20 4b 45 59 20 66 72 6f 6d 20 54 41 42 4c 45 2e 22 0a 20 20 28 69 6e 6c | ."Remove.KEY.from.TABLE."...(inl |
| 1cc0 | 69 6e 65 2d 71 75 6f 74 65 20 28 72 65 6d 68 61 73 68 20 2c 6b 65 79 20 2c 74 61 62 6c 65 29 29 | ine-quote.(remhash.,key.,table)) |
| 1ce0 | 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 72 65 6d 6f 76 65 20 27 68 74 2d 72 65 6d 6f | )..(defalias.'ht-remove.'ht-remo |
| 1d00 | 76 65 21 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 63 6c 65 61 72 21 20 28 | ve!)..(define-inline.ht-clear!.( |
| 1d20 | 74 61 62 6c 65 29 0a 20 20 22 52 65 6d 6f 76 65 20 61 6c 6c 20 6b 65 79 73 20 66 72 6f 6d 20 54 | table)..."Remove.all.keys.from.T |
| 1d40 | 41 42 4c 45 2e 22 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 70 72 6f 67 31 | ABLE."...(inline-quote....(prog1 |
| 1d60 | 20 6e 69 6c 0a 20 20 20 20 20 28 63 6c 72 68 61 73 68 20 2c 74 61 62 6c 65 29 29 29 29 0a 0a 28 | .nil......(clrhash.,table))))..( |
| 1d80 | 64 65 66 61 6c 69 61 73 20 27 68 74 2d 63 6c 65 61 72 20 27 68 74 2d 63 6c 65 61 72 21 29 0a 0a | defalias.'ht-clear.'ht-clear!).. |
| 1da0 | 28 64 65 66 75 6e 20 68 74 2d 6d 61 70 20 28 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 29 0a 20 | (defun.ht-map.(function.table).. |
| 1dc0 | 20 22 41 70 70 6c 79 20 46 55 4e 43 54 49 4f 4e 20 74 6f 20 65 61 63 68 20 6b 65 79 2d 76 61 6c | ."Apply.FUNCTION.to.each.key-val |
| 1de0 | 75 65 20 70 61 69 72 20 6f 66 20 54 41 42 4c 45 2c 20 61 6e 64 20 6d 61 6b 65 20 61 20 6c 69 73 | ue.pair.of.TABLE,.and.make.a.lis |
| 1e00 | 74 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 73 2e 0a 46 55 4e 43 54 49 4f 4e 20 69 73 20 63 61 | t.of.the.results..FUNCTION.is.ca |
| 1e20 | 6c 6c 65 64 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 2c 20 4b 45 59 20 61 6e 64 | lled.with.two.arguments,.KEY.and |
| 1e40 | 20 56 41 4c 55 45 2e 22 0a 20 20 28 6c 65 74 20 28 72 65 73 75 6c 74 73 29 0a 20 20 20 20 28 6d | .VALUE."...(let.(results).....(m |
| 1e60 | 61 70 68 61 73 68 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 0a | aphash......(lambda.(key.value). |
| 1e80 | 20 20 20 20 20 20 20 28 70 75 73 68 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 6b | .......(push.(funcall.function.k |
| 1ea0 | 65 79 20 76 61 6c 75 65 29 20 72 65 73 75 6c 74 73 29 29 0a 20 20 20 20 20 74 61 62 6c 65 29 0a | ey.value).results))......table). |
| 1ec0 | 20 20 20 20 72 65 73 75 6c 74 73 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 68 74 2d 61 6d 61 70 | ....results))..(defmacro.ht-amap |
| 1ee0 | 20 28 66 6f 72 6d 20 74 61 62 6c 65 29 0a 20 20 22 41 6e 61 70 68 6f 72 69 63 20 76 65 72 73 69 | .(form.table)..."Anaphoric.versi |
| 1f00 | 6f 6e 20 6f 66 20 60 68 74 2d 6d 61 70 27 2e 0a 46 6f 72 20 65 76 65 72 79 20 6b 65 79 2d 76 61 | on.of.`ht-map'..For.every.key-va |
| 1f20 | 6c 75 65 20 70 61 69 72 20 69 6e 20 54 41 42 4c 45 2c 20 65 76 61 6c 75 61 74 65 20 46 4f 52 4d | lue.pair.in.TABLE,.evaluate.FORM |
| 1f40 | 20 77 69 74 68 20 74 68 65 0a 76 61 72 69 61 62 6c 65 73 20 4b 45 59 20 61 6e 64 20 56 41 4c 55 | .with.the.variables.KEY.and.VALU |
| 1f60 | 45 20 62 6f 75 6e 64 2e 20 20 49 66 20 79 6f 75 20 64 6f 6e 27 74 20 75 73 65 20 62 6f 74 68 20 | E.bound...If.you.don't.use.both. |
| 1f80 | 6f 66 0a 74 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 2c 20 74 68 65 6e 20 75 73 65 20 60 68 74 | of.these.variables,.then.use.`ht |
| 1fa0 | 2d 6d 61 70 27 20 74 6f 20 61 76 6f 69 64 20 77 61 72 6e 69 6e 67 73 2e 22 0a 20 20 60 28 68 74 | -map'.to.avoid.warnings."...`(ht |
| 1fc0 | 2d 6d 61 70 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 20 2c 66 6f 72 6d 29 20 | -map.(lambda.(key.value).,form). |
| 1fe0 | 2c 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 6b 65 79 73 20 28 74 61 62 6c 65 29 | ,table))..(defun.ht-keys.(table) |
| 2000 | 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 6b 65 79 | ..."Return.a.list.of.all.the.key |
| 2020 | 73 20 69 6e 20 54 41 42 4c 45 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 | s.in.TABLE."...(declare.(side-ef |
| 2040 | 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 68 74 2d 6d 61 70 20 28 6c 61 6d 62 64 61 20 | fect-free.t))...(ht-map.(lambda. |
| 2060 | 28 6b 65 79 20 5f 76 61 6c 75 65 29 20 6b 65 79 29 20 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 75 | (key._value).key).table))..(defu |
| 2080 | 6e 20 68 74 2d 76 61 6c 75 65 73 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 | n.ht-values.(table)..."Return.a. |
| 20a0 | 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 76 61 6c 75 65 73 20 69 6e 20 54 41 42 4c 45 2e | list.of.all.the.values.in.TABLE. |
| 20c0 | 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 | "...(declare.(side-effect-free.t |
| 20e0 | 29 29 0a 20 20 28 68 74 2d 6d 61 70 20 28 6c 61 6d 62 64 61 20 28 5f 6b 65 79 20 76 61 6c 75 65 | ))...(ht-map.(lambda.(_key.value |
| 2100 | 29 20 76 61 6c 75 65 29 20 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 69 74 65 6d | ).value).table))..(defun.ht-item |
| 2120 | 73 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 74 77 | s.(table)..."Return.a.list.of.tw |
| 2140 | 6f 2d 65 6c 65 6d 65 6e 74 20 6c 69 73 74 73 20 5c 5c 3d 27 28 6b 65 79 20 76 61 6c 75 65 29 20 | o-element.lists.\\='(key.value). |
| 2160 | 66 72 6f 6d 20 54 41 42 4c 45 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 | from.TABLE."...(declare.(side-ef |
| 2180 | 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 68 74 2d 61 6d 61 70 20 28 6c 69 73 74 20 6b | fect-free.t))...(ht-amap.(list.k |
| 21a0 | 65 79 20 76 61 6c 75 65 29 20 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 | ey.value).table))..(defalias.'ht |
| 21c0 | 2d 65 61 63 68 20 27 6d 61 70 68 61 73 68 0a 20 20 22 41 70 70 6c 79 20 46 55 4e 43 54 49 4f 4e | -each.'maphash..."Apply.FUNCTION |
| 21e0 | 20 74 6f 20 65 61 63 68 20 6b 65 79 2d 76 61 6c 75 65 20 70 61 69 72 20 6f 66 20 54 41 42 4c 45 | .to.each.key-value.pair.of.TABLE |
| 2200 | 2e 0a 52 65 74 75 72 6e 73 20 6e 69 6c 2c 20 75 73 65 64 20 66 6f 72 20 73 69 64 65 2d 65 66 66 | ..Returns.nil,.used.for.side-eff |
| 2220 | 65 63 74 73 20 6f 6e 6c 79 2e 22 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 68 74 2d 61 65 61 63 68 | ects.only.")..(defmacro.ht-aeach |
| 2240 | 20 28 66 6f 72 6d 20 74 61 62 6c 65 29 0a 20 20 22 41 6e 61 70 68 6f 72 69 63 20 76 65 72 73 69 | .(form.table)..."Anaphoric.versi |
| 2260 | 6f 6e 20 6f 66 20 60 68 74 2d 65 61 63 68 27 2e 0a 46 6f 72 20 65 76 65 72 79 20 6b 65 79 2d 76 | on.of.`ht-each'..For.every.key-v |
| 2280 | 61 6c 75 65 20 70 61 69 72 20 69 6e 20 54 41 42 4c 45 2c 20 65 76 61 6c 75 61 74 65 20 46 4f 52 | alue.pair.in.TABLE,.evaluate.FOR |
| 22a0 | 4d 20 77 69 74 68 20 74 68 65 0a 76 61 72 69 61 62 6c 65 73 20 6b 65 79 20 61 6e 64 20 76 61 6c | M.with.the.variables.key.and.val |
| 22c0 | 75 65 20 62 6f 75 6e 64 2e 22 0a 20 20 60 28 68 74 2d 65 61 63 68 20 28 6c 61 6d 62 64 61 20 28 | ue.bound."...`(ht-each.(lambda.( |
| 22e0 | 6b 65 79 20 76 61 6c 75 65 29 20 2c 66 6f 72 6d 29 20 2c 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 | key.value).,form).,table))..(def |
| 2300 | 75 6e 20 68 74 2d 73 65 6c 65 63 74 2d 6b 65 79 73 20 28 74 61 62 6c 65 20 6b 65 79 73 29 0a 20 | un.ht-select-keys.(table.keys).. |
| 2320 | 20 22 52 65 74 75 72 6e 20 61 20 63 6f 70 79 20 6f 66 20 54 41 42 4c 45 20 77 69 74 68 20 6f 6e | ."Return.a.copy.of.TABLE.with.on |
| 2340 | 6c 79 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 4b 45 59 53 2e 22 0a 20 20 28 64 65 63 6c 61 | ly.the.specified.KEYS."...(decla |
| 2360 | 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 6c 65 74 20 | re.(side-effect-free.t))...(let. |
| 2380 | 28 28 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 | ((not-found-symbol.(make-symbol. |
| 23a0 | 22 68 74 2d 2d 6e 6f 74 2d 66 6f 75 6e 64 22 29 29 0a 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 | "ht--not-found")).........result |
| 23c0 | 29 0a 20 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 | ).....(setq.result.(make-hash-ta |
| 23e0 | 62 6c 65 20 3a 74 65 73 74 20 28 68 61 73 68 2d 74 61 62 6c 65 2d 74 65 73 74 20 74 61 62 6c 65 | ble.:test.(hash-table-test.table |
| 2400 | 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 6b 65 79 20 6b 65 79 73 20 72 65 73 75 6c 74 | ))).....(dolist.(key.keys.result |
| 2420 | 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 28 67 65 74 68 61 73 68 | ).......(if.(not.(equal.(gethash |
| 2440 | 20 6b 65 79 20 74 61 62 6c 65 20 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 20 6e 6f 74 | .key.table.not-found-symbol).not |
| 2460 | 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 74 68 61 | -found-symbol))...........(putha |
| 2480 | 73 68 20 6b 65 79 20 28 67 65 74 68 61 73 68 20 6b 65 79 20 74 61 62 6c 65 29 20 72 65 73 75 6c | sh.key.(gethash.key.table).resul |
| 24a0 | 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 3e 70 6c 69 73 74 20 28 74 61 62 6c 65 29 | t)))))..(defun.ht->plist.(table) |
| 24c0 | 0a 20 20 22 52 65 74 75 72 6e 20 61 20 66 6c 61 74 20 6c 69 73 74 20 5c 5c 3d 27 28 6b 65 79 31 | ..."Return.a.flat.list.\\='(key1 |
| 24e0 | 20 76 61 6c 75 65 31 20 6b 65 79 32 20 76 61 6c 75 65 32 2e 2e 2e 29 20 66 72 6f 6d 20 54 41 42 | .value1.key2.value2...).from.TAB |
| 2500 | 4c 45 2e 0a 0a 4e 6f 74 65 20 74 68 61 74 20 68 61 73 68 20 74 61 62 6c 65 73 20 61 72 65 20 75 | LE...Note.that.hash.tables.are.u |
| 2520 | 6e 6f 72 64 65 72 65 64 2c 20 73 6f 20 74 68 69 73 20 63 61 6e 6e 6f 74 20 62 65 20 61 6e 20 65 | nordered,.so.this.cannot.be.an.e |
| 2540 | 78 61 63 74 0a 69 6e 76 65 72 73 65 20 6f 66 20 60 68 74 3c 2d 70 6c 69 73 74 27 2e 20 20 54 68 | xact.inverse.of.`ht<-plist'...Th |
| 2560 | 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 3a 0a 0a | e.following.is.not.guaranteed:.. |
| 2580 | 5c 28 6c 65 74 20 28 28 64 61 74 61 20 5c 5c 3d 27 28 61 20 62 20 63 20 64 29 29 29 0a 20 20 28 | \(let.((data.\\='(a.b.c.d)))...( |
| 25a0 | 65 71 75 61 6c 70 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 28 68 74 2d 3e 70 6c 69 73 74 | equalp.data...........(ht->plist |
| 25c0 | 20 28 68 74 3c 2d 70 6c 69 73 74 20 64 61 74 61 29 29 29 29 22 0a 20 20 28 64 65 63 6c 61 72 65 | .(ht<-plist.data))))"...(declare |
| 25e0 | 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 61 70 70 6c 79 20 | .(side-effect-free.t))...(apply. |
| 2600 | 27 61 70 70 65 6e 64 20 28 68 74 2d 69 74 65 6d 73 20 74 61 62 6c 65 29 29 29 0a 0a 28 64 65 66 | 'append.(ht-items.table)))..(def |
| 2620 | 61 6c 69 61 73 20 27 68 74 2d 74 6f 2d 70 6c 69 73 74 20 27 68 74 2d 3e 70 6c 69 73 74 29 0a 0a | alias.'ht-to-plist.'ht->plist).. |
| 2640 | 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 63 6f 70 79 20 28 74 61 62 6c 65 29 0a 20 | (define-inline.ht-copy.(table).. |
| 2660 | 20 22 52 65 74 75 72 6e 20 61 20 73 68 61 6c 6c 6f 77 20 63 6f 70 79 20 6f 66 20 54 41 42 4c 45 | ."Return.a.shallow.copy.of.TABLE |
| 2680 | 20 28 6b 65 79 73 20 61 6e 64 20 76 61 6c 75 65 73 20 61 72 65 20 73 68 61 72 65 64 29 2e 22 0a | .(keys.and.values.are.shared).". |
| 26a0 | 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 | ..(declare.(side-effect-free.t)) |
| 26c0 | 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 20 28 63 6f 70 79 2d 68 61 73 68 2d 74 61 62 6c | ...(inline-quote.(copy-hash-tabl |
| 26e0 | 65 20 2c 74 61 62 6c 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 3e 61 6c 69 73 74 20 28 74 | e.,table)))..(defun.ht->alist.(t |
| 2700 | 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 74 77 6f 2d 65 6c | able)..."Return.a.list.of.two-el |
| 2720 | 65 6d 65 6e 74 20 6c 69 73 74 73 20 5c 5c 3d 27 28 6b 65 79 20 2e 20 76 61 6c 75 65 29 20 66 72 | ement.lists.\\='(key...value).fr |
| 2740 | 6f 6d 20 54 41 42 4c 45 2e 0a 0a 4e 6f 74 65 20 74 68 61 74 20 68 61 73 68 20 74 61 62 6c 65 73 | om.TABLE...Note.that.hash.tables |
| 2760 | 20 61 72 65 20 75 6e 6f 72 64 65 72 65 64 2c 20 73 6f 20 74 68 69 73 20 63 61 6e 6e 6f 74 20 62 | .are.unordered,.so.this.cannot.b |
| 2780 | 65 20 61 6e 20 65 78 61 63 74 0a 69 6e 76 65 72 73 65 20 6f 66 20 60 68 74 3c 2d 61 6c 69 73 74 | e.an.exact.inverse.of.`ht<-alist |
| 27a0 | 27 2e 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 | '...The.following.is.not.guarant |
| 27c0 | 65 65 64 3a 0a 0a 5c 28 6c 65 74 20 28 28 64 61 74 61 20 5c 5c 3d 27 28 28 61 20 2e 20 62 29 20 | eed:..\(let.((data.\\='((a...b). |
| 27e0 | 28 63 20 2e 20 64 29 29 29 29 0a 20 20 28 65 71 75 61 6c 70 20 64 61 74 61 0a 20 20 20 20 20 20 | (c...d))))...(equalp.data....... |
| 2800 | 20 20 20 20 28 68 74 2d 3e 61 6c 69 73 74 20 28 68 74 3c 2d 61 6c 69 73 74 20 64 61 74 61 29 29 | ....(ht->alist.(ht<-alist.data)) |
| 2820 | 29 29 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 | ))"...(declare.(side-effect-free |
| 2840 | 20 74 29 29 0a 20 20 28 68 74 2d 61 6d 61 70 20 28 63 6f 6e 73 20 6b 65 79 20 76 61 6c 75 65 29 | .t))...(ht-amap.(cons.key.value) |
| 2860 | 20 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 74 6f 2d 61 6c 69 73 74 | .table))..(defalias.'ht-to-alist |
| 2880 | 20 27 68 74 2d 3e 61 6c 69 73 74 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 3f 20 27 68 61 | .'ht->alist)..(defalias.'ht?.'ha |
| 28a0 | 73 68 2d 74 61 62 6c 65 2d 70 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 70 20 27 68 61 | sh-table-p)..(defalias.'ht-p.'ha |
| 28c0 | 73 68 2d 74 61 62 6c 65 2d 70 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 63 | sh-table-p)..(define-inline.ht-c |
| 28e0 | 6f 6e 74 61 69 6e 73 3f 20 28 74 61 62 6c 65 20 6b 65 79 29 0a 20 20 22 52 65 74 75 72 6e 20 5c | ontains?.(table.key)..."Return.\ |
| 2900 | 5c 3d 27 74 20 69 66 20 54 41 42 4c 45 20 63 6f 6e 74 61 69 6e 73 20 4b 45 59 2e 22 0a 20 20 28 | \='t.if.TABLE.contains.KEY."...( |
| 2920 | 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 | declare.(side-effect-free.t))... |
| 2940 | 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 6c 65 74 20 28 28 6e 6f 74 2d 66 6f 75 6e | (inline-quote....(let.((not-foun |
| 2960 | 64 2d 73 79 6d 62 6f 6c 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 68 74 2d 2d 6e 6f 74 2d 66 | d-symbol.(make-symbol."ht--not-f |
| 2980 | 6f 75 6e 64 22 29 29 29 0a 20 20 20 20 20 28 6e 6f 74 20 28 65 71 20 28 68 74 2d 67 65 74 20 2c | ound")))......(not.(eq.(ht-get., |
| 29a0 | 74 61 62 6c 65 20 2c 6b 65 79 20 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 20 6e 6f 74 | table.,key.not-found-symbol).not |
| 29c0 | 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 29 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 | -found-symbol)))))..(defalias.'h |
| 29e0 | 74 2d 63 6f 6e 74 61 69 6e 73 2d 70 20 27 68 74 2d 63 6f 6e 74 61 69 6e 73 3f 29 0a 0a 28 64 65 | t-contains-p.'ht-contains?)..(de |
| 2a00 | 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 73 69 7a 65 20 28 74 61 62 6c 65 29 0a 20 20 22 52 | fine-inline.ht-size.(table)..."R |
| 2a20 | 65 74 75 72 6e 20 74 68 65 20 61 63 74 75 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 65 6e 74 72 69 | eturn.the.actual.number.of.entri |
| 2a40 | 65 73 20 69 6e 20 54 41 42 4c 45 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 | es.in.TABLE."...(declare.(side-e |
| 2a60 | 66 66 65 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 | ffect-free.t))...(inline-quote.. |
| 2a80 | 20 20 28 68 61 73 68 2d 74 61 62 6c 65 2d 63 6f 75 6e 74 20 2c 74 61 62 6c 65 29 29 29 0a 0a 28 | ..(hash-table-count.,table)))..( |
| 2aa0 | 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 65 6d 70 74 79 3f 20 28 74 61 62 6c 65 29 0a | define-inline.ht-empty?.(table). |
| 2ac0 | 20 20 22 52 65 74 75 72 6e 20 74 72 75 65 20 69 66 20 74 68 65 20 61 63 74 75 61 6c 20 6e 75 6d | .."Return.true.if.the.actual.num |
| 2ae0 | 62 65 72 20 6f 66 20 65 6e 74 72 69 65 73 20 69 6e 20 54 41 42 4c 45 20 69 73 20 7a 65 72 6f 2e | ber.of.entries.in.TABLE.is.zero. |
| 2b00 | 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d 66 72 65 65 20 74 | "...(declare.(side-effect-free.t |
| 2b20 | 29 29 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 7a 65 72 6f 70 20 28 68 74 | ))...(inline-quote....(zerop.(ht |
| 2b40 | 2d 73 69 7a 65 20 2c 74 61 62 6c 65 29 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d | -size.,table))))..(defalias.'ht- |
| 2b60 | 65 6d 70 74 79 2d 70 20 27 68 74 2d 65 6d 70 74 79 3f 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 73 | empty-p.'ht-empty?)..(defun.ht-s |
| 2b80 | 65 6c 65 63 74 20 28 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e | elect.(function.table)..."Return |
| 2ba0 | 20 61 20 68 61 73 68 20 74 61 62 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 61 6c 6c 20 65 6e 74 | .a.hash.table.containing.all.ent |
| 2bc0 | 72 69 65 73 20 69 6e 20 54 41 42 4c 45 20 66 6f 72 20 77 68 69 63 68 0a 46 55 4e 43 54 49 4f 4e | ries.in.TABLE.for.which.FUNCTION |
| 2be0 | 20 72 65 74 75 72 6e 73 20 61 20 74 72 75 74 68 79 20 76 61 6c 75 65 2e 0a 0a 46 55 4e 43 54 49 | .returns.a.truthy.value...FUNCTI |
| 2c00 | 4f 4e 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 2c | ON.is.called.with.two.arguments, |
| 2c20 | 20 4b 45 59 20 61 6e 64 20 56 41 4c 55 45 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 65 73 75 6c 74 | .KEY.and.VALUE."...(let.((result |
| 2c40 | 73 20 28 68 74 2d 63 72 65 61 74 65 29 29 29 0a 20 20 20 20 28 68 74 2d 65 61 63 68 0a 20 20 20 | s.(ht-create))).....(ht-each.... |
| 2c60 | 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 28 77 68 | ..(lambda.(key.value)........(wh |
| 2c80 | 65 6e 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 6b 65 79 20 76 61 6c 75 65 29 0a | en.(funcall.function.key.value). |
| 2ca0 | 20 20 20 20 20 20 20 20 20 28 68 74 2d 73 65 74 21 20 72 65 73 75 6c 74 73 20 6b 65 79 20 76 61 | .........(ht-set!.results.key.va |
| 2cc0 | 6c 75 65 29 29 29 0a 20 20 20 20 20 74 61 62 6c 65 29 0a 20 20 20 20 72 65 73 75 6c 74 73 29 29 | lue)))......table).....results)) |
| 2ce0 | 0a 0a 28 64 65 66 75 6e 20 68 74 2d 72 65 6a 65 63 74 20 28 66 75 6e 63 74 69 6f 6e 20 74 61 62 | ..(defun.ht-reject.(function.tab |
| 2d00 | 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 68 61 73 68 20 74 61 62 6c 65 20 63 6f 6e 74 61 | le)..."Return.a.hash.table.conta |
| 2d20 | 69 6e 69 6e 67 20 61 6c 6c 20 65 6e 74 72 69 65 73 20 69 6e 20 54 41 42 4c 45 20 66 6f 72 20 77 | ining.all.entries.in.TABLE.for.w |
| 2d40 | 68 69 63 68 0a 46 55 4e 43 54 49 4f 4e 20 72 65 74 75 72 6e 73 20 61 20 66 61 6c 73 79 20 76 61 | hich.FUNCTION.returns.a.falsy.va |
| 2d60 | 6c 75 65 2e 0a 0a 46 55 4e 43 54 49 4f 4e 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 77 | lue...FUNCTION.is.called.with.tw |
| 2d80 | 6f 20 61 72 67 75 6d 65 6e 74 73 2c 20 4b 45 59 20 61 6e 64 20 56 41 4c 55 45 2e 22 0a 20 20 28 | o.arguments,.KEY.and.VALUE."...( |
| 2da0 | 6c 65 74 20 28 28 72 65 73 75 6c 74 73 20 28 68 74 2d 63 72 65 61 74 65 29 29 29 0a 20 20 20 20 | let.((results.(ht-create)))..... |
| 2dc0 | 28 68 74 2d 65 61 63 68 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 | (ht-each......(lambda.(key.value |
| 2de0 | 29 0a 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 | )........(unless.(funcall.functi |
| 2e00 | 6f 6e 20 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 28 68 74 2d 73 65 74 21 20 | on.key.value)..........(ht-set!. |
| 2e20 | 72 65 73 75 6c 74 73 20 6b 65 79 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 74 61 62 6c 65 29 | results.key.value)))......table) |
| 2e40 | 0a 20 20 20 20 72 65 73 75 6c 74 73 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 72 65 6a 65 63 74 | .....results))..(defun.ht-reject |
| 2e60 | 21 20 28 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 29 0a 20 20 22 44 65 6c 65 74 65 20 65 6e 74 | !.(function.table)..."Delete.ent |
| 2e80 | 72 69 65 73 20 66 72 6f 6d 20 54 41 42 4c 45 20 66 6f 72 20 77 68 69 63 68 20 46 55 4e 43 54 49 | ries.from.TABLE.for.which.FUNCTI |
| 2ea0 | 4f 4e 20 72 65 74 75 72 6e 73 20 6e 6f 6e 2d 6e 69 6c 2e 0a 0a 46 55 4e 43 54 49 4f 4e 20 69 73 | ON.returns.non-nil...FUNCTION.is |
| 2ec0 | 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 2c 20 4b 45 59 20 | .called.with.two.arguments,.KEY. |
| 2ee0 | 61 6e 64 20 56 41 4c 55 45 2e 22 0a 20 20 28 68 74 2d 65 61 63 68 0a 20 20 20 28 6c 61 6d 62 64 | and.VALUE."...(ht-each....(lambd |
| 2f00 | 61 20 28 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 20 20 20 28 77 68 65 6e 20 28 66 75 6e 63 61 6c | a.(key.value)......(when.(funcal |
| 2f20 | 6c 20 66 75 6e 63 74 69 6f 6e 20 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 28 72 65 | l.function.key.value)........(re |
| 2f40 | 6d 68 61 73 68 20 6b 65 79 20 74 61 62 6c 65 29 29 29 0a 20 20 20 74 61 62 6c 65 29 0a 20 20 6e | mhash.key.table)))....table)...n |
| 2f60 | 69 6c 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 64 65 6c 65 74 65 2d 69 66 20 27 68 74 | il)..(defalias.'ht-delete-if.'ht |
| 2f80 | 2d 72 65 6a 65 63 74 21 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 66 69 6e 64 20 28 66 75 6e 63 74 | -reject!)..(defun.ht-find.(funct |
| 2fa0 | 69 6f 6e 20 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 28 6b 65 79 2c 20 76 61 6c 75 65 | ion.table)..."Return.(key,.value |
| 2fc0 | 29 20 66 72 6f 6d 20 54 41 42 4c 45 20 66 6f 72 20 77 68 69 63 68 20 46 55 4e 43 54 49 4f 4e 20 | ).from.TABLE.for.which.FUNCTION. |
| 2fe0 | 72 65 74 75 72 6e 73 20 61 20 74 72 75 74 68 79 20 76 61 6c 75 65 2e 0a 52 65 74 75 72 6e 20 6e | returns.a.truthy.value..Return.n |
| 3000 | 69 6c 20 6f 74 68 65 72 77 69 73 65 2e 0a 0a 46 55 4e 43 54 49 4f 4e 20 69 73 20 63 61 6c 6c 65 | il.otherwise...FUNCTION.is.calle |
| 3020 | 64 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 2c 20 4b 45 59 20 61 6e 64 20 56 41 | d.with.two.arguments,.KEY.and.VA |
| 3040 | 4c 55 45 2e 22 0a 20 20 28 63 61 74 63 68 20 27 62 72 65 61 6b 0a 20 20 20 20 28 68 74 2d 65 61 | LUE."...(catch.'break.....(ht-ea |
| 3060 | 63 68 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 20 20 | ch......(lambda.(key.value)..... |
| 3080 | 20 20 20 28 77 68 65 6e 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 6b 65 79 20 76 | ...(when.(funcall.function.key.v |
| 30a0 | 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 62 72 65 61 6b 20 28 6c 69 | alue)..........(throw.'break.(li |
| 30c0 | 73 74 20 6b 65 79 20 76 61 6c 75 65 29 29 29 29 0a 20 20 20 20 20 74 61 62 6c 65 29 29 29 0a 0a | st.key.value))))......table))).. |
| 30e0 | 28 64 65 66 75 6e 20 68 74 2d 65 71 75 61 6c 3f 20 28 74 61 62 6c 65 31 20 74 61 62 6c 65 32 29 | (defun.ht-equal?.(table1.table2) |
| 3100 | 0a 20 20 22 52 65 74 75 72 6e 20 74 20 69 66 20 54 41 42 4c 45 31 20 61 6e 64 20 54 41 42 4c 45 | ..."Return.t.if.TABLE1.and.TABLE |
| 3120 | 32 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 6b 65 79 73 20 61 6e 64 20 76 61 6c 75 65 73 2e | 2.have.the.same.keys.and.values. |
| 3140 | 0a 44 6f 65 73 20 6e 6f 74 20 63 6f 6d 70 61 72 65 20 65 71 75 61 6c 69 74 79 20 70 72 65 64 69 | .Does.not.compare.equality.predi |
| 3160 | 63 61 74 65 73 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 63 74 2d | cates."...(declare.(side-effect- |
| 3180 | 66 72 65 65 20 74 29 29 0a 20 20 28 6c 65 74 20 28 28 6b 65 79 73 31 20 28 68 74 2d 6b 65 79 73 | free.t))...(let.((keys1.(ht-keys |
| 31a0 | 20 74 61 62 6c 65 31 29 29 0a 20 20 20 20 20 20 20 20 28 6b 65 79 73 32 20 28 68 74 2d 6b 65 79 | .table1)).........(keys2.(ht-key |
| 31c0 | 73 20 74 61 62 6c 65 32 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 6e 74 69 6e 65 6c 20 28 6d 61 | s.table2)).........(sentinel.(ma |
| 31e0 | 6b 65 2d 73 79 6d 62 6f 6c 20 22 68 74 2d 73 65 6e 74 69 6e 65 6c 22 29 29 29 0a 20 20 20 20 28 | ke-symbol."ht-sentinel"))).....( |
| 3200 | 61 6e 64 20 28 65 71 75 61 6c 20 28 6c 65 6e 67 74 68 20 6b 65 79 73 31 29 20 28 6c 65 6e 67 74 | and.(equal.(length.keys1).(lengt |
| 3220 | 68 20 6b 65 79 73 32 29 29 0a 20 20 20 20 20 20 20 20 20 28 2d 2d 61 6c 6c 3f 0a 20 20 20 20 20 | h.keys2))..........(--all?...... |
| 3240 | 20 20 20 20 20 28 69 66 20 28 68 74 2d 70 20 28 68 74 2d 67 65 74 20 74 61 62 6c 65 31 20 69 74 | .....(if.(ht-p.(ht-get.table1.it |
| 3260 | 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 74 2d 65 71 75 61 6c 2d 70 20 28 68 74 | ))...............(ht-equal-p.(ht |
| 3280 | 2d 67 65 74 20 74 61 62 6c 65 31 20 69 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -get.table1.it)................. |
| 32a0 | 20 20 20 20 20 20 20 20 20 20 28 68 74 2d 67 65 74 20 74 61 62 6c 65 32 20 69 74 29 29 0a 20 20 | ..........(ht-get.table2.it))... |
| 32c0 | 20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 68 74 2d 67 65 74 20 74 61 62 6c 65 31 20 | ..........(equal.(ht-get.table1. |
| 32e0 | 69 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 74 2d 67 65 74 20 74 61 62 | it)..................(ht-get.tab |
| 3300 | 6c 65 32 20 69 74 20 73 65 6e 74 69 6e 65 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 6b 65 79 | le2.it.sentinel)))...........key |
| 3320 | 73 31 29 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 65 71 75 61 6c 2d 70 20 27 68 | s1))))..(defalias.'ht-equal-p.'h |
| 3340 | 74 2d 65 71 75 61 6c 3f 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 68 74 29 0a 3b 3b 3b 20 68 74 2e | t-equal?)..(provide.'ht).;;;.ht. |
| 3360 | 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | el.ends.here.................... |
| 3380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 33a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 33c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 33e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 34a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 34c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 34e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 35a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 35c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 35e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 36a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 36c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 36e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 37a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 37c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 37e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3800 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3860 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 38a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 38c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 38e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 39a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 39c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 39e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3a00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3a60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3a80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3d00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3d20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 40a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 40c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 40e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 41a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 41c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 41e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4260 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 42a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 42c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 42e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4300 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 43a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 43c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 43e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 44a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 44c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 44e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 45a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 45c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 45e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 46a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 46c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 46e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 47a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 47c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 47e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4800 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4860 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 48a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 48c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 48e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 49a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 49c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 49e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4a00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4a60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4a80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4d00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4d20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4e00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4e20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 4fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |