| 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 36 33 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 30 36 37 00 20 30 00 00 00 | 0000663.00000000000.013067..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 | 3b 3b 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 3b 20 6c 65 78 69 63 | ;;.-*-.no-byte-compile:.t;.lexic |
| 0420 | 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 6e 69 6c 20 2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b | al-binding:.nil.-*-.(define-pack |
| 0440 | 61 67 65 20 22 68 74 22 20 22 32 30 32 33 30 37 30 33 2e 35 35 38 22 0a 20 20 22 54 68 65 20 6d | age."ht"."20230703.558"..."The.m |
| 0460 | 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 72 20 45 6d | issing.hash.table.library.for.Em |
| 0480 | 61 63 73 2e 22 0a 20 20 27 28 28 64 61 73 68 20 22 32 2e 31 32 2e 30 22 29 29 0a 20 20 3a 75 72 | acs."...'((dash."2.12.0"))...:ur |
| 04a0 | 6c 20 22 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 74 | l."https://github.com/Wilfred/ht |
| 04c0 | 2e 65 6c 22 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 | .el"...:commit."1c49aad1c820c86f |
| 04e0 | 37 65 65 33 35 62 66 39 66 66 66 38 34 32 39 35 30 32 66 36 30 66 65 66 22 0a 20 20 3a 72 65 76 | 7ee35bf9fff8429502f60fef"...:rev |
| 0500 | 64 65 73 63 20 22 31 63 34 39 61 61 64 31 63 38 32 30 22 0a 20 20 3a 6b 65 79 77 6f 72 64 73 20 | desc."1c49aad1c820"...:keywords. |
| 0520 | 27 28 22 68 61 73 68 20 74 61 62 6c 65 22 20 22 68 61 73 68 20 6d 61 70 22 20 22 68 61 73 68 22 | '("hash.table"."hash.map"."hash" |
| 0540 | 29 0a 20 20 3a 61 75 74 68 6f 72 73 20 27 28 28 22 57 69 6c 66 72 65 64 20 48 75 67 68 65 73 22 | )...:authors.'(("Wilfred.Hughes" |
| 0560 | 20 2e 20 22 6d 65 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 6b 22 29 29 0a 20 20 3a 6d 61 69 6e 74 | ..."me@wilfred.me.uk"))...:maint |
| 0580 | 61 69 6e 65 72 73 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 | ainers.'(("Wilfred.Hughes"..."me |
| 05a0 | 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 6b 22 29 29 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 | @wilfred.me.uk"))).............. |
| 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 36 34 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 32 33 31 32 00 20 30 00 00 00 | 0025640.00000000000.012312..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 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32 30 32 33 | .me.uk>.;;.Package-Version:.2023 |
| 08c0 | 30 37 30 33 2e 35 35 38 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e 3a 20 31 63 | 0703.558.;;.Package-Revision:.1c |
| 08e0 | 34 39 61 61 64 31 63 38 32 30 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 68 61 73 68 20 74 61 62 | 49aad1c820.;;.Keywords:.hash.tab |
| 0900 | 6c 65 2c 20 68 61 73 68 20 6d 61 70 2c 20 68 61 73 68 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 | le,.hash.map,.hash.;;.Package-Re |
| 0920 | 71 75 69 72 65 73 3a 20 28 28 64 61 73 68 20 22 32 2e 31 32 2e 30 22 29 29 0a 0a 3b 3b 20 54 68 | quires:.((dash."2.12.0"))..;;.Th |
| 0940 | 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 | is.program.is.free.software;.you |
| 0960 | 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 | .can.redistribute.it.and/or.modi |
| 0980 | 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 | fy.;;.it.under.the.terms.of.the. |
| 09a0 | 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 20 61 73 20 70 75 | GNU.General.Public.License.as.pu |
| 09c0 | 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 | blished.by.;;.the.Free.Software. |
| 09e0 | 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 | Foundation,.either.version.3.of. |
| 0a00 | 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 | the.License,.or.;;.(at.your.opti |
| 0a20 | 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 | on).any.later.version...;;.This. |
| 0a40 | 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f | program.is.distributed.in.the.ho |
| 0a60 | 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 | pe.that.it.will.be.useful,.;;.bu |
| 0a80 | 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 | t.WITHOUT.ANY.WARRANTY;.without. |
| 0aa0 | 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 | even.the.implied.warranty.of.;;. |
| 0ac0 | 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 | MERCHANTABILITY.or.FITNESS.FOR.A |
| 0ae0 | 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b | .PARTICULAR.PURPOSE...See.the.;; |
| 0b00 | 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 20 66 6f 72 20 | .GNU.General.Public.License.for. |
| 0b20 | 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 | more.details...;;.You.should.hav |
| 0b40 | 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e | e.received.a.copy.of.the.GNU.Gen |
| 0b60 | 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 | eral.Public.License.;;.along.wit |
| 0b80 | 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 | h.this.program...If.not,.see.<ht |
| 0ba0 | 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b | tp://www.gnu.org/licenses/>...;; |
| 0bc0 | 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 65 20 6d 69 73 73 69 6e 67 20 68 61 | ;.Commentary:..;;.The.missing.ha |
| 0be0 | 73 68 20 74 61 62 6c 65 20 6c 69 62 72 61 72 79 20 66 6f 72 20 45 6d 61 63 73 2e 0a 3b 3b 0a 3b | sh.table.library.for.Emacs..;;.; |
| 0c00 | 3b 20 53 65 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 74 20 68 74 74 70 73 3a 2f 2f 67 | ;.See.documentation.at.https://g |
| 0c20 | 69 74 68 75 62 2e 63 6f 6d 2f 57 69 6c 66 72 65 64 2f 68 74 2e 65 6c 0a 0a 3b 3b 3b 20 43 6f 64 | ithub.com/Wilfred/ht.el..;;;.Cod |
| 0c40 | 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 64 61 73 68 29 0a 28 72 65 71 75 69 72 65 20 27 67 76 | e:..(require.'dash).(require.'gv |
| 0c60 | 29 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 72 65 71 75 69 72 65 20 | ).(eval-when-compile...(require. |
| 0c80 | 27 69 6e 6c 69 6e 65 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 68 74 20 28 26 72 65 73 74 20 70 | 'inline))..(defmacro.ht.(&rest.p |
| 0ca0 | 61 69 72 73 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 | airs)..."Create.a.hash.table.wit |
| 0cc0 | 68 20 74 68 65 20 6b 65 79 2d 76 61 6c 75 65 20 70 61 69 72 73 20 67 69 76 65 6e 2e 0a 4b 65 79 | h.the.key-value.pairs.given..Key |
| 0ce0 | 73 20 61 72 65 20 63 6f 6d 70 61 72 65 64 20 77 69 74 68 20 60 65 71 75 61 6c 27 2e 0a 0a 5c 28 | s.are.compared.with.`equal'...\( |
| 0d00 | 66 6e 20 28 4b 45 59 2d 31 20 56 41 4c 55 45 2d 31 29 20 28 4b 45 59 2d 32 20 56 41 4c 55 45 2d | fn.(KEY-1.VALUE-1).(KEY-2.VALUE- |
| 0d20 | 32 29 20 2e 2e 2e 29 22 0a 20 20 28 6c 65 74 2a 20 28 28 74 61 62 6c 65 2d 73 79 6d 62 6f 6c 20 | 2)....)"...(let*.((table-symbol. |
| 0d40 | 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 68 74 2d 74 65 6d 70 22 29 29 0a 20 20 20 20 20 20 20 | (make-symbol."ht-temp"))........ |
| 0d60 | 20 20 28 61 73 73 69 67 6e 6d 65 6e 74 73 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 | ..(assignments...........(mapcar |
| 0d80 | 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70 61 69 72 29 20 60 28 68 74 2d | ............(lambda.(pair).`(ht- |
| 0da0 | 73 65 74 21 20 2c 74 61 62 6c 65 2d 73 79 6d 62 6f 6c 20 2c 40 70 61 69 72 29 29 0a 20 20 20 20 | set!.,table-symbol.,@pair))..... |
| 0dc0 | 20 20 20 20 20 20 20 70 61 69 72 73 29 29 29 0a 20 20 20 20 60 28 6c 65 74 20 28 28 2c 74 61 62 | .......pairs))).....`(let.((,tab |
| 0de0 | 6c 65 2d 73 79 6d 62 6f 6c 20 28 68 74 2d 63 72 65 61 74 65 29 29 29 0a 20 20 20 20 20 20 20 2c | le-symbol.(ht-create)))........, |
| 0e00 | 40 61 73 73 69 67 6e 6d 65 6e 74 73 0a 20 20 20 20 20 20 20 2c 74 61 62 6c 65 2d 73 79 6d 62 6f | @assignments........,table-symbo |
| 0e20 | 6c 29 29 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 73 65 74 21 20 28 74 61 | l)))..(define-inline.ht-set!.(ta |
| 0e40 | 62 6c 65 20 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 22 41 73 73 6f 63 69 61 74 65 20 4b 45 59 20 | ble.key.value)..."Associate.KEY. |
| 0e60 | 69 6e 20 54 41 42 4c 45 20 77 69 74 68 20 56 41 4c 55 45 2e 22 0a 20 20 28 69 6e 6c 69 6e 65 2d | in.TABLE.with.VALUE."...(inline- |
| 0e80 | 71 75 6f 74 65 0a 20 20 20 28 70 72 6f 67 31 20 6e 69 6c 0a 20 20 20 20 20 28 70 75 74 68 61 73 | quote....(prog1.nil......(puthas |
| 0ea0 | 68 20 2c 6b 65 79 20 2c 76 61 6c 75 65 20 2c 74 61 62 6c 65 29 29 29 29 0a 0a 28 64 65 66 61 6c | h.,key.,value.,table))))..(defal |
| 0ec0 | 69 61 73 20 27 68 74 2d 73 65 74 20 27 68 74 2d 73 65 74 21 29 0a 0a 28 64 65 66 69 6e 65 2d 69 | ias.'ht-set.'ht-set!)..(define-i |
| 0ee0 | 6e 6c 69 6e 65 20 68 74 2d 63 72 65 61 74 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 74 65 73 74 29 | nline.ht-create.(&optional.test) |
| 0f00 | 0a 20 20 22 43 72 65 61 74 65 20 61 6e 20 65 6d 70 74 79 20 68 61 73 68 20 74 61 62 6c 65 2e 0a | ..."Create.an.empty.hash.table.. |
| 0f20 | 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 73 65 | .TEST.indicates.the.function.use |
| 0f40 | 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 65 66 | d.to.compare.the.hash.keys...Def |
| 0f60 | 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 71 27 | ault.is.`equal'...It.can.be.`eq' |
| 0f80 | 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 70 6c | ,.`eql',.`equal'.or.a.user-suppl |
| 0fa0 | 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 61 73 | ied.test.created.via.`define-has |
| 0fc0 | 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 64 65 | h-table-test'."...(declare.(side |
| 0fe0 | 2d 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 71 75 6f 74 65 | -effect-free.t))...(inline-quote |
| 1000 | 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 3a 74 65 73 74 20 28 6f 72 20 2c 74 65 73 | .(make-hash-table.:test.(or.,tes |
| 1020 | 74 20 27 65 71 75 61 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 3c 2d 61 6c 69 73 74 20 28 | t.'equal))))..(defun.ht<-alist.( |
| 1040 | 61 6c 69 73 74 20 26 6f 70 74 69 6f 6e 61 6c 20 74 65 73 74 29 0a 20 20 22 43 72 65 61 74 65 20 | alist.&optional.test)..."Create. |
| 1060 | 61 20 68 61 73 68 20 74 61 62 6c 65 20 77 69 74 68 20 69 6e 69 74 69 61 6c 20 76 61 6c 75 65 73 | a.hash.table.with.initial.values |
| 1080 | 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 41 4c 49 53 54 2e 0a 0a 54 45 53 54 20 69 6e 64 69 63 | .according.to.ALIST...TEST.indic |
| 10a0 | 61 74 65 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 61 72 | ates.the.function.used.to.compar |
| 10c0 | 65 20 74 68 65 20 68 61 73 68 0a 6b 65 79 73 2e 20 20 44 65 66 61 75 6c 74 20 69 73 20 60 65 71 | e.the.hash.keys...Default.is.`eq |
| 10e0 | 75 61 6c 27 2e 20 20 49 74 20 63 61 6e 20 62 65 20 60 65 71 27 2c 20 60 65 71 6c 27 2c 20 60 65 | ual'...It.can.be.`eq',.`eql',.`e |
| 1100 | 71 75 61 6c 27 20 6f 72 20 61 0a 75 73 65 72 2d 73 75 70 70 6c 69 65 64 20 74 65 73 74 20 63 72 | qual'.or.a.user-supplied.test.cr |
| 1120 | 65 61 74 65 64 20 76 69 61 20 60 64 65 66 69 6e 65 2d 68 61 73 68 2d 74 61 62 6c 65 2d 74 65 73 | eated.via.`define-hash-table-tes |
| 1140 | 74 27 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 66 72 65 | t'."...(declare.(side-effect-fre |
| 1160 | 65 20 74 29 29 0a 20 20 28 6c 65 74 20 28 28 68 20 28 68 74 2d 63 72 65 61 74 65 20 74 65 73 74 | e.t))...(let.((h.(ht-create.test |
| 1180 | 29 29 29 0a 20 20 20 20 3b 3b 20 74 68 65 20 66 69 72 73 74 20 6b 65 79 2d 76 61 6c 75 65 20 70 | ))).....;;.the.first.key-value.p |
| 11a0 | 61 69 72 20 69 6e 20 61 6e 20 61 6c 69 73 74 20 67 65 74 73 20 70 72 65 63 65 64 65 6e 63 65 2c | air.in.an.alist.gets.precedence, |
| 11c0 | 20 73 6f 20 77 65 0a 20 20 20 20 3b 3b 20 73 74 61 72 74 20 66 72 6f 6d 20 74 68 65 20 65 6e 64 | .so.we.....;;.start.from.the.end |
| 11e0 | 20 6f 66 20 74 68 65 20 6c 69 73 74 3a 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 70 61 69 72 20 | .of.the.list:.....(dolist.(pair. |
| 1200 | 28 72 65 76 65 72 73 65 20 61 6c 69 73 74 29 20 68 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 | (reverse.alist).h).......(let.(( |
| 1220 | 6b 65 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 | key.(car.pair)).............(val |
| 1240 | 75 65 20 28 63 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 | ue.(cdr.pair))).........(ht-set! |
| 1260 | 20 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 | .h.key.value)))))..(defalias.'ht |
| 1280 | 2d 66 72 6f 6d 2d 61 6c 69 73 74 20 27 68 74 3c 2d 61 6c 69 73 74 29 0a 0a 28 64 65 66 75 6e 20 | -from-alist.'ht<-alist)..(defun. |
| 12a0 | 68 74 3c 2d 70 6c 69 73 74 20 28 70 6c 69 73 74 20 26 6f 70 74 69 6f 6e 61 6c 20 74 65 73 74 29 | ht<-plist.(plist.&optional.test) |
| 12c0 | 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 6e 69 | ..."Create.a.hash.table.with.ini |
| 12e0 | 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 50 4c 49 53 54 2e 0a | tial.values.according.to.PLIST.. |
| 1300 | 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 73 65 | .TEST.indicates.the.function.use |
| 1320 | 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 65 66 | d.to.compare.the.hash.keys...Def |
| 1340 | 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 71 27 | ault.is.`equal'...It.can.be.`eq' |
| 1360 | 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 70 6c | ,.`eql',.`equal'.or.a.user-suppl |
| 1380 | 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 61 73 | ied.test.created.via.`define-has |
| 13a0 | 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 64 65 | h-table-test'."...(declare.(side |
| 13c0 | 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 74 2d | -effect-free.t))...(let.((h.(ht- |
| 13e0 | 63 72 65 61 74 65 20 74 65 73 74 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 70 61 69 72 | create.test))).....(dolist.(pair |
| 1400 | 20 28 6e 72 65 76 65 72 73 65 20 28 2d 70 61 72 74 69 74 69 6f 6e 20 32 20 70 6c 69 73 74 29 29 | .(nreverse.(-partition.2.plist)) |
| 1420 | 20 68 29 0a 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 | .h).......(let.((key.(car.pair)) |
| 1440 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65 20 28 63 61 64 72 20 70 61 69 72 29 29 | .............(value.(cadr.pair)) |
| 1460 | 29 0a 20 20 20 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 | ).........(ht-set!.h.key.value)) |
| 1480 | 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 66 72 6f 6d 2d 70 6c 69 73 74 20 27 68 | )))..(defalias.'ht-from-plist.'h |
| 14a0 | 74 3c 2d 70 6c 69 73 74 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 67 65 74 | t<-plist)..(define-inline.ht-get |
| 14c0 | 20 28 74 61 62 6c 65 20 6b 65 79 20 26 6f 70 74 69 6f 6e 61 6c 20 64 65 66 61 75 6c 74 29 0a 20 | .(table.key.&optional.default).. |
| 14e0 | 20 22 4c 6f 6f 6b 20 75 70 20 4b 45 59 20 69 6e 20 54 41 42 4c 45 2c 20 61 6e 64 20 72 65 74 75 | ."Look.up.KEY.in.TABLE,.and.retu |
| 1500 | 72 6e 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 76 61 6c 75 65 2e 0a 49 66 20 4b 45 59 20 69 73 | rn.the.matching.value..If.KEY.is |
| 1520 | 6e 27 74 20 70 72 65 73 65 6e 74 2c 20 72 65 74 75 72 6e 20 44 45 46 41 55 4c 54 20 28 6e 69 6c | n't.present,.return.DEFAULT.(nil |
| 1540 | 20 69 66 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 29 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 | .if.not.specified)."...(declare. |
| 1560 | 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 69 6e 6c 69 6e 65 2d | (side-effect-free.t))...(inline- |
| 1580 | 71 75 6f 74 65 0a 20 20 20 28 67 65 74 68 61 73 68 20 2c 6b 65 79 20 2c 74 61 62 6c 65 20 2c 64 | quote....(gethash.,key.,table.,d |
| 15a0 | 65 66 61 75 6c 74 29 29 29 0a 0a 3b 3b 20 44 6f 6e 27 74 20 75 73 65 20 60 68 74 2d 73 65 74 21 | efault)))..;;.Don't.use.`ht-set! |
| 15c0 | 27 20 68 65 72 65 2c 20 67 76 20 73 65 74 74 65 72 20 77 61 73 20 61 73 73 75 6d 65 64 20 74 6f | '.here,.gv.setter.was.assumed.to |
| 15e0 | 20 72 65 74 75 72 6e 20 74 68 65 20 76 61 6c 75 65 0a 3b 3b 20 74 6f 20 62 65 20 73 65 74 2e 0a | .return.the.value.;;.to.be.set.. |
| 1600 | 28 67 76 2d 64 65 66 69 6e 65 2d 73 65 74 74 65 72 20 68 74 2d 67 65 74 20 28 76 61 6c 75 65 20 | (gv-define-setter.ht-get.(value. |
| 1620 | 74 61 62 6c 65 20 6b 65 79 29 20 60 28 70 75 74 68 61 73 68 20 2c 6b 65 79 20 2c 76 61 6c 75 65 | table.key).`(puthash.,key.,value |
| 1640 | 20 2c 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 67 65 74 | .,table))..(define-inline.ht-get |
| 1660 | 2a 20 28 74 61 62 6c 65 20 26 72 65 73 74 20 6b 65 79 73 29 0a 20 20 22 4c 6f 6f 6b 20 75 70 20 | *.(table.&rest.keys)..."Look.up. |
| 1680 | 4b 45 59 53 20 69 6e 20 6e 65 73 74 65 64 20 68 61 73 68 20 74 61 62 6c 65 73 2c 20 73 74 61 72 | KEYS.in.nested.hash.tables,.star |
| 16a0 | 74 69 6e 67 20 77 69 74 68 20 54 41 42 4c 45 2e 0a 54 68 65 20 6c 6f 6f 6b 75 70 20 66 6f 72 20 | ting.with.TABLE..The.lookup.for. |
| 16c0 | 65 61 63 68 20 6b 65 79 20 73 68 6f 75 6c 64 20 72 65 74 75 72 6e 20 61 6e 6f 74 68 65 72 20 68 | each.key.should.return.another.h |
| 16e0 | 61 73 68 20 74 61 62 6c 65 2c 20 65 78 63 65 70 74 0a 66 6f 72 20 74 68 65 20 66 69 6e 61 6c 20 | ash.table,.except.for.the.final. |
| 1700 | 6b 65 79 2c 20 77 68 69 63 68 20 6d 61 79 20 72 65 74 75 72 6e 20 61 6e 79 20 76 61 6c 75 65 2e | key,.which.may.return.any.value. |
| 1720 | 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 |
| 1740 | 29 29 0a 20 20 28 69 6e 6c 69 6e 65 2d 6c 65 74 65 76 61 6c 73 20 28 74 61 62 6c 65 20 6b 65 79 | ))...(inline-letevals.(table.key |
| 1760 | 73 29 0a 20 20 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 20 20 28 70 72 6f 67 6e | s).....(inline-quote......(progn |
| 1780 | 0a 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 2c 6b 65 79 73 0a 20 20 20 20 20 20 20 20 20 28 73 | ........(while.,keys..........(s |
| 17a0 | 65 74 66 20 2c 74 61 62 6c 65 20 28 68 74 2d 67 65 74 20 2c 74 61 62 6c 65 20 28 70 6f 70 20 2c | etf.,table.(ht-get.,table.(pop., |
| 17c0 | 6b 65 79 73 29 29 29 29 0a 20 20 20 20 20 20 20 2c 74 61 62 6c 65 29 29 29 29 0a 0a 28 70 75 74 | keys))))........,table))))..(put |
| 17e0 | 20 27 68 74 2d 67 65 74 2a 20 27 63 6f 6d 70 69 6c 65 72 2d 6d 61 63 72 6f 0a 20 20 20 20 20 28 | .'ht-get*.'compiler-macro......( |
| 1800 | 6c 61 6d 62 64 61 20 28 5f 20 74 61 62 6c 65 20 26 72 65 73 74 20 6b 65 79 73 29 0a 20 20 20 20 | lambda.(_.table.&rest.keys)..... |
| 1820 | 20 20 20 28 2d 2d 72 65 64 75 63 65 2d 66 72 6f 6d 20 60 28 68 74 2d 67 65 74 20 2c 61 63 63 20 | ...(--reduce-from.`(ht-get.,acc. |
| 1840 | 2c 69 74 29 20 74 61 62 6c 65 20 6b 65 79 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 75 70 | ,it).table.keys)))..(defun.ht-up |
| 1860 | 64 61 74 65 21 20 28 74 61 62 6c 65 20 66 72 6f 6d 2d 74 61 62 6c 65 29 0a 20 20 22 55 70 64 61 | date!.(table.from-table)..."Upda |
| 1880 | 74 65 20 54 41 42 4c 45 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 65 76 65 72 79 20 6b 65 79 2d | te.TABLE.according.to.every.key- |
| 18a0 | 76 61 6c 75 65 20 70 61 69 72 20 69 6e 20 46 52 4f 4d 2d 54 41 42 4c 45 2e 22 0a 20 20 28 6d 61 | value.pair.in.FROM-TABLE."...(ma |
| 18c0 | 70 68 61 73 68 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 20 28 70 75 | phash....(lambda.(key.value).(pu |
| 18e0 | 74 68 61 73 68 20 6b 65 79 20 76 61 6c 75 65 20 74 61 62 6c 65 29 29 0a 20 20 20 66 72 6f 6d 2d | thash.key.value.table))....from- |
| 1900 | 74 61 62 6c 65 29 0a 20 20 6e 69 6c 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 75 70 64 | table)...nil)..(defalias.'ht-upd |
| 1920 | 61 74 65 20 27 68 74 2d 75 70 64 61 74 65 21 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 | ate.'ht-update!)..(define-inline |
| 1940 | 20 68 74 2d 75 70 64 61 74 65 2d 77 69 74 68 21 20 28 74 61 62 6c 65 20 6b 65 79 20 75 70 64 61 | .ht-update-with!.(table.key.upda |
| 1960 | 74 65 72 20 26 6f 70 74 69 6f 6e 61 6c 20 64 65 66 61 75 6c 74 29 0a 20 20 22 55 70 64 61 74 65 | ter.&optional.default)..."Update |
| 1980 | 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 4b 45 59 20 69 6e 20 54 41 42 4c 45 20 77 69 74 68 20 | .the.value.of.KEY.in.TABLE.with. |
| 19a0 | 55 50 44 41 54 45 52 2e 0a 49 66 20 74 68 65 20 76 61 6c 75 65 20 64 6f 65 73 20 6e 6f 74 20 65 | UPDATER..If.the.value.does.not.e |
| 19c0 | 78 69 73 74 2c 20 64 6f 20 6e 6f 74 68 69 6e 67 2c 20 75 6e 6c 65 73 73 20 44 45 46 41 55 4c 54 | xist,.do.nothing,.unless.DEFAULT |
| 19e0 | 20 69 73 0a 6e 6f 6e 2d 6e 69 6c 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 61 63 74 20 61 | .is.non-nil,.in.which.case.act.a |
| 1a00 | 73 20 69 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 44 45 46 41 55 4c 54 2e 0a 0a 55 50 44 41 | s.if.the.value.is.DEFAULT...UPDA |
| 1a20 | 54 45 52 20 72 65 63 65 69 76 65 73 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 2c 20 74 68 65 20 76 | TER.receives.one.argument,.the.v |
| 1a40 | 61 6c 75 65 2c 20 61 6e 64 20 69 74 73 20 72 65 74 75 72 6e 20 76 61 6c 75 65 0a 62 65 63 6f 6d | alue,.and.its.return.value.becom |
| 1a60 | 65 73 20 74 68 65 20 6e 65 77 20 76 61 6c 75 65 20 6f 66 20 4b 45 59 2e 22 0a 20 20 28 69 6e 6c | es.the.new.value.of.KEY."...(inl |
| 1a80 | 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 6c 65 74 2a 20 28 28 6e 6f 74 2d 66 6f 75 6e 64 2d 73 | ine-quote....(let*.((not-found-s |
| 1aa0 | 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 6f 75 6e | ymbol.(make-symbol."ht--not-foun |
| 1ac0 | 64 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 76 20 28 67 65 74 68 61 73 68 20 2c 6b 65 79 20 | d"))...........(v.(gethash.,key. |
| 1ae0 | 2c 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 | ,table.......................(or |
| 1b00 | 20 2c 64 65 66 61 75 6c 74 20 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 29 29 29 0a 20 | .,default.not-found-symbol)))).. |
| 1b20 | 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 76 20 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 | ....(unless.(eq.v.not-found-symb |
| 1b40 | 6f 6c 29 0a 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 28 | ol)........(prog1.nil..........( |
| 1b60 | 70 75 74 68 61 73 68 20 2c 6b 65 79 20 28 66 75 6e 63 61 6c 6c 20 2c 75 70 64 61 74 65 72 20 76 | puthash.,key.(funcall.,updater.v |
| 1b80 | 29 20 2c 74 61 62 6c 65 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 6d 65 72 67 65 20 | ).,table))))))..(defun.ht-merge. |
| 1ba0 | 28 26 72 65 73 74 20 74 61 62 6c 65 73 29 0a 20 20 22 43 72 65 74 65 20 61 20 6e 65 77 20 74 61 | (&rest.tables)..."Crete.a.new.ta |
| 1bc0 | 62 6c 65 20 74 68 61 74 20 69 6e 63 6c 75 64 65 73 20 61 6c 6c 20 74 68 65 20 6b 65 79 2d 76 61 | ble.that.includes.all.the.key-va |
| 1be0 | 6c 75 65 20 70 61 69 72 73 20 66 72 6f 6d 20 54 41 42 4c 45 53 2e 0a 49 66 20 6d 75 6c 74 69 70 | lue.pairs.from.TABLES..If.multip |
| 1c00 | 6c 65 20 74 61 62 6c 65 73 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 6b 65 79 2c 20 74 68 65 | le.tables.have.the.same.key,.the |
| 1c20 | 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 6c 61 73 74 0a 74 61 62 6c 65 20 69 73 20 75 73 65 64 | .value.in.the.last.table.is.used |
| 1c40 | 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 65 72 67 65 64 20 28 68 74 2d 63 72 65 61 74 65 29 29 29 | ."...(let.((merged.(ht-create))) |
| 1c60 | 0a 20 20 20 20 28 6d 61 70 63 20 28 6c 61 6d 62 64 61 20 28 74 61 62 6c 65 29 20 28 68 74 2d 75 | .....(mapc.(lambda.(table).(ht-u |
| 1c80 | 70 64 61 74 65 21 20 6d 65 72 67 65 64 20 74 61 62 6c 65 29 29 20 74 61 62 6c 65 73 29 0a 20 20 | pdate!.merged.table)).tables)... |
| 1ca0 | 20 20 6d 65 72 67 65 64 29 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 72 65 | ..merged))..(define-inline.ht-re |
| 1cc0 | 6d 6f 76 65 21 20 28 74 61 62 6c 65 20 6b 65 79 29 0a 20 20 22 52 65 6d 6f 76 65 20 4b 45 59 20 | move!.(table.key)..."Remove.KEY. |
| 1ce0 | 66 72 6f 6d 20 54 41 42 4c 45 2e 22 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 20 28 72 65 | from.TABLE."...(inline-quote.(re |
| 1d00 | 6d 68 61 73 68 20 2c 6b 65 79 20 2c 74 61 62 6c 65 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 | mhash.,key.,table)))..(defalias. |
| 1d20 | 27 68 74 2d 72 65 6d 6f 76 65 20 27 68 74 2d 72 65 6d 6f 76 65 21 29 0a 0a 28 64 65 66 69 6e 65 | 'ht-remove.'ht-remove!)..(define |
| 1d40 | 2d 69 6e 6c 69 6e 65 20 68 74 2d 63 6c 65 61 72 21 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 6d | -inline.ht-clear!.(table)..."Rem |
| 1d60 | 6f 76 65 20 61 6c 6c 20 6b 65 79 73 20 66 72 6f 6d 20 54 41 42 4c 45 2e 22 0a 20 20 28 69 6e 6c | ove.all.keys.from.TABLE."...(inl |
| 1d80 | 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 70 72 6f 67 31 20 6e 69 6c 0a 20 20 20 20 20 28 63 6c | ine-quote....(prog1.nil......(cl |
| 1da0 | 72 68 61 73 68 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 | rhash.,table))))..(defalias.'ht- |
| 1dc0 | 63 6c 65 61 72 20 27 68 74 2d 63 6c 65 61 72 21 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 6d 61 70 | clear.'ht-clear!)..(defun.ht-map |
| 1de0 | 20 28 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 29 0a 20 20 22 41 70 70 6c 79 20 46 55 4e 43 54 | .(function.table)..."Apply.FUNCT |
| 1e00 | 49 4f 4e 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 | ION.to.each.key-value.pair.of.TA |
| 1e20 | 42 4c 45 2c 20 61 6e 64 20 6d 61 6b 65 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65 20 72 65 73 75 | BLE,.and.make.a.list.of.the.resu |
| 1e40 | 6c 74 73 2e 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 6f | lts..FUNCTION.is.called.with.two |
| 1e60 | 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 6c | .arguments,.KEY.and.VALUE."...(l |
| 1e80 | 65 74 20 28 72 65 73 75 6c 74 73 29 0a 20 20 20 20 28 6d 61 70 68 61 73 68 0a 20 20 20 20 20 28 | et.(results).....(maphash......( |
| 1ea0 | 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 70 75 73 68 20 | lambda.(key.value)........(push. |
| 1ec0 | 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 20 72 65 73 | (funcall.function.key.value).res |
| 1ee0 | 75 6c 74 73 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 | ults))......table).....results)) |
| 1f00 | 0a 0a 28 64 65 66 6d 61 63 72 6f 20 68 74 2d 61 6d 61 70 20 28 66 6f 72 6d 20 74 61 62 6c 65 29 | ..(defmacro.ht-amap.(form.table) |
| 1f20 | 0a 20 20 22 41 6e 61 70 68 6f 72 69 63 20 76 65 72 73 69 6f 6e 20 6f 66 20 60 68 74 2d 6d 61 70 | ..."Anaphoric.version.of.`ht-map |
| 1f40 | 27 2e 0a 46 6f 72 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 54 | '..For.every.key-value.pair.in.T |
| 1f60 | 41 42 4c 45 2c 20 65 76 61 6c 75 61 74 65 20 46 4f 52 4d 20 77 69 74 68 20 74 68 65 0a 76 61 72 | ABLE,.evaluate.FORM.with.the.var |
| 1f80 | 69 61 62 6c 65 73 20 4b 45 59 20 61 6e 64 20 56 41 4c 55 45 20 62 6f 75 6e 64 2e 20 20 49 66 20 | iables.KEY.and.VALUE.bound...If. |
| 1fa0 | 79 6f 75 20 64 6f 6e 27 74 20 75 73 65 20 62 6f 74 68 20 6f 66 0a 74 68 65 73 65 20 76 61 72 69 | you.don't.use.both.of.these.vari |
| 1fc0 | 61 62 6c 65 73 2c 20 74 68 65 6e 20 75 73 65 20 60 68 74 2d 6d 61 70 27 20 74 6f 20 61 76 6f 69 | ables,.then.use.`ht-map'.to.avoi |
| 1fe0 | 64 20 77 61 72 6e 69 6e 67 73 2e 22 0a 20 20 60 28 68 74 2d 6d 61 70 20 28 6c 61 6d 62 64 61 20 | d.warnings."...`(ht-map.(lambda. |
| 2000 | 28 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 | (key.value).,form).,table))..(de |
| 2020 | 66 75 6e 20 68 74 2d 6b 65 79 73 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 | fun.ht-keys.(table)..."Return.a. |
| 2040 | 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 6b 65 79 73 20 69 6e 20 54 41 42 4c 45 2e 22 0a | list.of.all.the.keys.in.TABLE.". |
| 2060 | 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)) |
| 2080 | 0a 20 20 28 68 74 2d 6d 61 70 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 5f 76 61 6c 75 65 29 20 | ...(ht-map.(lambda.(key._value). |
| 20a0 | 6b 65 79 29 20 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 76 61 6c 75 65 73 20 28 | key).table))..(defun.ht-values.( |
| 20c0 | 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 61 6c 6c 20 74 | table)..."Return.a.list.of.all.t |
| 20e0 | 68 65 20 76 61 6c 75 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 | he.values.in.TABLE."...(declare. |
| 2100 | 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 68 74 2d 6d 61 70 20 | (side-effect-free.t))...(ht-map. |
| 2120 | 28 6c 61 6d 62 64 61 20 28 5f 6b 65 79 20 76 61 6c 75 65 29 20 76 61 6c 75 65 29 20 74 61 62 6c | (lambda.(_key.value).value).tabl |
| 2140 | 65 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 69 74 65 6d 73 20 28 74 61 62 6c 65 29 0a 20 20 22 | e))..(defun.ht-items.(table)..." |
| 2160 | 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 74 77 6f 2d 65 6c 65 6d 65 6e 74 20 6c 69 73 | Return.a.list.of.two-element.lis |
| 2180 | 74 73 20 5c 5c 3d 27 28 6b 65 79 20 76 61 6c 75 65 29 20 66 72 6f 6d 20 54 41 42 4c 45 2e 22 0a | ts.\\='(key.value).from.TABLE.". |
| 21a0 | 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)) |
| 21c0 | 0a 20 20 28 68 74 2d 61 6d 61 70 20 28 6c 69 73 74 20 6b 65 79 20 76 61 6c 75 65 29 20 74 61 62 | ...(ht-amap.(list.key.value).tab |
| 21e0 | 6c 65 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 65 61 63 68 20 27 6d 61 70 68 61 73 | le))..(defalias.'ht-each.'maphas |
| 2200 | 68 0a 20 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 | h..."Apply.FUNCTION.to.each.key- |
| 2220 | 76 61 6c 75 65 20 70 61 69 72 20 6f 66 20 54 41 42 4c 45 2e 0a 52 65 74 75 72 6e 73 20 6e 69 6c | value.pair.of.TABLE..Returns.nil |
| 2240 | 2c 20 75 73 65 64 20 66 6f 72 20 73 69 64 65 2d 65 66 66 65 63 74 73 20 6f 6e 6c 79 2e 22 29 0a | ,.used.for.side-effects.only."). |
| 2260 | 0a 28 64 65 66 6d 61 63 72 6f 20 68 74 2d 61 65 61 63 68 20 28 66 6f 72 6d 20 74 61 62 6c 65 29 | .(defmacro.ht-aeach.(form.table) |
| 2280 | 0a 20 20 22 41 6e 61 70 68 6f 72 69 63 20 76 65 72 73 69 6f 6e 20 6f 66 20 60 68 74 2d 65 61 63 | ..."Anaphoric.version.of.`ht-eac |
| 22a0 | 68 27 2e 0a 46 6f 72 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 | h'..For.every.key-value.pair.in. |
| 22c0 | 54 41 42 4c 45 2c 20 65 76 61 6c 75 61 74 65 20 46 4f 52 4d 20 77 69 74 68 20 74 68 65 0a 76 61 | TABLE,.evaluate.FORM.with.the.va |
| 22e0 | 72 69 61 62 6c 65 73 20 6b 65 79 20 61 6e 64 20 76 61 6c 75 65 20 62 6f 75 6e 64 2e 22 0a 20 20 | riables.key.and.value.bound."... |
| 2300 | 60 28 68 74 2d 65 61 63 68 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 20 2c 66 | `(ht-each.(lambda.(key.value).,f |
| 2320 | 6f 72 6d 29 20 2c 74 61 62 6c 65 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 73 65 6c 65 63 74 2d | orm).,table))..(defun.ht-select- |
| 2340 | 6b 65 79 73 20 28 74 61 62 6c 65 20 6b 65 79 73 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 63 6f | keys.(table.keys)..."Return.a.co |
| 2360 | 70 79 20 6f 66 20 54 41 42 4c 45 20 77 69 74 68 20 6f 6e 6c 79 20 74 68 65 20 73 70 65 63 69 66 | py.of.TABLE.with.only.the.specif |
| 2380 | 69 65 64 20 4b 45 59 53 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 2d 65 66 66 65 | ied.KEYS."...(declare.(side-effe |
| 23a0 | 63 74 2d 66 72 65 65 20 74 29 29 0a 20 20 28 6c 65 74 20 28 28 6e 6f 74 2d 66 6f 75 6e 64 2d 73 | ct-free.t))...(let.((not-found-s |
| 23c0 | 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 6f 75 6e | ymbol.(make-symbol."ht--not-foun |
| 23e0 | 64 22 29 29 0a 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 0a 20 20 20 20 28 73 65 74 71 20 72 | d")).........result).....(setq.r |
| 2400 | 65 73 75 6c 74 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 3a 74 65 73 74 20 28 68 61 | esult.(make-hash-table.:test.(ha |
| 2420 | 73 68 2d 74 61 62 6c 65 2d 74 65 73 74 20 74 61 62 6c 65 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 | sh-table-test.table))).....(doli |
| 2440 | 73 74 20 28 6b 65 79 20 6b 65 79 73 20 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 28 69 66 20 28 | st.(key.keys.result).......(if.( |
| 2460 | 6e 6f 74 20 28 65 71 75 61 6c 20 28 67 65 74 68 61 73 68 20 6b 65 79 20 74 61 62 6c 65 20 6e 6f | not.(equal.(gethash.key.table.no |
| 2480 | 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 20 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c | t-found-symbol).not-found-symbol |
| 24a0 | 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 6b 65 79 20 28 67 65 74 68 61 | ))...........(puthash.key.(getha |
| 24c0 | 73 68 20 6b 65 79 20 74 61 62 6c 65 29 20 72 65 73 75 6c 74 29 29 29 29 29 0a 0a 28 64 65 66 75 | sh.key.table).result)))))..(defu |
| 24e0 | 6e 20 68 74 2d 3e 70 6c 69 73 74 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 | n.ht->plist.(table)..."Return.a. |
| 2500 | 66 6c 61 74 20 6c 69 73 74 20 5c 5c 3d 27 28 6b 65 79 31 20 76 61 6c 75 65 31 20 6b 65 79 32 20 | flat.list.\\='(key1.value1.key2. |
| 2520 | 76 61 6c 75 65 32 2e 2e 2e 29 20 66 72 6f 6d 20 54 41 42 4c 45 2e 0a 0a 4e 6f 74 65 20 74 68 61 | value2...).from.TABLE...Note.tha |
| 2540 | 74 20 68 61 73 68 20 74 61 62 6c 65 73 20 61 72 65 20 75 6e 6f 72 64 65 72 65 64 2c 20 73 6f 20 | t.hash.tables.are.unordered,.so. |
| 2560 | 74 68 69 73 20 63 61 6e 6e 6f 74 20 62 65 20 61 6e 20 65 78 61 63 74 0a 69 6e 76 65 72 73 65 20 | this.cannot.be.an.exact.inverse. |
| 2580 | 6f 66 20 60 68 74 3c 2d 70 6c 69 73 74 27 2e 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 | of.`ht<-plist'...The.following.i |
| 25a0 | 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 3a 0a 0a 5c 28 6c 65 74 20 28 28 64 61 74 61 20 | s.not.guaranteed:..\(let.((data. |
| 25c0 | 5c 5c 3d 27 28 61 20 62 20 63 20 64 29 29 29 0a 20 20 28 65 71 75 61 6c 70 20 64 61 74 61 0a 20 | \\='(a.b.c.d)))...(equalp.data.. |
| 25e0 | 20 20 20 20 20 20 20 20 20 28 68 74 2d 3e 70 6c 69 73 74 20 28 68 74 3c 2d 70 6c 69 73 74 20 64 | .........(ht->plist.(ht<-plist.d |
| 2600 | 61 74 61 29 29 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 | ata))))"...(declare.(side-effect |
| 2620 | 2d 66 72 65 65 20 74 29 29 0a 20 20 28 61 70 70 6c 79 20 27 61 70 70 65 6e 64 20 28 68 74 2d 69 | -free.t))...(apply.'append.(ht-i |
| 2640 | 74 65 6d 73 20 74 61 62 6c 65 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 74 6f 2d | tems.table)))..(defalias.'ht-to- |
| 2660 | 70 6c 69 73 74 20 27 68 74 2d 3e 70 6c 69 73 74 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e | plist.'ht->plist)..(define-inlin |
| 2680 | 65 20 68 74 2d 63 6f 70 79 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 73 68 | e.ht-copy.(table)..."Return.a.sh |
| 26a0 | 61 6c 6c 6f 77 20 63 6f 70 79 20 6f 66 20 54 41 42 4c 45 20 28 6b 65 79 73 20 61 6e 64 20 76 61 | allow.copy.of.TABLE.(keys.and.va |
| 26c0 | 6c 75 65 73 20 61 72 65 20 73 68 61 72 65 64 29 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 | lues.are.shared)."...(declare.(s |
| 26e0 | 69 64 65 2d 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 71 75 | ide-effect-free.t))...(inline-qu |
| 2700 | 6f 74 65 20 28 63 6f 70 79 2d 68 61 73 68 2d 74 61 62 6c 65 20 2c 74 61 62 6c 65 29 29 29 0a 0a | ote.(copy-hash-table.,table))).. |
| 2720 | 28 64 65 66 75 6e 20 68 74 2d 3e 61 6c 69 73 74 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 | (defun.ht->alist.(table)..."Retu |
| 2740 | 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 74 77 6f 2d 65 6c 65 6d 65 6e 74 20 6c 69 73 74 73 20 5c | rn.a.list.of.two-element.lists.\ |
| 2760 | 5c 3d 27 28 6b 65 79 20 2e 20 76 61 6c 75 65 29 20 66 72 6f 6d 20 54 41 42 4c 45 2e 0a 0a 4e 6f | \='(key...value).from.TABLE...No |
| 2780 | 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 6e 6f 72 64 65 72 65 | te.that.hash.tables.are.unordere |
| 27a0 | 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 78 61 63 74 0a 69 6e | d,.so.this.cannot.be.an.exact.in |
| 27c0 | 76 65 72 73 65 20 6f 66 20 60 68 74 3c 2d 61 6c 69 73 74 27 2e 20 20 54 68 65 20 66 6f 6c 6c 6f | verse.of.`ht<-alist'...The.follo |
| 27e0 | 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 5c 28 6c 65 74 20 28 | wing.is.not.guaranteed:..\(let.( |
| 2800 | 28 64 61 74 61 20 5c 5c 3d 27 28 28 61 20 2e 20 62 29 20 28 63 20 2e 20 64 29 29 29 29 0a 20 20 | (data.\\='((a...b).(c...d))))... |
| 2820 | 28 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 61 6c 69 73 | (equalp.data...........(ht->alis |
| 2840 | 74 20 28 68 74 3c 2d 61 6c 69 73 74 20 64 61 74 61 29 29 29 29 22 0a 20 20 28 64 65 63 6c 61 72 | t.(ht<-alist.data))))"...(declar |
| 2860 | 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 68 74 2d 61 6d | e.(side-effect-free.t))...(ht-am |
| 2880 | 61 70 20 28 63 6f 6e 73 20 6b 65 79 20 76 61 6c 75 65 29 20 74 61 62 6c 65 29 29 0a 0a 28 64 65 | ap.(cons.key.value).table))..(de |
| 28a0 | 66 61 6c 69 61 73 20 27 68 74 2d 74 6f 2d 61 6c 69 73 74 20 27 68 74 2d 3e 61 6c 69 73 74 29 0a | falias.'ht-to-alist.'ht->alist). |
| 28c0 | 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 3f 20 27 68 61 73 68 2d 74 61 62 6c 65 2d 70 29 0a 0a | .(defalias.'ht?.'hash-table-p).. |
| 28e0 | 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 70 20 27 68 61 73 68 2d 74 61 62 6c 65 2d 70 29 0a 0a | (defalias.'ht-p.'hash-table-p).. |
| 2900 | 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 74 2d 63 6f 6e 74 61 69 6e 73 3f 20 28 74 61 62 | (define-inline.ht-contains?.(tab |
| 2920 | 6c 65 20 6b 65 79 29 0a 20 20 22 52 65 74 75 72 6e 20 5c 5c 3d 27 74 20 69 66 20 54 41 42 4c 45 | le.key)..."Return.\\='t.if.TABLE |
| 2940 | 20 63 6f 6e 74 61 69 6e 73 20 4b 45 59 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 73 69 64 65 | .contains.KEY."...(declare.(side |
| 2960 | 2d 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 71 75 6f 74 65 | -effect-free.t))...(inline-quote |
| 2980 | 0a 20 20 20 28 6c 65 74 20 28 28 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 20 28 6d 61 6b | ....(let.((not-found-symbol.(mak |
| 29a0 | 65 2d 73 79 6d 62 6f 6c 20 22 68 74 2d 2d 6e 6f 74 2d 66 6f 75 6e 64 22 29 29 29 0a 20 20 20 20 | e-symbol."ht--not-found")))..... |
| 29c0 | 20 28 6e 6f 74 20 28 65 71 20 28 68 74 2d 67 65 74 20 2c 74 61 62 6c 65 20 2c 6b 65 79 20 6e 6f | .(not.(eq.(ht-get.,table.,key.no |
| 29e0 | 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c 29 20 6e 6f 74 2d 66 6f 75 6e 64 2d 73 79 6d 62 6f 6c | t-found-symbol).not-found-symbol |
| 2a00 | 29 29 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 63 6f 6e 74 61 69 6e 73 2d 70 20 | )))))..(defalias.'ht-contains-p. |
| 2a20 | 27 68 74 2d 63 6f 6e 74 61 69 6e 73 3f 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 20 68 | 'ht-contains?)..(define-inline.h |
| 2a40 | 74 2d 73 69 7a 65 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 61 63 74 | t-size.(table)..."Return.the.act |
| 2a60 | 75 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 65 6e 74 72 69 65 73 20 69 6e 20 54 41 42 4c 45 2e 22 | ual.number.of.entries.in.TABLE." |
| 2a80 | 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 29 | ...(declare.(side-effect-free.t) |
| 2aa0 | 29 0a 20 20 28 69 6e 6c 69 6e 65 2d 71 75 6f 74 65 0a 20 20 20 28 68 61 73 68 2d 74 61 62 6c 65 | )...(inline-quote....(hash-table |
| 2ac0 | 2d 63 6f 75 6e 74 20 2c 74 61 62 6c 65 29 29 29 0a 0a 28 64 65 66 69 6e 65 2d 69 6e 6c 69 6e 65 | -count.,table)))..(define-inline |
| 2ae0 | 20 68 74 2d 65 6d 70 74 79 3f 20 28 74 61 62 6c 65 29 0a 20 20 22 52 65 74 75 72 6e 20 74 72 75 | .ht-empty?.(table)..."Return.tru |
| 2b00 | 65 20 69 66 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 65 | e.if.the.actual.number.of.entrie |
| 2b20 | 73 20 69 6e 20 54 41 42 4c 45 20 69 73 20 7a 65 72 6f 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 | s.in.TABLE.is.zero."...(declare. |
| 2b40 | 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 69 6e 6c 69 6e 65 2d | (side-effect-free.t))...(inline- |
| 2b60 | 71 75 6f 74 65 0a 20 20 20 28 7a 65 72 6f 70 20 28 68 74 2d 73 69 7a 65 20 2c 74 61 62 6c 65 29 | quote....(zerop.(ht-size.,table) |
| 2b80 | 29 29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 68 74 2d 65 6d 70 74 79 2d 70 20 27 68 74 2d 65 | )))..(defalias.'ht-empty-p.'ht-e |
| 2ba0 | 6d 70 74 79 3f 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 73 65 6c 65 63 74 20 28 66 75 6e 63 74 69 | mpty?)..(defun.ht-select.(functi |
| 2bc0 | 6f 6e 20 74 61 62 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 | on.table)..."Return.a.hash.table |
| 2be0 | 20 63 6f 6e 74 61 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 | .containing.all.entries.in.TABLE |
| 2c00 | 20 66 6f 72 20 77 68 69 63 68 0a 46 55 4e 43 54 49 4f 4e 20 72 65 74 75 72 6e 73 20 61 20 74 72 | .for.which.FUNCTION.returns.a.tr |
| 2c20 | 75 74 68 79 20 76 61 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 | uthy.value...FUNCTION.is.called. |
| 2c40 | 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 4c 55 | with.two.arguments,.KEY.and.VALU |
| 2c60 | 45 2e 22 0a 20 20 28 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 | E."...(let.((results.(ht-create) |
| 2c80 | 29 29 0a 20 20 20 20 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 | )).....(ht-each......(lambda.(ke |
| 2ca0 | 79 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 66 75 6e 63 61 6c 6c 20 66 | y.value)........(when.(funcall.f |
| 2cc0 | 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 20 20 28 68 74 2d | unction.key.value)..........(ht- |
| 2ce0 | 73 65 74 21 20 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 | set!.results.key.value)))......t |
| 2d00 | 61 62 6c 65 29 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 | able).....results))..(defun.ht-r |
| 2d20 | 65 6a 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 | eject.(function.table)..."Return |
| 2d40 | 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 |
| 2d60 | 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 |
| 2d80 | 20 72 65 74 75 72 6e 73 20 61 20 66 61 6c 73 79 20 76 61 6c 75 65 2e 0a 0a 46 55 4e 43 54 49 4f | .returns.a.falsy.value...FUNCTIO |
| 2da0 | 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 20 | N.is.called.with.two.arguments,. |
| 2dc0 | 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 73 | KEY.and.VALUE."...(let.((results |
| 2de0 | 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 20 | .(ht-create))).....(ht-each..... |
| 2e00 | 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 75 6e 6c | .(lambda.(key.value)........(unl |
| 2e20 | 65 73 73 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 | ess.(funcall.function.key.value) |
| 2e40 | 0a 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 | ..........(ht-set!.results.key.v |
| 2e60 | 61 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 | alue)))......table).....results) |
| 2e80 | 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 72 65 6a 65 63 74 21 20 28 66 75 6e 63 74 69 6f 6e 20 74 | )..(defun.ht-reject!.(function.t |
| 2ea0 | 61 62 6c 65 29 0a 20 20 22 44 65 6c 65 74 65 20 65 6e 74 72 69 65 73 20 66 72 6f 6d 20 54 41 42 | able)..."Delete.entries.from.TAB |
| 2ec0 | 4c 45 20 66 6f 72 20 77 68 69 63 68 20 46 55 4e 43 54 49 4f 4e 20 72 65 74 75 72 6e 73 20 6e 6f | LE.for.which.FUNCTION.returns.no |
| 2ee0 | 6e 2d 6e 69 6c 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 | n-nil...FUNCTION.is.called.with. |
| 2f00 | 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 4c 55 45 2e 22 0a 20 | two.arguments,.KEY.and.VALUE.".. |
| 2f20 | 20 28 68 74 2d 65 61 63 68 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 | .(ht-each....(lambda.(key.value) |
| 2f40 | 0a 20 20 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 | ......(when.(funcall.function.ke |
| 2f60 | 79 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 28 72 65 6d 68 61 73 68 20 6b 65 79 20 74 61 62 | y.value)........(remhash.key.tab |
| 2f80 | 6c 65 29 29 29 0a 20 20 20 74 61 62 6c 65 29 0a 20 20 6e 69 6c 29 0a 0a 28 64 65 66 61 6c 69 61 | le)))....table)...nil)..(defalia |
| 2fa0 | 73 20 27 68 74 2d 64 65 6c 65 74 65 2d 69 66 20 27 68 74 2d 72 65 6a 65 63 74 21 29 0a 0a 28 64 | s.'ht-delete-if.'ht-reject!)..(d |
| 2fc0 | 65 66 75 6e 20 68 74 2d 66 69 6e 64 20 28 66 75 6e 63 74 69 6f 6e 20 74 61 62 6c 65 29 0a 20 20 | efun.ht-find.(function.table)... |
| 2fe0 | 22 52 65 74 75 72 6e 20 28 6b 65 79 2c 20 76 61 6c 75 65 29 20 66 72 6f 6d 20 54 41 42 4c 45 20 | "Return.(key,.value).from.TABLE. |
| 3000 | 66 6f 72 20 77 68 69 63 68 20 46 55 4e 43 54 49 4f 4e 20 72 65 74 75 72 6e 73 20 61 20 74 72 75 | for.which.FUNCTION.returns.a.tru |
| 3020 | 74 68 79 20 76 61 6c 75 65 2e 0a 52 65 74 75 72 6e 20 6e 69 6c 20 6f 74 68 65 72 77 69 73 65 2e | thy.value..Return.nil.otherwise. |
| 3040 | 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 6f 20 61 72 | ..FUNCTION.is.called.with.two.ar |
| 3060 | 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 63 61 74 63 | guments,.KEY.and.VALUE."...(catc |
| 3080 | 68 20 27 62 72 65 61 6b 0a 20 20 20 20 28 68 74 2d 65 61 63 68 0a 20 20 20 20 20 28 6c 61 6d 62 | h.'break.....(ht-each......(lamb |
| 30a0 | 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 65 6e 20 28 66 75 6e | da.(key.value)........(when.(fun |
| 30c0 | 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 20 20 20 20 20 20 20 | call.function.key.value)........ |
| 30e0 | 20 20 28 74 68 72 6f 77 20 27 62 72 65 61 6b 20 28 6c 69 73 74 20 6b 65 79 20 76 61 6c 75 65 29 | ..(throw.'break.(list.key.value) |
| 3100 | 29 29 29 0a 20 20 20 20 20 74 61 62 6c 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 74 2d 65 71 75 | )))......table)))..(defun.ht-equ |
| 3120 | 61 6c 3f 20 28 74 61 62 6c 65 31 20 74 61 62 6c 65 32 29 0a 20 20 22 52 65 74 75 72 6e 20 74 20 | al?.(table1.table2)..."Return.t. |
| 3140 | 69 66 20 54 41 42 4c 45 31 20 61 6e 64 20 54 41 42 4c 45 32 20 68 61 76 65 20 74 68 65 20 73 61 | if.TABLE1.and.TABLE2.have.the.sa |
| 3160 | 6d 65 20 6b 65 79 73 20 61 6e 64 20 76 61 6c 75 65 73 2e 0a 44 6f 65 73 20 6e 6f 74 20 63 6f 6d | me.keys.and.values..Does.not.com |
| 3180 | 70 61 72 65 20 65 71 75 61 6c 69 74 79 20 70 72 65 64 69 63 61 74 65 73 2e 22 0a 20 20 28 64 65 | pare.equality.predicates."...(de |
| 31a0 | 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 28 6c | clare.(side-effect-free.t))...(l |
| 31c0 | 65 74 20 28 28 6b 65 79 73 31 20 28 68 74 2d 6b 65 79 73 20 74 61 62 6c 65 31 29 29 0a 20 20 20 | et.((keys1.(ht-keys.table1)).... |
| 31e0 | 20 20 20 20 20 28 6b 65 79 73 32 20 28 68 74 2d 6b 65 79 73 20 74 61 62 6c 65 32 29 29 0a 20 20 | .....(keys2.(ht-keys.table2))... |
| 3200 | 20 20 20 20 20 20 28 73 65 6e 74 69 6e 65 6c 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 68 74 | ......(sentinel.(make-symbol."ht |
| 3220 | 2d 73 65 6e 74 69 6e 65 6c 22 29 29 29 0a 20 20 20 20 28 61 6e 64 20 28 65 71 75 61 6c 20 28 6c | -sentinel"))).....(and.(equal.(l |
| 3240 | 65 6e 67 74 68 20 6b 65 79 73 31 29 20 28 6c 65 6e 67 74 68 20 6b 65 79 73 32 29 29 0a 20 20 20 | ength.keys1).(length.keys2)).... |
| 3260 | 20 20 20 20 20 20 28 2d 2d 61 6c 6c 3f 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 68 74 2d | ......(--all?...........(if.(ht- |
| 3280 | 70 20 28 68 74 2d 67 65 74 20 74 61 62 6c 65 31 20 69 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 | p.(ht-get.table1.it))........... |
| 32a0 | 20 20 20 20 28 68 74 2d 65 71 75 61 6c 2d 70 20 28 68 74 2d 67 65 74 20 74 61 62 6c 65 31 20 69 | ....(ht-equal-p.(ht-get.table1.i |
| 32c0 | 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 74 | t)...........................(ht |
| 32e0 | 2d 67 65 74 20 74 61 62 6c 65 32 20 69 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 | -get.table2.it)).............(eq |
| 3300 | 75 61 6c 20 28 68 74 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 | ual.(ht-get.table1.it).......... |
| 3320 | 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 20 73 65 6e 74 69 6e | ........(ht-get.table2.it.sentin |
| 3340 | 65 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 6b 65 79 73 31 29 29 29 29 0a 0a 28 64 65 66 61 | el)))...........keys1))))..(defa |
| 3360 | 6c 69 61 73 20 27 68 74 2d 65 71 75 61 6c 2d 70 20 27 68 74 2d 65 71 75 61 6c 3f 29 0a 0a 28 70 | lias.'ht-equal-p.'ht-equal?)..(p |
| 3380 | 72 6f 76 69 64 65 20 27 68 74 29 0a 3b 3b 3b 20 68 74 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a | rovide.'ht).;;;.ht.el.ends.here. |
| 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 | ................................ |