| ofs | hex dump | ascii | 
|---|
| 0000 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | tsc-20220212.1632/.............. | 
| 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 35 37 30 00 20 35 00 00 00 | 0000000.00000000000.011570..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 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 43 61 72 67 6f 2e 6c 6f 63 6b 00 00 00 00 | tsc-20220212.1632/Cargo.lock.... | 
| 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 31 36 33 33 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 35 30 37 00 20 30 00 00 00 | 0016337.00000000000.013507..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 | 23 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 61    75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 40 67 65 | #.This.file.is.automatically.@ge | 
| 0420 | 6e 65 72 61 74 65 64 20 62 79 20 43 61 72 67 6f    2e 0a 23 20 49 74 20 69 73 20 6e 6f 74 20 69 6e | nerated.by.Cargo..#.It.is.not.in | 
| 0440 | 74 65 6e 64 65 64 20 66 6f 72 20 6d 61 6e 75 61    6c 20 65 64 69 74 69 6e 67 2e 0a 76 65 72 73 69 | tended.for.manual.editing..versi | 
| 0460 | 6f 6e 20 3d 20 33 0a 0a 5b 5b 70 61 63 6b 61 67    65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 61 68 6f 2d | on.=.3..[[package]].name.=."aho- | 
| 0480 | 63 6f 72 61 73 69 63 6b 22 0a 76 65 72 73 69 6f    6e 20 3d 20 22 30 2e 37 2e 31 38 22 0a 73 6f 75 | corasick".version.=."0.7.18".sou | 
| 04a0 | 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79 2b    68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | rce.=."registry+https://github.c | 
| 04c0 | 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61    74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 | om/rust-lang/crates.io-index".ch | 
| 04e0 | 65 63 6b 73 75 6d 20 3d 20 22 31 65 33 37 63 66    64 35 65 37 36 35 37 61 64 61 34 35 66 37 34 32 | ecksum.=."1e37cfd5e7657ada45f742 | 
| 0500 | 64 36 65 39 39 63 61 35 37 38 38 35 38 30 62 35    63 35 32 39 64 63 37 38 66 61 66 31 31 65 63 65 | d6e99ca5788580b5c529dc78faf11ece | 
| 0520 | 36 64 63 37 30 32 36 35 36 66 22 0a 64 65 70 65    6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a 20 22 6d | 6dc702656f".dependencies.=.[.."m | 
| 0540 | 65 6d 63 68 72 22 2c 0a 5d 0a 0a 5b 5b 70 61 63    6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 61 | emchr",.]..[[package]].name.=."a | 
| 0560 | 6e 79 68 6f 77 22 0a 76 65 72 73 69 6f 6e 20 3d    20 22 31 2e 30 2e 35 31 22 0a 73 6f 75 72 63 65 | nyhow".version.=."1.0.51".source | 
| 0580 | 20 3d 20 22 72 65 67 69 73 74 72 79 2b 68 74 74    70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f | .=."registry+https://github.com/ | 
| 05a0 | 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73    2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b | rust-lang/crates.io-index".check | 
| 05c0 | 73 75 6d 20 3d 20 22 38 62 32 36 37 30 32 66 33    31 35 66 35 33 62 36 30 37 31 32 35 39 65 31 35 | sum.=."8b26702f315f53b6071259e15 | 
| 05e0 | 64 64 39 64 36 34 35 32 38 32 31 33 62 34 34 64    36 31 64 65 31 65 63 39 32 36 65 63 61 37 37 31 | dd9d64528213b44d61de1ec926eca771 | 
| 0600 | 35 64 36 32 32 30 33 22 0a 0a 5b 5b 70 61 63 6b    61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 63 63 | 5d62203"..[[package]].name.=."cc | 
| 0620 | 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 30    2e 37 32 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 | ".version.=."1.0.72".source.=."r | 
| 0640 | 65 67 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f    67 69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d | egistry+https://github.com/rust- | 
| 0660 | 6c 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69    6e 64 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d | lang/crates.io-index".checksum.= | 
| 0680 | 20 22 32 32 61 39 31 33 37 62 39 35 65 61 30 36    38 36 34 65 30 31 38 33 37 35 62 37 32 61 64 66 | ."22a9137b95ea06864e018375b72adf | 
| 06a0 | 62 37 64 62 36 65 36 66 36 38 63 66 63 38 64 66    35 61 30 34 64 30 30 32 38 38 30 35 30 34 38 35 | b7db6e6f68cfc8df5a04d00288050485 | 
| 06c0 | 65 65 22 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d    0a 6e 61 6d 65 20 3d 20 22 63 66 67 2d 69 66 22 | ee"..[[package]].name.=."cfg-if" | 
| 06e0 | 0a 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 30 2e    30 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 67 | .version.=."1.0.0".source.=."reg | 
| 0700 | 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69    74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 | istry+https://github.com/rust-la | 
| 0720 | 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64    65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 | ng/crates.io-index".checksum.=." | 
| 0740 | 62 61 66 31 64 65 34 33 33 39 37 36 31 35 38 38    62 63 30 36 31 39 65 33 63 62 63 30 31 32 30 65 | baf1de4339761588bc0619e3cbc0120e | 
| 0760 | 65 35 38 32 65 62 62 37 34 62 35 33 62 34 65 66    62 66 37 39 31 31 37 62 64 32 64 61 34 30 66 64 | e582ebb74b53b4efbf79117bd2da40fd | 
| 0780 | 22 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e    61 6d 65 20 3d 20 22 63 74 6f 72 22 0a 76 65 72 | "..[[package]].name.=."ctor".ver | 
| 07a0 | 73 69 6f 6e 20 3d 20 22 30 2e 31 2e 32 31 22 0a    73 6f 75 72 63 65 20 3d 20 22 72 65 67 69 73 74 | sion.=."0.1.21".source.=."regist | 
| 07c0 | 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75    62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f | ry+https://github.com/rust-lang/ | 
| 07e0 | 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22    0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 63 63 63 | crates.io-index".checksum.=."ccc | 
| 0800 | 30 61 34 38 61 39 62 38 32 36 61 63 64 66 34 30    32 38 35 39 35 61 64 63 39 64 62 39 32 63 61 65 | 0a48a9b826acdf4028595adc9db92cae | 
| 0820 | 61 33 35 32 66 37 61 66 30 31 31 61 33 30 33 34    61 63 64 31 37 32 61 35 32 61 30 61 61 22 0a 64 | a352f7af011a3034acd172a52a0aa".d | 
| 0840 | 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a    20 22 71 75 6f 74 65 22 2c 0a 20 22 73 79 6e 22 | ependencies.=.[.."quote",.."syn" | 
| 0860 | 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d    0a 6e 61 6d 65 20 3d 20 22 64 61 72 6c 69 6e 67 | ,.]..[[package]].name.=."darling | 
| 0880 | 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 30 2e 31    30 2e 32 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 | ".version.=."0.10.2".source.=."r | 
| 08a0 | 65 67 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f    67 69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d | egistry+https://github.com/rust- | 
| 08c0 | 6c 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69    6e 64 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d | lang/crates.io-index".checksum.= | 
| 08e0 | 20 22 30 64 37 30 36 65 37 35 64 38 37 65 33 35    35 36 39 64 62 37 38 31 61 39 62 35 65 32 34 31 | ."0d706e75d87e35569db781a9b5e241 | 
| 0900 | 36 63 66 66 31 32 33 36 61 34 37 65 64 33 38 30    38 33 31 66 39 35 39 33 38 32 63 63 64 35 66 38 | 6cff1236a47ed380831f959382ccd5f8 | 
| 0920 | 35 38 22 0a 64 65 70 65 6e 64 65 6e 63 69 65 73    20 3d 20 5b 0a 20 22 64 61 72 6c 69 6e 67 5f 63 | 58".dependencies.=.[.."darling_c | 
| 0940 | 6f 72 65 22 2c 0a 20 22 64 61 72 6c 69 6e 67 5f    6d 61 63 72 6f 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 | ore",.."darling_macro",.]..[[pac | 
| 0960 | 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 64    61 72 6c 69 6e 67 5f 63 6f 72 65 22 0a 76 65 72 | kage]].name.=."darling_core".ver | 
| 0980 | 73 69 6f 6e 20 3d 20 22 30 2e 31 30 2e 32 22 0a    73 6f 75 72 63 65 20 3d 20 22 72 65 67 69 73 74 | sion.=."0.10.2".source.=."regist | 
| 09a0 | 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75    62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f | ry+https://github.com/rust-lang/ | 
| 09c0 | 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22    0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 66 30 63 | crates.io-index".checksum.=."f0c | 
| 09e0 | 39 36 30 61 65 32 64 61 34 64 65 38 38 61 39 31    62 32 64 39 32 30 63 32 61 37 32 33 33 62 34 30 | 960ae2da4de88a91b2d920c2a7233b40 | 
| 0a00 | 30 62 63 33 33 63 62 32 38 34 35 33 61 32 39 38    37 38 32 32 64 38 33 39 32 35 31 39 62 22 0a 64 | 0bc33cb28453a2987822d8392519b".d | 
| 0a20 | 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a    20 22 66 6e 76 22 2c 0a 20 22 69 64 65 6e 74 5f | ependencies.=.[.."fnv",.."ident_ | 
| 0a40 | 63 61 73 65 22 2c 0a 20 22 70 72 6f 63 2d 6d 61    63 72 6f 32 22 2c 0a 20 22 71 75 6f 74 65 22 2c | case",.."proc-macro2",.."quote", | 
| 0a60 | 0a 20 22 73 74 72 73 69 6d 22 2c 0a 20 22 73 79    6e 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 | .."strsim",.."syn",.]..[[package | 
| 0a80 | 5d 5d 0a 6e 61 6d 65 20 3d 20 22 64 61 72 6c 69    6e 67 5f 6d 61 63 72 6f 22 0a 76 65 72 73 69 6f | ]].name.=."darling_macro".versio | 
| 0aa0 | 6e 20 3d 20 22 30 2e 31 30 2e 32 22 0a 73 6f 75    72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79 2b | n.=."0.10.2".source.=."registry+ | 
| 0ac0 | 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63    6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61 | https://github.com/rust-lang/cra | 
| 0ae0 | 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68    65 63 6b 73 75 6d 20 3d 20 22 64 39 62 35 61 32 | tes.io-index".checksum.=."d9b5a2 | 
| 0b00 | 66 34 61 63 34 39 36 39 38 32 32 63 36 32 32 32    34 38 31 35 64 30 36 39 39 35 32 36 35 36 63 61 | f4ac4969822c62224815d069952656ca | 
| 0b20 | 64 63 37 30 38 34 66 64 63 61 39 37 35 31 65 36    64 39 35 39 31 38 39 62 37 32 22 0a 64 65 70 65 | dc7084fdca9751e6d959189b72".depe | 
| 0b40 | 6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a 20 22 64    61 72 6c 69 6e 67 5f 63 6f 72 65 22 2c 0a 20 22 | ndencies.=.[.."darling_core",.." | 
| 0b60 | 71 75 6f 74 65 22 2c 0a 20 22 73 79 6e 22 2c 0a    5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e | quote",.."syn",.]..[[package]].n | 
| 0b80 | 61 6d 65 20 3d 20 22 65 6d 61 63 73 22 0a 76 65    72 73 69 6f 6e 20 3d 20 22 30 2e 31 38 2e 30 22 | ame.=."emacs".version.=."0.18.0" | 
| 0ba0 | 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 67 69 73    74 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 | .source.=."registry+https://gith | 
| 0bc0 | 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67    2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 | ub.com/rust-lang/crates.io-index | 
| 0be0 | 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 36 37    39 37 61 39 34 30 31 38 39 64 33 35 33 64 65 37 | ".checksum.=."6797a940189d353de7 | 
| 0c00 | 39 62 65 63 33 32 61 62 65 37 31 37 61 65 65 65    63 64 37 39 61 30 38 32 33 36 65 38 34 34 30 34 | 9bec32abe717aeeecd79a08236e84404 | 
| 0c20 | 63 38 38 38 33 35 34 65 30 34 30 36 36 35 22 0a    64 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 5b | c888354e040665".dependencies.=.[ | 
| 0c40 | 0a 20 22 61 6e 79 68 6f 77 22 2c 0a 20 22 63 74    6f 72 22 2c 0a 20 22 65 6d 61 63 73 2d 6d 61 63 | .."anyhow",.."ctor",.."emacs-mac | 
| 0c60 | 72 6f 73 22 2c 0a 20 22 65 6d 61 63 73 5f 6d 6f    64 75 6c 65 22 2c 0a 20 22 6f 6e 63 65 5f 63 65 | ros",.."emacs_module",.."once_ce | 
| 0c80 | 6c 6c 22 2c 0a 20 22 72 75 73 74 63 5f 76 65 72    73 69 6f 6e 22 2c 0a 20 22 74 68 69 73 65 72 72 | ll",.."rustc_version",.."thiserr | 
| 0ca0 | 6f 72 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67    65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 65 6d 61 63 | or",.]..[[package]].name.=."emac | 
| 0cc0 | 73 2d 6d 61 63 72 6f 73 22 0a 76 65 72 73 69 6f    6e 20 3d 20 22 30 2e 31 37 2e 30 22 0a 73 6f 75 | s-macros".version.=."0.17.0".sou | 
| 0ce0 | 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79 2b    68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | rce.=."registry+https://github.c | 
| 0d00 | 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61    74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 | om/rust-lang/crates.io-index".ch | 
| 0d20 | 65 63 6b 73 75 6d 20 3d 20 22 36 39 36 35 36 66    64 66 65 37 63 32 36 30 38 62 38 37 31 36 34 39 | ecksum.=."69656fdfe7c2608b871649 | 
| 0d40 | 36 34 64 62 38 34 38 62 35 63 33 37 39 35 64 65    37 33 30 32 65 33 31 33 30 63 63 65 37 31 33 31 | 64db848b5c3795de7302e3130cce7131 | 
| 0d60 | 35 35 32 63 36 62 65 31 36 31 22 0a 64 65 70 65    6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a 20 22 64 | 552c6be161".dependencies.=.[.."d | 
| 0d80 | 61 72 6c 69 6e 67 22 2c 0a 20 22 70 72 6f 63 2d    6d 61 63 72 6f 32 22 2c 0a 20 22 71 75 6f 74 65 | arling",.."proc-macro2",.."quote | 
| 0da0 | 22 2c 0a 20 22 73 79 6e 22 2c 0a 5d 0a 0a 5b 5b    70 61 63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d | ",.."syn",.]..[[package]].name.= | 
| 0dc0 | 20 22 65 6d 61 63 73 2d 74 72 65 65 2d 73 69 74    74 65 72 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 | ."emacs-tree-sitter".version.=." | 
| 0de0 | 30 2e 31 38 2e 30 22 0a 64 65 70 65 6e 64 65 6e    63 69 65 73 20 3d 20 5b 0a 20 22 65 6d 61 63 73 | 0.18.0".dependencies.=.[.."emacs | 
| 0e00 | 22 2c 0a 20 22 6c 69 62 6c 6f 61 64 69 6e 67 22    2c 0a 20 22 6f 6e 63 65 5f 63 65 6c 6c 22 2c 0a | ",.."libloading",.."once_cell",. | 
| 0e20 | 20 22 74 72 65 65 2d 73 69 74 74 65 72 22 2c 0a    5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e | ."tree-sitter",.]..[[package]].n | 
| 0e40 | 61 6d 65 20 3d 20 22 65 6d 61 63 73 5f 6d 6f 64    75 6c 65 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 | ame.=."emacs_module".version.=." | 
| 0e60 | 30 2e 31 38 2e 30 22 0a 73 6f 75 72 63 65 20 3d    20 22 72 65 67 69 73 74 72 79 2b 68 74 74 70 73 | 0.18.0".source.=."registry+https | 
| 0e80 | 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 75    73 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73 2e 69 | ://github.com/rust-lang/crates.i | 
| 0ea0 | 6f 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b 73 75    6d 20 3d 20 22 62 33 30 36 37 62 63 39 37 34 30 | o-index".checksum.=."b3067bc9740 | 
| 0ec0 | 34 35 65 64 32 63 36 64 62 33 33 33 62 64 34 66    63 33 30 64 33 62 64 61 61 66 61 36 34 32 31 61 | 45ed2c6db333bd4fc30d3bdaafa6421a | 
| 0ee0 | 39 61 38 38 39 66 61 37 62 32 38 32 36 62 36 66    37 66 32 66 61 22 0a 0a 5b 5b 70 61 63 6b 61 67 | 9a889fa7b2826b6f7f2fa"..[[packag | 
| 0f00 | 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 66 6e 76 22    0a 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 30 2e | e]].name.=."fnv".version.=."1.0. | 
| 0f20 | 37 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 67    69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69 | 7".source.=."registry+https://gi | 
| 0f40 | 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61    6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64 | thub.com/rust-lang/crates.io-ind | 
| 0f60 | 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 22    33 66 39 65 65 63 39 31 38 64 33 66 32 34 30 36 | ex".checksum.=."3f9eec918d3f2406 | 
| 0f80 | 39 64 65 63 62 39 61 66 31 35 35 34 63 61 64 37    63 38 38 30 65 32 64 61 32 34 61 39 61 66 64 38 | 9decb9af1554cad7c880e2da24a9afd8 | 
| 0fa0 | 38 61 63 61 30 30 30 35 33 31 61 62 38 32 63 31    22 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e | 8aca000531ab82c1"..[[package]].n | 
| 0fc0 | 61 6d 65 20 3d 20 22 69 64 65 6e 74 5f 63 61 73    65 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e | ame.=."ident_case".version.=."1. | 
| 0fe0 | 30 2e 31 22 0a 73 6f 75 72 63 65 20 3d 20 22 72    65 67 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f | 0.1".source.=."registry+https:// | 
| 1000 | 67 69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d    6c 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 | github.com/rust-lang/crates.io-i | 
| 1020 | 6e 64 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d    20 22 62 39 65 30 33 38 34 62 36 31 39 35 38 35 | ndex".checksum.=."b9e0384b619585 | 
| 1040 | 36 36 65 39 32 36 64 63 35 30 36 36 30 33 32 31    64 31 32 31 35 39 30 32 35 65 37 36 37 63 31 38 | 66e926dc50660321d12159025e767c18 | 
| 1060 | 65 30 34 33 64 61 66 32 36 62 37 30 31 30 34 63    33 39 22 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d | e043daf26b70104c39"..[[package]] | 
| 1080 | 0a 6e 61 6d 65 20 3d 20 22 6c 69 62 6c 6f 61 64    69 6e 67 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 | .name.=."libloading".version.=." | 
| 10a0 | 30 2e 37 2e 32 22 0a 73 6f 75 72 63 65 20 3d 20    22 72 65 67 69 73 74 72 79 2b 68 74 74 70 73 3a | 0.7.2".source.=."registry+https: | 
| 10c0 | 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 75 73    74 2d 6c 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f | //github.com/rust-lang/crates.io | 
| 10e0 | 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b 73 75 6d    20 3d 20 22 61 66 65 32 30 33 64 36 36 39 65 63 | -index".checksum.=."afe203d669ec | 
| 1100 | 39 37 39 62 37 31 32 38 36 31 39 62 61 65 35 61    36 33 62 37 62 34 32 65 39 32 30 33 63 31 62 32 | 979b7128619bae5a63b7b42e9203c1b2 | 
| 1120 | 39 31 34 36 30 37 39 65 65 30 35 65 32 66 36 30    34 62 35 32 22 0a 64 65 70 65 6e 64 65 6e 63 69 | 9146079ee05e2f604b52".dependenci | 
| 1140 | 65 73 20 3d 20 5b 0a 20 22 63 66 67 2d 69 66 22    2c 0a 20 22 77 69 6e 61 70 69 22 2c 0a 5d 0a 0a | es.=.[.."cfg-if",.."winapi",.].. | 
| 1160 | 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e 61 6d 65    20 3d 20 22 6d 65 6d 63 68 72 22 0a 76 65 72 73 | [[package]].name.=."memchr".vers | 
| 1180 | 69 6f 6e 20 3d 20 22 32 2e 34 2e 31 22 0a 73 6f    75 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79 | ion.=."2.4.1".source.=."registry | 
| 11a0 | 2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e    63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72 | +https://github.com/rust-lang/cr | 
| 11c0 | 61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63    68 65 63 6b 73 75 6d 20 3d 20 22 33 30 38 63 63 | ates.io-index".checksum.=."308cc | 
| 11e0 | 33 39 62 65 30 31 62 37 33 64 30 64 31 38 66 38    32 61 30 65 37 62 32 61 33 64 66 38 35 32 34 35 | 39be01b73d0d18f82a0e7b2a3df85245 | 
| 1200 | 66 38 34 61 66 39 36 66 64 64 64 63 35 64 32 30    32 64 32 37 65 34 37 62 38 36 61 22 0a 0a 5b 5b | f84af96fdddc5d202d27e47b86a"..[[ | 
| 1220 | 70 61 63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d    20 22 6f 6e 63 65 5f 63 65 6c 6c 22 0a 76 65 72 | package]].name.=."once_cell".ver | 
| 1240 | 73 69 6f 6e 20 3d 20 22 31 2e 38 2e 30 22 0a 73    6f 75 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 | sion.=."1.8.0".source.=."registr | 
| 1260 | 79 2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62    2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 | y+https://github.com/rust-lang/c | 
| 1280 | 72 61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a    63 68 65 63 6b 73 75 6d 20 3d 20 22 36 39 32 66 | rates.io-index".checksum.=."692f | 
| 12a0 | 63 62 36 33 62 36 34 62 31 37 35 38 30 32 39 65    30 61 39 36 65 65 36 33 65 30 34 39 63 65 38 63 | cb63b64b1758029e0a96ee63e049ce8c | 
| 12c0 | 35 39 34 38 35 38 37 66 32 66 37 32 30 38 64 66    30 34 36 32 35 65 35 66 36 62 35 36 22 0a 0a 5b | 5948587f2f7208df04625e5f6b56"..[ | 
| 12e0 | 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20    3d 20 22 70 72 6f 63 2d 6d 61 63 72 6f 32 22 0a | [package]].name.=."proc-macro2". | 
| 1300 | 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 30 2e 33    33 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 67 | version.=."1.0.33".source.=."reg | 
| 1320 | 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69    74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 | istry+https://github.com/rust-la | 
| 1340 | 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64    65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 | ng/crates.io-index".checksum.=." | 
| 1360 | 66 62 33 37 64 32 64 66 35 64 66 37 34 30 65 35    38 32 66 32 38 66 38 35 36 30 63 66 34 32 35 66 | fb37d2df5df740e582f28f8560cf425f | 
| 1380 | 35 32 62 62 32 36 37 64 38 37 32 66 65 35 38 33    35 38 65 61 64 62 35 35 34 39 30 39 66 30 37 61 | 52bb267d872fe58358eadb554909f07a | 
| 13a0 | 22 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 20 3d    20 5b 0a 20 22 75 6e 69 63 6f 64 65 2d 78 69 64 | ".dependencies.=.[.."unicode-xid | 
| 13c0 | 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d    5d 0a 6e 61 6d 65 20 3d 20 22 71 75 6f 74 65 22 | ",.]..[[package]].name.=."quote" | 
| 13e0 | 0a 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 30 2e    31 30 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 | .version.=."1.0.10".source.=."re | 
| 1400 | 67 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67    69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c | gistry+https://github.com/rust-l | 
| 1420 | 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e    64 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 | ang/crates.io-index".checksum.=. | 
| 1440 | 22 33 38 62 63 38 63 63 36 61 35 66 32 65 33 36    35 35 65 30 38 39 39 63 31 62 38 34 38 36 34 33 | "38bc8cc6a5f2e3655e0899c1b848643 | 
| 1460 | 62 32 35 36 32 66 38 35 33 66 31 31 34 62 66 65    63 37 62 65 31 32 30 36 37 38 65 33 61 63 65 30 | b2562f853f114bfec7be120678e3ace0 | 
| 1480 | 35 22 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 20    3d 20 5b 0a 20 22 70 72 6f 63 2d 6d 61 63 72 6f | 5".dependencies.=.[.."proc-macro | 
| 14a0 | 32 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67 65    5d 5d 0a 6e 61 6d 65 20 3d 20 22 72 65 67 65 78 | 2",.]..[[package]].name.=."regex | 
| 14c0 | 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 35    2e 34 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 | ".version.=."1.5.4".source.=."re | 
| 14e0 | 67 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67    69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c | gistry+https://github.com/rust-l | 
| 1500 | 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e    64 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 | ang/crates.io-index".checksum.=. | 
| 1520 | 22 64 30 37 61 38 36 32 39 33 35 39 65 62 35 36    66 31 65 32 66 62 31 36 35 32 62 62 30 34 32 31 | "d07a8629359eb56f1e2fb1652bb0421 | 
| 1540 | 32 63 30 37 32 61 38 37 62 61 36 38 35 34 36 61    30 34 30 36 35 64 35 32 35 36 37 33 61 63 34 36 | 2c072a87ba68546a04065d525673ac46 | 
| 1560 | 31 22 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 20    3d 20 5b 0a 20 22 61 68 6f 2d 63 6f 72 61 73 69 | 1".dependencies.=.[.."aho-corasi | 
| 1580 | 63 6b 22 2c 0a 20 22 6d 65 6d 63 68 72 22 2c 0a    20 22 72 65 67 65 78 2d 73 79 6e 74 61 78 22 2c | ck",.."memchr",.."regex-syntax", | 
| 15a0 | 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a    6e 61 6d 65 20 3d 20 22 72 65 67 65 78 2d 73 79 | .]..[[package]].name.=."regex-sy | 
| 15c0 | 6e 74 61 78 22 0a 76 65 72 73 69 6f 6e 20 3d 20    22 30 2e 36 2e 32 35 22 0a 73 6f 75 72 63 65 20 | ntax".version.=."0.6.25".source. | 
| 15e0 | 3d 20 22 72 65 67 69 73 74 72 79 2b 68 74 74 70    73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 | =."registry+https://github.com/r | 
| 1600 | 75 73 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73 2e    69 6f 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b 73 | ust-lang/crates.io-index".checks | 
| 1620 | 75 6d 20 3d 20 22 66 34 39 37 32 38 35 38 38 34    66 33 66 63 66 66 34 32 34 66 66 63 39 33 33 65 | um.=."f497285884f3fcff424ffc933e | 
| 1640 | 35 36 64 37 63 62 63 61 35 31 31 64 65 66 30 63    39 38 33 31 61 37 66 39 62 35 66 36 31 35 33 65 | 56d7cbca511def0c9831a7f9b5f6153e | 
| 1660 | 33 63 63 38 39 62 22 0a 0a 5b 5b 70 61 63 6b 61    67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 72 75 73 | 3cc89b"..[[package]].name.=."rus | 
| 1680 | 74 63 5f 76 65 72 73 69 6f 6e 22 0a 76 65 72 73    69 6f 6e 20 3d 20 22 30 2e 32 2e 33 22 0a 73 6f | tc_version".version.=."0.2.3".so | 
| 16a0 | 75 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79    2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e | urce.=."registry+https://github. | 
| 16c0 | 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72    61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 | com/rust-lang/crates.io-index".c | 
| 16e0 | 68 65 63 6b 73 75 6d 20 3d 20 22 31 33 38 65 33    65 30 61 63 62 36 63 39 66 62 32 35 38 62 31 39 | hecksum.=."138e3e0acb6c9fb258b19 | 
| 1700 | 62 36 37 63 62 38 61 62 64 36 33 63 30 30 36 37    39 64 32 38 35 31 38 30 35 65 61 31 35 31 34 36 | b67cb8abd63c00679d2851805ea15146 | 
| 1720 | 35 34 36 34 66 65 39 30 33 30 61 22 0a 64 65 70    65 6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a 20 22 | 5464fe9030a".dependencies.=.[.." | 
| 1740 | 73 65 6d 76 65 72 22 2c 0a 5d 0a 0a 5b 5b 70 61    63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 | semver",.]..[[package]].name.=." | 
| 1760 | 73 65 6d 76 65 72 22 0a 76 65 72 73 69 6f 6e 20    3d 20 22 30 2e 39 2e 30 22 0a 73 6f 75 72 63 65 | semver".version.=."0.9.0".source | 
| 1780 | 20 3d 20 22 72 65 67 69 73 74 72 79 2b 68 74 74    70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f | .=."registry+https://github.com/ | 
| 17a0 | 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73    2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b | rust-lang/crates.io-index".check | 
| 17c0 | 73 75 6d 20 3d 20 22 31 64 37 65 62 39 65 66 32    63 31 38 36 36 31 39 30 32 63 63 34 37 65 35 33 | sum.=."1d7eb9ef2c18661902cc47e53 | 
| 17e0 | 35 66 39 62 63 35 31 62 37 38 61 63 64 32 35 34    64 61 37 31 64 33 37 35 63 32 66 36 37 32 30 64 | 5f9bc51b78acd254da71d375c2f6720d | 
| 1800 | 39 61 34 30 34 30 33 22 0a 64 65 70 65 6e 64 65    6e 63 69 65 73 20 3d 20 5b 0a 20 22 73 65 6d 76 | 9a40403".dependencies.=.[.."semv | 
| 1820 | 65 72 2d 70 61 72 73 65 72 22 2c 0a 5d 0a 0a 5b    5b 70 61 63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 | er-parser",.]..[[package]].name. | 
| 1840 | 3d 20 22 73 65 6d 76 65 72 2d 70 61 72 73 65 72    22 0a 76 65 72 73 69 6f 6e 20 3d 20 22 30 2e 37 | =."semver-parser".version.=."0.7 | 
| 1860 | 2e 30 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65    67 69 73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67 | .0".source.=."registry+https://g | 
| 1880 | 69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c    61 6e 67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e | ithub.com/rust-lang/crates.io-in | 
| 18a0 | 64 65 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20    22 33 38 38 61 31 64 66 32 35 33 65 63 61 30 38 | dex".checksum.=."388a1df253eca08 | 
| 18c0 | 35 35 30 62 65 66 36 63 37 32 33 39 32 63 66 65    37 63 33 30 39 31 34 62 66 34 31 64 66 35 32 36 | 550bef6c72392cfe7c30914bf41df526 | 
| 18e0 | 39 62 36 38 63 62 64 36 66 66 38 66 35 37 30 61    33 22 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a | 9b68cbd6ff8f570a3"..[[package]]. | 
| 1900 | 6e 61 6d 65 20 3d 20 22 73 74 72 73 69 6d 22 0a    76 65 72 73 69 6f 6e 20 3d 20 22 30 2e 39 2e 33 | name.=."strsim".version.=."0.9.3 | 
| 1920 | 22 0a 73 6f 75 72 63 65 20 3d 20 22 72 65 67 69    73 74 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69 74 | ".source.=."registry+https://git | 
| 1940 | 68 75 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e    67 2f 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64 65 | hub.com/rust-lang/crates.io-inde | 
| 1960 | 78 22 0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 36    34 34 36 63 65 64 38 30 64 36 63 34 38 36 34 33 | x".checksum.=."6446ced80d6c48643 | 
| 1980 | 36 64 62 35 63 30 37 38 64 64 65 31 31 61 39 66    37 33 64 34 32 62 35 37 66 62 32 37 33 31 32 31 | 6db5c078dde11a9f73d42b57fb273121 | 
| 19a0 | 65 31 36 30 62 38 34 66 36 33 64 38 39 34 63 22    0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e 61 | e160b84f63d894c"..[[package]].na | 
| 19c0 | 6d 65 20 3d 20 22 73 79 6e 22 0a 76 65 72 73 69    6f 6e 20 3d 20 22 31 2e 30 2e 38 32 22 0a 73 6f | me.=."syn".version.=."1.0.82".so | 
| 19e0 | 75 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79    2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e | urce.=."registry+https://github. | 
| 1a00 | 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72    61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 | com/rust-lang/crates.io-index".c | 
| 1a20 | 68 65 63 6b 73 75 6d 20 3d 20 22 38 64 61 66 35    64 64 30 62 62 36 30 63 62 64 34 31 33 37 62 31 | hecksum.=."8daf5dd0bb60cbd4137b1 | 
| 1a40 | 62 35 38 37 64 32 66 63 30 61 65 37 32 39 62 63    30 37 63 66 30 31 63 64 37 30 62 33 36 61 31 65 | b587d2fc0ae729bc07cf01cd70b36a1e | 
| 1a60 | 64 35 61 64 65 33 62 39 64 35 39 22 0a 64 65 70    65 6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a 20 22 | d5ade3b9d59".dependencies.=.[.." | 
| 1a80 | 70 72 6f 63 2d 6d 61 63 72 6f 32 22 2c 0a 20 22    71 75 6f 74 65 22 2c 0a 20 22 75 6e 69 63 6f 64 | proc-macro2",.."quote",.."unicod | 
| 1aa0 | 65 2d 78 69 64 22 2c 0a 5d 0a 0a 5b 5b 70 61 63    6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 74 | e-xid",.]..[[package]].name.=."t | 
| 1ac0 | 68 69 73 65 72 72 6f 72 22 0a 76 65 72 73 69 6f    6e 20 3d 20 22 31 2e 30 2e 33 30 22 0a 73 6f 75 | hiserror".version.=."1.0.30".sou | 
| 1ae0 | 72 63 65 20 3d 20 22 72 65 67 69 73 74 72 79 2b    68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | rce.=."registry+https://github.c | 
| 1b00 | 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61    74 65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 | om/rust-lang/crates.io-index".ch | 
| 1b20 | 65 63 6b 73 75 6d 20 3d 20 22 38 35 34 62 61 62    65 35 32 65 34 64 66 31 36 35 33 37 30 36 62 39 | ecksum.=."854babe52e4df1653706b9 | 
| 1b40 | 38 66 63 66 63 30 35 38 34 33 30 31 30 30 33 39    62 34 30 36 38 37 35 39 33 30 61 37 30 65 34 64 | 8fcfc05843010039b406875930a70e4d | 
| 1b60 | 39 36 34 34 65 35 63 34 31 37 22 0a 64 65 70 65    6e 64 65 6e 63 69 65 73 20 3d 20 5b 0a 20 22 74 | 9644e5c417".dependencies.=.[.."t | 
| 1b80 | 68 69 73 65 72 72 6f 72 2d 69 6d 70 6c 22 2c 0a    5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d 5d 0a 6e | hiserror-impl",.]..[[package]].n | 
| 1ba0 | 61 6d 65 20 3d 20 22 74 68 69 73 65 72 72 6f 72    2d 69 6d 70 6c 22 0a 76 65 72 73 69 6f 6e 20 3d | ame.=."thiserror-impl".version.= | 
| 1bc0 | 20 22 31 2e 30 2e 33 30 22 0a 73 6f 75 72 63 65    20 3d 20 22 72 65 67 69 73 74 72 79 2b 68 74 74 | ."1.0.30".source.=."registry+htt | 
| 1be0 | 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f    72 75 73 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73 | ps://github.com/rust-lang/crates | 
| 1c00 | 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b    73 75 6d 20 3d 20 22 61 61 33 32 66 64 33 66 36 | .io-index".checksum.=."aa32fd3f6 | 
| 1c20 | 32 37 66 33 36 37 66 65 31 36 66 38 39 33 65 32    35 39 37 61 65 33 63 30 35 30 32 30 66 38 62 62 | 27f367fe16f893e2597ae3c05020f8bb | 
| 1c40 | 61 32 36 36 36 61 34 65 36 65 61 37 33 64 33 37    37 65 35 37 31 34 62 22 0a 64 65 70 65 6e 64 65 | a2666a4e6ea73d377e5714b".depende | 
| 1c60 | 6e 63 69 65 73 20 3d 20 5b 0a 20 22 70 72 6f 63    2d 6d 61 63 72 6f 32 22 2c 0a 20 22 71 75 6f 74 | ncies.=.[.."proc-macro2",.."quot | 
| 1c80 | 65 22 2c 0a 20 22 73 79 6e 22 2c 0a 5d 0a 0a 5b    5b 70 61 63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 | e",.."syn",.]..[[package]].name. | 
| 1ca0 | 3d 20 22 74 72 65 65 2d 73 69 74 74 65 72 22 0a    76 65 72 73 69 6f 6e 20 3d 20 22 30 2e 32 30 2e | =."tree-sitter".version.=."0.20. | 
| 1cc0 | 30 22 0a 73 6f 75 72 63 65 20 3d 20 22 67 69 74    2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e | 0".source.=."git+https://github. | 
| 1ce0 | 63 6f 6d 2f 75 62 6f 6c 6f 6e 74 6f 6e 2f 74 72    65 65 2d 73 69 74 74 65 72 3f 62 72 61 6e 63 68 | com/ubolonton/tree-sitter?branch | 
| 1d00 | 3d 69 6d 70 72 6f 76 65 2d 74 65 78 74 2d 70 72    6f 76 69 64 65 72 23 34 37 35 62 38 32 32 66 34 | =improve-text-provider#475b822f4 | 
| 1d20 | 37 62 64 63 35 38 64 38 33 32 35 33 33 34 34 38    62 36 66 36 64 39 38 31 38 35 35 34 66 33 37 22 | 7bdc58d832533448b6f6d9818554f37" | 
| 1d40 | 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20    5b 0a 20 22 63 63 22 2c 0a 20 22 72 65 67 65 78 | .dependencies.=.[.."cc",.."regex | 
| 1d60 | 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b 61 67 65 5d    5d 0a 6e 61 6d 65 20 3d 20 22 75 6e 69 63 6f 64 | ",.]..[[package]].name.=."unicod | 
| 1d80 | 65 2d 78 69 64 22 0a 76 65 72 73 69 6f 6e 20 3d    20 22 30 2e 32 2e 32 22 0a 73 6f 75 72 63 65 20 | e-xid".version.=."0.2.2".source. | 
| 1da0 | 3d 20 22 72 65 67 69 73 74 72 79 2b 68 74 74 70    73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 | =."registry+https://github.com/r | 
| 1dc0 | 75 73 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73 2e    69 6f 2d 69 6e 64 65 78 22 0a 63 68 65 63 6b 73 | ust-lang/crates.io-index".checks | 
| 1de0 | 75 6d 20 3d 20 22 38 63 63 62 38 32 64 36 31 66    38 30 61 36 36 33 65 66 65 31 66 37 38 37 61 35 | um.=."8ccb82d61f80a663efe1f787a5 | 
| 1e00 | 31 62 31 36 62 35 61 35 31 65 33 33 31 34 64 36    61 63 33 36 35 62 30 38 36 33 39 66 35 32 33 38 | 1b16b5a51e3314d6ac365b08639f5238 | 
| 1e20 | 37 62 33 33 66 33 22 0a 0a 5b 5b 70 61 63 6b 61    67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 77 69 6e | 7b33f3"..[[package]].name.=."win | 
| 1e40 | 61 70 69 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22    30 2e 33 2e 39 22 0a 73 6f 75 72 63 65 20 3d 20 | api".version.=."0.3.9".source.=. | 
| 1e60 | 22 72 65 67 69 73 74 72 79 2b 68 74 74 70 73 3a    2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 75 73 | "registry+https://github.com/rus | 
| 1e80 | 74 2d 6c 61 6e 67 2f 63 72 61 74 65 73 2e 69 6f    2d 69 6e 64 65 78 22 0a 63 68 65 63 6b 73 75 6d | t-lang/crates.io-index".checksum | 
| 1ea0 | 20 3d 20 22 35 63 38 33 39 61 36 37 34 66 63 64    37 61 39 38 39 35 32 65 35 39 33 32 34 32 65 61 | .=."5c839a674fcd7a98952e593242ea | 
| 1ec0 | 34 30 30 61 62 65 39 33 39 39 32 37 34 36 37 36    31 65 33 38 36 34 31 34 30 35 64 32 38 62 30 30 | 400abe93992746761e38641405d28b00 | 
| 1ee0 | 66 34 31 39 22 0a 64 65 70 65 6e 64 65 6e 63 69    65 73 20 3d 20 5b 0a 20 22 77 69 6e 61 70 69 2d | f419".dependencies.=.[.."winapi- | 
| 1f00 | 69 36 38 36 2d 70 63 2d 77 69 6e 64 6f 77 73 2d    67 6e 75 22 2c 0a 20 22 77 69 6e 61 70 69 2d 78 | i686-pc-windows-gnu",.."winapi-x | 
| 1f20 | 38 36 5f 36 34 2d 70 63 2d 77 69 6e 64 6f 77 73    2d 67 6e 75 22 2c 0a 5d 0a 0a 5b 5b 70 61 63 6b | 86_64-pc-windows-gnu",.]..[[pack | 
| 1f40 | 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 77 69    6e 61 70 69 2d 69 36 38 36 2d 70 63 2d 77 69 6e | age]].name.=."winapi-i686-pc-win | 
| 1f60 | 64 6f 77 73 2d 67 6e 75 22 0a 76 65 72 73 69 6f    6e 20 3d 20 22 30 2e 34 2e 30 22 0a 73 6f 75 72 | dows-gnu".version.=."0.4.0".sour | 
| 1f80 | 63 65 20 3d 20 22 72 65 67 69 73 74 72 79 2b 68    74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f | ce.=."registry+https://github.co | 
| 1fa0 | 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f 63 72 61 74    65 73 2e 69 6f 2d 69 6e 64 65 78 22 0a 63 68 65 | m/rust-lang/crates.io-index".che | 
| 1fc0 | 63 6b 73 75 6d 20 3d 20 22 61 63 33 62 38 37 63    36 33 36 32 30 34 32 36 64 64 39 62 39 39 31 65 | cksum.=."ac3b87c63620426dd9b991e | 
| 1fe0 | 35 63 65 30 33 32 39 65 66 66 35 34 35 62 63 63    62 62 62 33 34 66 33 62 65 30 39 66 66 36 66 62 | 5ce0329eff545bccbbb34f3be09ff6fb | 
| 2000 | 36 61 62 35 31 62 37 62 36 22 0a 0a 5b 5b 70 61    63 6b 61 67 65 5d 5d 0a 6e 61 6d 65 20 3d 20 22 | 6ab51b7b6"..[[package]].name.=." | 
| 2020 | 77 69 6e 61 70 69 2d 78 38 36 5f 36 34 2d 70 63    2d 77 69 6e 64 6f 77 73 2d 67 6e 75 22 0a 76 65 | winapi-x86_64-pc-windows-gnu".ve | 
| 2040 | 72 73 69 6f 6e 20 3d 20 22 30 2e 34 2e 30 22 0a    73 6f 75 72 63 65 20 3d 20 22 72 65 67 69 73 74 | rsion.=."0.4.0".source.=."regist | 
| 2060 | 72 79 2b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75    62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f | ry+https://github.com/rust-lang/ | 
| 2080 | 63 72 61 74 65 73 2e 69 6f 2d 69 6e 64 65 78 22    0a 63 68 65 63 6b 73 75 6d 20 3d 20 22 37 31 32 | crates.io-index".checksum.=."712 | 
| 20a0 | 65 32 32 37 38 34 31 64 30 35 37 63 31 65 65 31    63 64 32 66 62 32 32 66 61 37 65 35 61 35 34 36 | e227841d057c1ee1cd2fb22fa7e5a546 | 
| 20c0 | 31 61 65 38 65 34 38 66 61 32 63 61 37 39 65 63    34 32 63 66 63 31 39 33 31 31 38 33 66 22 0a 00 | 1ae8e48fa2ca79ec42cfc1931183f".. | 
| 20e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 21a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 21c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 21e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2200 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 43 61 72 67 6f 2e 74 6f 6d 6c 00 00 00 00 | tsc-20220212.1632/Cargo.toml.... | 
| 2220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2260 | 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 | 
| 2280 | 30 30 30 31 30 30 33 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 35 31 32 00 20 30 00 00 00 | 0001003.00000000000.013512..0... | 
| 22a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 22c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 22e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2300 | 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................... | 
| 2320 | 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................... | 
| 2340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 23a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 23c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 23e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2400 | 5b 70 61 63 6b 61 67 65 5d 0a 6e 61 6d 65 20 3d    20 22 65 6d 61 63 73 2d 74 72 65 65 2d 73 69 74 | [package].name.=."emacs-tree-sit | 
| 2420 | 74 65 72 22 0a 76 65 72 73 69 6f 6e 20 3d 20 22    30 2e 31 38 2e 30 22 0a 61 75 74 68 6f 72 73 20 | ter".version.=."0.18.0".authors. | 
| 2440 | 3d 20 5b 22 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e    67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c 6f 6e 74 | =.["Tu...n-Anh.Nguy...n.<ubolont | 
| 2460 | 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 3e 22 5d 0a    65 64 69 74 69 6f 6e 20 3d 20 22 32 30 31 38 22 | on@gmail.com>"].edition.=."2018" | 
| 2480 | 0a 70 75 62 6c 69 73 68 20 3d 20 66 61 6c 73 65    0a 0a 5b 6c 69 62 5d 0a 70 61 74 68 20 3d 20 22 | .publish.=.false..[lib].path.=." | 
| 24a0 | 73 72 63 2f 6c 69 62 2e 72 73 22 0a 6e 61 6d 65    20 3d 20 22 74 73 63 5f 64 79 6e 22 0a 63 72 61 | src/lib.rs".name.=."tsc_dyn".cra | 
| 24c0 | 74 65 2d 74 79 70 65 20 3d 20 5b 22 63 64 79 6c    69 62 22 5d 0a 0a 5b 64 65 70 65 6e 64 65 6e 63 | te-type.=.["cdylib"]..[dependenc | 
| 24e0 | 69 65 73 5d 0a 65 6d 61 63 73 20 3d 20 22 30 2e    31 38 22 0a 6c 69 62 6c 6f 61 64 69 6e 67 20 3d | ies].emacs.=."0.18".libloading.= | 
| 2500 | 20 22 30 2e 37 2e 30 22 0a 74 72 65 65 2d 73 69    74 74 65 72 20 3d 20 22 30 2e 32 30 2e 30 22 0a | ."0.7.0".tree-sitter.=."0.20.0". | 
| 2520 | 6f 6e 63 65 5f 63 65 6c 6c 20 3d 20 22 31 2e 37    2e 32 22 0a 0a 5b 70 72 6f 66 69 6c 65 2e 72 65 | once_cell.=."1.7.2"..[profile.re | 
| 2540 | 6c 65 61 73 65 5d 0a 6f 70 74 2d 6c 65 76 65 6c    20 3d 20 33 0a 6c 74 6f 20 3d 20 22 74 68 69 6e | lease].opt-level.=.3.lto.=."thin | 
| 2560 | 22 0a 0a 5b 70 72 6f 66 69 6c 65 2e 72 65 6c 65    61 73 65 2e 62 75 69 6c 64 2d 6f 76 65 72 72 69 | "..[profile.release.build-overri | 
| 2580 | 64 65 5d 0a 6f 70 74 2d 6c 65 76 65 6c 20 3d 20    30 0a 0a 5b 70 61 74 63 68 2e 63 72 61 74 65 73 | de].opt-level.=.0..[patch.crates | 
| 25a0 | 2d 69 6f 2e 74 72 65 65 2d 73 69 74 74 65 72 5d    0a 67 69 74 20 3d 20 22 68 74 74 70 73 3a 2f 2f | -io.tree-sitter].git.=."https:// | 
| 25c0 | 67 69 74 68 75 62 2e 63 6f 6d 2f 75 62 6f 6c 6f    6e 74 6f 6e 2f 74 72 65 65 2d 73 69 74 74 65 72 | github.com/ubolonton/tree-sitter | 
| 25e0 | 22 0a 62 72 61 6e 63 68 20 3d 20 22 69 6d 70 72    6f 76 65 2d 74 65 78 74 2d 70 72 6f 76 69 64 65 | ".branch.=."improve-text-provide | 
| 2600 | 72 22 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 00 00 00 00 | r".............................. | 
| 2620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 26a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 26c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 26e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 27a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 27c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 27e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2800 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 00 00 00 00 00 00 00 00 00 00 | tsc-20220212.1632/src/.......... | 
| 2820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2860 | 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 | 
| 2880 | 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 32 33 35 37 00 20 35 00 00 00 | 0000000.00000000000.012357..5... | 
| 28a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 28c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 28e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2900 | 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................... | 
| 2920 | 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................... | 
| 2940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 29a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 29c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 29e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2a00 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 63 75 72 73 6f 72 2e 72 73 00 | tsc-20220212.1632/src/cursor.rs. | 
| 2a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2a60 | 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 | 
| 2a80 | 30 30 33 36 37 36 34 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 32 36 32 00 20 30 00 00 00 | 0036764.00000000000.014262..0... | 
| 2aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2b00 | 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................... | 
| 2b20 | 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................... | 
| 2b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 2c00 | 75 73 65 20 73 74 64 3a 3a 7b 0a 20 20 20 20 63    65 6c 6c 3a 3a 7b 52 65 66 2c 20 52 65 66 43 65 | use.std::{.....cell::{Ref,.RefCe | 
| 2c20 | 6c 6c 7d 2c 0a 20 20 20 20 6d 65 6d 2c 0a 20 20    20 20 6f 70 73 3a 3a 7b 44 65 72 65 66 2c 20 44 | ll},.....mem,.....ops::{Deref,.D | 
| 2c40 | 65 72 65 66 4d 75 74 7d 2c 0a 7d 3b 0a 0a 75 73    65 20 65 6d 61 63 73 3a 3a 7b 64 65 66 75 6e 2c | erefMut},.};..use.emacs::{defun, | 
| 2c60 | 20 52 65 73 75 6c 74 2c 20 56 61 6c 75 65 2c 20    45 6e 76 2c 20 47 6c 6f 62 61 6c 52 65 66 2c 20 | .Result,.Value,.Env,.GlobalRef,. | 
| 2c80 | 56 65 63 74 6f 72 2c 20 49 6e 74 6f 4c 69 73 70    2c 20 46 72 6f 6d 4c 69 73 70 7d 3b 0a 75 73 65 | Vector,.IntoLisp,.FromLisp};.use | 
| 2ca0 | 20 74 72 65 65 5f 73 69 74 74 65 72 3a 3a 7b 54    72 65 65 2c 20 54 72 65 65 43 75 72 73 6f 72 2c | .tree_sitter::{Tree,.TreeCursor, | 
| 2cc0 | 20 4e 6f 64 65 7d 3b 0a 0a 75 73 65 20 63 72 61    74 65 3a 3a 7b 0a 20 20 20 20 74 79 70 65 73 3a | .Node};..use.crate::{.....types: | 
| 2ce0 | 3a 7b 73 65 6c 66 2c 20 53 68 61 72 65 64 2c 20    42 79 74 65 50 6f 73 7d 2c 0a 20 20 20 20 6e 6f | :{self,.Shared,.BytePos},.....no | 
| 2d00 | 64 65 3a 3a 7b 52 4e 6f 64 65 2c 20 4c 69 73 70    55 74 69 6c 73 7d 2c 0a 20 20 20 20 6c 61 6e 67 | de::{RNode,.LispUtils},.....lang | 
| 2d20 | 3a 3a 4c 61 6e 67 75 61 67 65 2c 0a 7d 3b 0a 0a    65 6d 61 63 73 3a 3a 75 73 65 5f 73 79 6d 62 6f | ::Language,.};..emacs::use_symbo | 
| 2d40 | 6c 73 21 20 7b 0a 20 20 20 20 77 72 6f 6e 67 5f    74 79 70 65 5f 61 72 67 75 6d 65 6e 74 0a 20 20 | ls!.{.....wrong_type_argument... | 
| 2d60 | 20 20 74 72 65 65 5f 6f 72 5f 6e 6f 64 65 5f 70    0a 0a 20 20 20 20 5f 74 79 70 65 20 20 20 20 20 | ..tree_or_node_p......_type..... | 
| 2d80 | 20 20 20 3d 3e 20 22 3a 74 79 70 65 22 0a 20 20    20 20 5f 6e 61 6d 65 64 5f 70 20 20 20 20 20 3d | ...=>.":type"....._named_p.....= | 
| 2da0 | 3e 20 22 3a 6e 61 6d 65 64 2d 70 22 0a 20 20 20    20 5f 65 78 74 72 61 5f 70 20 20 20 20 20 3d 3e | >.":named-p"....._extra_p.....=> | 
| 2dc0 | 20 22 3a 65 78 74 72 61 2d 70 22 0a 20 20 20 20    5f 65 72 72 6f 72 5f 70 20 20 20 20 20 3d 3e 20 | .":extra-p"....._error_p.....=>. | 
| 2de0 | 22 3a 65 72 72 6f 72 2d 70 22 0a 20 20 20 20 5f    6d 69 73 73 69 6e 67 5f 70 20 20 20 3d 3e 20 22 | ":error-p"....._missing_p...=>." | 
| 2e00 | 3a 6d 69 73 73 69 6e 67 2d 70 22 0a 20 20 20 20    5f 68 61 73 5f 65 72 72 6f 72 5f 70 20 3d 3e 20 | :missing-p"....._has_error_p.=>. | 
| 2e20 | 22 3a 68 61 73 2d 65 72 72 6f 72 2d 70 22 0a 20    20 20 20 5f 73 74 61 72 74 5f 62 79 74 65 20 20 | ":has-error-p"....._start_byte.. | 
| 2e40 | 3d 3e 20 22 3a 73 74 61 72 74 2d 62 79 74 65 22    0a 20 20 20 20 5f 73 74 61 72 74 5f 70 6f 69 6e | =>.":start-byte"....._start_poin | 
| 2e60 | 74 20 3d 3e 20 22 3a 73 74 61 72 74 2d 70 6f 69    6e 74 22 0a 20 20 20 20 5f 65 6e 64 5f 62 79 74 | t.=>.":start-point"....._end_byt | 
| 2e80 | 65 20 20 20 20 3d 3e 20 22 3a 65 6e 64 2d 62 79    74 65 22 0a 20 20 20 20 5f 65 6e 64 5f 70 6f 69 | e....=>.":end-byte"....._end_poi | 
| 2ea0 | 6e 74 20 20 20 3d 3e 20 22 3a 65 6e 64 2d 70 6f    69 6e 74 22 0a 20 20 20 20 5f 72 61 6e 67 65 20 | nt...=>.":end-point"....._range. | 
| 2ec0 | 20 20 20 20 20 20 3d 3e 20 22 3a 72 61 6e 67 65    22 0a 20 20 20 20 5f 62 79 74 65 5f 72 61 6e 67 | ......=>.":range"....._byte_rang | 
| 2ee0 | 65 20 20 3d 3e 20 22 3a 62 79 74 65 2d 72 61 6e    67 65 22 0a 0a 20 20 20 20 5f 66 69 65 6c 64 20 | e..=>.":byte-range"......_field. | 
| 2f00 | 20 20 20 20 20 20 3d 3e 20 22 3a 66 69 65 6c 64    22 0a 20 20 20 20 5f 64 65 70 74 68 20 20 20 20 | ......=>.":field"....._depth.... | 
| 2f20 | 20 20 20 3d 3e 20 22 3a 64 65 70 74 68 22 0a 7d    0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ...=>.":depth".}..//.----------- | 
| 2f40 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 2f60 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 2f80 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 0a 0a 2f 2f 2f 20 57 72 61 70 | ----------------------..///.Wrap | 
| 2fa0 | 70 65 72 20 61 72 6f 75 6e 64 20 60 74 72 65 65    5f 73 69 74 74 65 72 3a 3a 54 72 65 65 43 75 72 | per.around.`tree_sitter::TreeCur | 
| 2fc0 | 73 6f 72 60 20 74 68 61 74 20 63 61 6e 20 68 61    76 65 20 27 73 74 61 74 69 63 20 6c 69 66 65 74 | sor`.that.can.have.'static.lifet | 
| 2fe0 | 69 6d 65 2c 20 62 79 20 6b 65 65 70 69 6e 67 20    61 0a 2f 2f 2f 20 72 65 66 2d 63 6f 75 6e 74 65 | ime,.by.keeping.a.///.ref-counte | 
| 3000 | 64 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74    68 65 20 75 6e 64 65 72 6c 79 69 6e 67 20 74 72 | d.reference.to.the.underlying.tr | 
| 3020 | 65 65 2e 0a 23 5b 64 65 72 69 76 65 28 43 6c 6f    6e 65 29 5d 0a 70 75 62 20 73 74 72 75 63 74 20 | ee..#[derive(Clone)].pub.struct. | 
| 3040 | 52 43 75 72 73 6f 72 20 7b 0a 20 20 20 20 74 72    65 65 3a 20 53 68 61 72 65 64 3c 54 72 65 65 3e | RCursor.{.....tree:.Shared<Tree> | 
| 3060 | 2c 0a 20 20 20 20 69 6e 6e 65 72 3a 20 54 72 65    65 43 75 72 73 6f 72 3c 27 73 74 61 74 69 63 3e | ,.....inner:.TreeCursor<'static> | 
| 3080 | 2c 0a 7d 0a 0a 69 6d 70 6c 5f 70 72 65 64 21 28    63 75 72 73 6f 72 5f 70 2c 20 26 52 65 66 43 65 | ,.}..impl_pred!(cursor_p,.&RefCe | 
| 30a0 | 6c 6c 3c 52 43 75 72 73 6f 72 3e 29 3b 0a 0a 70    75 62 20 73 74 72 75 63 74 20 52 43 75 72 73 6f | ll<RCursor>);..pub.struct.RCurso | 
| 30c0 | 72 42 6f 72 72 6f 77 3c 27 65 3e 20 7b 0a 20 20    20 20 23 5b 61 6c 6c 6f 77 28 75 6e 75 73 65 64 | rBorrow<'e>.{.....#[allow(unused | 
| 30e0 | 29 5d 0a 20 20 20 20 72 65 66 74 3a 20 52 65 66    3c 27 65 2c 20 54 72 65 65 3e 2c 0a 20 20 20 20 | )].....reft:.Ref<'e,.Tree>,..... | 
| 3100 | 63 75 72 73 6f 72 3a 20 26 27 65 20 54 72 65 65    43 75 72 73 6f 72 3c 27 65 3e 2c 0a 7d 0a 0a 69 | cursor:.&'e.TreeCursor<'e>,.}..i | 
| 3120 | 6d 70 6c 3c 27 65 3e 20 44 65 72 65 66 20 66 6f    72 20 52 43 75 72 73 6f 72 42 6f 72 72 6f 77 3c | mpl<'e>.Deref.for.RCursorBorrow< | 
| 3140 | 27 65 3e 20 7b 0a 20 20 20 20 74 79 70 65 20 54    61 72 67 65 74 20 3d 20 54 72 65 65 43 75 72 73 | 'e>.{.....type.Target.=.TreeCurs | 
| 3160 | 6f 72 3c 27 65 3e 3b 0a 0a 20 20 20 20 23 5b 69    6e 6c 69 6e 65 5d 0a 20 20 20 20 66 6e 20 64 65 | or<'e>;......#[inline].....fn.de | 
| 3180 | 72 65 66 28 26 73 65 6c 66 29 20 2d 3e 20 26 53    65 6c 66 3a 3a 54 61 72 67 65 74 20 7b 0a 20 20 | ref(&self).->.&Self::Target.{... | 
| 31a0 | 20 20 20 20 20 20 73 65 6c 66 2e 63 75 72 73 6f    72 0a 20 20 20 20 7d 0a 7d 0a 0a 70 75 62 20 73 | ......self.cursor.....}.}..pub.s | 
| 31c0 | 74 72 75 63 74 20 52 43 75 72 73 6f 72 42 6f 72    72 6f 77 4d 75 74 3c 27 65 3e 20 7b 0a 20 20 20 | truct.RCursorBorrowMut<'e>.{.... | 
| 31e0 | 20 23 5b 61 6c 6c 6f 77 28 75 6e 75 73 65 64 29    5d 0a 20 20 20 20 72 65 66 74 3a 20 52 65 66 3c | .#[allow(unused)].....reft:.Ref< | 
| 3200 | 27 65 2c 20 54 72 65 65 3e 2c 0a 20 20 20 20 63    75 72 73 6f 72 3a 20 26 27 65 20 6d 75 74 20 54 | 'e,.Tree>,.....cursor:.&'e.mut.T | 
| 3220 | 72 65 65 43 75 72 73 6f 72 3c 27 65 3e 2c 0a 7d    0a 0a 69 6d 70 6c 3c 27 65 3e 20 44 65 72 65 66 | reeCursor<'e>,.}..impl<'e>.Deref | 
| 3240 | 20 66 6f 72 20 52 43 75 72 73 6f 72 42 6f 72 72    6f 77 4d 75 74 3c 27 65 3e 20 7b 0a 20 20 20 20 | .for.RCursorBorrowMut<'e>.{..... | 
| 3260 | 74 79 70 65 20 54 61 72 67 65 74 20 3d 20 54 72    65 65 43 75 72 73 6f 72 3c 27 65 3e 3b 0a 0a 20 | type.Target.=.TreeCursor<'e>;... | 
| 3280 | 20 20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20    20 66 6e 20 64 65 72 65 66 28 26 73 65 6c 66 29 | ...#[inline].....fn.deref(&self) | 
| 32a0 | 20 2d 3e 20 26 53 65 6c 66 3a 3a 54 61 72 67 65    74 20 7b 0a 20 20 20 20 20 20 20 20 73 65 6c 66 | .->.&Self::Target.{.........self | 
| 32c0 | 2e 63 75 72 73 6f 72 0a 20 20 20 20 7d 0a 7d 0a    0a 69 6d 70 6c 3c 27 65 3e 20 44 65 72 65 66 4d | .cursor.....}.}..impl<'e>.DerefM | 
| 32e0 | 75 74 20 66 6f 72 20 52 43 75 72 73 6f 72 42 6f    72 72 6f 77 4d 75 74 3c 27 65 3e 20 7b 0a 20 20 | ut.for.RCursorBorrowMut<'e>.{... | 
| 3300 | 20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20 20    66 6e 20 64 65 72 65 66 5f 6d 75 74 28 26 6d 75 | ..#[inline].....fn.deref_mut(&mu | 
| 3320 | 74 20 73 65 6c 66 29 20 2d 3e 20 26 6d 75 74 20    53 65 6c 66 3a 3a 54 61 72 67 65 74 20 7b 0a 20 | t.self).->.&mut.Self::Target.{.. | 
| 3340 | 20 20 20 20 20 20 20 73 65 6c 66 2e 63 75 72 73    6f 72 0a 20 20 20 20 7d 0a 7d 0a 0a 69 6d 70 6c | .......self.cursor.....}.}..impl | 
| 3360 | 20 52 43 75 72 73 6f 72 20 7b 0a 20 20 20 20 70    75 62 20 66 6e 20 6e 65 77 3c 27 65 2c 20 46 3a | .RCursor.{.....pub.fn.new<'e,.F: | 
| 3380 | 20 46 6e 4f 6e 63 65 28 26 27 65 20 54 72 65 65    29 20 2d 3e 20 54 72 65 65 43 75 72 73 6f 72 3c | .FnOnce(&'e.Tree).->.TreeCursor< | 
| 33a0 | 27 65 3e 3e 28 74 72 65 65 3a 20 53 68 61 72 65    64 3c 54 72 65 65 3e 2c 20 66 3a 20 46 29 20 2d | 'e>>(tree:.Shared<Tree>,.f:.F).- | 
| 33c0 | 3e 20 53 65 6c 66 20 7b 0a 20 20 20 20 20 20 20    20 6c 65 74 20 72 74 72 65 65 20 3d 20 75 6e 73 | >.Self.{.........let.rtree.=.uns | 
| 33e0 | 61 66 65 20 7b 20 74 79 70 65 73 3a 3a 65 72 61    73 65 5f 6c 69 66 65 74 69 6d 65 28 26 2a 74 72 | afe.{.types::erase_lifetime(&*tr | 
| 3400 | 65 65 2e 62 6f 72 72 6f 77 28 29 29 20 7d 3b 0a    20 20 20 20 20 20 20 20 6c 65 74 20 69 6e 6e 65 | ee.borrow()).};.........let.inne | 
| 3420 | 72 20 3d 20 75 6e 73 61 66 65 20 7b 20 6d 65 6d    3a 3a 74 72 61 6e 73 6d 75 74 65 28 66 28 72 74 | r.=.unsafe.{.mem::transmute(f(rt | 
| 3440 | 72 65 65 29 29 20 7d 3b 0a 20 20 20 20 20 20 20    20 53 65 6c 66 20 7b 20 74 72 65 65 2c 20 69 6e | ree)).};.........Self.{.tree,.in | 
| 3460 | 6e 65 72 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20    20 70 75 62 20 66 6e 20 63 6c 6f 6e 65 5f 74 72 | ner.}.....}......pub.fn.clone_tr | 
| 3480 | 65 65 28 26 73 65 6c 66 29 20 2d 3e 20 53 68 61    72 65 64 3c 54 72 65 65 3e 20 7b 0a 20 20 20 20 | ee(&self).->.Shared<Tree>.{..... | 
| 34a0 | 20 20 20 20 73 65 6c 66 2e 74 72 65 65 2e 63 6c    6f 6e 65 28 29 0a 20 20 20 20 7d 0a 0a 20 20 20 | ....self.tree.clone().....}..... | 
| 34c0 | 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20 20 70    75 62 20 66 6e 20 62 6f 72 72 6f 77 28 26 73 65 | .#[inline].....pub.fn.borrow(&se | 
| 34e0 | 6c 66 29 20 2d 3e 20 52 43 75 72 73 6f 72 42 6f    72 72 6f 77 20 7b 0a 20 20 20 20 20 20 20 20 6c | lf).->.RCursorBorrow.{.........l | 
| 3500 | 65 74 20 72 65 66 74 20 3d 20 73 65 6c 66 2e 74    72 65 65 2e 62 6f 72 72 6f 77 28 29 3b 0a 20 20 | et.reft.=.self.tree.borrow();... | 
| 3520 | 20 20 20 20 20 20 6c 65 74 20 63 75 72 73 6f 72    20 3d 20 26 73 65 6c 66 2e 69 6e 6e 65 72 3b 0a | ......let.cursor.=.&self.inner;. | 
| 3540 | 20 20 20 20 20 20 20 20 52 43 75 72 73 6f 72 42    6f 72 72 6f 77 20 7b 20 72 65 66 74 2c 20 63 75 | ........RCursorBorrow.{.reft,.cu | 
| 3560 | 72 73 6f 72 20 7d 0a 20 20 20 20 7d 0a 0a 20 20    20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20 20 | rsor.}.....}......#[inline]..... | 
| 3580 | 70 75 62 20 66 6e 20 62 6f 72 72 6f 77 5f 6d 75    74 3c 27 65 3e 28 26 27 65 20 6d 75 74 20 73 65 | pub.fn.borrow_mut<'e>(&'e.mut.se | 
| 35a0 | 6c 66 29 20 2d 3e 20 52 43 75 72 73 6f 72 42 6f    72 72 6f 77 4d 75 74 20 7b 0a 20 20 20 20 20 20 | lf).->.RCursorBorrowMut.{....... | 
| 35c0 | 20 20 6c 65 74 20 72 65 66 74 3a 20 52 65 66 3c    27 65 2c 20 54 72 65 65 3e 20 3d 20 73 65 6c 66 | ..let.reft:.Ref<'e,.Tree>.=.self | 
| 35e0 | 2e 74 72 65 65 2e 62 6f 72 72 6f 77 28 29 3b 0a    20 20 20 20 20 20 20 20 2f 2f 20 58 58 58 3a 20 | .tree.borrow();.........//.XXX:. | 
| 3600 | 45 78 70 6c 61 69 6e 20 74 68 65 20 73 61 66 65    74 79 20 68 65 72 65 2e 0a 20 20 20 20 20 20 20 | Explain.the.safety.here......... | 
| 3620 | 20 6c 65 74 20 63 75 72 73 6f 72 3a 20 26 27 65    20 6d 75 74 20 5f 20 3d 20 75 6e 73 61 66 65 20 | .let.cursor:.&'e.mut._.=.unsafe. | 
| 3640 | 7b 20 6d 65 6d 3a 3a 74 72 61 6e 73 6d 75 74 65    28 26 6d 75 74 20 73 65 6c 66 2e 69 6e 6e 65 72 | {.mem::transmute(&mut.self.inner | 
| 3660 | 29 20 7d 3b 0a 20 20 20 20 20 20 20 20 52 43 75    72 73 6f 72 42 6f 72 72 6f 77 4d 75 74 20 7b 20 | ).};.........RCursorBorrowMut.{. | 
| 3680 | 72 65 66 74 2c 20 63 75 72 73 6f 72 20 7d 0a 20    20 20 20 7d 0a 7d 0a 0a 70 75 62 20 65 6e 75 6d | reft,.cursor.}.....}.}..pub.enum | 
| 36a0 | 20 54 72 65 65 4f 72 4e 6f 64 65 3c 27 65 3e 20    7b 0a 20 20 20 20 54 72 65 65 28 26 27 65 20 53 | .TreeOrNode<'e>.{.....Tree(&'e.S | 
| 36c0 | 68 61 72 65 64 3c 54 72 65 65 3e 29 2c 0a 20 20    20 20 4e 6f 64 65 28 26 27 65 20 52 65 66 43 65 | hared<Tree>),.....Node(&'e.RefCe | 
| 36e0 | 6c 6c 3c 52 4e 6f 64 65 3e 29 2c 0a 7d 0a 0a 69    6d 70 6c 3c 27 65 3e 20 46 72 6f 6d 4c 69 73 70 | ll<RNode>),.}..impl<'e>.FromLisp | 
| 3700 | 3c 27 65 3e 20 66 6f 72 20 54 72 65 65 4f 72 4e    6f 64 65 3c 27 65 3e 20 7b 0a 20 20 20 20 66 6e | <'e>.for.TreeOrNode<'e>.{.....fn | 
| 3720 | 20 66 72 6f 6d 5f 6c 69 73 70 28 76 61 6c 75 65    3a 20 56 61 6c 75 65 3c 27 65 3e 29 20 2d 3e 20 | .from_lisp(value:.Value<'e>).->. | 
| 3740 | 52 65 73 75 6c 74 3c 53 65 6c 66 3e 20 7b 0a 20    20 20 20 20 20 20 20 69 66 20 6c 65 74 20 4f 6b | Result<Self>.{.........if.let.Ok | 
| 3760 | 28 76 61 6c 75 65 29 20 3d 20 76 61 6c 75 65 2e    69 6e 74 6f 5f 72 75 73 74 28 29 20 7b 0a 20 20 | (value).=.value.into_rust().{... | 
| 3780 | 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e    20 4f 6b 28 53 65 6c 66 3a 3a 54 72 65 65 28 76 | ..........return.Ok(Self::Tree(v | 
| 37a0 | 61 6c 75 65 29 29 3b 0a 20 20 20 20 20 20 20 20    7d 0a 20 20 20 20 20 20 20 20 69 66 20 6c 65 74 | alue));.........}.........if.let | 
| 37c0 | 20 4f 6b 28 76 61 6c 75 65 29 20 3d 20 76 61 6c    75 65 2e 69 6e 74 6f 5f 72 75 73 74 28 29 20 7b | .Ok(value).=.value.into_rust().{ | 
| 37e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74    75 72 6e 20 4f 6b 28 53 65 6c 66 3a 3a 4e 6f 64 | .............return.Ok(Self::Nod | 
| 3800 | 65 28 76 61 6c 75 65 29 29 3b 0a 20 20 20 20 20    20 20 20 7d 0a 20 20 20 20 20 20 20 20 76 61 6c | e(value));.........}.........val | 
| 3820 | 75 65 2e 65 6e 76 2e 73 69 67 6e 61 6c 28 77 72    6f 6e 67 5f 74 79 70 65 5f 61 72 67 75 6d 65 6e | ue.env.signal(wrong_type_argumen | 
| 3840 | 74 2c 20 28 74 72 65 65 5f 6f 72 5f 6e 6f 64 65    5f 70 2c 20 76 61 6c 75 65 29 29 0a 20 20 20 20 | t,.(tree_or_node_p,.value))..... | 
| 3860 | 7d 0a 7d 0a 0a 69 6d 70 6c 3c 27 65 3e 20 54 72    65 65 4f 72 4e 6f 64 65 3c 27 65 3e 20 7b 0a 20 | }.}..impl<'e>.TreeOrNode<'e>.{.. | 
| 3880 | 20 20 20 66 6e 20 77 61 6c 6b 28 26 73 65 6c 66    29 20 2d 3e 20 52 43 75 72 73 6f 72 20 7b 0a 20 | ...fn.walk(&self).->.RCursor.{.. | 
| 38a0 | 20 20 20 20 20 20 20 6d 61 74 63 68 20 2a 73 65    6c 66 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | .......match.*self.{............ | 
| 38c0 | 20 53 65 6c 66 3a 3a 54 72 65 65 28 74 72 65 65    29 20 3d 3e 20 52 43 75 72 73 6f 72 3a 3a 6e 65 | .Self::Tree(tree).=>.RCursor::ne | 
| 38e0 | 77 28 74 72 65 65 2e 63 6c 6f 6e 65 28 29 2c 20    7c 74 72 65 65 7c 20 74 72 65 65 2e 77 61 6c 6b | w(tree.clone(),.|tree|.tree.walk | 
| 3900 | 28 29 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20    20 53 65 6c 66 3a 3a 4e 6f 64 65 28 6e 6f 64 65 | ()),.............Self::Node(node | 
| 3920 | 29 20 3d 3e 20 7b 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 6c 65 74 20 6e 6f 64 65 20 | ).=>.{.................let.node. | 
| 3940 | 3d 20 6e 6f 64 65 2e 62 6f 72 72 6f 77 28 29 3b    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | =.node.borrow();................ | 
| 3960 | 20 52 43 75 72 73 6f 72 3a 3a 6e 65 77 28 6e 6f    64 65 2e 63 6c 6f 6e 65 5f 74 72 65 65 28 29 2c | .RCursor::new(node.clone_tree(), | 
| 3980 | 20 7c 5f 7c 20 6e 6f 64 65 2e 62 6f 72 72 6f 77    28 29 2e 77 61 6c 6b 28 29 29 0a 20 20 20 20 20 | .|_|.node.borrow().walk())...... | 
| 39a0 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20    20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 2f 2f 20 2d | .......}.........}.....}.}..//.- | 
| 39c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 39e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 3a00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 3a20 | 0a 0a 2f 2f 2f 20 43 72 65 61 74 65 20 61 20 6e    65 77 20 63 75 72 73 6f 72 20 73 74 61 72 74 69 | ..///.Create.a.new.cursor.starti | 
| 3a40 | 6e 67 20 66 72 6f 6d 20 74 68 65 20 67 69 76 65    6e 20 54 52 45 45 2d 4f 52 2d 4e 4f 44 45 2e 0a | ng.from.the.given.TREE-OR-NODE.. | 
| 3a60 | 2f 2f 2f 0a 2f 2f 2f 20 41 20 63 75 72 73 6f 72    20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 77 | ///.///.A.cursor.allows.you.to.w | 
| 3a80 | 61 6c 6b 20 61 20 73 79 6e 74 61 78 20 74 72 65    65 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 | alk.a.syntax.tree.more.efficient | 
| 3aa0 | 6c 79 20 74 68 61 6e 20 69 73 20 70 6f 73 73 69    62 6c 65 0a 2f 2f 2f 20 75 73 69 6e 67 20 60 74 | ly.than.is.possible.///.using.`t | 
| 3ac0 | 73 63 2d 67 65 74 2d 27 20 66 75 6e 63 74 69 6f    6e 73 2e 20 49 74 20 69 73 20 61 20 6d 75 74 61 | sc-get-'.functions..It.is.a.muta | 
| 3ae0 | 62 6c 65 20 6f 62 6a 65 63 74 20 74 68 61 74 20    69 73 20 61 6c 77 61 79 73 20 6f 6e 20 61 20 63 | ble.object.that.is.always.on.a.c | 
| 3b00 | 65 72 74 61 69 6e 0a 2f 2f 2f 20 73 79 6e 74 61    78 20 6e 6f 64 65 2c 20 61 6e 64 20 63 61 6e 20 | ertain.///.syntax.node,.and.can. | 
| 3b20 | 62 65 20 6d 6f 76 65 64 20 69 6d 70 65 72 61 74    69 76 65 6c 79 20 74 6f 20 64 69 66 66 65 72 65 | be.moved.imperatively.to.differe | 
| 3b40 | 6e 74 20 6e 6f 64 65 73 2e 0a 2f 2f 2f 0a 2f 2f    2f 20 49 66 20 61 20 74 72 65 65 20 69 73 20 67 | nt.nodes..///.///.If.a.tree.is.g | 
| 3b60 | 69 76 65 6e 2c 20 74 68 65 20 72 65 74 75 72 6e    65 64 20 63 75 72 73 6f 72 20 73 74 61 72 74 73 | iven,.the.returned.cursor.starts | 
| 3b80 | 20 6f 6e 20 69 74 73 20 72 6f 6f 74 20 6e 6f 64    65 2e 0a 23 5b 64 65 66 75 6e 28 75 73 65 72 5f | .on.its.root.node..#[defun(user_ | 
| 3ba0 | 70 74 72 29 5d 0a 66 6e 20 6d 61 6b 65 5f 63 75    72 73 6f 72 28 74 72 65 65 5f 6f 72 5f 6e 6f 64 | ptr)].fn.make_cursor(tree_or_nod | 
| 3bc0 | 65 3a 20 54 72 65 65 4f 72 4e 6f 64 65 29 20 2d    3e 20 52 65 73 75 6c 74 3c 52 43 75 72 73 6f 72 | e:.TreeOrNode).->.Result<RCursor | 
| 3be0 | 3e 20 7b 0a 20 20 20 20 4f 6b 28 74 72 65 65 5f    6f 72 5f 6e 6f 64 65 2e 77 61 6c 6b 28 29 29 0a | >.{.....Ok(tree_or_node.walk()). | 
| 3c00 | 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 74 68    65 20 66 69 65 6c 64 20 69 64 20 6f 66 20 43 55 | }..///.Return.the.field.id.of.CU | 
| 3c20 | 52 53 4f 52 27 73 20 63 75 72 72 65 6e 74 20 6e    6f 64 65 2e 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 | RSOR's.current.node..///.Return. | 
| 3c40 | 6e 69 6c 20 69 66 20 74 68 65 20 63 75 72 72 65    6e 74 20 6e 6f 64 65 20 64 6f 65 73 6e 27 74 20 | nil.if.the.current.node.doesn't. | 
| 3c60 | 68 61 76 65 20 61 20 66 69 65 6c 64 2e 0a 23 5b    64 65 66 75 6e 5d 0a 66 6e 20 63 75 72 72 65 6e | have.a.field..#[defun].fn.curren | 
| 3c80 | 74 5f 66 69 65 6c 64 5f 69 64 28 63 75 72 73 6f    72 3a 20 26 52 43 75 72 73 6f 72 29 20 2d 3e 20 | t_field_id(cursor:.&RCursor).->. | 
| 3ca0 | 52 65 73 75 6c 74 3c 4f 70 74 69 6f 6e 3c 75 31    36 3e 3e 20 7b 0a 20 20 20 20 4f 6b 28 63 75 72 | Result<Option<u16>>.{.....Ok(cur | 
| 3cc0 | 73 6f 72 2e 62 6f 72 72 6f 77 28 29 2e 66 69 65    6c 64 5f 69 64 28 29 29 0a 7d 0a 0a 2f 2f 2f 20 | sor.borrow().field_id()).}..///. | 
| 3ce0 | 52 65 74 75 72 6e 20 74 68 65 20 66 69 65 6c 64    20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 | Return.the.field.associated.with | 
| 3d00 | 20 43 55 52 53 4f 52 27 73 20 63 75 72 72 65 6e    74 20 6e 6f 64 65 2c 20 61 73 20 61 20 6b 65 79 | .CURSOR's.current.node,.as.a.key | 
| 3d20 | 77 6f 72 64 2e 0a 2f 2f 2f 20 52 65 74 75 72 6e    20 6e 69 6c 20 69 66 20 74 68 65 20 63 75 72 72 | word..///.Return.nil.if.the.curr | 
| 3d40 | 65 6e 74 20 6e 6f 64 65 20 69 73 20 6e 6f 74 20    61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 | ent.node.is.not.associated.with. | 
| 3d60 | 61 20 66 69 65 6c 64 2e 0a 23 5b 64 65 66 75 6e    5d 0a 66 6e 20 63 75 72 72 65 6e 74 5f 66 69 65 | a.field..#[defun].fn.current_fie | 
| 3d80 | 6c 64 28 63 75 72 73 6f 72 3a 20 26 52 43 75 72    73 6f 72 29 20 2d 3e 20 52 65 73 75 6c 74 3c 4f | ld(cursor:.&RCursor).->.Result<O | 
| 3da0 | 70 74 69 6f 6e 3c 26 27 73 74 61 74 69 63 20 47    6c 6f 62 61 6c 52 65 66 3e 3e 20 7b 0a 20 20 20 | ption<&'static.GlobalRef>>.{.... | 
| 3dc0 | 20 6c 65 74 20 63 75 72 73 6f 72 20 3d 20 63 75    72 73 6f 72 2e 62 6f 72 72 6f 77 28 29 3b 0a 20 | .let.cursor.=.cursor.borrow();.. | 
| 3de0 | 20 20 20 6c 65 74 20 6c 61 6e 67 75 61 67 65 3a    20 4c 61 6e 67 75 61 67 65 20 3d 20 63 75 72 73 | ...let.language:.Language.=.curs | 
| 3e00 | 6f 72 2e 72 65 66 74 2e 6c 61 6e 67 75 61 67 65    28 29 2e 69 6e 74 6f 28 29 3b 0a 20 20 20 20 4f | or.reft.language().into();.....O | 
| 3e20 | 6b 28 63 75 72 73 6f 72 2e 66 69 65 6c 64 5f 69    64 28 29 2e 61 6e 64 5f 74 68 65 6e 28 7c 69 64 | k(cursor.field_id().and_then(|id | 
| 3e40 | 7c 20 6c 61 6e 67 75 61 67 65 2e 69 6e 66 6f 28    29 2e 66 69 65 6c 64 5f 6e 61 6d 65 28 69 64 29 | |.language.info().field_name(id) | 
| 3e60 | 29 29 0a 7d 0a 0a 6d 61 63 72 6f 5f 72 75 6c 65    73 21 20 64 65 66 75 6e 5f 63 75 72 73 6f 72 5f | )).}..macro_rules!.defun_cursor_ | 
| 3e80 | 77 61 6c 6b 73 20 7b 0a 20 20 20 20 28 24 28 24    28 23 5b 24 6d 65 74 61 3a 6d 65 74 61 5d 29 2a | walks.{.....($($(#[$meta:meta])* | 
| 3ea0 | 20 24 28 24 6c 69 73 70 5f 6e 61 6d 65 3a 6c 69    74 65 72 61 6c 29 3f 20 66 6e 20 24 6e 61 6d 65 | .$($lisp_name:literal)?.fn.$name | 
| 3ec0 | 3a 69 64 65 6e 74 20 24 28 20 28 20 24 28 20 24    70 61 72 61 6d 3a 69 64 65 6e 74 20 24 28 24 69 | :ident.$(.(.$(.$param:ident.$($i | 
| 3ee0 | 6e 74 6f 3a 69 64 65 6e 74 29 3f 20 3a 20 24 69    74 79 70 65 3a 74 79 20 29 2c 2a 20 29 20 29 3f | nto:ident)?.:.$itype:ty.),*.).)? | 
| 3f00 | 20 2d 3e 20 24 74 79 70 65 3a 74 79 29 2a 29 20    3d 3e 20 7b 0a 20 20 20 20 20 20 20 20 24 28 0a | .->.$type:ty)*).=>.{.........$(. | 
| 3f20 | 20 20 20 20 20 20 20 20 20 20 20 20 24 28 23 5b    24 6d 65 74 61 5d 29 2a 0a 20 20 20 20 20 20 20 | ............$(#[$meta])*........ | 
| 3f40 | 20 20 20 20 20 23 5b 64 65 66 75 6e 24 28 28 6e    61 6d 65 20 3d 20 24 6c 69 73 70 5f 6e 61 6d 65 | .....#[defun$((name.=.$lisp_name | 
| 3f60 | 29 29 3f 5d 0a 20 20 20 20 20 20 20 20 20 20 20    20 66 6e 20 24 6e 61 6d 65 28 63 75 72 73 6f 72 | ))?].............fn.$name(cursor | 
| 3f80 | 3a 20 26 6d 75 74 20 52 43 75 72 73 6f 72 2c 20    24 28 20 24 28 20 24 70 61 72 61 6d 3a 20 24 69 | :.&mut.RCursor,.$(.$(.$param:.$i | 
| 3fa0 | 74 79 70 65 20 29 2c 2a 20 29 3f 20 29 20 2d 3e    20 52 65 73 75 6c 74 3c 24 74 79 70 65 3e 20 7b | type.),*.)?.).->.Result<$type>.{ | 
| 3fc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 4f 6b 28 63 75 72 73 6f 72 2e 62 6f 72 72 6f | .................Ok(cursor.borro | 
| 3fe0 | 77 5f 6d 75 74 28 29 2e 24 6e 61 6d 65 28 20 24    28 20 24 28 20 24 70 61 72 61 6d 20 24 28 2e 24 | w_mut().$name(.$(.$(.$param.$(.$ | 
| 4000 | 69 6e 74 6f 28 29 29 3f 20 29 2c 2a 20 29 3f 20    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d | into())?.),*.)?.)).............} | 
| 4020 | 0a 20 20 20 20 20 20 20 20 29 2a 0a 20 20 20 20    7d 3b 0a 7d 0a 0a 64 65 66 75 6e 5f 63 75 72 73 | .........)*.....};.}..defun_curs | 
| 4040 | 6f 72 5f 77 61 6c 6b 73 21 20 7b 0a 20 20 20 20    2f 2f 2f 20 4d 6f 76 65 20 43 55 52 53 4f 52 20 | or_walks!.{.....///.Move.CURSOR. | 
| 4060 | 74 6f 20 74 68 65 20 66 69 72 73 74 20 63 68 69    6c 64 20 6f 66 20 69 74 73 20 63 75 72 72 65 6e | to.the.first.child.of.its.curren | 
| 4080 | 74 20 6e 6f 64 65 2e 0a 20 20 20 20 2f 2f 2f 20    52 65 74 75 72 6e 20 74 20 69 66 20 43 55 52 53 | t.node......///.Return.t.if.CURS | 
| 40a0 | 4f 52 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20    6d 6f 76 65 64 2c 20 6e 69 6c 20 69 66 20 74 68 | OR.successfully.moved,.nil.if.th | 
| 40c0 | 65 72 65 20 77 65 72 65 20 6e 6f 20 63 68 69 6c    64 72 65 6e 2e 0a 20 20 20 20 66 6e 20 67 6f 74 | ere.were.no.children......fn.got | 
| 40e0 | 6f 5f 66 69 72 73 74 5f 63 68 69 6c 64 20 2d 3e    20 62 6f 6f 6c 0a 0a 20 20 20 20 2f 2f 2f 20 4d | o_first_child.->.bool......///.M | 
| 4100 | 6f 76 65 20 43 55 52 53 4f 52 20 74 6f 20 74 68    65 20 70 61 72 65 6e 74 20 6e 6f 64 65 20 6f 66 | ove.CURSOR.to.the.parent.node.of | 
| 4120 | 20 69 74 73 20 63 75 72 72 65 6e 74 20 6e 6f 64    65 2e 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 | .its.current.node......///.Retur | 
| 4140 | 6e 20 74 20 69 66 20 43 55 52 53 4f 52 20 73 75    63 63 65 73 73 66 75 6c 6c 79 20 6d 6f 76 65 64 | n.t.if.CURSOR.successfully.moved | 
| 4160 | 2c 20 6e 69 6c 20 69 66 20 69 74 20 77 61 73 20    61 6c 72 65 61 64 79 20 6f 6e 20 74 68 65 20 72 | ,.nil.if.it.was.already.on.the.r | 
| 4180 | 6f 6f 74 20 6e 6f 64 65 2e 0a 20 20 20 20 66 6e    20 67 6f 74 6f 5f 70 61 72 65 6e 74 20 2d 3e 20 | oot.node......fn.goto_parent.->. | 
| 41a0 | 62 6f 6f 6c 0a 0a 20 20 20 20 2f 2f 2f 20 4d 6f    76 65 20 43 55 52 53 4f 52 20 74 6f 20 74 68 65 | bool......///.Move.CURSOR.to.the | 
| 41c0 | 20 6e 65 78 74 20 73 69 62 6c 69 6e 67 20 6f 66    20 69 74 73 20 63 75 72 72 65 6e 74 20 6e 6f 64 | .next.sibling.of.its.current.nod | 
| 41e0 | 65 2e 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72    6e 20 74 20 69 66 20 43 55 52 53 4f 52 20 73 75 | e......///.Return.t.if.CURSOR.su | 
| 4200 | 63 63 65 73 73 66 75 6c 6c 79 20 6d 6f 76 65 64    2c 20 6e 69 6c 20 69 66 20 74 68 65 72 65 20 77 | ccessfully.moved,.nil.if.there.w | 
| 4220 | 61 73 20 6e 6f 20 6e 65 78 74 20 73 69 62 6c 69    6e 67 20 6e 6f 64 65 2e 0a 20 20 20 20 66 6e 20 | as.no.next.sibling.node......fn. | 
| 4240 | 67 6f 74 6f 5f 6e 65 78 74 5f 73 69 62 6c 69 6e    67 20 2d 3e 20 62 6f 6f 6c 0a 0a 20 20 20 20 2f | goto_next_sibling.->.bool....../ | 
| 4260 | 2f 2f 20 4d 6f 76 65 20 43 55 52 53 4f 52 20 74    6f 20 74 68 65 20 66 69 72 73 74 20 63 68 69 6c | //.Move.CURSOR.to.the.first.chil | 
| 4280 | 64 20 74 68 61 74 20 65 78 74 65 6e 64 73 20 62    65 79 6f 6e 64 20 74 68 65 20 67 69 76 65 6e 20 | d.that.extends.beyond.the.given. | 
| 42a0 | 42 59 54 45 50 4f 53 2e 0a 20 20 20 20 2f 2f 2f    20 52 65 74 75 72 6e 20 74 68 65 20 69 6e 64 65 | BYTEPOS......///.Return.the.inde | 
| 42c0 | 78 20 6f 66 20 74 68 65 20 63 68 69 6c 64 20 6e    6f 64 65 20 69 66 20 6f 6e 65 20 77 61 73 20 66 | x.of.the.child.node.if.one.was.f | 
| 42e0 | 6f 75 6e 64 2c 20 6e 69 6c 20 6f 74 68 65 72 77    69 73 65 2e 0a 20 20 20 20 22 67 6f 74 6f 2d 66 | ound,.nil.otherwise......"goto-f | 
| 4300 | 69 72 73 74 2d 63 68 69 6c 64 2d 66 6f 72 2d 62    79 74 65 22 20 66 6e 20 67 6f 74 6f 5f 66 69 72 | irst-child-for-byte".fn.goto_fir | 
| 4320 | 73 74 5f 63 68 69 6c 64 5f 66 6f 72 5f 62 79 74    65 28 62 79 74 65 70 6f 73 20 69 6e 74 6f 3a 20 | st_child_for_byte(bytepos.into:. | 
| 4340 | 42 79 74 65 50 6f 73 29 20 2d 3e 20 4f 70 74 69    6f 6e 3c 75 73 69 7a 65 3e 0a 7d 0a 0a 2f 2f 2f | BytePos).->.Option<usize>.}../// | 
| 4360 | 20 52 65 2d 69 6e 69 74 69 61 6c 69 7a 65 20 43    55 52 53 4f 52 20 74 6f 20 73 74 61 72 74 20 61 | .Re-initialize.CURSOR.to.start.a | 
| 4380 | 74 20 61 20 64 69 66 66 65 72 65 6e 74 20 4e 4f    44 45 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 | t.a.different.NODE..#[defun].fn. | 
| 43a0 | 72 65 73 65 74 5f 63 75 72 73 6f 72 28 63 75 72    73 6f 72 3a 20 26 6d 75 74 20 52 43 75 72 73 6f | reset_cursor(cursor:.&mut.RCurso | 
| 43c0 | 72 2c 20 6e 6f 64 65 3a 20 26 52 4e 6f 64 65 29    20 2d 3e 20 52 65 73 75 6c 74 3c 28 29 3e 20 7b | r,.node:.&RNode).->.Result<()>.{ | 
| 43e0 | 0a 20 20 20 20 4f 6b 28 63 75 72 73 6f 72 2e 62    6f 72 72 6f 77 5f 6d 75 74 28 29 2e 72 65 73 65 | .....Ok(cursor.borrow_mut().rese | 
| 4400 | 74 28 2a 6e 6f 64 65 2e 62 6f 72 72 6f 77 28 29    29 29 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d | t(*node.borrow())).}..//.------- | 
| 4420 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 4440 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 4460 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 65 6e 75 6d | --------------------------..enum | 
| 4480 | 20 54 72 61 76 65 72 73 61 6c 53 74 61 74 65 20    7b 0a 20 20 20 20 53 74 61 72 74 2c 0a 20 20 20 | .TraversalState.{.....Start,.... | 
| 44a0 | 20 44 6f 77 6e 2c 0a 20 20 20 20 52 69 67 68 74    2c 0a 20 20 20 20 44 6f 6e 65 2c 0a 7d 0a 0a 75 | .Down,.....Right,.....Done,.}..u | 
| 44c0 | 73 65 20 54 72 61 76 65 72 73 61 6c 53 74 61 74    65 3a 3a 2a 3b 0a 0a 73 74 72 75 63 74 20 44 65 | se.TraversalState::*;..struct.De | 
| 44e0 | 70 74 68 46 69 72 73 74 49 74 65 72 61 74 6f 72    20 7b 0a 20 20 20 20 63 75 72 73 6f 72 3a 20 52 | pthFirstIterator.{.....cursor:.R | 
| 4500 | 43 75 72 73 6f 72 2c 0a 20 20 20 20 73 74 61 74    65 3a 20 54 72 61 76 65 72 73 61 6c 53 74 61 74 | Cursor,.....state:.TraversalStat | 
| 4520 | 65 2c 0a 20 20 20 20 64 65 70 74 68 3a 20 75 73    69 7a 65 2c 0a 7d 0a 0a 2f 2f 20 54 4f 44 4f 3a | e,.....depth:.usize,.}..//.TODO: | 
| 4540 | 20 50 72 6f 76 69 64 65 20 61 20 66 75 6e 63 74    69 6f 6e 20 74 6f 20 6d 6f 76 65 20 62 61 63 6b | .Provide.a.function.to.move.back | 
| 4560 | 77 61 72 64 2e 0a 69 6d 70 6c 20 44 65 70 74 68    46 69 72 73 74 49 74 65 72 61 74 6f 72 20 7b 0a | ward..impl.DepthFirstIterator.{. | 
| 4580 | 20 20 20 20 66 6e 20 6e 65 77 28 74 72 65 65 5f    6f 72 5f 6e 6f 64 65 3a 20 54 72 65 65 4f 72 4e | ....fn.new(tree_or_node:.TreeOrN | 
| 45a0 | 6f 64 65 29 20 2d 3e 20 53 65 6c 66 20 7b 0a 20    20 20 20 20 20 20 20 53 65 6c 66 20 7b 20 63 75 | ode).->.Self.{.........Self.{.cu | 
| 45c0 | 72 73 6f 72 3a 20 74 72 65 65 5f 6f 72 5f 6e 6f    64 65 2e 77 61 6c 6b 28 29 2c 20 73 74 61 74 65 | rsor:.tree_or_node.walk(),.state | 
| 45e0 | 3a 20 53 74 61 72 74 2c 20 64 65 70 74 68 3a 20    30 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 | :.Start,.depth:.0.}.....}......# | 
| 4600 | 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20 20 66 6e 20    69 74 65 6d 28 26 73 65 6c 66 29 20 2d 3e 20 4f | [inline].....fn.item(&self).->.O | 
| 4620 | 70 74 69 6f 6e 3c 28 52 4e 6f 64 65 2c 20 75 73    69 7a 65 29 3e 20 7b 0a 20 20 20 20 20 20 20 20 | ption<(RNode,.usize)>.{......... | 
| 4640 | 53 6f 6d 65 28 28 52 4e 6f 64 65 3a 3a 6e 65 77    28 73 65 6c 66 2e 63 75 72 73 6f 72 2e 63 6c 6f | Some((RNode::new(self.cursor.clo | 
| 4660 | 6e 65 5f 74 72 65 65 28 29 2c 20 7c 5f 7c 20 73    65 6c 66 2e 63 75 72 73 6f 72 2e 62 6f 72 72 6f | ne_tree(),.|_|.self.cursor.borro | 
| 4680 | 77 28 29 2e 6e 6f 64 65 28 29 29 2c 20 73 65 6c    66 2e 64 65 70 74 68 29 29 0a 20 20 20 20 7d 0a | w().node()),.self.depth)).....}. | 
| 46a0 | 0a 20 20 20 20 66 6e 20 63 6c 6f 73 65 28 26 6d    75 74 20 73 65 6c 66 29 20 7b 0a 20 20 20 20 20 | .....fn.close(&mut.self).{...... | 
| 46c0 | 20 20 20 73 65 6c 66 2e 73 74 61 74 65 20 3d 20    44 6f 6e 65 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 69 | ...self.state.=.Done;.....}.}..i | 
| 46e0 | 6d 70 6c 20 49 74 65 72 61 74 6f 72 20 66 6f 72    20 44 65 70 74 68 46 69 72 73 74 49 74 65 72 61 | mpl.Iterator.for.DepthFirstItera | 
| 4700 | 74 6f 72 20 7b 0a 20 20 20 20 74 79 70 65 20 49    74 65 6d 20 3d 20 28 52 4e 6f 64 65 2c 20 75 73 | tor.{.....type.Item.=.(RNode,.us | 
| 4720 | 69 7a 65 29 3b 0a 0a 20 20 20 20 66 6e 20 6e 65    78 74 28 26 6d 75 74 20 73 65 6c 66 29 20 2d 3e | ize);......fn.next(&mut.self).-> | 
| 4740 | 20 4f 70 74 69 6f 6e 3c 53 65 6c 66 3a 3a 49 74    65 6d 3e 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 | .Option<Self::Item>.{.........ma | 
| 4760 | 74 63 68 20 73 65 6c 66 2e 73 74 61 74 65 20 7b    0a 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 | tch.self.state.{.............Sta | 
| 4780 | 72 74 20 3d 3e 20 7b 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 74 61 | rt.=>.{.................self.sta | 
| 47a0 | 74 65 20 3d 20 44 6f 77 6e 3b 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e | te.=.Down;.................self. | 
| 47c0 | 69 74 65 6d 28 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 | item().............}............ | 
| 47e0 | 20 44 6f 77 6e 20 3d 3e 20 7b 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 69 66 20 73 65 | .Down.=>.{.................if.se | 
| 4800 | 6c 66 2e 63 75 72 73 6f 72 2e 62 6f 72 72 6f 77    5f 6d 75 74 28 29 2e 67 6f 74 6f 5f 66 69 72 73 | lf.cursor.borrow_mut().goto_firs | 
| 4820 | 74 5f 63 68 69 6c 64 28 29 20 7b 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t_child().{..................... | 
| 4840 | 73 65 6c 66 2e 64 65 70 74 68 20 2b 3d 20 31 3b    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | self.depth.+=.1;................ | 
| 4860 | 20 20 20 20 20 73 65 6c 66 2e 69 74 65 6d 28 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....self.item()................ | 
| 4880 | 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 | .}.else.{.....................se | 
| 48a0 | 6c 66 2e 73 74 61 74 65 20 3d 20 52 69 67 68 74    3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lf.state.=.Right;............... | 
| 48c0 | 20 20 20 20 20 20 73 65 6c 66 2e 6e 65 78 74 28    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......self.next()............... | 
| 48e0 | 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20    7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 69 | ..}.............}.............Ri | 
| 4900 | 67 68 74 20 3d 3e 20 7b 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 | ght.=>.{.................if.self | 
| 4920 | 2e 63 75 72 73 6f 72 2e 62 6f 72 72 6f 77 5f 6d    75 74 28 29 2e 67 6f 74 6f 5f 6e 65 78 74 5f 73 | .cursor.borrow_mut().goto_next_s | 
| 4940 | 69 62 6c 69 6e 67 28 29 20 7b 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | ibling().{.....................s | 
| 4960 | 65 6c 66 2e 73 74 61 74 65 20 3d 20 44 6f 77 6e    3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | elf.state.=.Down;............... | 
| 4980 | 20 20 20 20 20 20 73 65 6c 66 2e 69 74 65 6d 28    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......self.item()............... | 
| 49a0 | 20 20 7d 20 65 6c 73 65 20 69 66 20 73 65 6c 66    2e 63 75 72 73 6f 72 2e 62 6f 72 72 6f 77 5f 6d | ..}.else.if.self.cursor.borrow_m | 
| 49c0 | 75 74 28 29 2e 67 6f 74 6f 5f 70 61 72 65 6e 74    28 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | ut().goto_parent().{............ | 
| 49e0 | 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 64 65    70 74 68 20 2d 3d 20 31 3b 0a 20 20 20 20 20 20 | .........self.depth.-=.1;....... | 
| 4a00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65    6c 66 2e 6e 65 78 74 28 29 0a 20 20 20 20 20 20 | ..............self.next()....... | 
| 4a20 | 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65    20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........}.else.{.............. | 
| 4a40 | 20 20 20 20 20 20 20 73 65 6c 66 2e 73 74 61 74    65 20 3d 20 44 6f 6e 65 3b 0a 20 20 20 20 20 20 | .......self.state.=.Done;....... | 
| 4a60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65    6c 66 2e 6e 65 78 74 28 29 0a 20 20 20 20 20 20 | ..............self.next()....... | 
| 4a80 | 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20    20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | ..........}.............}....... | 
| 4aa0 | 20 20 20 20 20 20 44 6f 6e 65 20 3d 3e 20 4e 6f    6e 65 2c 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 | ......Done.=>.None,.........}... | 
| 4ac0 | 20 20 7d 0a 7d 0a 0a 2f 2f 2f 20 43 72 65 61 74    65 20 61 20 6e 65 77 20 64 65 70 74 68 2d 66 69 | ..}.}..///.Create.a.new.depth-fi | 
| 4ae0 | 72 73 74 20 69 74 65 72 61 74 6f 72 20 66 72 6f    6d 20 74 68 65 20 67 69 76 65 6e 20 54 52 45 45 | rst.iterator.from.the.given.TREE | 
| 4b00 | 2d 4f 52 2d 4e 4f 44 45 2e 0a 2f 2f 2f 20 54 68    65 20 74 72 61 76 65 72 73 61 6c 20 69 73 20 70 | -OR-NODE..///.The.traversal.is.p | 
| 4b20 | 72 65 2d 6f 72 64 65 72 2e 0a 23 5b 64 65 66 75    6e 28 75 73 65 72 5f 70 74 72 29 5d 0a 66 6e 20 | re-order..#[defun(user_ptr)].fn. | 
| 4b40 | 5f 69 74 65 72 28 74 72 65 65 5f 6f 72 5f 6e 6f    64 65 3a 20 54 72 65 65 4f 72 4e 6f 64 65 29 20 | _iter(tree_or_node:.TreeOrNode). | 
| 4b60 | 2d 3e 20 52 65 73 75 6c 74 3c 44 65 70 74 68 46    69 72 73 74 49 74 65 72 61 74 6f 72 3e 20 7b 0a | ->.Result<DepthFirstIterator>.{. | 
| 4b80 | 20 20 20 20 4f 6b 28 44 65 70 74 68 46 69 72 73    74 49 74 65 72 61 74 6f 72 3a 3a 6e 65 77 28 74 | ....Ok(DepthFirstIterator::new(t | 
| 4ba0 | 72 65 65 5f 6f 72 5f 6e 6f 64 65 29 29 0a 7d 0a    0a 2f 2f 2f 20 4d 6f 76 65 20 49 54 45 52 41 54 | ree_or_node)).}..///.Move.ITERAT | 
| 4bc0 | 4f 52 20 74 6f 20 74 68 65 20 6e 65 78 74 20 6e    6f 64 65 2e 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 | OR.to.the.next.node..///.Return. | 
| 4be0 | 74 20 69 66 20 49 54 45 52 41 54 4f 52 20 73 75    63 63 65 73 73 66 75 6c 6c 79 20 6d 6f 76 65 64 | t.if.ITERATOR.successfully.moved | 
| 4c00 | 2c 20 6e 69 6c 20 69 66 20 74 68 65 72 65 20 77    61 73 20 6e 6f 20 6e 65 78 74 20 6e 6f 64 65 2c | ,.nil.if.there.was.no.next.node, | 
| 4c20 | 20 6f 72 20 69 66 0a 2f 2f 2f 20 49 54 45 52 41    54 4f 52 20 77 61 73 20 63 6c 6f 73 65 64 2e 0a | .or.if.///.ITERATOR.was.closed.. | 
| 4c40 | 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 5f 69 74 65    72 5f 6e 65 78 74 28 69 74 65 72 61 74 6f 72 3a | #[defun].fn._iter_next(iterator: | 
| 4c60 | 20 26 6d 75 74 20 44 65 70 74 68 46 69 72 73 74    49 74 65 72 61 74 6f 72 29 20 2d 3e 20 52 65 73 | .&mut.DepthFirstIterator).->.Res | 
| 4c80 | 75 6c 74 3c 62 6f 6f 6c 3e 20 7b 0a 20 20 20 20    4f 6b 28 69 74 65 72 61 74 6f 72 2e 6e 65 78 74 | ult<bool>.{.....Ok(iterator.next | 
| 4ca0 | 28 29 2e 69 73 5f 73 6f 6d 65 28 29 29 0a 7d 0a    0a 2f 2f 2f 20 43 6c 6f 73 65 20 49 54 45 52 41 | ().is_some()).}..///.Close.ITERA | 
| 4cc0 | 54 4f 52 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e    20 5f 69 74 65 72 5f 63 6c 6f 73 65 28 69 74 65 | TOR..#[defun].fn._iter_close(ite | 
| 4ce0 | 72 61 74 6f 72 3a 20 26 6d 75 74 20 44 65 70 74    68 46 69 72 73 74 49 74 65 72 61 74 6f 72 29 20 | rator:.&mut.DepthFirstIterator). | 
| 4d00 | 2d 3e 20 52 65 73 75 6c 74 3c 28 29 3e 20 7b 0a    20 20 20 20 4f 6b 28 69 74 65 72 61 74 6f 72 2e | ->.Result<()>.{.....Ok(iterator. | 
| 4d20 | 63 6c 6f 73 65 28 29 29 0a 7d 0a 0a 23 5b 64 65    72 69 76 65 28 43 6c 6f 6e 65 2c 20 43 6f 70 79 | close()).}..#[derive(Clone,.Copy | 
| 4d40 | 29 5d 0a 65 6e 75 6d 20 56 65 63 74 6f 72 4f 72    4b 65 79 77 6f 72 64 3c 27 65 3e 20 7b 0a 20 20 | )].enum.VectorOrKeyword<'e>.{... | 
| 4d60 | 20 20 56 65 63 74 6f 72 28 56 65 63 74 6f 72 3c    27 65 3e 29 2c 0a 20 20 20 20 4b 65 79 77 6f 72 | ..Vector(Vector<'e>),.....Keywor | 
| 4d80 | 64 28 56 61 6c 75 65 3c 27 65 3e 29 2c 0a 7d 0a    0a 69 6d 70 6c 3c 27 65 3e 20 46 72 6f 6d 4c 69 | d(Value<'e>),.}..impl<'e>.FromLi | 
| 4da0 | 73 70 3c 27 65 3e 20 66 6f 72 20 56 65 63 74 6f    72 4f 72 4b 65 79 77 6f 72 64 3c 27 65 3e 20 7b | sp<'e>.for.VectorOrKeyword<'e>.{ | 
| 4dc0 | 0a 20 20 20 20 66 6e 20 66 72 6f 6d 5f 6c 69 73    70 28 76 61 6c 75 65 3a 20 56 61 6c 75 65 3c 27 | .....fn.from_lisp(value:.Value<' | 
| 4de0 | 65 3e 29 20 2d 3e 20 52 65 73 75 6c 74 3c 53 65    6c 66 3e 20 7b 0a 20 20 20 20 20 20 20 20 69 66 | e>).->.Result<Self>.{.........if | 
| 4e00 | 20 6c 65 74 20 4f 6b 28 76 61 6c 75 65 29 20 3d    20 76 61 6c 75 65 2e 69 6e 74 6f 5f 72 75 73 74 | .let.Ok(value).=.value.into_rust | 
| 4e20 | 3a 3a 3c 56 65 63 74 6f 72 3e 28 29 20 7b 0a 20    20 20 20 20 20 20 20 20 20 20 20 4f 6b 28 53 65 | ::<Vector>().{.............Ok(Se | 
| 4e40 | 6c 66 3a 3a 56 65 63 74 6f 72 28 76 61 6c 75 65    29 29 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 | lf::Vector(value)).........}.els | 
| 4e60 | 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20    2f 2f 20 54 4f 44 4f 3a 20 56 65 72 69 66 79 20 | e.{.............//.TODO:.Verify. | 
| 4e80 | 74 68 61 74 20 69 74 27 73 20 61 20 76 61 6c 69    64 20 6e 6f 64 65 20 70 72 6f 70 65 72 74 79 0a | that.it's.a.valid.node.property. | 
| 4ea0 | 20 20 20 20 20 20 20 20 20 20 20 20 4f 6b 28 53    65 6c 66 3a 3a 4b 65 79 77 6f 72 64 28 76 61 6c | ............Ok(Self::Keyword(val | 
| 4ec0 | 75 65 29 29 0a 20 20 20 20 20 20 20 20 7d 0a 20    20 20 20 7d 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 | ue)).........}.....}.}..///.Retu | 
| 4ee0 | 72 6e 20 74 68 65 20 70 72 6f 70 65 72 74 69 65    73 20 6f 66 20 49 54 45 52 41 54 4f 52 27 73 20 | rn.the.properties.of.ITERATOR's. | 
| 4f00 | 63 75 72 72 65 6e 74 20 6e 6f 64 65 2c 20 6f 72    20 74 68 65 20 6e 6f 64 65 20 69 74 73 65 6c 66 | current.node,.or.the.node.itself | 
| 4f20 | 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 49 66 20 50 52 4f    50 53 20 69 73 20 61 20 76 65 63 74 6f 72 20 6f | ..///.///.If.PROPS.is.a.vector.o | 
| 4f40 | 66 20 70 72 6f 70 65 72 74 79 20 6e 61 6d 65 73    2c 20 72 65 74 75 72 6e 20 61 20 76 65 63 74 6f | f.property.names,.return.a.vecto | 
| 4f60 | 72 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65    20 6e 6f 64 65 27 73 0a 2f 2f 2f 20 63 6f 72 72 | r.containing.the.node's.///.corr | 
| 4f80 | 65 73 70 6f 6e 64 69 6e 67 20 70 72 6f 70 65 72    74 69 65 73 2e 20 49 66 20 4f 55 54 50 55 54 20 | esponding.properties..If.OUTPUT. | 
| 4fa0 | 69 73 20 61 6c 73 6f 20 6e 6f 6e 2d 6e 69 6c 2c    20 69 74 20 6d 75 73 74 20 62 65 20 61 20 76 65 | is.also.non-nil,.it.must.be.a.ve | 
| 4fc0 | 63 74 6f 72 20 6f 66 20 74 68 65 0a 2f 2f 2f 20    73 61 6d 65 20 6c 65 6e 67 74 68 2c 20 77 68 65 | ctor.of.the.///.same.length,.whe | 
| 4fe0 | 72 65 20 74 68 65 20 70 72 6f 70 65 72 74 69 65    73 20 77 69 6c 6c 20 62 65 20 77 72 69 74 74 65 | re.the.properties.will.be.writte | 
| 5000 | 6e 20 69 6e 74 6f 2e 0a 2f 2f 2f 0a 2f 2f 2f 20    49 66 20 50 52 4f 50 53 20 69 73 20 61 20 73 69 | n.into..///.///.If.PROPS.is.a.si | 
| 5020 | 6e 67 6c 65 20 70 72 6f 70 65 72 74 79 20 6e 61    6d 65 2c 20 72 65 74 75 72 6e 20 74 68 61 74 20 | ngle.property.name,.return.that. | 
| 5040 | 70 72 6f 70 65 72 74 79 2e 0a 2f 2f 2f 0a 2f 2f    2f 20 49 66 20 50 52 4f 50 53 20 69 73 20 6e 69 | property..///.///.If.PROPS.is.ni | 
| 5060 | 6c 2c 20 72 65 74 75 72 6e 20 74 68 65 20 6e 6f    64 65 20 69 74 73 65 6c 66 2e 0a 2f 2f 2f 0a 2f | l,.return.the.node.itself..///./ | 
| 5080 | 2f 2f 20 53 65 65 20 60 74 73 63 2d 76 61 6c 69    64 2d 6e 6f 64 65 2d 70 72 6f 70 73 27 20 66 6f | //.See.`tsc-valid-node-props'.fo | 
| 50a0 | 72 20 74 68 65 20 6c 69 73 74 20 6f 66 20 61 76    61 69 6c 61 62 6c 65 20 70 72 6f 70 65 72 74 69 | r.the.list.of.available.properti | 
| 50c0 | 65 73 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20    5f 69 74 65 72 5f 63 75 72 72 65 6e 74 5f 6e 6f | es..#[defun].fn._iter_current_no | 
| 50e0 | 64 65 3c 27 65 3e 28 0a 20 20 20 20 69 74 65 72    61 74 6f 72 3a 20 26 6d 75 74 20 44 65 70 74 68 | de<'e>(.....iterator:.&mut.Depth | 
| 5100 | 46 69 72 73 74 49 74 65 72 61 74 6f 72 2c 0a 20    20 20 20 70 72 6f 70 73 3a 20 4f 70 74 69 6f 6e | FirstIterator,.....props:.Option | 
| 5120 | 3c 56 65 63 74 6f 72 4f 72 4b 65 79 77 6f 72 64    3c 27 65 3e 3e 2c 0a 20 20 20 20 6f 75 74 70 75 | <VectorOrKeyword<'e>>,.....outpu | 
| 5140 | 74 3a 20 4f 70 74 69 6f 6e 3c 56 65 63 74 6f 72    3c 27 65 3e 3e 2c 0a 20 20 20 20 65 6e 76 3a 20 | t:.Option<Vector<'e>>,.....env:. | 
| 5160 | 26 27 65 20 45 6e 76 2c 0a 29 20 2d 3e 20 52 65    73 75 6c 74 3c 56 61 6c 75 65 3c 27 65 3e 3e 20 | &'e.Env,.).->.Result<Value<'e>>. | 
| 5180 | 7b 0a 20 20 20 20 6c 65 74 20 63 75 72 73 6f 72    20 3d 20 26 69 74 65 72 61 74 6f 72 2e 63 75 72 | {.....let.cursor.=.&iterator.cur | 
| 51a0 | 73 6f 72 3b 0a 20 20 20 20 6d 61 74 63 68 20 70    72 6f 70 73 20 7b 0a 20 20 20 20 20 20 20 20 53 | sor;.....match.props.{.........S | 
| 51c0 | 6f 6d 65 28 56 65 63 74 6f 72 4f 72 4b 65 79 77    6f 72 64 3a 3a 4b 65 79 77 6f 72 64 28 70 72 6f | ome(VectorOrKeyword::Keyword(pro | 
| 51e0 | 70 29 29 20 69 66 20 70 72 6f 70 2e 65 71 28 5f    64 65 70 74 68 2e 62 69 6e 64 28 65 6e 76 29 29 | p)).if.prop.eq(_depth.bind(env)) | 
| 5200 | 20 3d 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20    20 20 69 74 65 72 61 74 6f 72 2e 64 65 70 74 68 | .=>.{.............iterator.depth | 
| 5220 | 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a    20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | .into_lisp(env).........}....... | 
| 5240 | 20 20 5f 20 3d 3e 20 7b 0a 20 20 20 20 20 20 20    20 20 20 20 20 6c 65 74 20 72 65 73 75 6c 74 20 | .._.=>.{.............let.result. | 
| 5260 | 3d 20 5f 63 75 72 72 65 6e 74 5f 6e 6f 64 65 28    63 75 72 73 6f 72 2c 20 70 72 6f 70 73 2c 20 6f | =._current_node(cursor,.props,.o | 
| 5280 | 75 74 70 75 74 2c 20 65 6e 76 29 3f 3b 0a 20 20    20 20 20 20 20 20 20 20 20 20 69 66 20 6c 65 74 | utput,.env)?;.............if.let | 
| 52a0 | 20 53 6f 6d 65 28 56 65 63 74 6f 72 4f 72 4b 65    79 77 6f 72 64 3a 3a 56 65 63 74 6f 72 28 70 72 | .Some(VectorOrKeyword::Vector(pr | 
| 52c0 | 6f 70 73 29 29 20 3d 20 70 72 6f 70 73 20 7b 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ops)).=.props.{................. | 
| 52e0 | 69 66 20 6c 65 74 20 53 6f 6d 65 28 6f 75 74 70    75 74 29 20 3d 20 6f 75 74 70 75 74 20 7b 0a 20 | if.let.Some(output).=.output.{.. | 
| 5300 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 66 6f 72 20 28 69 2c 20 70 72 6f 70 29 | ...................for.(i,.prop) | 
| 5320 | 20 69 6e 20 70 72 6f 70 73 2e 69 6e 74 6f 5f 69    74 65 72 28 29 2e 65 6e 75 6d 65 72 61 74 65 28 | .in.props.into_iter().enumerate( | 
| 5340 | 29 20 7b 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 69 66 20 70 | ).{.........................if.p | 
| 5360 | 72 6f 70 2e 65 71 28 5f 64 65 70 74 68 2e 62 69    6e 64 28 65 6e 76 29 29 20 7b 0a 20 20 20 20 20 | rop.eq(_depth.bind(env)).{...... | 
| 5380 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 6f 75 74 70 75 74 2e 73 65 | .......................output.se | 
| 53a0 | 74 28 69 2c 20 69 74 65 72 61 74 6f 72 2e 64 65    70 74 68 29 3f 3b 0a 20 20 20 20 20 20 20 20 20 | t(i,.iterator.depth)?;.......... | 
| 53c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...............}................ | 
| 53e0 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a | .....}.................}.else.{. | 
| 5400 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 74 6f 64 6f 21 28 29 0a 20 20 20 20 | ....................todo!()..... | 
| 5420 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20    20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | ............}.............}..... | 
| 5440 | 20 20 20 20 20 20 20 20 4f 6b 28 72 65 73 75 6c    74 29 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | ........Ok(result).........}.... | 
| 5460 | 20 7d 0a 7d 0a 0a 2f 2f 2f 20 4d 6f 76 65 20 49    54 45 52 41 54 4f 52 20 74 6f 20 74 68 65 20 6e | .}.}..///.Move.ITERATOR.to.the.n | 
| 5480 | 65 78 74 20 6e 6f 64 65 2c 20 61 6e 64 20 72 65    74 72 69 65 76 65 20 69 74 73 20 70 72 6f 70 65 | ext.node,.and.retrieve.its.prope | 
| 54a0 | 72 74 69 65 73 2c 20 6f 72 20 74 68 65 20 6e 6f    64 65 20 69 74 73 65 6c 66 2e 0a 2f 2f 2f 0a 2f | rties,.or.the.node.itself..///./ | 
| 54c0 | 2f 2f 20 54 68 69 73 20 61 20 63 6f 6d 62 69 6e    61 74 69 6f 6e 20 6f 66 20 60 74 73 63 2d 2d 69 | //.This.a.combination.of.`tsc--i | 
| 54e0 | 74 65 72 2d 6e 65 78 74 27 20 61 6e 64 20 60 74    73 63 2d 2d 69 74 65 72 2d 63 75 72 72 65 6e 74 | ter-next'.and.`tsc--iter-current | 
| 5500 | 2d 6e 6f 64 65 27 2e 0a 23 5b 64 65 66 75 6e 5d    0a 66 6e 20 5f 69 74 65 72 5f 6e 65 78 74 5f 6e | -node'..#[defun].fn._iter_next_n | 
| 5520 | 6f 64 65 3c 27 65 3e 28 0a 20 20 20 20 69 74 65    72 61 74 6f 72 3a 20 26 6d 75 74 20 44 65 70 74 | ode<'e>(.....iterator:.&mut.Dept | 
| 5540 | 68 46 69 72 73 74 49 74 65 72 61 74 6f 72 2c 0a    20 20 20 20 70 72 6f 70 73 3a 20 4f 70 74 69 6f | hFirstIterator,.....props:.Optio | 
| 5560 | 6e 3c 56 65 63 74 6f 72 4f 72 4b 65 79 77 6f 72    64 3c 27 65 3e 3e 2c 0a 20 20 20 20 6f 75 74 70 | n<VectorOrKeyword<'e>>,.....outp | 
| 5580 | 75 74 3a 20 4f 70 74 69 6f 6e 3c 56 65 63 74 6f    72 3c 27 65 3e 3e 2c 0a 20 20 20 20 65 6e 76 3a | ut:.Option<Vector<'e>>,.....env: | 
| 55a0 | 20 26 27 65 20 45 6e 76 2c 0a 29 20 2d 3e 20 52    65 73 75 6c 74 3c 4f 70 74 69 6f 6e 3c 56 61 6c | .&'e.Env,.).->.Result<Option<Val | 
| 55c0 | 75 65 3c 27 65 3e 3e 3e 20 7b 0a 20 20 20 20 69    66 20 69 74 65 72 61 74 6f 72 2e 6e 65 78 74 28 | ue<'e>>>.{.....if.iterator.next( | 
| 55e0 | 29 2e 69 73 5f 73 6f 6d 65 28 29 20 7b 0a 20 20    20 20 20 20 20 20 4f 6b 28 53 6f 6d 65 28 5f 69 | ).is_some().{.........Ok(Some(_i | 
| 5600 | 74 65 72 5f 63 75 72 72 65 6e 74 5f 6e 6f 64 65    28 69 74 65 72 61 74 6f 72 2c 20 70 72 6f 70 73 | ter_current_node(iterator,.props | 
| 5620 | 2c 20 6f 75 74 70 75 74 2c 20 65 6e 76 29 3f 29    29 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 | ,.output,.env)?)).....}.else.{.. | 
| 5640 | 20 20 20 20 20 20 20 4f 6b 28 4e 6f 6e 65 29 0a    20 20 20 20 7d 0a 7d 0a 0a 66 6e 20 67 65 74 3c | .......Ok(None).....}.}..fn.get< | 
| 5660 | 27 65 3e 28 70 72 6f 70 3a 20 56 61 6c 75 65 3c    27 65 3e 2c 20 6e 6f 64 65 3a 20 4e 6f 64 65 2c | 'e>(prop:.Value<'e>,.node:.Node, | 
| 5680 | 20 63 75 72 73 6f 72 3a 20 26 52 43 75 72 73 6f    72 29 20 2d 3e 20 52 65 73 75 6c 74 3c 56 61 6c | .cursor:.&RCursor).->.Result<Val | 
| 56a0 | 75 65 3c 27 65 3e 3e 20 7b 0a 20 20 20 20 6d 61    63 72 6f 5f 72 75 6c 65 73 21 20 73 75 67 61 72 | ue<'e>>.{.....macro_rules!.sugar | 
| 56c0 | 20 7b 0a 20 20 20 20 20 20 20 20 28 24 70 72 6f    70 3a 69 64 65 6e 74 2c 20 24 65 6e 76 3a 69 64 | .{.........($prop:ident,.$env:id | 
| 56e0 | 65 6e 74 29 20 3d 3e 20 7b 0a 20 20 20 20 20 20    20 20 20 20 20 20 6d 61 63 72 6f 5f 72 75 6c 65 | ent).=>.{.............macro_rule | 
| 5700 | 73 21 20 65 71 20 7b 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 24 6e 61 6d 65 3a 69 | s!.eq.{.................($name:i | 
| 5720 | 64 65 6e 74 29 20 3d 3e 20 7b 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 | dent).=>.{.....................$ | 
| 5740 | 70 72 6f 70 2e 65 71 28 24 6e 61 6d 65 2e 62 69    6e 64 28 24 65 6e 76 29 29 0a 20 20 20 20 20 20 | prop.eq($name.bind($env))....... | 
| 5760 | 20 20 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20    20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | ..........};.............}...... | 
| 5780 | 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 20 20 20 20    6c 65 74 20 65 6e 76 20 3d 20 70 72 6f 70 2e 65 | ...};.....}.....let.env.=.prop.e | 
| 57a0 | 6e 76 3b 0a 20 20 20 20 73 75 67 61 72 21 28 70    72 6f 70 2c 20 65 6e 76 29 3b 0a 20 20 20 20 69 | nv;.....sugar!(prop,.env);.....i | 
| 57c0 | 66 20 65 71 21 28 5f 74 79 70 65 29 20 7b 0a 20    20 20 20 20 20 20 20 6e 6f 64 65 2e 6c 69 73 70 | f.eq!(_type).{.........node.lisp | 
| 57e0 | 5f 74 79 70 65 28 29 2e 69 6e 74 6f 5f 6c 69 73    70 28 65 6e 76 29 0a 20 20 20 20 7d 20 65 6c 73 | _type().into_lisp(env).....}.els | 
| 5800 | 65 20 69 66 20 65 71 21 28 5f 62 79 74 65 5f 72    61 6e 67 65 29 20 7b 0a 20 20 20 20 20 20 20 20 | e.if.eq!(_byte_range).{......... | 
| 5820 | 6e 6f 64 65 2e 6c 69 73 70 5f 62 79 74 65 5f 72    61 6e 67 65 28 65 6e 76 29 0a 20 20 20 20 7d 20 | node.lisp_byte_range(env).....}. | 
| 5840 | 65 6c 73 65 20 69 66 20 65 71 21 28 5f 73 74 61    72 74 5f 62 79 74 65 29 20 7b 0a 20 20 20 20 20 | else.if.eq!(_start_byte).{...... | 
| 5860 | 20 20 20 6e 6f 64 65 2e 6c 69 73 70 5f 73 74 61    72 74 5f 62 79 74 65 28 29 2e 69 6e 74 6f 5f 6c | ...node.lisp_start_byte().into_l | 
| 5880 | 69 73 70 28 65 6e 76 29 0a 20 20 20 20 7d 20 65    6c 73 65 20 69 66 20 65 71 21 28 5f 65 6e 64 5f | isp(env).....}.else.if.eq!(_end_ | 
| 58a0 | 62 79 74 65 29 20 7b 0a 20 20 20 20 20 20 20 20    6e 6f 64 65 2e 6c 69 73 70 5f 65 6e 64 5f 62 79 | byte).{.........node.lisp_end_by | 
| 58c0 | 74 65 28 29 2e 69 6e 74 6f 5f 6c 69 73 70 28 65    6e 76 29 0a 20 20 20 20 7d 20 65 6c 73 65 20 69 | te().into_lisp(env).....}.else.i | 
| 58e0 | 66 20 65 71 21 28 5f 66 69 65 6c 64 29 20 7b 0a    20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 5f | f.eq!(_field).{.........current_ | 
| 5900 | 66 69 65 6c 64 28 63 75 72 73 6f 72 29 3f 2e 69    6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a 20 20 | field(cursor)?.into_lisp(env)... | 
| 5920 | 20 20 7d 20 65 6c 73 65 20 69 66 20 65 71 21 28    5f 6e 61 6d 65 64 5f 70 29 20 7b 0a 20 20 20 20 | ..}.else.if.eq!(_named_p).{..... | 
| 5940 | 20 20 20 20 6e 6f 64 65 2e 69 73 5f 6e 61 6d 65    64 28 29 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e | ....node.is_named().into_lisp(en | 
| 5960 | 76 29 0a 20 20 20 20 7d 20 65 6c 73 65 20 69 66    20 65 71 21 28 5f 65 78 74 72 61 5f 70 29 20 7b | v).....}.else.if.eq!(_extra_p).{ | 
| 5980 | 0a 20 20 20 20 20 20 20 20 6e 6f 64 65 2e 69 73    5f 65 78 74 72 61 28 29 2e 69 6e 74 6f 5f 6c 69 | .........node.is_extra().into_li | 
| 59a0 | 73 70 28 65 6e 76 29 0a 20 20 20 20 7d 20 65 6c    73 65 20 69 66 20 65 71 21 28 5f 65 72 72 6f 72 | sp(env).....}.else.if.eq!(_error | 
| 59c0 | 5f 70 29 20 7b 0a 20 20 20 20 20 20 20 20 6e 6f    64 65 2e 69 73 5f 65 72 72 6f 72 28 29 2e 69 6e | _p).{.........node.is_error().in | 
| 59e0 | 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a 20 20 20    20 7d 20 65 6c 73 65 20 69 66 20 65 71 21 28 5f | to_lisp(env).....}.else.if.eq!(_ | 
| 5a00 | 6d 69 73 73 69 6e 67 5f 70 29 20 7b 0a 20 20 20    20 20 20 20 20 6e 6f 64 65 2e 69 73 5f 6d 69 73 | missing_p).{.........node.is_mis | 
| 5a20 | 73 69 6e 67 28 29 2e 69 6e 74 6f 5f 6c 69 73 70    28 65 6e 76 29 0a 20 20 20 20 7d 20 65 6c 73 65 | sing().into_lisp(env).....}.else | 
| 5a40 | 20 69 66 20 65 71 21 28 5f 68 61 73 5f 65 72 72    6f 72 5f 70 29 20 7b 0a 20 20 20 20 20 20 20 20 | .if.eq!(_has_error_p).{......... | 
| 5a60 | 6e 6f 64 65 2e 68 61 73 5f 65 72 72 6f 72 28 29    2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a | node.has_error().into_lisp(env). | 
| 5a80 | 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 65 71    21 28 5f 73 74 61 72 74 5f 70 6f 69 6e 74 29 20 | ....}.else.if.eq!(_start_point). | 
| 5aa0 | 7b 0a 20 20 20 20 20 20 20 20 6e 6f 64 65 2e 6c    69 73 70 5f 73 74 61 72 74 5f 70 6f 69 6e 74 28 | {.........node.lisp_start_point( | 
| 5ac0 | 29 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29    0a 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 65 | ).into_lisp(env).....}.else.if.e | 
| 5ae0 | 71 21 28 5f 65 6e 64 5f 70 6f 69 6e 74 29 20 7b    0a 20 20 20 20 20 20 20 20 6e 6f 64 65 2e 6c 69 | q!(_end_point).{.........node.li | 
| 5b00 | 73 70 5f 65 6e 64 5f 70 6f 69 6e 74 28 29 2e 69    6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a 20 20 | sp_end_point().into_lisp(env)... | 
| 5b20 | 20 20 7d 20 65 6c 73 65 20 69 66 20 65 71 21 28    5f 72 61 6e 67 65 29 20 7b 0a 20 20 20 20 20 20 | ..}.else.if.eq!(_range).{....... | 
| 5b40 | 20 20 6e 6f 64 65 2e 6c 69 73 70 5f 72 61 6e 67    65 28 29 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e | ..node.lisp_range().into_lisp(en | 
| 5b60 | 76 29 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a    20 20 20 20 20 20 20 20 2f 2f 20 46 49 58 3a 20 | v).....}.else.{.........//.FIX:. | 
| 5b80 | 53 69 67 6e 61 6c 20 61 6e 20 65 72 72 6f 72 20    69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 20 20 | Signal.an.error.instead......... | 
| 5ba0 | 20 28 29 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e    76 29 0a 20 20 20 20 7d 0a 7d 0a 0a 2f 2f 2f 20 | .().into_lisp(env).....}.}..///. | 
| 5bc0 | 52 65 74 75 72 6e 20 74 68 65 20 70 72 6f 70 65    72 74 69 65 73 20 6f 66 20 43 55 52 53 4f 52 27 | Return.the.properties.of.CURSOR' | 
| 5be0 | 73 20 63 75 72 72 65 6e 74 20 6e 6f 64 65 2c 20    6f 72 20 74 68 65 20 6e 6f 64 65 20 69 74 73 65 | s.current.node,.or.the.node.itse | 
| 5c00 | 6c 66 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 49 66 20 50    52 4f 50 53 20 69 73 20 61 20 76 65 63 74 6f 72 | lf..///.///.If.PROPS.is.a.vector | 
| 5c20 | 20 6f 66 20 70 72 6f 70 65 72 74 79 20 6e 61 6d    65 73 2c 20 72 65 74 75 72 6e 20 61 20 76 65 63 | .of.property.names,.return.a.vec | 
| 5c40 | 74 6f 72 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74    68 65 20 6e 6f 64 65 27 73 0a 2f 2f 2f 20 63 6f | tor.containing.the.node's.///.co | 
| 5c60 | 72 72 65 73 70 6f 6e 64 69 6e 67 20 70 72 6f 70    65 72 74 69 65 73 2e 20 49 66 20 4f 55 54 50 55 | rresponding.properties..If.OUTPU | 
| 5c80 | 54 20 69 73 20 61 6c 73 6f 20 6e 6f 6e 2d 6e 69    6c 2c 20 69 74 20 6d 75 73 74 20 62 65 20 61 20 | T.is.also.non-nil,.it.must.be.a. | 
| 5ca0 | 76 65 63 74 6f 72 20 6f 66 20 74 68 65 0a 2f 2f    2f 20 73 61 6d 65 20 6c 65 6e 67 74 68 2c 20 77 | vector.of.the.///.same.length,.w | 
| 5cc0 | 68 65 72 65 20 74 68 65 20 70 72 6f 70 65 72 74    69 65 73 20 77 69 6c 6c 20 62 65 20 77 72 69 74 | here.the.properties.will.be.writ | 
| 5ce0 | 74 65 6e 20 69 6e 74 6f 2e 0a 2f 2f 2f 0a 2f 2f    2f 20 49 66 20 50 52 4f 50 53 20 69 73 20 61 20 | ten.into..///.///.If.PROPS.is.a. | 
| 5d00 | 73 69 6e 67 6c 65 20 70 72 6f 70 65 72 74 79 20    6e 61 6d 65 2c 20 72 65 74 75 72 6e 20 74 68 61 | single.property.name,.return.tha | 
| 5d20 | 74 20 70 72 6f 70 65 72 74 79 2e 0a 2f 2f 2f 0a    2f 2f 2f 20 49 66 20 50 52 4f 50 53 20 69 73 20 | t.property..///.///.If.PROPS.is. | 
| 5d40 | 6e 69 6c 2c 20 72 65 74 75 72 6e 20 74 68 65 20    6e 6f 64 65 20 69 74 73 65 6c 66 2e 0a 2f 2f 2f | nil,.return.the.node.itself../// | 
| 5d60 | 0a 2f 2f 2f 20 53 65 65 20 60 74 73 63 2d 76 61    6c 69 64 2d 6e 6f 64 65 2d 70 72 6f 70 73 27 20 | .///.See.`tsc-valid-node-props'. | 
| 5d80 | 66 6f 72 20 74 68 65 20 6c 69 73 74 20 6f 66 20    61 76 61 69 6c 61 62 6c 65 20 70 72 6f 70 65 72 | for.the.list.of.available.proper | 
| 5da0 | 74 69 65 73 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66    6e 20 5f 63 75 72 72 65 6e 74 5f 6e 6f 64 65 3c | ties..#[defun].fn._current_node< | 
| 5dc0 | 27 65 3e 28 0a 20 20 20 20 63 75 72 73 6f 72 3a    20 26 52 43 75 72 73 6f 72 2c 0a 20 20 20 20 70 | 'e>(.....cursor:.&RCursor,.....p | 
| 5de0 | 72 6f 70 73 3a 20 4f 70 74 69 6f 6e 3c 56 65 63    74 6f 72 4f 72 4b 65 79 77 6f 72 64 3c 27 65 3e | rops:.Option<VectorOrKeyword<'e> | 
| 5e00 | 3e 2c 0a 20 20 20 20 6f 75 74 70 75 74 3a 20 4f    70 74 69 6f 6e 3c 56 65 63 74 6f 72 3c 27 65 3e | >,.....output:.Option<Vector<'e> | 
| 5e20 | 3e 2c 0a 20 20 20 20 65 6e 76 3a 20 26 27 65 20    45 6e 76 2c 0a 29 20 2d 3e 20 52 65 73 75 6c 74 | >,.....env:.&'e.Env,.).->.Result | 
| 5e40 | 3c 56 61 6c 75 65 3c 27 65 3e 3e 20 7b 0a 20 20    20 20 6c 65 74 20 6e 6f 64 65 20 3d 20 63 75 72 | <Value<'e>>.{.....let.node.=.cur | 
| 5e60 | 73 6f 72 2e 62 6f 72 72 6f 77 28 29 2e 6e 6f 64    65 28 29 3b 0a 20 20 20 20 6d 61 74 63 68 20 70 | sor.borrow().node();.....match.p | 
| 5e80 | 72 6f 70 73 20 7b 0a 20 20 20 20 20 20 20 20 4e    6f 6e 65 20 3d 3e 20 52 4e 6f 64 65 3a 3a 6e 65 | rops.{.........None.=>.RNode::ne | 
| 5ea0 | 77 28 63 75 72 73 6f 72 2e 63 6c 6f 6e 65 5f 74    72 65 65 28 29 2c 20 7c 5f 7c 20 6e 6f 64 65 29 | w(cursor.clone_tree(),.|_|.node) | 
| 5ec0 | 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 2c    0a 20 20 20 20 20 20 20 20 53 6f 6d 65 28 56 65 | .into_lisp(env),.........Some(Ve | 
| 5ee0 | 63 74 6f 72 4f 72 4b 65 79 77 6f 72 64 3a 3a 56    65 63 74 6f 72 28 70 72 6f 70 73 29 29 20 3d 3e | ctorOrKeyword::Vector(props)).=> | 
| 5f00 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 6c    65 74 20 72 65 73 75 6c 74 20 3d 20 6d 61 74 63 | .{.............let.result.=.matc | 
| 5f20 | 68 20 6f 75 74 70 75 74 20 7b 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 20 | h.output.{.................None. | 
| 5f40 | 3d 3e 20 65 6e 76 2e 6d 61 6b 65 5f 76 65 63 74    6f 72 28 70 72 6f 70 73 2e 6c 65 6e 28 29 2c 20 | =>.env.make_vector(props.len(),. | 
| 5f60 | 28 29 29 3f 2c 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 53 6f 6d 65 28 6f 75 74 70 75 | ())?,.................Some(outpu | 
| 5f80 | 74 29 20 3d 3e 20 6f 75 74 70 75 74 2c 0a 20 20    20 20 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 | t).=>.output,.............};.... | 
| 5fa0 | 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 2c    20 70 72 6f 70 29 20 69 6e 20 70 72 6f 70 73 2e | .........for.(i,.prop).in.props. | 
| 5fc0 | 69 6e 74 6f 5f 69 74 65 72 28 29 2e 65 6e 75 6d    65 72 61 74 65 28 29 20 7b 0a 20 20 20 20 20 20 | into_iter().enumerate().{....... | 
| 5fe0 | 20 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74    2e 73 65 74 28 69 2c 20 67 65 74 28 70 72 6f 70 | ..........result.set(i,.get(prop | 
| 6000 | 2c 20 6e 6f 64 65 2c 20 63 75 72 73 6f 72 29 3f    29 3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ,.node,.cursor)?)?;............. | 
| 6020 | 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65    73 75 6c 74 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 | }.............result.into_lisp(e | 
| 6040 | 6e 76 29 0a 20 20 20 20 20 20 20 20 7d 0a 20 20    20 20 20 20 20 20 53 6f 6d 65 28 56 65 63 74 6f | nv).........}.........Some(Vecto | 
| 6060 | 72 4f 72 4b 65 79 77 6f 72 64 3a 3a 4b 65 79 77    6f 72 64 28 70 72 6f 70 29 29 20 3d 3e 20 67 65 | rOrKeyword::Keyword(prop)).=>.ge | 
| 6080 | 74 28 70 72 6f 70 2c 20 6e 6f 64 65 2c 20 63 75    72 73 6f 72 29 2c 0a 20 20 20 20 7d 0a 7d 0a 0a | t(prop,.node,.cursor),.....}.}.. | 
| 60a0 | 2f 2f 2f 20 41 63 74 75 61 6c 20 6c 6f 67 69 63    20 6f 66 20 60 74 73 63 2d 74 72 61 76 65 72 73 | ///.Actual.logic.of.`tsc-travers | 
| 60c0 | 65 2d 6d 61 70 63 27 2e 20 54 68 65 20 77 72 61    70 70 65 72 20 69 73 20 6e 65 65 64 65 64 20 62 | e-mapc'..The.wrapper.is.needed.b | 
| 60e0 | 65 63 61 75 73 65 0a 2f 2f 2f 20 60 65 6d 61 63    73 2d 6d 6f 64 75 6c 65 2d 72 73 27 20 64 6f 65 | ecause.///.`emacs-module-rs'.doe | 
| 6100 | 73 6e 27 74 20 63 75 72 72 65 6e 74 6c 79 20 73    75 70 70 6f 72 74 20 6f 70 74 69 6f 6e 61 6c 20 | sn't.currently.support.optional. | 
| 6120 | 61 72 67 75 6d 65 6e 74 73 2e 0a 23 5b 64 65 66    75 6e 5d 0a 66 6e 20 5f 74 72 61 76 65 72 73 65 | arguments..#[defun].fn._traverse | 
| 6140 | 5f 6d 61 70 63 28 0a 20 20 20 20 66 75 6e 63 3a    20 56 61 6c 75 65 2c 0a 20 20 20 20 74 72 65 65 | _mapc(.....func:.Value,.....tree | 
| 6160 | 5f 6f 72 5f 6e 6f 64 65 3a 20 54 72 65 65 4f 72    4e 6f 64 65 2c 0a 20 20 20 20 70 72 6f 70 73 3a | _or_node:.TreeOrNode,.....props: | 
| 6180 | 20 4f 70 74 69 6f 6e 3c 56 65 63 74 6f 72 4f 72    4b 65 79 77 6f 72 64 3e 2c 0a 29 20 2d 3e 20 52 | .Option<VectorOrKeyword>,.).->.R | 
| 61a0 | 65 73 75 6c 74 3c 28 29 3e 20 7b 0a 20 20 20 20    6c 65 74 20 6d 75 74 20 69 74 65 72 61 74 6f 72 | esult<()>.{.....let.mut.iterator | 
| 61c0 | 20 3d 20 44 65 70 74 68 46 69 72 73 74 49 74 65    72 61 74 6f 72 3a 3a 6e 65 77 28 74 72 65 65 5f | .=.DepthFirstIterator::new(tree_ | 
| 61e0 | 6f 72 5f 6e 6f 64 65 29 3b 0a 20 20 20 20 6c 65    74 20 65 6e 76 20 3d 20 66 75 6e 63 2e 65 6e 76 | or_node);.....let.env.=.func.env | 
| 6200 | 3b 0a 20 20 20 20 6c 65 74 20 6d 75 74 20 6f 75    74 70 75 74 20 3d 20 4e 6f 6e 65 3b 0a 20 20 20 | ;.....let.mut.output.=.None;.... | 
| 6220 | 20 6c 65 74 20 6d 75 74 20 64 65 70 74 68 5f 69    6e 64 65 78 65 73 20 3d 20 56 65 63 3a 3a 77 69 | .let.mut.depth_indexes.=.Vec::wi | 
| 6240 | 74 68 5f 63 61 70 61 63 69 74 79 28 31 29 3b 0a    20 20 20 20 6c 65 74 20 6d 75 74 20 64 65 70 74 | th_capacity(1);.....let.mut.dept | 
| 6260 | 68 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 6d    61 74 63 68 20 70 72 6f 70 73 20 7b 0a 20 20 20 | h.=.false;.....match.props.{.... | 
| 6280 | 20 20 20 20 20 53 6f 6d 65 28 56 65 63 74 6f 72    4f 72 4b 65 79 77 6f 72 64 3a 3a 56 65 63 74 6f | .....Some(VectorOrKeyword::Vecto | 
| 62a0 | 72 28 70 72 6f 70 73 29 29 20 3d 3e 20 7b 0a 20    20 20 20 20 20 20 20 20 20 20 20 6f 75 74 70 75 | r(props)).=>.{.............outpu | 
| 62c0 | 74 20 3d 20 53 6f 6d 65 28 65 6e 76 2e 6d 61 6b    65 5f 76 65 63 74 6f 72 28 70 72 6f 70 73 2e 6c | t.=.Some(env.make_vector(props.l | 
| 62e0 | 65 6e 28 29 2c 20 28 29 29 3f 29 3b 0a 20 20 20    20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 2c | en(),.())?);.............for.(i, | 
| 6300 | 20 70 72 6f 70 29 20 69 6e 20 70 72 6f 70 73 2e    69 6e 74 6f 5f 69 74 65 72 28 29 2e 65 6e 75 6d | .prop).in.props.into_iter().enum | 
| 6320 | 65 72 61 74 65 28 29 20 7b 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 69 66 20 70 72 6f | erate().{.................if.pro | 
| 6340 | 70 2e 65 71 28 5f 64 65 70 74 68 2e 62 69 6e 64    28 65 6e 76 29 29 20 7b 0a 20 20 20 20 20 20 20 | p.eq(_depth.bind(env)).{........ | 
| 6360 | 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 70    74 68 5f 69 6e 64 65 78 65 73 2e 70 75 73 68 28 | .............depth_indexes.push( | 
| 6380 | 69 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 | i).................}............ | 
| 63a0 | 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20    20 20 20 20 20 53 6f 6d 65 28 56 65 63 74 6f 72 | .}.........}.........Some(Vector | 
| 63c0 | 4f 72 4b 65 79 77 6f 72 64 3a 3a 4b 65 79 77 6f    72 64 28 70 72 6f 70 29 29 20 69 66 20 70 72 6f | OrKeyword::Keyword(prop)).if.pro | 
| 63e0 | 70 2e 65 71 28 5f 64 65 70 74 68 2e 62 69 6e 64    28 65 6e 76 29 29 20 3d 3e 20 7b 0a 20 20 20 20 | p.eq(_depth.bind(env)).=>.{..... | 
| 6400 | 20 20 20 20 20 20 20 20 64 65 70 74 68 20 3d 20    74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a | ........depth.=.true;.........}. | 
| 6420 | 20 20 20 20 20 20 20 20 5f 20 3d 3e 20 7b 7d 0a    20 20 20 20 7d 0a 20 20 20 20 2f 2f 20 43 61 6e | ........_.=>.{}.....}.....//.Can | 
| 6440 | 27 74 20 75 73 65 20 61 20 66 6f 72 20 6c 6f 6f    70 20 62 65 63 61 75 73 65 20 77 65 20 6e 65 65 | 't.use.a.for.loop.because.we.nee | 
| 6460 | 64 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20    63 75 72 73 6f 72 20 74 6f 20 70 72 6f 63 65 73 | d.to.access.the.cursor.to.proces | 
| 6480 | 73 20 65 61 63 68 20 69 74 65 6d 2e 0a 20 20 20    20 6c 65 74 20 6d 75 74 20 69 74 65 6d 3a 20 4f | s.each.item......let.mut.item:.O | 
| 64a0 | 70 74 69 6f 6e 3c 28 52 4e 6f 64 65 2c 20 75 73    69 7a 65 29 3e 20 3d 20 69 74 65 72 61 74 6f 72 | ption<(RNode,.usize)>.=.iterator | 
| 64c0 | 2e 6e 65 78 74 28 29 3b 0a 20 20 20 20 77 68 69    6c 65 20 69 74 65 6d 2e 69 73 5f 73 6f 6d 65 28 | .next();.....while.item.is_some( | 
| 64e0 | 29 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20    72 65 73 75 6c 74 20 3d 20 69 66 20 64 65 70 74 | ).{.........let.result.=.if.dept | 
| 6500 | 68 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20    69 74 65 72 61 74 6f 72 2e 64 65 70 74 68 2e 69 | h.{.............iterator.depth.i | 
| 6520 | 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 3f 0a 20    20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a | nto_lisp(env)?.........}.else.{. | 
| 6540 | 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 74 20    72 65 73 75 6c 74 20 3d 20 5f 63 75 72 72 65 6e | ............let.result.=._curren | 
| 6560 | 74 5f 6e 6f 64 65 28 26 69 74 65 72 61 74 6f 72    2e 63 75 72 73 6f 72 2c 20 70 72 6f 70 73 2c 20 | t_node(&iterator.cursor,.props,. | 
| 6580 | 6f 75 74 70 75 74 2c 20 65 6e 76 29 3f 3b 0a 20    20 20 20 20 20 20 20 20 20 20 20 69 66 20 6c 65 | output,.env)?;.............if.le | 
| 65a0 | 74 20 53 6f 6d 65 28 6f 75 74 70 75 74 29 20 3d    20 6f 75 74 70 75 74 20 7b 0a 20 20 20 20 20 20 | t.Some(output).=.output.{....... | 
| 65c0 | 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 69 20    69 6e 20 26 64 65 70 74 68 5f 69 6e 64 65 78 65 | ..........for.i.in.&depth_indexe | 
| 65e0 | 73 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 6f 75 74 70 75 74 2e 73 | s.{.....................output.s | 
| 6600 | 65 74 28 2a 69 2c 20 69 74 65 72 61 74 6f 72 2e    64 65 70 74 68 29 3f 3b 0a 20 20 20 20 20 20 20 | et(*i,.iterator.depth)?;........ | 
| 6620 | 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20    20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 | .........}.............}........ | 
| 6640 | 20 20 20 20 20 72 65 73 75 6c 74 0a 20 20 20 20    20 20 20 20 7d 3b 0a 0a 20 20 20 20 20 20 20 20 | .....result.........};.......... | 
| 6660 | 2f 2f 20 53 61 66 65 74 79 3a 20 74 68 65 20 72    65 74 75 72 6e 65 64 20 76 61 6c 75 65 20 69 73 | //.Safety:.the.returned.value.is | 
| 6680 | 20 75 6e 75 73 65 64 2e 0a 20 20 20 20 20 20 20    20 75 6e 73 61 66 65 20 7b 0a 20 20 20 20 20 20 | .unused..........unsafe.{....... | 
| 66a0 | 20 20 20 20 20 20 66 75 6e 63 2e 63 61 6c 6c 5f    75 6e 70 72 6f 74 65 63 74 65 64 28 5b 72 65 73 | ......func.call_unprotected([res | 
| 66c0 | 75 6c 74 5d 29 3f 3b 0a 20 20 20 20 20 20 20 20    7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 2f 2f | ult])?;.........}..........//.// | 
| 66e0 | 20 53 61 66 65 74 79 3a 20 74 68 65 20 72 65 74    75 72 6e 65 64 20 76 61 6c 75 65 20 69 73 20 75 | .Safety:.the.returned.value.is.u | 
| 6700 | 6e 75 73 65 64 2e 0a 20 20 20 20 20 20 20 20 2f    2f 20 75 6e 73 61 66 65 20 7b 20 66 75 6e 63 2e | nused..........//.unsafe.{.func. | 
| 6720 | 63 61 6c 6c 5f 75 6e 70 72 6f 74 65 63 74 65 64    28 28 72 65 73 75 6c 74 2c 20 64 65 70 74 68 29 | call_unprotected((result,.depth) | 
| 6740 | 29 3f 3b 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f    2f 20 2f 2f 20 30 0a 20 20 20 20 20 20 20 20 2f | )?;.}..........//.//.0........./ | 
| 6760 | 2f 20 75 6e 73 61 66 65 20 7b 20 66 75 6e 63 2e    63 61 6c 6c 5f 75 6e 70 72 6f 74 65 63 74 65 64 | /.unsafe.{.func.call_unprotected | 
| 6780 | 28 5b 5d 29 3f 3b 20 7d 0a 0a 20 20 20 20 20 20    20 20 2f 2f 20 2f 2f 20 32 37 0a 20 20 20 20 20 | ([])?;.}..........//.//.27...... | 
| 67a0 | 20 20 20 2f 2f 20 75 6e 73 61 66 65 20 7b 20 66    75 6e 63 2e 63 61 6c 6c 5f 75 6e 70 72 6f 74 65 | ...//.unsafe.{.func.call_unprote | 
| 67c0 | 63 74 65 64 28 28 72 65 73 75 6c 74 2c 20 64 65    70 74 68 2c 20 66 75 6e 63 2c 20 70 72 6f 70 73 | cted((result,.depth,.func,.props | 
| 67e0 | 29 29 3f 3b 20 7d 0a 0a 20 20 20 20 20 20 20 20    2f 2f 20 2f 2f 20 31 33 0a 20 20 20 20 20 20 20 | ))?;.}..........//.//.13........ | 
| 6800 | 20 2f 2f 20 75 6e 73 61 66 65 20 7b 20 66 75 6e    63 2e 63 61 6c 6c 5f 75 6e 70 72 6f 74 65 63 74 | .//.unsafe.{.func.call_unprotect | 
| 6820 | 65 64 28 28 72 65 73 75 6c 74 2c 20 64 65 70 74    68 29 29 3f 3b 20 7d 0a 0a 20 20 20 20 20 20 20 | ed((result,.depth))?;.}......... | 
| 6840 | 20 2f 2f 20 2f 2f 20 31 30 0a 20 20 20 20 20 20    20 20 2f 2f 20 65 6e 76 2e 76 65 63 74 6f 72 28 | .//.//.10.........//.env.vector( | 
| 6860 | 28 72 65 73 75 6c 74 2c 20 64 65 70 74 68 29 29    3f 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 2f | (result,.depth))?;..........//./ | 
| 6880 | 2f 20 36 0a 20 20 20 20 20 20 20 20 2f 2f 20 65    6e 76 2e 63 6f 6e 73 28 72 65 73 75 6c 74 2c 20 | /.6.........//.env.cons(result,. | 
| 68a0 | 64 65 70 74 68 29 3f 3b 0a 0a 20 20 20 20 20 20    20 20 2f 2f 20 2f 2f 20 30 0a 20 20 20 20 20 20 | depth)?;..........//.//.0....... | 
| 68c0 | 20 20 2f 2f 20 75 73 65 20 65 6d 61 63 73 3a 3a    63 61 6c 6c 3a 3a 49 6e 74 6f 4c 69 73 70 41 72 | ..//.use.emacs::call::IntoLispAr | 
| 68e0 | 67 73 3b 0a 20 20 20 20 20 20 20 20 2f 2f 20 28    72 65 73 75 6c 74 2c 20 64 65 70 74 68 29 2e 69 | gs;.........//.(result,.depth).i | 
| 6900 | 6e 74 6f 5f 6c 69 73 70 5f 61 72 67 73 28 65 6e    76 29 3f 3b 0a 0a 20 20 20 20 20 20 20 20 69 74 | nto_lisp_args(env)?;..........it | 
| 6920 | 65 6d 20 3d 20 69 74 65 72 61 74 6f 72 2e 6e 65    78 74 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | em.=.iterator.next();.....}..... | 
| 6940 | 2f 2f 20 66 6f 72 20 28 5f 2c 20 64 65 70 74 68    29 20 69 6e 20 69 74 65 72 61 74 6f 72 20 7b 0a | //.for.(_,.depth).in.iterator.{. | 
| 6960 | 20 20 20 20 2f 2f 20 20 20 20 20 6c 65 74 20 72    65 73 75 6c 74 20 3d 20 5f 63 75 72 72 65 6e 74 | ....//.....let.result.=._current | 
| 6980 | 5f 6e 6f 64 65 28 26 69 74 65 72 61 74 6f 72 2e    63 75 72 73 6f 72 2e 63 6c 6f 6e 65 28 29 2c 20 | _node(&iterator.cursor.clone(),. | 
| 69a0 | 70 72 6f 70 73 2c 20 6f 75 74 70 75 74 2c 20 65    6e 76 29 3f 3b 0a 20 20 20 20 2f 2f 20 20 20 20 | props,.output,.env)?;.....//.... | 
| 69c0 | 20 66 75 6e 63 2e 63 61 6c 6c 28 28 72 65 73 75    6c 74 2c 20 64 65 70 74 68 29 29 3f 3b 0a 20 20 | .func.call((result,.depth))?;... | 
| 69e0 | 20 20 2f 2f 20 7d 0a 20 20 20 20 4f 6b 28 28 29    29 0a 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 | ..//.}.....Ok(()).}............. | 
| 6a00 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 65 72 72 6f 72 2e 72 73 00 00 | tsc-20220212.1632/src/error.rs.. | 
| 6a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6a60 | 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 | 
| 6a80 | 30 30 30 31 37 37 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 30 36 33 00 20 30 00 00 00 | 0001770.00000000000.014063..0... | 
| 6aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6b00 | 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................... | 
| 6b20 | 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................... | 
| 6b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 6c00 | 65 6d 61 63 73 3a 3a 64 65 66 69 6e 65 5f 65 72    72 6f 72 73 21 20 7b 0a 20 20 20 20 74 73 63 5f | emacs::define_errors!.{.....tsc_ | 
| 6c20 | 65 72 72 6f 72 20 22 54 72 65 65 2d 73 69 74 74    65 72 20 63 6f 72 65 20 65 72 72 6f 72 22 0a 0a | error."Tree-sitter.core.error".. | 
| 6c40 | 20 20 20 20 74 73 63 5f 6c 61 6e 67 5f 6c 6f 61    64 5f 66 61 69 6c 65 64 20 22 4c 61 6e 67 75 61 | ....tsc_lang_load_failed."Langua | 
| 6c60 | 67 65 20 6c 6f 61 64 20 66 61 69 6c 65 64 22 20    28 74 73 63 5f 65 72 72 6f 72 29 0a 20 20 20 20 | ge.load.failed".(tsc_error)..... | 
| 6c80 | 74 73 63 5f 6c 61 6e 67 5f 61 62 69 5f 65 72 72    6f 72 20 22 4c 61 6e 67 75 61 67 65 27 73 20 41 | tsc_lang_abi_error."Language's.A | 
| 6ca0 | 42 49 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62    6c 65 22 20 28 74 73 63 5f 65 72 72 6f 72 29 0a | BI.is.incompatible".(tsc_error). | 
| 6cc0 | 20 20 20 20 74 73 63 5f 6c 61 6e 67 5f 61 62 69    5f 74 6f 6f 5f 6f 6c 64 20 22 4c 61 6e 67 75 61 | ....tsc_lang_abi_too_old."Langua | 
| 6ce0 | 67 65 27 73 20 41 42 49 20 69 73 20 74 6f 6f 20    6f 6c 64 22 20 28 74 73 63 5f 6c 61 6e 67 5f 6c | ge's.ABI.is.too.old".(tsc_lang_l | 
| 6d00 | 6f 61 64 5f 66 61 69 6c 65 64 20 74 73 63 5f 6c    61 6e 67 5f 61 62 69 5f 65 72 72 6f 72 29 0a 20 | oad_failed.tsc_lang_abi_error).. | 
| 6d20 | 20 20 20 74 73 63 5f 6c 61 6e 67 5f 61 62 69 5f    74 6f 6f 5f 6e 65 77 20 22 4c 61 6e 67 75 61 67 | ...tsc_lang_abi_too_new."Languag | 
| 6d40 | 65 27 73 20 41 42 49 20 69 73 20 74 6f 6f 20 6e    65 77 22 20 28 74 73 63 5f 6c 61 6e 67 5f 6c 6f | e's.ABI.is.too.new".(tsc_lang_lo | 
| 6d60 | 61 64 5f 66 61 69 6c 65 64 20 74 73 63 5f 6c 61    6e 67 5f 61 62 69 5f 65 72 72 6f 72 29 0a 0a 20 | ad_failed.tsc_lang_abi_error)... | 
| 6d80 | 20 20 20 74 73 63 5f 69 6e 76 61 6c 69 64 5f 72    61 6e 67 65 73 20 22 49 6e 76 61 6c 69 64 20 70 | ...tsc_invalid_ranges."Invalid.p | 
| 6da0 | 61 72 73 69 6e 67 20 72 61 6e 67 65 73 22 20 28    74 73 63 5f 65 72 72 6f 72 29 0a 0a 20 20 20 20 | arsing.ranges".(tsc_error)...... | 
| 6dc0 | 74 73 63 5f 71 75 65 72 79 5f 69 6e 76 61 6c 69    64 20 22 49 6e 76 61 6c 69 64 20 71 75 65 72 79 | tsc_query_invalid."Invalid.query | 
| 6de0 | 22 20 28 74 73 63 5f 65 72 72 6f 72 29 0a 20 20    20 20 74 73 63 5f 71 75 65 72 79 5f 69 6e 76 61 | ".(tsc_error).....tsc_query_inva | 
| 6e00 | 6c 69 64 5f 73 79 6e 74 61 78 20 22 51 75 65 72    79 20 73 79 6e 74 61 78 20 65 72 72 6f 72 22 20 | lid_syntax."Query.syntax.error". | 
| 6e20 | 28 74 73 63 5f 71 75 65 72 79 5f 69 6e 76 61 6c    69 64 29 0a 20 20 20 20 74 73 63 5f 71 75 65 72 | (tsc_query_invalid).....tsc_quer | 
| 6e40 | 79 5f 69 6e 76 61 6c 69 64 5f 6e 6f 64 65 5f 74    79 70 65 20 22 51 75 65 72 79 20 63 6f 6e 74 61 | y_invalid_node_type."Query.conta | 
| 6e60 | 69 6e 73 20 69 6e 76 61 6c 69 64 20 6e 6f 64 65    20 74 79 70 65 22 20 28 74 73 63 5f 71 75 65 72 | ins.invalid.node.type".(tsc_quer | 
| 6e80 | 79 5f 69 6e 76 61 6c 69 64 29 0a 20 20 20 20 74    73 63 5f 71 75 65 72 79 5f 69 6e 76 61 6c 69 64 | y_invalid).....tsc_query_invalid | 
| 6ea0 | 5f 66 69 65 6c 64 20 22 51 75 65 72 79 20 63 6f    6e 74 61 69 6e 73 20 69 6e 76 61 6c 69 64 20 66 | _field."Query.contains.invalid.f | 
| 6ec0 | 69 65 6c 64 20 6e 61 6d 65 22 20 28 74 73 63 5f    71 75 65 72 79 5f 69 6e 76 61 6c 69 64 29 0a 20 | ield.name".(tsc_query_invalid).. | 
| 6ee0 | 20 20 20 74 73 63 5f 71 75 65 72 79 5f 69 6e 76    61 6c 69 64 5f 63 61 70 74 75 72 65 20 22 51 75 | ...tsc_query_invalid_capture."Qu | 
| 6f00 | 65 72 79 20 63 6f 6e 74 61 69 6e 73 20 75 6e 64    65 63 6c 61 72 65 64 20 63 61 70 74 75 72 65 20 | ery.contains.undeclared.capture. | 
| 6f20 | 6e 61 6d 65 22 20 28 74 73 63 5f 71 75 65 72 79    5f 69 6e 76 61 6c 69 64 29 0a 20 20 20 20 74 73 | name".(tsc_query_invalid).....ts | 
| 6f40 | 63 5f 71 75 65 72 79 5f 69 6e 76 61 6c 69 64 5f    70 72 65 64 69 63 61 74 65 20 22 51 75 65 72 79 | c_query_invalid_predicate."Query | 
| 6f60 | 20 63 6f 6e 74 61 69 6e 73 20 69 6e 76 61 6c 69    64 20 70 72 65 64 69 63 61 74 65 20 75 73 61 67 | .contains.invalid.predicate.usag | 
| 6f80 | 65 22 20 28 74 73 63 5f 71 75 65 72 79 5f 69 6e    76 61 6c 69 64 29 0a 20 20 20 20 74 73 63 5f 71 | e".(tsc_query_invalid).....tsc_q | 
| 6fa0 | 75 65 72 79 5f 69 6e 76 61 6c 69 64 5f 73 74 72    75 63 74 75 72 65 20 22 51 75 65 72 79 20 63 6f | uery_invalid_structure."Query.co | 
| 6fc0 | 6e 74 61 69 6e 73 20 69 6e 76 61 6c 69 64 20 70    61 74 74 65 72 6e 20 73 74 72 75 63 74 75 72 65 | ntains.invalid.pattern.structure | 
| 6fe0 | 22 20 28 74 73 63 5f 71 75 65 72 79 5f 69 6e 76    61 6c 69 64 29 0a 7d 0a 00 00 00 00 00 00 00 00 | ".(tsc_query_invalid).}......... | 
| 7000 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 6c 61 6e 67 2e 72 73 00 00 00 | tsc-20220212.1632/src/lang.rs... | 
| 7020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 7040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 7060 | 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 | 
| 7080 | 30 30 31 37 32 36 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 36 36 33 00 20 30 00 00 00 | 0017267.00000000000.013663..0... | 
| 70a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 70c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 70e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 7100 | 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................... | 
| 7120 | 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................... | 
| 7140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 7160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 7180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 71a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 71c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 71e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 7200 | 75 73 65 20 73 74 64 3a 3a 7b 6d 65 6d 2c 20 6f    73 2c 20 63 6f 6c 6c 65 63 74 69 6f 6e 73 3a 3a | use.std::{mem,.os,.collections:: | 
| 7220 | 48 61 73 68 4d 61 70 2c 20 73 79 6e 63 3a 3a 4d    75 74 65 78 7d 3b 0a 0a 75 73 65 20 65 6d 61 63 | HashMap,.sync::Mutex};..use.emac | 
| 7240 | 73 3a 3a 7b 64 65 66 75 6e 2c 20 52 65 73 75 6c    74 2c 20 52 65 73 75 6c 74 45 78 74 2c 20 47 6c | s::{defun,.Result,.ResultExt,.Gl | 
| 7260 | 6f 62 61 6c 52 65 66 2c 20 56 61 6c 75 65 2c 20    45 6e 76 2c 20 49 6e 74 6f 4c 69 73 70 2c 20 46 | obalRef,.Value,.Env,.IntoLisp,.F | 
| 7280 | 72 6f 6d 4c 69 73 70 2c 20 45 72 72 6f 72 4b 69    6e 64 7d 3b 0a 0a 75 73 65 20 6c 69 62 6c 6f 61 | romLisp,.ErrorKind};..use.libloa | 
| 72a0 | 64 69 6e 67 3a 3a 7b 4c 69 62 72 61 72 79 2c 20    53 79 6d 62 6f 6c 7d 3b 0a 75 73 65 20 6f 6e 63 | ding::{Library,.Symbol};.use.onc | 
| 72c0 | 65 5f 63 65 6c 6c 3a 3a 73 79 6e 63 3a 3a 4c 61    7a 79 3b 0a 0a 75 73 65 20 63 72 61 74 65 3a 3a | e_cell::sync::Lazy;..use.crate:: | 
| 72e0 | 7b 74 79 70 65 73 2c 20 65 72 72 6f 72 7d 3b 0a    75 73 65 20 74 72 65 65 5f 73 69 74 74 65 72 3a | {types,.error};.use.tree_sitter: | 
| 7300 | 3a 7b 4c 41 4e 47 55 41 47 45 5f 56 45 52 53 49    4f 4e 2c 20 4d 49 4e 5f 43 4f 4d 50 41 54 49 42 | :{LANGUAGE_VERSION,.MIN_COMPATIB | 
| 7320 | 4c 45 5f 4c 41 4e 47 55 41 47 45 5f 56 45 52 53    49 4f 4e 7d 3b 0a 0a 23 5b 64 65 72 69 76 65 28 | LE_LANGUAGE_VERSION};..#[derive( | 
| 7340 | 43 6f 70 79 2c 20 43 6c 6f 6e 65 29 5d 0a 23 5b    72 65 70 72 28 74 72 61 6e 73 70 61 72 65 6e 74 | Copy,.Clone)].#[repr(transparent | 
| 7360 | 29 5d 0a 70 75 62 20 73 74 72 75 63 74 20 4c 61    6e 67 75 61 67 65 28 70 75 62 28 63 72 61 74 65 | )].pub.struct.Language(pub(crate | 
| 7380 | 29 20 74 72 65 65 5f 73 69 74 74 65 72 3a 3a 4c    61 6e 67 75 61 67 65 29 3b 0a 0a 69 6d 70 6c 20 | ).tree_sitter::Language);..impl. | 
| 73a0 | 49 6e 74 6f 4c 69 73 70 3c 27 5f 3e 20 66 6f 72    20 4c 61 6e 67 75 61 67 65 20 7b 0a 20 20 20 20 | IntoLisp<'_>.for.Language.{..... | 
| 73c0 | 66 6e 20 69 6e 74 6f 5f 6c 69 73 70 28 73 65 6c    66 2c 20 65 6e 76 3a 20 26 45 6e 76 29 20 2d 3e | fn.into_lisp(self,.env:.&Env).-> | 
| 73e0 | 20 52 65 73 75 6c 74 3c 56 61 6c 75 65 3e 20 7b    0a 20 20 20 20 20 20 20 20 2f 2f 20 53 61 66 65 | .Result<Value>.{.........//.Safe | 
| 7400 | 74 79 3a 20 4c 61 6e 67 75 61 67 65 20 68 61 73    20 74 68 65 20 73 61 6d 65 20 72 65 70 72 65 73 | ty:.Language.has.the.same.repres | 
| 7420 | 65 6e 74 61 74 69 6f 6e 20 61 73 20 74 68 65 20    6f 70 61 71 75 65 20 70 6f 69 6e 74 65 72 20 74 | entation.as.the.opaque.pointer.t | 
| 7440 | 79 70 65 2e 0a 20 20 20 20 20 20 20 20 6c 65 74    20 70 74 72 3a 20 2a 6d 75 74 20 6f 73 3a 3a 72 | ype..........let.ptr:.*mut.os::r | 
| 7460 | 61 77 3a 3a 63 5f 76 6f 69 64 20 3d 20 75 6e 73    61 66 65 20 7b 20 6d 65 6d 3a 3a 74 72 61 6e 73 | aw::c_void.=.unsafe.{.mem::trans | 
| 7480 | 6d 75 74 65 28 73 65 6c 66 29 20 7d 3b 0a 20 20    20 20 20 20 20 20 2f 2f 20 53 61 66 65 74 79 3a | mute(self).};.........//.Safety: | 
| 74a0 | 20 54 68 65 20 66 69 6e 61 6c 69 7a 65 72 20 64    6f 65 73 20 6e 6f 74 68 69 6e 67 2e 0a 20 20 20 | .The.finalizer.does.nothing..... | 
| 74c0 | 20 20 20 20 20 75 6e 73 61 66 65 20 7b 20 65 6e    76 2e 6d 61 6b 65 5f 75 73 65 72 5f 70 74 72 28 | .....unsafe.{.env.make_user_ptr( | 
| 74e0 | 53 6f 6d 65 28 6e 6f 5f 6f 70 3a 3a 3c 4c 61 6e    67 75 61 67 65 3e 29 2c 20 70 74 72 29 20 7d 0a | Some(no_op::<Language>),.ptr).}. | 
| 7500 | 20 20 20 20 7d 0a 7d 0a 0a 69 6d 70 6c 20 46 72    6f 6d 4c 69 73 70 3c 27 5f 3e 20 66 6f 72 20 4c | ....}.}..impl.FromLisp<'_>.for.L | 
| 7520 | 61 6e 67 75 61 67 65 20 7b 0a 20 20 20 20 66 6e    20 66 72 6f 6d 5f 6c 69 73 70 28 76 61 6c 75 65 | anguage.{.....fn.from_lisp(value | 
| 7540 | 3a 20 56 61 6c 75 65 29 20 2d 3e 20 52 65 73 75    6c 74 3c 4c 61 6e 67 75 61 67 65 3e 20 7b 0a 20 | :.Value).->.Result<Language>.{.. | 
| 7560 | 20 20 20 20 20 20 20 6d 61 74 63 68 20 76 61 6c    75 65 2e 67 65 74 5f 75 73 65 72 5f 66 69 6e 61 | .......match.value.get_user_fina | 
| 7580 | 6c 69 7a 65 72 28 29 3f 20 7b 0a 20 20 20 20 20    20 20 20 20 20 20 20 53 6f 6d 65 28 66 69 6e 29 | lizer()?.{.............Some(fin) | 
| 75a0 | 20 69 66 20 66 69 6e 20 3d 3d 20 6e 6f 5f 6f 70    3a 3a 3c 4c 61 6e 67 75 61 67 65 3e 20 3d 3e 20 | .if.fin.==.no_op::<Language>.=>. | 
| 75c0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 6c 65 74 20 70 74 72 20 3d 20 76 61 6c 75 | {.................let.ptr.=.valu | 
| 75e0 | 65 2e 67 65 74 5f 75 73 65 72 5f 70 74 72 28 29    3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | e.get_user_ptr()?;.............. | 
| 7600 | 20 20 20 2f 2f 20 53 61 66 65 74 79 3a 20 4c 61    6e 67 75 61 67 65 20 68 61 73 20 74 68 65 20 73 | ...//.Safety:.Language.has.the.s | 
| 7620 | 61 6d 65 20 72 65 70 72 65 73 65 6e 74 61 74 69    6f 6e 20 61 73 20 74 68 65 20 6f 70 61 71 75 65 | ame.representation.as.the.opaque | 
| 7640 | 20 70 6f 69 6e 74 65 72 20 74 79 70 65 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4f | .pointer.type..................O | 
| 7660 | 6b 28 75 6e 73 61 66 65 20 7b 20 6d 65 6d 3a 3a    74 72 61 6e 73 6d 75 74 65 28 70 74 72 29 20 7d | k(unsafe.{.mem::transmute(ptr).} | 
| 7680 | 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a    20 20 20 20 20 20 20 20 20 20 20 20 5f 20 3d 3e | ).............}............._.=> | 
| 76a0 | 20 45 72 72 28 45 72 72 6f 72 4b 69 6e 64 3a 3a    57 72 6f 6e 67 54 79 70 65 55 73 65 72 50 74 72 | .Err(ErrorKind::WrongTypeUserPtr | 
| 76c0 | 20 7b 20 65 78 70 65 63 74 65 64 3a 20 22 54 72    65 65 53 69 74 74 65 72 4c 61 6e 67 75 61 67 65 | .{.expected:."TreeSitterLanguage | 
| 76e0 | 22 20 7d 2e 69 6e 74 6f 28 29 29 0a 20 20 20 20    20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 69 | ".}.into()).........}.....}.}..i | 
| 7700 | 6d 70 6c 5f 6e 65 77 74 79 70 65 5f 74 72 61 69    74 73 21 28 4c 61 6e 67 75 61 67 65 29 3b 0a 0a | mpl_newtype_traits!(Language);.. | 
| 7720 | 69 6d 70 6c 5f 70 72 65 64 21 28 6c 61 6e 67 75    61 67 65 5f 70 2c 20 4c 61 6e 67 75 61 67 65 29 | impl_pred!(language_p,.Language) | 
| 7740 | 3b 0a 0a 69 6d 70 6c 20 4c 61 6e 67 75 61 67 65    20 7b 0a 20 20 20 20 70 75 62 20 66 6e 20 69 64 | ;..impl.Language.{.....pub.fn.id | 
| 7760 | 28 73 65 6c 66 29 20 2d 3e 20 75 73 69 7a 65 20    7b 0a 20 20 20 20 20 20 20 20 75 6e 73 61 66 65 | (self).->.usize.{.........unsafe | 
| 7780 | 20 7b 20 6d 65 6d 3a 3a 74 72 61 6e 73 6d 75 74    65 28 73 65 6c 66 29 20 7d 0a 20 20 20 20 7d 0a | .{.mem::transmute(self).}.....}. | 
| 77a0 | 0a 20 20 20 20 70 75 62 20 66 6e 20 69 6e 66 6f    28 73 65 6c 66 29 20 2d 3e 20 26 27 73 74 61 74 | .....pub.fn.info(self).->.&'stat | 
| 77c0 | 69 63 20 4c 61 6e 67 49 6e 66 6f 20 7b 0a 20 20    20 20 20 20 20 20 2f 2f 20 54 4f 44 4f 3a 20 45 | ic.LangInfo.{.........//.TODO:.E | 
| 77e0 | 78 70 6c 61 69 6e 20 74 68 65 20 73 61 66 65 74    79 2e 0a 20 20 20 20 20 20 20 20 4c 41 4e 47 5f | xplain.the.safety..........LANG_ | 
| 7800 | 49 4e 46 4f 53 2e 74 72 79 5f 6c 6f 63 6b 28 29    2e 65 78 70 65 63 74 28 22 46 61 69 6c 65 64 20 | INFOS.try_lock().expect("Failed. | 
| 7820 | 74 6f 20 61 63 63 65 73 73 20 6c 61 6e 67 75 61    67 65 20 69 6e 66 6f 20 72 65 67 69 73 74 72 79 | to.access.language.info.registry | 
| 7840 | 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e    67 65 74 28 26 73 65 6c 66 2e 69 64 28 29 29 0a | ")..............get(&self.id()). | 
| 7860 | 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 70    28 7c 69 6e 66 6f 7c 20 75 6e 73 61 66 65 20 7b | .............map(|info|.unsafe.{ | 
| 7880 | 20 74 79 70 65 73 3a 3a 65 72 61 73 65 5f 6c 69    66 65 74 69 6d 65 28 69 6e 66 6f 29 20 7d 29 0a | .types::erase_lifetime(info).}). | 
| 78a0 | 20 20 20 20 20 20 20 20 20 20 20 20 2e 65 78 70    65 63 74 28 22 46 61 69 6c 65 64 20 74 6f 20 67 | .............expect("Failed.to.g | 
| 78c0 | 65 74 20 6c 61 6e 67 75 61 67 65 20 69 6e 66 6f    20 66 72 6f 6d 20 74 68 65 20 72 65 67 69 73 74 | et.language.info.from.the.regist | 
| 78e0 | 72 79 22 29 0a 20 20 20 20 7d 0a 7d 0a 0a 75 6e    73 61 66 65 20 65 78 74 65 72 6e 20 22 43 22 20 | ry").....}.}..unsafe.extern."C". | 
| 7900 | 66 6e 20 6e 6f 5f 6f 70 3c 54 3e 28 5f 3a 20 2a    6d 75 74 20 6f 73 3a 3a 72 61 77 3a 3a 63 5f 76 | fn.no_op<T>(_:.*mut.os::raw::c_v | 
| 7920 | 6f 69 64 29 20 7b 7d 0a 0a 2f 2f 20 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | oid).{}..//.-------------------- | 
| 7940 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 7960 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 7980 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 70    75 62 20 73 74 72 75 63 74 20 4c 61 6e 67 49 6e | -------------..pub.struct.LangIn | 
| 79a0 | 66 6f 20 7b 0a 20 20 20 20 6c 6f 61 64 5f 66 69    6c 65 3a 20 53 74 72 69 6e 67 2c 0a 20 20 20 20 | fo.{.....load_file:.String,..... | 
| 79c0 | 6c 61 6e 67 5f 73 79 6d 62 6f 6c 3a 20 47 6c 6f    62 61 6c 52 65 66 2c 0a 20 20 20 20 5f 6c 69 62 | lang_symbol:.GlobalRef,....._lib | 
| 79e0 | 3a 20 4c 69 62 72 61 72 79 2c 0a 20 20 20 20 6e    6f 64 65 5f 74 79 70 65 73 3a 20 56 65 63 3c 47 | :.Library,.....node_types:.Vec<G | 
| 7a00 | 6c 6f 62 61 6c 52 65 66 3e 2c 0a 20 20 20 20 66    69 65 6c 64 5f 6e 61 6d 65 73 3a 20 56 65 63 3c | lobalRef>,.....field_names:.Vec< | 
| 7a20 | 47 6c 6f 62 61 6c 52 65 66 3e 2c 0a 7d 0a 0a 69    6d 70 6c 20 4c 61 6e 67 49 6e 66 6f 20 7b 0a 20 | GlobalRef>,.}..impl.LangInfo.{.. | 
| 7a40 | 20 20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20    20 70 75 62 28 63 72 61 74 65 29 20 66 6e 20 6e | ...#[inline].....pub(crate).fn.n | 
| 7a60 | 6f 64 65 5f 74 79 70 65 28 26 73 65 6c 66 2c 20    69 64 3a 20 75 31 36 29 20 2d 3e 20 4f 70 74 69 | ode_type(&self,.id:.u16).->.Opti | 
| 7a80 | 6f 6e 3c 26 47 6c 6f 62 61 6c 52 65 66 3e 20 7b    0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 6e 6f | on<&GlobalRef>.{.........self.no | 
| 7aa0 | 64 65 5f 74 79 70 65 73 2e 67 65 74 28 69 64 20    61 73 20 75 73 69 7a 65 29 0a 20 20 20 20 7d 0a | de_types.get(id.as.usize).....}. | 
| 7ac0 | 0a 20 20 20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20    20 20 20 70 75 62 28 63 72 61 74 65 29 20 66 6e | .....#[inline].....pub(crate).fn | 
| 7ae0 | 20 66 69 65 6c 64 5f 6e 61 6d 65 28 26 73 65 6c    66 2c 20 69 64 3a 20 75 31 36 29 20 2d 3e 20 4f | .field_name(&self,.id:.u16).->.O | 
| 7b00 | 70 74 69 6f 6e 3c 26 47 6c 6f 62 61 6c 52 65 66    3e 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 69 | ption<&GlobalRef>.{.........if.i | 
| 7b20 | 64 20 3d 3d 20 30 20 7b 0a 20 20 20 20 20 20 20    20 20 20 20 20 4e 6f 6e 65 0a 20 20 20 20 20 20 | d.==.0.{.............None....... | 
| 7b40 | 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20    20 20 20 20 20 20 20 73 65 6c 66 2e 66 69 65 6c | ..}.else.{.............self.fiel | 
| 7b60 | 64 5f 6e 61 6d 65 73 2e 67 65 74 28 69 64 20 61    73 20 75 73 69 7a 65 20 2d 20 31 29 0a 20 20 20 | d_names.get(id.as.usize.-.1).... | 
| 7b80 | 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a    2f 2f 20 54 4f 44 4f 3a 20 43 6f 6e 73 69 64 65 | .....}.....}.}..//.TODO:.Conside | 
| 7ba0 | 72 20 6f 70 74 69 6d 69 7a 69 6e 67 20 66 6f 72    20 61 63 63 65 73 73 69 6e 67 20 6c 61 6e 67 75 | r.optimizing.for.accessing.langu | 
| 7bc0 | 61 67 65 27 73 20 6d 65 74 61 64 61 74 61 2c 20    69 2e 65 2e 20 6d 61 6b 69 6e 67 20 4c 61 6e 67 | age's.metadata,.i.e..making.Lang | 
| 7be0 | 75 61 67 65 20 61 20 62 69 67 20 77 72 61 70 70    65 72 0a 2f 2f 20 61 72 6f 75 6e 64 20 74 72 65 | uage.a.big.wrapper.//.around.tre | 
| 7c00 | 65 5f 73 69 74 74 65 72 3a 3a 4c 61 6e 67 75 61    67 65 2c 20 73 6f 20 74 68 61 74 20 68 61 73 68 | e_sitter::Language,.so.that.hash | 
| 7c20 | 20 6c 6f 6f 6b 75 70 20 68 61 70 70 65 6e 73 20    6f 6e 6c 79 20 77 68 65 6e 20 72 65 74 75 72 6e | .lookup.happens.only.when.return | 
| 7c40 | 69 6e 67 20 74 68 65 20 6c 61 6e 67 75 61 67 65    20 6f 66 20 61 0a 2f 2f 20 70 61 72 73 65 72 2f | ing.the.language.of.a.//.parser/ | 
| 7c60 | 74 72 65 65 2f 6e 6f 64 65 2f 71 75 65 72 79 2e    0a 73 74 61 74 69 63 20 4c 41 4e 47 5f 49 4e 46 | tree/node/query..static.LANG_INF | 
| 7c80 | 4f 53 3a 20 4c 61 7a 79 3c 4d 75 74 65 78 3c 48    61 73 68 4d 61 70 3c 75 73 69 7a 65 2c 20 4c 61 | OS:.Lazy<Mutex<HashMap<usize,.La | 
| 7ca0 | 6e 67 49 6e 66 6f 3e 3e 3e 20 3d 20 4c 61 7a 79    3a 3a 6e 65 77 28 7c 7c 20 4d 75 74 65 78 3a 3a | ngInfo>>>.=.Lazy::new(||.Mutex:: | 
| 7cc0 | 6e 65 77 28 48 61 73 68 4d 61 70 3a 3a 6e 65 77    28 29 29 29 3b 0a 0a 2f 2f 2f 20 4c 6f 61 64 20 | new(HashMap::new()));..///.Load. | 
| 7ce0 | 74 68 65 20 73 68 61 72 65 64 20 6c 69 62 20 46    49 4c 45 20 61 6e 64 20 72 65 74 75 72 6e 20 74 | the.shared.lib.FILE.and.return.t | 
| 7d00 | 68 65 20 6c 61 6e 67 75 61 67 65 20 75 6e 64 65    72 20 53 59 4d 42 4f 4c 2d 4e 41 4d 45 2e 0a 2f | he.language.under.SYMBOL-NAME../ | 
| 7d20 | 2f 2f 20 54 68 65 20 6c 61 6e 67 75 61 67 65 27    73 20 6e 61 6d 65 20 73 79 6d 62 6f 6c 20 69 73 | //.The.language's.name.symbol.is | 
| 7d40 | 20 73 65 74 20 74 6f 20 4c 41 4e 47 2d 53 59 4d    42 4f 4c 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e | .set.to.LANG-SYMBOL..#[defun].fn | 
| 7d60 | 20 5f 6c 6f 61 64 5f 6c 61 6e 67 75 61 67 65 28    66 69 6c 65 3a 20 53 74 72 69 6e 67 2c 20 73 79 | ._load_language(file:.String,.sy | 
| 7d80 | 6d 62 6f 6c 5f 6e 61 6d 65 3a 20 53 74 72 69 6e    67 2c 20 6c 61 6e 67 5f 73 79 6d 62 6f 6c 3a 20 | mbol_name:.String,.lang_symbol:. | 
| 7da0 | 56 61 6c 75 65 29 20 2d 3e 20 52 65 73 75 6c 74    3c 4c 61 6e 67 75 61 67 65 3e 20 7b 0a 20 20 20 | Value).->.Result<Language>.{.... | 
| 7dc0 | 20 6c 65 74 20 65 6e 76 20 3d 20 6c 61 6e 67 5f    73 79 6d 62 6f 6c 2e 65 6e 76 3b 0a 20 20 20 20 | .let.env.=.lang_symbol.env;..... | 
| 7de0 | 6c 65 74 20 6c 69 62 20 3d 20 75 6e 73 61 66 65    20 7b 20 4c 69 62 72 61 72 79 3a 3a 6e 65 77 28 | let.lib.=.unsafe.{.Library::new( | 
| 7e00 | 26 66 69 6c 65 29 20 7d 2e 6f 72 5f 73 69 67 6e    61 6c 28 65 6e 76 2c 20 65 72 72 6f 72 3a 3a 74 | &file).}.or_signal(env,.error::t | 
| 7e20 | 73 63 5f 6c 61 6e 67 5f 6c 6f 61 64 5f 66 61 69    6c 65 64 29 3f 3b 0a 20 20 20 20 6c 65 74 20 74 | sc_lang_load_failed)?;.....let.t | 
| 7e40 | 72 65 65 5f 73 69 74 74 65 72 5f 6c 61 6e 67 3a    20 53 79 6d 62 6f 6c 3c 27 5f 2c 20 75 6e 73 61 | ree_sitter_lang:.Symbol<'_,.unsa | 
| 7e60 | 66 65 20 65 78 74 65 72 6e 20 22 43 22 20 66 6e    28 29 20 2d 3e 20 5f 3e 20 3d 0a 20 20 20 20 20 | fe.extern."C".fn().->._>.=...... | 
| 7e80 | 20 20 20 75 6e 73 61 66 65 20 7b 20 6c 69 62 2e    67 65 74 28 73 79 6d 62 6f 6c 5f 6e 61 6d 65 2e | ...unsafe.{.lib.get(symbol_name. | 
| 7ea0 | 61 73 5f 62 79 74 65 73 28 29 29 20 7d 2e 6f 72    5f 73 69 67 6e 61 6c 28 65 6e 76 2c 20 65 72 72 | as_bytes()).}.or_signal(env,.err | 
| 7ec0 | 6f 72 3a 3a 74 73 63 5f 6c 61 6e 67 5f 6c 6f 61    64 5f 66 61 69 6c 65 64 29 3f 3b 0a 20 20 20 20 | or::tsc_lang_load_failed)?;..... | 
| 7ee0 | 6c 65 74 20 6c 61 6e 67 75 61 67 65 3a 20 74 72    65 65 5f 73 69 74 74 65 72 3a 3a 4c 61 6e 67 75 | let.language:.tree_sitter::Langu | 
| 7f00 | 61 67 65 20 3d 20 75 6e 73 61 66 65 20 7b 20 74    72 65 65 5f 73 69 74 74 65 72 5f 6c 61 6e 67 28 | age.=.unsafe.{.tree_sitter_lang( | 
| 7f20 | 29 20 7d 3b 0a 20 20 20 20 6c 65 74 20 76 65 72    73 69 6f 6e 20 3d 20 6c 61 6e 67 75 61 67 65 2e | ).};.....let.version.=.language. | 
| 7f40 | 76 65 72 73 69 6f 6e 28 29 3b 0a 20 20 20 20 69    66 20 76 65 72 73 69 6f 6e 20 3c 20 4d 49 4e 5f | version();.....if.version.<.MIN_ | 
| 7f60 | 43 4f 4d 50 41 54 49 42 4c 45 5f 4c 41 4e 47 55    41 47 45 5f 56 45 52 53 49 4f 4e 20 7b 0a 20 20 | COMPATIBLE_LANGUAGE_VERSION.{... | 
| 7f80 | 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 6e 76    2e 73 69 67 6e 61 6c 28 65 72 72 6f 72 3a 3a 74 | ......return.env.signal(error::t | 
| 7fa0 | 73 63 5f 6c 61 6e 67 5f 61 62 69 5f 74 6f 6f 5f    6f 6c 64 2c 20 28 0a 20 20 20 20 20 20 20 20 20 | sc_lang_abi_too_old,.(.......... | 
| 7fc0 | 20 20 20 76 65 72 73 69 6f 6e 2c 20 73 75 70 70    6f 72 74 65 64 5f 61 62 69 5f 72 61 6e 67 65 28 | ...version,.supported_abi_range( | 
| 7fe0 | 65 6e 76 29 3f 2c 20 66 69 6c 65 0a 20 20 20 20    20 20 20 20 29 29 3b 0a 20 20 20 20 7d 0a 20 20 | env)?,.file.........));.....}... | 
| 8000 | 20 20 69 66 20 76 65 72 73 69 6f 6e 20 3e 20 4c    41 4e 47 55 41 47 45 5f 56 45 52 53 49 4f 4e 20 | ..if.version.>.LANGUAGE_VERSION. | 
| 8020 | 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e    20 65 6e 76 2e 73 69 67 6e 61 6c 28 65 72 72 6f | {.........return.env.signal(erro | 
| 8040 | 72 3a 3a 74 73 63 5f 6c 61 6e 67 5f 61 62 69 5f    74 6f 6f 5f 6e 65 77 2c 20 28 0a 20 20 20 20 20 | r::tsc_lang_abi_too_new,.(...... | 
| 8060 | 20 20 20 20 20 20 20 76 65 72 73 69 6f 6e 2c 20    73 75 70 70 6f 72 74 65 64 5f 61 62 69 5f 72 61 | .......version,.supported_abi_ra | 
| 8080 | 6e 67 65 28 65 6e 76 29 3f 2c 20 66 69 6c 65 0a    20 20 20 20 20 20 20 20 29 29 3b 0a 20 20 20 20 | nge(env)?,.file.........));..... | 
| 80a0 | 7d 0a 20 20 20 20 6c 65 74 20 6e 6f 64 65 5f 74    79 70 65 73 20 3d 20 28 30 2e 2e 6c 61 6e 67 75 | }.....let.node_types.=.(0..langu | 
| 80c0 | 61 67 65 2e 6e 6f 64 65 5f 6b 69 6e 64 5f 63 6f    75 6e 74 28 29 20 61 73 20 75 31 36 29 2e 6d 61 | age.node_kind_count().as.u16).ma | 
| 80e0 | 70 28 7c 69 64 7c 20 7b 0a 20 20 20 20 20 20 20    20 6c 65 74 20 74 79 70 65 5f 73 74 72 20 3d 20 | p(|id|.{.........let.type_str.=. | 
| 8100 | 6c 61 6e 67 75 61 67 65 2e 6e 6f 64 65 5f 6b 69    6e 64 5f 66 6f 72 5f 69 64 28 69 64 29 2e 65 78 | language.node_kind_for_id(id).ex | 
| 8120 | 70 65 63 74 28 22 46 61 69 6c 65 64 20 74 6f 20    67 65 74 20 6e 6f 64 65 20 74 79 70 65 20 66 6f | pect("Failed.to.get.node.type.fo | 
| 8140 | 72 20 69 64 22 29 3b 0a 20 20 20 20 20 20 20 20    6c 65 74 20 76 61 6c 75 65 20 3d 20 69 66 20 21 | r.id");.........let.value.=.if.! | 
| 8160 | 6c 61 6e 67 75 61 67 65 2e 6e 6f 64 65 5f 6b 69    6e 64 5f 69 73 5f 76 69 73 69 62 6c 65 28 69 64 | language.node_kind_is_visible(id | 
| 8180 | 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20    65 6e 76 2e 69 6e 74 65 72 6e 28 26 66 6f 72 6d | ).{.............env.intern(&form | 
| 81a0 | 61 74 21 28 22 3a 7b 7d 22 2c 20 74 79 70 65 5f    73 74 72 29 29 2e 65 78 70 65 63 74 28 22 46 61 | at!(":{}",.type_str)).expect("Fa | 
| 81c0 | 69 6c 65 64 20 74 6f 20 69 6e 74 65 72 6e 20 6b    65 79 77 6f 72 64 20 66 6f 72 20 6e 6f 64 65 20 | iled.to.intern.keyword.for.node. | 
| 81e0 | 74 79 70 65 22 29 0a 20 20 20 20 20 20 20 20 7d    20 65 6c 73 65 20 69 66 20 6c 61 6e 67 75 61 67 | type").........}.else.if.languag | 
| 8200 | 65 2e 6e 6f 64 65 5f 6b 69 6e 64 5f 69 73 5f 6e    61 6d 65 64 28 69 64 29 20 7b 0a 20 20 20 20 20 | e.node_kind_is_named(id).{...... | 
| 8220 | 20 20 20 20 20 20 20 65 6e 76 2e 69 6e 74 65 72    6e 28 74 79 70 65 5f 73 74 72 29 2e 65 78 70 65 | .......env.intern(type_str).expe | 
| 8240 | 63 74 28 22 46 61 69 6c 65 64 20 74 6f 20 69 6e    74 65 72 6e 20 73 79 6d 62 6f 6c 20 66 6f 72 20 | ct("Failed.to.intern.symbol.for. | 
| 8260 | 6e 6f 64 65 20 74 79 70 65 22 29 0a 20 20 20 20    20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 | node.type").........}.else.{.... | 
| 8280 | 20 20 20 20 20 20 20 20 20 74 79 70 65 5f 73 74    72 2e 69 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 | .........type_str.into_lisp(env) | 
| 82a0 | 2e 65 78 70 65 63 74 28 22 46 61 69 6c 65 64 20    74 6f 20 6d 61 6b 65 20 73 74 72 69 6e 67 20 66 | .expect("Failed.to.make.string.f | 
| 82c0 | 6f 72 20 6e 6f 64 65 20 74 79 70 65 22 29 0a 20    20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 | or.node.type").........};....... | 
| 82e0 | 20 20 76 61 6c 75 65 2e 6d 61 6b 65 5f 67 6c 6f    62 61 6c 5f 72 65 66 28 29 0a 20 20 20 20 7d 29 | ..value.make_global_ref().....}) | 
| 8300 | 2e 63 6f 6c 6c 65 63 74 28 29 3b 0a 20 20 20 20    6c 65 74 20 66 69 65 6c 64 5f 6e 61 6d 65 73 20 | .collect();.....let.field_names. | 
| 8320 | 3d 20 28 31 2e 2e 3d 6c 61 6e 67 75 61 67 65 2e    66 69 65 6c 64 5f 63 6f 75 6e 74 28 29 20 61 73 | =.(1..=language.field_count().as | 
| 8340 | 20 75 31 36 29 2e 6d 61 70 28 7c 69 64 7c 20 7b    0a 20 20 20 20 20 20 20 20 6c 65 74 20 66 69 65 | .u16).map(|id|.{.........let.fie | 
| 8360 | 6c 64 5f 73 74 72 20 3d 20 6c 61 6e 67 75 61 67    65 2e 66 69 65 6c 64 5f 6e 61 6d 65 5f 66 6f 72 | ld_str.=.language.field_name_for | 
| 8380 | 5f 69 64 28 69 64 29 2e 65 78 70 65 63 74 28 22    46 61 69 6c 65 64 20 74 6f 20 67 65 74 20 66 69 | _id(id).expect("Failed.to.get.fi | 
| 83a0 | 65 6c 64 20 6e 61 6d 65 20 66 6f 72 20 69 64 22    29 3b 0a 20 20 20 20 20 20 20 20 65 6e 76 2e 69 | eld.name.for.id");.........env.i | 
| 83c0 | 6e 74 65 72 6e 28 26 66 6f 72 6d 61 74 21 28 22    3a 7b 7d 22 2c 20 66 69 65 6c 64 5f 73 74 72 29 | ntern(&format!(":{}",.field_str) | 
| 83e0 | 29 2e 65 78 70 65 63 74 28 22 46 61 69 6c 65 64    20 74 6f 20 69 6e 74 65 72 6e 20 6b 65 79 77 6f | ).expect("Failed.to.intern.keywo | 
| 8400 | 72 64 20 66 6f 72 20 66 69 65 6c 64 20 6e 61 6d    65 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | rd.for.field.name")............. | 
| 8420 | 2e 6d 61 6b 65 5f 67 6c 6f 62 61 6c 5f 72 65 66    28 29 0a 20 20 20 20 7d 29 2e 63 6f 6c 6c 65 63 | .make_global_ref().....}).collec | 
| 8440 | 74 28 29 3b 0a 20 20 20 20 6c 65 74 20 6c 61 6e    67 75 61 67 65 3a 20 4c 61 6e 67 75 61 67 65 20 | t();.....let.language:.Language. | 
| 8460 | 3d 20 6c 61 6e 67 75 61 67 65 2e 69 6e 74 6f 28    29 3b 0a 20 20 20 20 4c 41 4e 47 5f 49 4e 46 4f | =.language.into();.....LANG_INFO | 
| 8480 | 53 2e 74 72 79 5f 6c 6f 63 6b 28 29 2e 65 78 70    65 63 74 28 22 46 61 69 6c 65 64 20 74 6f 20 61 | S.try_lock().expect("Failed.to.a | 
| 84a0 | 63 63 65 73 73 20 6c 61 6e 67 75 61 67 65 20 69    6e 66 6f 20 72 65 67 69 73 74 72 79 22 29 0a 20 | ccess.language.info.registry").. | 
| 84c0 | 20 20 20 20 20 20 20 2e 69 6e 73 65 72 74 28 6c    61 6e 67 75 61 67 65 2e 69 64 28 29 2c 20 4c 61 | ........insert(language.id(),.La | 
| 84e0 | 6e 67 49 6e 66 6f 20 7b 0a 20 20 20 20 20 20 20    20 20 20 20 20 6c 6f 61 64 5f 66 69 6c 65 3a 20 | ngInfo.{.............load_file:. | 
| 8500 | 66 69 6c 65 2c 0a 20 20 20 20 20 20 20 20 20 20    20 20 6c 61 6e 67 5f 73 79 6d 62 6f 6c 3a 20 6c | file,.............lang_symbol:.l | 
| 8520 | 61 6e 67 5f 73 79 6d 62 6f 6c 2e 6d 61 6b 65 5f    67 6c 6f 62 61 6c 5f 72 65 66 28 29 2c 0a 20 20 | ang_symbol.make_global_ref(),... | 
| 8540 | 20 20 20 20 20 20 20 20 20 20 5f 6c 69 62 3a 20    6c 69 62 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | .........._lib:.lib,............ | 
| 8560 | 20 6e 6f 64 65 5f 74 79 70 65 73 2c 0a 20 20 20    20 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 6e | .node_types,.............field_n | 
| 8580 | 61 6d 65 73 2c 0a 20 20 20 20 20 20 20 20 7d 29    3b 0a 20 20 20 20 4f 6b 28 6c 61 6e 67 75 61 67 | ames,.........});.....Ok(languag | 
| 85a0 | 65 29 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e    20 4c 41 4e 47 55 41 47 45 27 73 20 6e 61 6d 65 | e).}..///.Return.LANGUAGE's.name | 
| 85c0 | 2c 20 61 73 20 61 20 73 79 6d 62 6f 6c 2e 0a 23    5b 64 65 66 75 6e 5d 0a 66 6e 20 5f 6c 61 6e 67 | ,.as.a.symbol..#[defun].fn._lang | 
| 85e0 | 5f 73 79 6d 62 6f 6c 28 6c 61 6e 67 75 61 67 65    3a 20 4c 61 6e 67 75 61 67 65 29 20 2d 3e 20 52 | _symbol(language:.Language).->.R | 
| 8600 | 65 73 75 6c 74 3c 26 27 73 74 61 74 69 63 20 47    6c 6f 62 61 6c 52 65 66 3e 20 7b 0a 20 20 20 20 | esult<&'static.GlobalRef>.{..... | 
| 8620 | 4f 6b 28 26 6c 61 6e 67 75 61 67 65 2e 69 6e 66    6f 28 29 2e 6c 61 6e 67 5f 73 79 6d 62 6f 6c 29 | Ok(&language.info().lang_symbol) | 
| 8640 | 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 74    68 65 20 73 68 61 72 65 64 20 6c 69 62 20 66 69 | .}..///.Return.the.shared.lib.fi | 
| 8660 | 6c 65 20 74 68 61 74 20 4c 41 4e 47 55 41 47 45    20 77 61 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d | le.that.LANGUAGE.was.loaded.from | 
| 8680 | 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 5f 6c    61 6e 67 5f 6c 6f 61 64 5f 66 69 6c 65 28 6c 61 | ..#[defun].fn._lang_load_file(la | 
| 86a0 | 6e 67 75 61 67 65 3a 20 4c 61 6e 67 75 61 67 65    29 20 2d 3e 20 52 65 73 75 6c 74 3c 26 27 73 74 | nguage:.Language).->.Result<&'st | 
| 86c0 | 61 74 69 63 20 53 74 72 69 6e 67 3e 20 7b 0a 20    20 20 20 4f 6b 28 26 6c 61 6e 67 75 61 67 65 2e | atic.String>.{.....Ok(&language. | 
| 86e0 | 69 6e 66 6f 28 29 2e 6c 6f 61 64 5f 66 69 6c 65    29 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 | info().load_file).}..///.Return. | 
| 8700 | 74 68 65 20 6e 6f 64 65 20 74 79 70 65 20 61 73    73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 | the.node.type.associated.with.th | 
| 8720 | 65 20 6e 75 6d 65 72 69 63 20 54 59 50 45 2d 49    44 20 69 6e 20 4c 41 4e 47 55 41 47 45 2e 0a 2f | e.numeric.TYPE-ID.in.LANGUAGE../ | 
| 8740 | 2f 2f 0a 2f 2f 2f 20 46 6f 72 20 6e 61 6d 65 64    20 6e 6f 64 65 73 2c 20 74 68 65 20 6e 6f 64 65 | //.///.For.named.nodes,.the.node | 
| 8760 | 20 74 79 70 65 20 69 73 20 61 20 73 79 6d 62 6f    6c 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 20 | .type.is.a.symbol..For.example:. | 
| 8780 | 27 69 64 65 6e 74 69 66 69 65 72 2c 20 27 62 6c    6f 63 6b 2e 0a 2f 2f 2f 20 46 6f 72 20 61 6e 6f | 'identifier,.'block..///.For.ano | 
| 87a0 | 6e 79 6d 6f 75 73 20 6e 6f 64 65 73 2c 20 74 68    65 20 6e 6f 64 65 20 74 79 70 65 20 69 73 20 61 | nymous.nodes,.the.node.type.is.a | 
| 87c0 | 20 73 74 72 69 6e 67 2e 20 46 6f 72 20 65 78 61    6d 70 6c 65 3a 20 22 69 66 22 2c 20 22 65 6c 73 | .string..For.example:."if",."els | 
| 87e0 | 65 22 2e 0a 2f 2f 2f 20 46 6f 72 20 61 75 78 69    6c 69 61 72 79 20 28 69 6e 76 69 73 69 62 6c 65 | e"..///.For.auxiliary.(invisible | 
| 8800 | 29 20 6e 6f 64 65 73 2c 20 74 68 65 20 6e 6f 64    65 20 74 79 70 65 20 69 73 20 61 20 6b 65 79 77 | ).nodes,.the.node.type.is.a.keyw | 
| 8820 | 6f 72 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65    3a 20 3a 65 6e 64 2c 20 3a 5f 65 78 70 72 65 73 | ord..For.example:.:end,.:_expres | 
| 8840 | 73 69 6f 6e 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66    6e 20 6c 61 6e 67 5f 6e 6f 64 65 5f 74 79 70 65 | sion..#[defun].fn.lang_node_type | 
| 8860 | 28 6c 61 6e 67 75 61 67 65 3a 20 4c 61 6e 67 75    61 67 65 2c 20 74 79 70 65 5f 69 64 3a 20 75 31 | (language:.Language,.type_id:.u1 | 
| 8880 | 36 29 20 2d 3e 20 52 65 73 75 6c 74 3c 4f 70 74    69 6f 6e 3c 26 27 73 74 61 74 69 63 20 47 6c 6f | 6).->.Result<Option<&'static.Glo | 
| 88a0 | 62 61 6c 52 65 66 3e 3e 20 7b 0a 20 20 20 20 4f    6b 28 6c 61 6e 67 75 61 67 65 2e 69 6e 66 6f 28 | balRef>>.{.....Ok(language.info( | 
| 88c0 | 29 2e 6e 6f 64 65 5f 74 79 70 65 28 74 79 70 65    5f 69 64 29 29 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 | ).node_type(type_id)).}..///.Ret | 
| 88e0 | 75 72 6e 20 61 20 66 69 65 6c 64 27 73 20 6e 61    6d 65 20 6b 65 79 77 6f 72 64 2c 20 67 69 76 65 | urn.a.field's.name.keyword,.give | 
| 8900 | 6e 20 69 74 73 20 6e 75 6d 65 72 69 63 20 46 49    45 4c 44 2d 49 44 20 69 6e 20 4c 41 4e 47 55 41 | n.its.numeric.FIELD-ID.in.LANGUA | 
| 8920 | 47 45 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20    6c 61 6e 67 5f 66 69 65 6c 64 28 6c 61 6e 67 75 | GE..#[defun].fn.lang_field(langu | 
| 8940 | 61 67 65 3a 20 4c 61 6e 67 75 61 67 65 2c 20 66    69 65 6c 64 5f 69 64 3a 20 75 31 36 29 20 2d 3e | age:.Language,.field_id:.u16).-> | 
| 8960 | 20 52 65 73 75 6c 74 3c 4f 70 74 69 6f 6e 3c 26    27 73 74 61 74 69 63 20 47 6c 6f 62 61 6c 52 65 | .Result<Option<&'static.GlobalRe | 
| 8980 | 66 3e 3e 20 7b 0a 20 20 20 20 4f 6b 28 6c 61 6e    67 75 61 67 65 2e 69 6e 66 6f 28 29 2e 66 69 65 | f>>.{.....Ok(language.info().fie | 
| 89a0 | 6c 64 5f 6e 61 6d 65 28 66 69 65 6c 64 5f 69 64    29 29 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e | ld_name(field_id)).}..///.Return | 
| 89c0 | 20 74 68 65 20 6e 75 6d 65 72 69 63 20 69 64 20    6f 66 20 54 59 50 45 2d 4e 41 4d 45 20 69 6e 20 | .the.numeric.id.of.TYPE-NAME.in. | 
| 89e0 | 4c 41 4e 47 55 41 47 45 2e 0a 23 5b 64 65 66 75    6e 5d 0a 66 6e 20 5f 6c 61 6e 67 5f 74 79 70 65 | LANGUAGE..#[defun].fn._lang_type | 
| 8a00 | 5f 69 64 5f 66 6f 72 5f 6e 61 6d 65 28 6c 61 6e    67 75 61 67 65 3a 20 4c 61 6e 67 75 61 67 65 2c | _id_for_name(language:.Language, | 
| 8a20 | 20 74 79 70 65 5f 6e 61 6d 65 3a 20 53 74 72 69    6e 67 2c 20 6e 61 6d 65 64 3a 20 4f 70 74 69 6f | .type_name:.String,.named:.Optio | 
| 8a40 | 6e 3c 56 61 6c 75 65 3e 29 20 2d 3e 20 52 65 73    75 6c 74 3c 75 31 36 3e 20 7b 0a 20 20 20 20 4f | n<Value>).->.Result<u16>.{.....O | 
| 8a60 | 6b 28 6c 61 6e 67 75 61 67 65 2e 30 2e 69 64 5f    66 6f 72 5f 6e 6f 64 65 5f 6b 69 6e 64 28 26 74 | k(language.0.id_for_node_kind(&t | 
| 8a80 | 79 70 65 5f 6e 61 6d 65 2c 20 6e 61 6d 65 64 2e    69 73 5f 73 6f 6d 65 28 29 29 29 0a 7d 0a 0a 2f | ype_name,.named.is_some())).}../ | 
| 8aa0 | 2f 2f 20 52 65 74 75 72 6e 20 74 68 65 20 72 61    6e 67 65 20 6f 66 20 6c 61 6e 67 75 61 67 65 20 | //.Return.the.range.of.language. | 
| 8ac0 | 41 42 49 27 73 20 74 68 61 74 20 74 68 69 73 20    6d 6f 64 75 6c 65 20 63 61 6e 20 6c 6f 61 64 2e | ABI's.that.this.module.can.load. | 
| 8ae0 | 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 73 75 70    70 6f 72 74 65 64 5f 61 62 69 5f 72 61 6e 67 65 | .#[defun].fn.supported_abi_range | 
| 8b00 | 28 65 6e 76 3a 20 26 45 6e 76 29 20 2d 3e 20 52    65 73 75 6c 74 3c 56 61 6c 75 65 3e 20 7b 0a 20 | (env:.&Env).->.Result<Value>.{.. | 
| 8b20 | 20 20 20 65 6e 76 2e 63 6f 6e 73 28 4d 49 4e 5f    43 4f 4d 50 41 54 49 42 4c 45 5f 4c 41 4e 47 55 | ...env.cons(MIN_COMPATIBLE_LANGU | 
| 8b40 | 41 47 45 5f 56 45 52 53 49 4f 4e 2c 20 4c 41 4e    47 55 41 47 45 5f 56 45 52 53 49 4f 4e 29 0a 7d | AGE_VERSION,.LANGUAGE_VERSION).} | 
| 8b60 | 0a 0a 6d 61 63 72 6f 5f 72 75 6c 65 73 21 20 64    65 66 75 6e 5f 6c 61 6e 67 5f 6d 65 74 68 6f 64 | ..macro_rules!.defun_lang_method | 
| 8b80 | 73 20 7b 0a 20 20 20 20 28 24 28 24 28 23 5b 24    6d 65 74 61 3a 6d 65 74 61 5d 29 2a 20 24 28 24 | s.{.....($($(#[$meta:meta])*.$($ | 
| 8ba0 | 6c 69 73 70 5f 6e 61 6d 65 3a 6c 69 74 65 72 61    6c 29 3f 20 66 6e 20 24 6e 61 6d 65 3a 69 64 65 | lisp_name:literal)?.fn.$name:ide | 
| 8bc0 | 6e 74 20 24 28 20 28 20 24 28 20 24 70 61 72 61    6d 3a 69 64 65 6e 74 20 3a 20 24 74 79 70 65 3a | nt.$(.(.$(.$param:ident.:.$type: | 
| 8be0 | 74 79 20 29 2c 2a 20 29 20 29 3f 20 2d 3e 20 24    72 74 79 70 65 3a 74 79 20 29 2a 29 20 3d 3e 20 | ty.),*.).)?.->.$rtype:ty.)*).=>. | 
| 8c00 | 7b 0a 20 20 20 20 20 20 20 20 24 28 0a 20 20 20    20 20 20 20 20 20 20 20 20 23 5b 64 65 66 75 6e | {.........$(.............#[defun | 
| 8c20 | 24 28 28 6e 61 6d 65 20 3d 20 24 6c 69 73 70 5f    6e 61 6d 65 29 29 3f 5d 0a 20 20 20 20 20 20 20 | $((name.=.$lisp_name))?]........ | 
| 8c40 | 20 20 20 20 20 24 28 23 5b 24 6d 65 74 61 5d 29    2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6e | .....$(#[$meta])*.............fn | 
| 8c60 | 20 24 6e 61 6d 65 28 6c 61 6e 67 75 61 67 65 3a    20 4c 61 6e 67 75 61 67 65 2c 20 24 28 20 24 28 | .$name(language:.Language,.$(.$( | 
| 8c80 | 20 24 70 61 72 61 6d 20 3a 20 24 74 79 70 65 20    29 2c 2a 20 29 3f 20 29 20 2d 3e 20 52 65 73 75 | .$param.:.$type.),*.)?.).->.Resu | 
| 8ca0 | 6c 74 3c 24 72 74 79 70 65 3e 20 7b 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 4f 6b 28 | lt<$rtype>.{.................Ok( | 
| 8cc0 | 28 6c 61 6e 67 75 61 67 65 2e 30 29 2e 24 6e 61    6d 65 28 20 24 28 20 24 28 20 24 70 61 72 61 6d | (language.0).$name(.$(.$(.$param | 
| 8ce0 | 20 29 2c 2a 20 29 3f 20 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 | .),*.)?.)).............}........ | 
| 8d00 | 20 29 2a 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 64 65    66 75 6e 5f 6c 61 6e 67 5f 6d 65 74 68 6f 64 73 | .)*.....};.}..defun_lang_methods | 
| 8d20 | 21 20 7b 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75    72 6e 20 74 68 65 20 41 42 49 20 76 65 72 73 69 | !.{.....///.Return.the.ABI.versi | 
| 8d40 | 6f 6e 20 6e 75 6d 62 65 72 20 66 6f 72 20 4c 41    4e 47 55 41 47 45 2e 0a 20 20 20 20 2f 2f 2f 20 | on.number.for.LANGUAGE......///. | 
| 8d60 | 54 68 69 73 20 76 65 72 73 69 6f 6e 20 6e 75 6d    62 65 72 20 69 73 20 75 73 65 64 20 74 6f 20 65 | This.version.number.is.used.to.e | 
| 8d80 | 6e 73 75 72 65 20 74 68 61 74 20 6c 61 6e 67 75    61 67 65 73 20 77 65 72 65 20 67 65 6e 65 72 61 | nsure.that.languages.were.genera | 
| 8da0 | 74 65 64 20 62 79 20 61 0a 20 20 20 20 2f 2f 2f    20 63 6f 6d 70 61 74 69 62 6c 65 20 76 65 72 73 | ted.by.a.....///.compatible.vers | 
| 8dc0 | 69 6f 6e 20 6f 66 20 74 72 65 65 2d 73 69 74 74    65 72 2e 20 60 74 73 63 2d 73 65 74 2d 6c 61 6e | ion.of.tree-sitter..`tsc-set-lan | 
| 8de0 | 67 75 61 67 65 27 20 77 69 6c 6c 20 66 61 69 6c    20 69 66 20 74 68 65 20 6c 61 6e 67 75 61 67 65 | guage'.will.fail.if.the.language | 
| 8e00 | 0a 20 20 20 20 2f 2f 2f 20 69 73 20 69 6e 63 6f    6d 70 61 74 69 62 6c 65 2c 20 73 6f 20 74 68 65 | .....///.is.incompatible,.so.the | 
| 8e20 | 72 65 27 73 20 72 61 72 65 6c 79 20 61 20 6e 65    65 64 20 74 6f 20 75 73 65 20 74 68 69 73 20 66 | re's.rarely.a.need.to.use.this.f | 
| 8e40 | 75 6e 63 74 69 6f 6e 2c 20 65 78 63 65 70 74 20    66 6f 72 0a 20 20 20 20 2f 2f 2f 20 64 65 62 75 | unction,.except.for.....///.debu | 
| 8e60 | 67 67 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 0a    20 20 20 20 22 6c 61 6e 67 2d 76 65 72 73 69 6f | gging.purposes......"lang-versio | 
| 8e80 | 6e 22 20 66 6e 20 76 65 72 73 69 6f 6e 20 2d 3e    20 75 73 69 7a 65 0a 0a 20 20 20 20 2f 2f 2f 20 | n".fn.version.->.usize......///. | 
| 8ea0 | 52 65 74 75 72 6e 20 74 68 65 20 6e 75 6d 62 65    72 20 6f 66 20 64 69 73 74 69 6e 63 74 20 6e 6f | Return.the.number.of.distinct.no | 
| 8ec0 | 64 65 20 74 79 70 65 73 20 64 65 66 69 6e 65 64    20 69 6e 20 4c 41 4e 47 55 41 47 45 2e 0a 20 20 | de.types.defined.in.LANGUAGE.... | 
| 8ee0 | 20 20 22 6c 61 6e 67 2d 63 6f 75 6e 74 2d 74 79    70 65 73 22 20 66 6e 20 6e 6f 64 65 5f 6b 69 6e | .."lang-count-types".fn.node_kin | 
| 8f00 | 64 5f 63 6f 75 6e 74 20 2d 3e 20 75 73 69 7a 65    0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 6e | d_count.->.usize......///.Return | 
| 8f20 | 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 64    69 73 74 69 6e 63 74 20 66 69 65 6c 64 20 6e 61 | .the.number.of.distinct.field.na | 
| 8f40 | 6d 65 73 20 64 65 66 69 6e 65 64 20 69 6e 20 4c    41 4e 47 55 41 47 45 2e 0a 20 20 20 20 22 6c 61 | mes.defined.in.LANGUAGE......"la | 
| 8f60 | 6e 67 2d 63 6f 75 6e 74 2d 66 69 65 6c 64 73 22    20 66 6e 20 66 69 65 6c 64 5f 63 6f 75 6e 74 20 | ng-count-fields".fn.field_count. | 
| 8f80 | 2d 3e 20 75 73 69 7a 65 0a 0a 20 20 20 20 2f 2f    2f 20 52 65 74 75 72 6e 20 74 20 69 66 20 74 68 | ->.usize......///.Return.t.if.th | 
| 8fa0 | 65 20 6e 75 6d 65 72 69 63 20 54 59 50 45 2d 49    44 20 69 64 65 6e 74 69 66 69 65 73 20 61 20 6e | e.numeric.TYPE-ID.identifies.a.n | 
| 8fc0 | 61 6d 65 64 20 6e 6f 64 65 20 74 79 70 65 20 69    6e 20 4c 41 4e 47 55 41 47 45 2e 0a 20 20 20 20 | amed.node.type.in.LANGUAGE...... | 
| 8fe0 | 22 6c 61 6e 67 2d 6e 6f 64 65 2d 74 79 70 65 2d    6e 61 6d 65 64 2d 70 22 20 66 6e 20 6e 6f 64 65 | "lang-node-type-named-p".fn.node | 
| 9000 | 5f 6b 69 6e 64 5f 69 73 5f 6e 61 6d 65 64 28 74    79 70 65 5f 69 64 3a 20 75 31 36 29 20 2d 3e 20 | _kind_is_named(type_id:.u16).->. | 
| 9020 | 62 6f 6f 6c 0a 0a 20 20 20 20 2f 2f 2f 20 52 65    74 75 72 6e 20 74 68 65 20 6e 75 6d 65 72 69 63 | bool......///.Return.the.numeric | 
| 9040 | 20 69 64 20 6f 66 20 46 49 45 4c 44 2d 4e 41 4d    45 20 69 6e 20 4c 41 4e 47 55 41 47 45 2e 0a 20 | .id.of.FIELD-NAME.in.LANGUAGE... | 
| 9060 | 20 20 20 22 2d 6c 61 6e 67 2d 66 69 65 6c 64 2d    69 64 2d 66 6f 72 2d 6e 61 6d 65 22 20 66 6e 20 | ..."-lang-field-id-for-name".fn. | 
| 9080 | 66 69 65 6c 64 5f 69 64 5f 66 6f 72 5f 6e 61 6d    65 28 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 53 74 | field_id_for_name(field_name:.St | 
| 90a0 | 72 69 6e 67 29 20 2d 3e 20 4f 70 74 69 6f 6e 3c    75 31 36 3e 0a 7d 0a 00 00 00 00 00 00 00 00 00 | ring).->.Option<u16>.}.......... | 
| 90c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 90e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 91a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 91c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 91e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9200 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 6c 69 62 2e 72 73 00 00 00 00 | tsc-20220212.1632/src/lib.rs.... | 
| 9220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9260 | 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 | 
| 9280 | 30 30 30 30 36 30 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 34 36 37 00 20 30 00 00 00 | 0000600.00000000000.013467..0... | 
| 92a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 92c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 92e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9300 | 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................... | 
| 9320 | 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................... | 
| 9340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 93a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 93c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 93e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9400 | 0a 75 73 65 20 65 6d 61 63 73 3a 3a 7b 45 6e 76    2c 20 52 65 73 75 6c 74 7d 3b 0a 0a 23 5b 6d 61 | .use.emacs::{Env,.Result};..#[ma | 
| 9420 | 63 72 6f 5f 75 73 65 5d 0a 6d 6f 64 20 74 79 70    65 73 3b 0a 6d 6f 64 20 65 72 72 6f 72 3b 0a 6d | cro_use].mod.types;.mod.error;.m | 
| 9440 | 6f 64 20 6c 61 6e 67 3b 0a 6d 6f 64 20 70 61 72    73 65 72 3b 0a 6d 6f 64 20 74 72 65 65 3b 0a 6d | od.lang;.mod.parser;.mod.tree;.m | 
| 9460 | 6f 64 20 6e 6f 64 65 3b 0a 6d 6f 64 20 63 75 72    73 6f 72 3b 0a 6d 6f 64 20 71 75 65 72 79 3b 0a | od.node;.mod.cursor;.mod.query;. | 
| 9480 | 0a 65 6d 61 63 73 3a 3a 70 6c 75 67 69 6e 5f 69    73 5f 47 50 4c 5f 63 6f 6d 70 61 74 69 62 6c 65 | .emacs::plugin_is_GPL_compatible | 
| 94a0 | 21 20 7b 7d 0a 0a 23 5b 65 6d 61 63 73 3a 3a 6d    6f 64 75 6c 65 28 6e 61 6d 65 20 3d 20 22 74 73 | !.{}..#[emacs::module(name.=."ts | 
| 94c0 | 63 2d 64 79 6e 22 2c 20 64 65 66 75 6e 5f 70 72    65 66 69 78 20 3d 20 22 74 73 63 22 2c 20 6d 6f | c-dyn",.defun_prefix.=."tsc",.mo | 
| 94e0 | 64 5f 69 6e 5f 6e 61 6d 65 20 3d 20 66 61 6c 73    65 29 5d 0a 66 6e 20 69 6e 69 74 28 65 6e 76 3a | d_in_name.=.false)].fn.init(env: | 
| 9500 | 20 26 45 6e 76 29 20 2d 3e 20 52 65 73 75 6c 74    3c 28 29 3e 20 7b 0a 20 20 20 20 65 6e 76 2e 63 | .&Env).->.Result<()>.{.....env.c | 
| 9520 | 61 6c 6c 28 22 73 65 74 22 2c 20 28 65 6e 76 2e    69 6e 74 65 72 6e 28 22 74 73 63 2d 64 79 6e 2d | all("set",.(env.intern("tsc-dyn- | 
| 9540 | 2d 76 65 72 73 69 6f 6e 22 29 3f 2c 20 6f 70 74    69 6f 6e 5f 65 6e 76 21 28 22 43 41 52 47 4f 5f | -version")?,.option_env!("CARGO_ | 
| 9560 | 50 4b 47 5f 56 45 52 53 49 4f 4e 22 29 29 29 3f    3b 0a 20 20 20 20 4f 6b 28 28 29 29 0a 7d 0a 0a | PKG_VERSION")))?;.....Ok(()).}.. | 
| 9580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 95a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 95c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 95e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9600 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 6e 6f 64 65 2e 72 73 00 00 00 | tsc-20220212.1632/src/node.rs... | 
| 9620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9660 | 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 | 
| 9680 | 30 30 32 36 36 32 34 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 36 36 34 00 20 30 00 00 00 | 0026624.00000000000.013664..0... | 
| 96a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 96c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 96e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9700 | 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................... | 
| 9720 | 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................... | 
| 9740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 97a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 97c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 97e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 9800 | 75 73 65 20 73 74 64 3a 3a 7b 0a 20 20 20 20 63    65 6c 6c 3a 3a 7b 52 65 66 2c 20 52 65 66 43 65 | use.std::{.....cell::{Ref,.RefCe | 
| 9820 | 6c 6c 2c 20 52 65 66 4d 75 74 7d 2c 0a 20 20 20    20 6d 65 6d 2c 0a 20 20 20 20 6f 70 73 3a 3a 7b | ll,.RefMut},.....mem,.....ops::{ | 
| 9840 | 44 65 72 65 66 2c 20 44 65 72 65 66 4d 75 74 7d    2c 0a 7d 3b 0a 0a 75 73 65 20 65 6d 61 63 73 3a | Deref,.DerefMut},.};..use.emacs: | 
| 9860 | 3a 7b 64 65 66 75 6e 2c 20 45 6e 76 2c 20 49 6e    74 6f 4c 69 73 70 2c 20 52 65 73 75 6c 74 2c 20 | :{defun,.Env,.IntoLisp,.Result,. | 
| 9880 | 56 61 6c 75 65 2c 20 47 6c 6f 62 61 6c 52 65 66    7d 3b 0a 75 73 65 20 74 72 65 65 5f 73 69 74 74 | Value,.GlobalRef};.use.tree_sitt | 
| 98a0 | 65 72 3a 3a 7b 49 6e 70 75 74 45 64 69 74 2c 20    4e 6f 64 65 2c 20 54 72 65 65 7d 3b 0a 0a 75 73 | er::{InputEdit,.Node,.Tree};..us | 
| 98c0 | 65 20 63 72 61 74 65 3a 3a 7b 0a 20 20 20 20 74    79 70 65 73 3a 3a 7b 73 65 6c 66 2c 20 42 79 74 | e.crate::{.....types::{self,.Byt | 
| 98e0 | 65 50 6f 73 2c 20 50 6f 69 6e 74 2c 20 53 68 61    72 65 64 2c 20 52 61 6e 67 65 7d 2c 0a 20 20 20 | ePos,.Point,.Shared,.Range},.... | 
| 9900 | 20 6c 61 6e 67 3a 3a 4c 61 6e 67 75 61 67 65 2c    0a 7d 3b 0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d 2d | .lang::Language,.};..//.-------- | 
| 9920 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 9940 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 9960 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 2f 2f 2f 20 57 | -------------------------..///.W | 
| 9980 | 72 61 70 70 65 72 20 61 72 6f 75 6e 64 20 60 74    72 65 65 5f 73 69 74 74 65 72 3a 3a 4e 6f 64 65 | rapper.around.`tree_sitter::Node | 
| 99a0 | 60 20 74 68 61 74 20 63 61 6e 20 68 61 76 65 20    27 73 74 61 74 69 63 20 6c 69 66 65 74 69 6d 65 | `.that.can.have.'static.lifetime | 
| 99c0 | 2c 20 62 79 20 6b 65 65 70 69 6e 67 20 61 20 72    65 66 2d 63 6f 75 6e 74 65 64 0a 2f 2f 2f 20 72 | ,.by.keeping.a.ref-counted.///.r | 
| 99e0 | 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 20    75 6e 64 65 72 6c 79 69 6e 67 20 74 72 65 65 2e | eference.to.the.underlying.tree. | 
| 9a00 | 0a 23 5b 64 65 72 69 76 65 28 43 6c 6f 6e 65 29    5d 0a 70 75 62 20 73 74 72 75 63 74 20 52 4e 6f | .#[derive(Clone)].pub.struct.RNo | 
| 9a20 | 64 65 20 7b 0a 20 20 20 20 74 72 65 65 3a 20 53    68 61 72 65 64 3c 54 72 65 65 3e 2c 0a 20 20 20 | de.{.....tree:.Shared<Tree>,.... | 
| 9a40 | 20 69 6e 6e 65 72 3a 20 4e 6f 64 65 3c 27 73 74    61 74 69 63 3e 2c 0a 7d 0a 0a 69 6d 70 6c 5f 70 | .inner:.Node<'static>,.}..impl_p | 
| 9a60 | 72 65 64 21 28 6e 6f 64 65 5f 70 2c 20 26 52 65    66 43 65 6c 6c 3c 52 4e 6f 64 65 3e 29 3b 0a 0a | red!(node_p,.&RefCell<RNode>);.. | 
| 9a80 | 70 75 62 20 73 74 72 75 63 74 20 52 4e 6f 64 65    42 6f 72 72 6f 77 3c 27 65 3e 20 7b 0a 20 20 20 | pub.struct.RNodeBorrow<'e>.{.... | 
| 9aa0 | 20 23 5b 61 6c 6c 6f 77 28 75 6e 75 73 65 64 29    5d 0a 20 20 20 20 72 65 66 74 3a 20 52 65 66 3c | .#[allow(unused)].....reft:.Ref< | 
| 9ac0 | 27 65 2c 20 54 72 65 65 3e 2c 0a 20 20 20 20 6e    6f 64 65 3a 20 26 27 65 20 4e 6f 64 65 3c 27 65 | 'e,.Tree>,.....node:.&'e.Node<'e | 
| 9ae0 | 3e 2c 0a 7d 0a 0a 69 6d 70 6c 3c 27 65 3e 20 44    65 72 65 66 20 66 6f 72 20 52 4e 6f 64 65 42 6f | >,.}..impl<'e>.Deref.for.RNodeBo | 
| 9b00 | 72 72 6f 77 3c 27 65 3e 20 7b 0a 20 20 20 20 74    79 70 65 20 54 61 72 67 65 74 20 3d 20 4e 6f 64 | rrow<'e>.{.....type.Target.=.Nod | 
| 9b20 | 65 3c 27 65 3e 3b 0a 0a 20 20 20 20 23 5b 69 6e    6c 69 6e 65 5d 0a 20 20 20 20 66 6e 20 64 65 72 | e<'e>;......#[inline].....fn.der | 
| 9b40 | 65 66 28 26 73 65 6c 66 29 20 2d 3e 20 26 53 65    6c 66 3a 3a 54 61 72 67 65 74 20 7b 0a 20 20 20 | ef(&self).->.&Self::Target.{.... | 
| 9b60 | 20 20 20 20 20 73 65 6c 66 2e 6e 6f 64 65 0a 20    20 20 20 7d 0a 7d 0a 0a 70 75 62 20 73 74 72 75 | .....self.node.....}.}..pub.stru | 
| 9b80 | 63 74 20 52 4e 6f 64 65 42 6f 72 72 6f 77 4d 75    74 3c 27 65 3e 20 7b 0a 20 20 20 20 23 5b 61 6c | ct.RNodeBorrowMut<'e>.{.....#[al | 
| 9ba0 | 6c 6f 77 28 75 6e 75 73 65 64 29 5d 0a 20 20 20    20 72 65 66 74 3a 20 52 65 66 4d 75 74 3c 27 65 | low(unused)].....reft:.RefMut<'e | 
| 9bc0 | 2c 20 54 72 65 65 3e 2c 0a 20 20 20 20 6e 6f 64    65 3a 20 4e 6f 64 65 3c 27 65 3e 2c 0a 7d 0a 0a | ,.Tree>,.....node:.Node<'e>,.}.. | 
| 9be0 | 69 6d 70 6c 3c 27 65 3e 20 44 65 72 65 66 20 66    6f 72 20 52 4e 6f 64 65 42 6f 72 72 6f 77 4d 75 | impl<'e>.Deref.for.RNodeBorrowMu | 
| 9c00 | 74 3c 27 65 3e 20 7b 0a 20 20 20 20 74 79 70 65    20 54 61 72 67 65 74 20 3d 20 4e 6f 64 65 3c 27 | t<'e>.{.....type.Target.=.Node<' | 
| 9c20 | 65 3e 3b 0a 0a 20 20 20 20 23 5b 69 6e 6c 69 6e    65 5d 0a 20 20 20 20 66 6e 20 64 65 72 65 66 28 | e>;......#[inline].....fn.deref( | 
| 9c40 | 26 73 65 6c 66 29 20 2d 3e 20 26 53 65 6c 66 3a    3a 54 61 72 67 65 74 20 7b 0a 20 20 20 20 20 20 | &self).->.&Self::Target.{....... | 
| 9c60 | 20 20 26 73 65 6c 66 2e 6e 6f 64 65 0a 20 20 20    20 7d 0a 7d 0a 0a 69 6d 70 6c 3c 27 65 3e 20 44 | ..&self.node.....}.}..impl<'e>.D | 
| 9c80 | 65 72 65 66 4d 75 74 20 66 6f 72 20 52 4e 6f 64    65 42 6f 72 72 6f 77 4d 75 74 3c 27 65 3e 20 7b | erefMut.for.RNodeBorrowMut<'e>.{ | 
| 9ca0 | 0a 20 20 20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20    20 20 20 66 6e 20 64 65 72 65 66 5f 6d 75 74 28 | .....#[inline].....fn.deref_mut( | 
| 9cc0 | 26 6d 75 74 20 73 65 6c 66 29 20 2d 3e 20 26 6d    75 74 20 53 65 6c 66 3a 3a 54 61 72 67 65 74 20 | &mut.self).->.&mut.Self::Target. | 
| 9ce0 | 7b 0a 20 20 20 20 20 20 20 20 26 6d 75 74 20 73    65 6c 66 2e 6e 6f 64 65 0a 20 20 20 20 7d 0a 7d | {.........&mut.self.node.....}.} | 
| 9d00 | 0a 0a 69 6d 70 6c 20 50 61 72 74 69 61 6c 45 71    20 66 6f 72 20 52 4e 6f 64 65 20 7b 0a 20 20 20 | ..impl.PartialEq.for.RNode.{.... | 
| 9d20 | 20 66 6e 20 65 71 28 26 73 65 6c 66 2c 20 6f 74    68 65 72 3a 20 26 53 65 6c 66 29 20 2d 3e 20 62 | .fn.eq(&self,.other:.&Self).->.b | 
| 9d40 | 6f 6f 6c 20 7b 0a 20 20 20 20 20 20 20 20 73 65    6c 66 2e 69 6e 6e 65 72 20 3d 3d 20 6f 74 68 65 | ool.{.........self.inner.==.othe | 
| 9d60 | 72 2e 69 6e 6e 65 72 0a 20 20 20 20 7d 0a 7d 0a    0a 69 6d 70 6c 20 49 6e 74 6f 4c 69 73 70 3c 27 | r.inner.....}.}..impl.IntoLisp<' | 
| 9d80 | 5f 3e 20 66 6f 72 20 52 4e 6f 64 65 20 7b 0a 20    20 20 20 66 6e 20 69 6e 74 6f 5f 6c 69 73 70 28 | _>.for.RNode.{.....fn.into_lisp( | 
| 9da0 | 73 65 6c 66 2c 20 65 6e 76 3a 20 26 45 6e 76 29    20 2d 3e 20 52 65 73 75 6c 74 3c 56 61 6c 75 65 | self,.env:.&Env).->.Result<Value | 
| 9dc0 | 3e 20 7b 0a 20 20 20 20 20 20 20 20 52 65 66 43    65 6c 6c 3a 3a 6e 65 77 28 73 65 6c 66 29 2e 69 | >.{.........RefCell::new(self).i | 
| 9de0 | 6e 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a 20 20    20 20 7d 0a 7d 0a 0a 69 6d 70 6c 20 52 4e 6f 64 | nto_lisp(env).....}.}..impl.RNod | 
| 9e00 | 65 20 7b 0a 20 20 20 20 70 75 62 20 66 6e 20 6e    65 77 3c 27 65 2c 20 46 3a 20 46 6e 4f 6e 63 65 | e.{.....pub.fn.new<'e,.F:.FnOnce | 
| 9e20 | 28 26 27 65 20 54 72 65 65 29 20 2d 3e 20 4e 6f    64 65 3c 27 65 3e 3e 28 74 72 65 65 3a 20 53 68 | (&'e.Tree).->.Node<'e>>(tree:.Sh | 
| 9e40 | 61 72 65 64 3c 54 72 65 65 3e 2c 20 66 3a 20 46    29 20 2d 3e 20 53 65 6c 66 20 7b 0a 20 20 20 20 | ared<Tree>,.f:.F).->.Self.{..... | 
| 9e60 | 20 20 20 20 6c 65 74 20 72 74 72 65 65 20 3d 20    75 6e 73 61 66 65 20 7b 20 74 79 70 65 73 3a 3a | ....let.rtree.=.unsafe.{.types:: | 
| 9e80 | 65 72 61 73 65 5f 6c 69 66 65 74 69 6d 65 28 26    2a 74 72 65 65 2e 62 6f 72 72 6f 77 28 29 29 20 | erase_lifetime(&*tree.borrow()). | 
| 9ea0 | 7d 3b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 69    6e 6e 65 72 20 3d 20 75 6e 73 61 66 65 20 7b 20 | };.........let.inner.=.unsafe.{. | 
| 9ec0 | 6d 65 6d 3a 3a 74 72 61 6e 73 6d 75 74 65 28 66    28 72 74 72 65 65 29 29 20 7d 3b 0a 20 20 20 20 | mem::transmute(f(rtree)).};..... | 
| 9ee0 | 20 20 20 20 53 65 6c 66 20 7b 20 74 72 65 65 2c    20 69 6e 6e 65 72 20 7d 0a 20 20 20 20 7d 0a 0a | ....Self.{.tree,.inner.}.....}.. | 
| 9f00 | 20 20 20 20 70 75 62 20 66 6e 20 63 6c 6f 6e 65    5f 74 72 65 65 28 26 73 65 6c 66 29 20 2d 3e 20 | ....pub.fn.clone_tree(&self).->. | 
| 9f20 | 53 68 61 72 65 64 3c 54 72 65 65 3e 20 7b 0a 20    20 20 20 20 20 20 20 73 65 6c 66 2e 74 72 65 65 | Shared<Tree>.{.........self.tree | 
| 9f40 | 2e 63 6c 6f 6e 65 28 29 0a 20 20 20 20 7d 0a 0a    20 20 20 20 70 75 62 20 66 6e 20 6d 61 70 3c 27 | .clone().....}......pub.fn.map<' | 
| 9f60 | 65 2c 20 46 3a 20 46 6e 4f 6e 63 65 28 26 4e 6f    64 65 3c 27 65 3e 29 20 2d 3e 20 4e 6f 64 65 3c | e,.F:.FnOnce(&Node<'e>).->.Node< | 
| 9f80 | 27 65 3e 3e 28 26 73 65 6c 66 2c 20 66 3a 20 46    29 20 2d 3e 20 53 65 6c 66 20 7b 0a 20 20 20 20 | 'e>>(&self,.f:.F).->.Self.{..... | 
| 9fa0 | 20 20 20 20 53 65 6c 66 3a 3a 6e 65 77 28 73 65    6c 66 2e 63 6c 6f 6e 65 5f 74 72 65 65 28 29 2c | ....Self::new(self.clone_tree(), | 
| 9fc0 | 20 7c 5f 7c 20 66 28 26 73 65 6c 66 2e 69 6e 6e    65 72 29 29 0a 20 20 20 20 7d 0a 0a 20 20 20 20 | .|_|.f(&self.inner)).....}...... | 
| 9fe0 | 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20 20 70 75    62 20 66 6e 20 62 6f 72 72 6f 77 28 26 73 65 6c | #[inline].....pub.fn.borrow(&sel | 
| a000 | 66 29 20 2d 3e 20 52 4e 6f 64 65 42 6f 72 72 6f    77 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 | f).->.RNodeBorrow.{.........let. | 
| a020 | 72 65 66 74 20 3d 20 73 65 6c 66 2e 74 72 65 65    2e 62 6f 72 72 6f 77 28 29 3b 0a 20 20 20 20 20 | reft.=.self.tree.borrow();...... | 
| a040 | 20 20 20 6c 65 74 20 6e 6f 64 65 20 3d 20 26 73    65 6c 66 2e 69 6e 6e 65 72 3b 0a 20 20 20 20 20 | ...let.node.=.&self.inner;...... | 
| a060 | 20 20 20 52 4e 6f 64 65 42 6f 72 72 6f 77 20 7b    20 72 65 66 74 2c 20 6e 6f 64 65 20 7d 0a 20 20 | ...RNodeBorrow.{.reft,.node.}... | 
| a080 | 20 20 7d 0a 0a 20 20 20 20 23 5b 69 6e 6c 69 6e    65 5d 0a 20 20 20 20 70 75 62 20 66 6e 20 62 6f | ..}......#[inline].....pub.fn.bo | 
| a0a0 | 72 72 6f 77 5f 6d 75 74 28 26 6d 75 74 20 73 65    6c 66 29 20 2d 3e 20 52 4e 6f 64 65 42 6f 72 72 | rrow_mut(&mut.self).->.RNodeBorr | 
| a0c0 | 6f 77 4d 75 74 20 7b 0a 20 20 20 20 20 20 20 20    6c 65 74 20 72 65 66 74 20 3d 20 73 65 6c 66 2e | owMut.{.........let.reft.=.self. | 
| a0e0 | 74 72 65 65 2e 62 6f 72 72 6f 77 5f 6d 75 74 28    29 3b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 6e | tree.borrow_mut();.........let.n | 
| a100 | 6f 64 65 20 3d 20 73 65 6c 66 2e 69 6e 6e 65 72    3b 0a 20 20 20 20 20 20 20 20 52 4e 6f 64 65 42 | ode.=.self.inner;.........RNodeB | 
| a120 | 6f 72 72 6f 77 4d 75 74 20 7b 20 72 65 66 74 2c    20 6e 6f 64 65 20 7d 0a 20 20 20 20 7d 0a 7d 0a | orrowMut.{.reft,.node.}.....}.}. | 
| a140 | 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .//.---------------------------- | 
| a160 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| a180 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| a1a0 | 2d 2d 2d 2d 2d 0a 0a 2f 2f 2f 20 45 78 70 6f 73    65 73 20 6d 65 74 68 6f 64 73 20 74 68 61 74 20 | -----..///.Exposes.methods.that. | 
| a1c0 | 72 65 74 75 72 6e 20 61 20 6e 6f 64 65 27 73 20    70 72 6f 70 65 72 74 79 2e 0a 6d 61 63 72 6f 5f | return.a.node's.property..macro_ | 
| a1e0 | 72 75 6c 65 73 21 20 64 65 66 75 6e 5f 6e 6f 64    65 5f 70 72 6f 70 73 20 7b 0a 20 20 20 20 28 24 | rules!.defun_node_props.{.....($ | 
| a200 | 28 24 28 23 5b 24 6d 65 74 61 3a 6d 65 74 61 5d    29 2a 20 24 28 24 6c 69 73 70 5f 6e 61 6d 65 3a | ($(#[$meta:meta])*.$($lisp_name: | 
| a220 | 6c 69 74 65 72 61 6c 29 3f 20 66 6e 20 24 6e 61    6d 65 3a 69 64 65 6e 74 20 2d 3e 20 24 74 79 70 | literal)?.fn.$name:ident.->.$typ | 
| a240 | 65 3a 74 79 20 24 28 3b 20 24 69 6e 74 6f 3a 69    64 65 6e 74 29 3f 20 29 2a 29 20 3d 3e 20 7b 0a | e:ty.$(;.$into:ident)?.)*).=>.{. | 
| a260 | 20 20 20 20 20 20 20 20 24 28 0a 20 20 20 20 20    20 20 20 20 20 20 20 23 5b 64 65 66 75 6e 24 28 | ........$(.............#[defun$( | 
| a280 | 28 6e 61 6d 65 20 3d 20 24 6c 69 73 70 5f 6e 61    6d 65 29 29 3f 5d 0a 20 20 20 20 20 20 20 20 20 | (name.=.$lisp_name))?].......... | 
| a2a0 | 20 20 20 24 28 23 5b 24 6d 65 74 61 5d 29 2a 0a    20 20 20 20 20 20 20 20 20 20 20 20 66 6e 20 24 | ...$(#[$meta])*.............fn.$ | 
| a2c0 | 6e 61 6d 65 28 6e 6f 64 65 3a 20 26 52 4e 6f 64    65 29 20 2d 3e 20 52 65 73 75 6c 74 3c 24 74 79 | name(node:.&RNode).->.Result<$ty | 
| a2e0 | 70 65 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 4f 6b 28 6e 6f 64 65 2e 62 6f | pe>.{.................Ok(node.bo | 
| a300 | 72 72 6f 77 28 29 2e 24 6e 61 6d 65 28 29 24 28    2e 24 69 6e 74 6f 28 29 29 3f 29 0a 20 20 20 20 | rrow().$name()$(.$into())?)..... | 
| a320 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20    20 20 29 2a 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 2f | ........}.........)*.....};.}../ | 
| a340 | 2f 2f 20 45 78 70 6f 73 65 73 20 6d 65 74 68 6f    64 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 61 | //.Exposes.methods.that.return.a | 
| a360 | 6e 6f 74 68 65 72 20 6e 6f 64 65 2e 0a 6d 61 63    72 6f 5f 72 75 6c 65 73 21 20 64 65 66 75 6e 5f | nother.node..macro_rules!.defun_ | 
| a380 | 6e 6f 64 65 5f 6e 61 76 73 20 7b 0a 20 20 20 20    28 24 28 24 28 23 5b 24 6d 65 74 61 3a 6d 65 74 | node_navs.{.....($($(#[$meta:met | 
| a3a0 | 61 5d 29 2a 20 24 28 24 6c 69 73 70 5f 6e 61 6d    65 3a 6c 69 74 65 72 61 6c 29 3f 20 66 6e 20 24 | a])*.$($lisp_name:literal)?.fn.$ | 
| a3c0 | 6e 61 6d 65 3a 69 64 65 6e 74 20 24 28 20 28 20    24 28 20 24 70 61 72 61 6d 3a 69 64 65 6e 74 20 | name:ident.$(.(.$(.$param:ident. | 
| a3e0 | 24 28 24 69 6e 74 6f 3a 69 64 65 6e 74 29 3f 20    3a 20 24 74 79 70 65 3a 74 79 20 29 2c 2a 20 29 | $($into:ident)?.:.$type:ty.),*.) | 
| a400 | 20 29 3f 29 2a 29 20 3d 3e 20 7b 0a 20 20 20 20    20 20 20 20 24 28 0a 20 20 20 20 20 20 20 20 20 | .)?)*).=>.{.........$(.......... | 
| a420 | 20 20 20 23 5b 64 65 66 75 6e 24 28 28 6e 61 6d    65 20 3d 20 24 6c 69 73 70 5f 6e 61 6d 65 29 29 | ...#[defun$((name.=.$lisp_name)) | 
| a440 | 3f 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 24    28 23 5b 24 6d 65 74 61 5d 29 2a 0a 20 20 20 20 | ?].............$(#[$meta])*..... | 
| a460 | 20 20 20 20 20 20 20 20 66 6e 20 24 6e 61 6d 65    28 6e 6f 64 65 3a 20 26 52 4e 6f 64 65 2c 20 24 | ........fn.$name(node:.&RNode,.$ | 
| a480 | 28 20 24 28 20 24 70 61 72 61 6d 20 3a 20 24 74    79 70 65 20 29 2c 2a 20 29 3f 20 29 20 2d 3e 20 | (.$(.$param.:.$type.),*.)?.).->. | 
| a4a0 | 52 65 73 75 6c 74 3c 4f 70 74 69 6f 6e 3c 52 4e    6f 64 65 3e 3e 20 7b 0a 20 20 20 20 20 20 20 20 | Result<Option<RNode>>.{......... | 
| a4c0 | 20 20 20 20 20 20 20 20 4f 6b 28 6e 6f 64 65 2e    62 6f 72 72 6f 77 28 29 2e 24 6e 61 6d 65 28 20 | ........Ok(node.borrow().$name(. | 
| a4e0 | 24 28 20 24 28 20 24 70 61 72 61 6d 20 24 28 2e    24 69 6e 74 6f 28 29 29 3f 20 29 2c 2a 20 29 3f | $(.$(.$param.$(.$into())?.),*.)? | 
| a500 | 20 29 2e 6d 61 70 28 7c 6f 74 68 65 72 7c 20 7b    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .).map(|other|.{................ | 
| a520 | 20 20 20 20 20 6e 6f 64 65 2e 6d 61 70 28 7c 5f    7c 20 6f 74 68 65 72 29 0a 20 20 20 20 20 20 20 | .....node.map(|_|.other)........ | 
| a540 | 20 20 20 20 20 20 20 20 20 7d 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | .........})).............}...... | 
| a560 | 20 20 20 29 2a 0a 20 20 20 20 7d 3b 0a 7d 0a 0a    65 6d 61 63 73 3a 3a 75 73 65 5f 73 79 6d 62 6f | ...)*.....};.}..emacs::use_symbo | 
| a580 | 6c 73 21 28 45 52 52 4f 52 29 3b 0a 0a 2f 2f 2f    20 52 65 74 75 72 6e 20 4e 4f 44 45 27 73 20 74 | ls!(ERROR);..///.Return.NODE's.t | 
| a5a0 | 79 70 65 2c 20 61 73 20 61 20 73 79 6d 62 6f 6c    20 28 6e 61 6d 65 64 20 6e 6f 64 65 29 2c 20 6f | ype,.as.a.symbol.(named.node),.o | 
| a5c0 | 72 20 61 20 73 74 72 69 6e 67 20 28 61 6e 6f 6e    79 6d 6f 75 73 20 6e 6f 64 65 29 2e 0a 2f 2f 2f | r.a.string.(anonymous.node)../// | 
| a5e0 | 0a 2f 2f 2f 20 49 66 20 4e 4f 44 45 20 69 73 20    61 20 6e 61 6d 65 64 20 6e 6f 64 65 2c 20 69 74 | .///.If.NODE.is.a.named.node,.it | 
| a600 | 73 20 74 79 70 65 20 69 73 20 61 20 73 79 6d 62    6f 6c 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a | s.type.is.a.symbol..For.example: | 
| a620 | 20 27 69 64 65 6e 74 69 66 69 65 72 2c 20 27 62    6c 6f 63 6b 2e 0a 2f 2f 2f 20 49 66 20 4e 4f 44 | .'identifier,.'block..///.If.NOD | 
| a640 | 45 20 69 73 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75    73 20 6e 6f 64 65 2c 20 69 74 73 20 74 79 70 65 | E.is.an.anonymous.node,.its.type | 
| a660 | 20 69 73 20 61 20 73 74 72 69 6e 67 2e 20 46 6f    72 20 65 78 61 6d 70 6c 65 3a 20 22 69 66 22 2c | .is.a.string..For.example:."if", | 
| a680 | 20 22 65 6c 73 65 22 2e 0a 23 5b 64 65 66 75 6e    5d 0a 66 6e 20 6e 6f 64 65 5f 74 79 70 65 28 6e | ."else"..#[defun].fn.node_type(n | 
| a6a0 | 6f 64 65 3a 20 26 52 4e 6f 64 65 29 20 2d 3e 20    52 65 73 75 6c 74 3c 26 27 73 74 61 74 69 63 20 | ode:.&RNode).->.Result<&'static. | 
| a6c0 | 47 6c 6f 62 61 6c 52 65 66 3e 20 7b 0a 20 20 20    20 4f 6b 28 6e 6f 64 65 2e 62 6f 72 72 6f 77 28 | GlobalRef>.{.....Ok(node.borrow( | 
| a6e0 | 29 2e 6c 69 73 70 5f 74 79 70 65 28 29 29 0a 7d    0a 0a 70 75 62 28 63 72 61 74 65 29 20 74 72 61 | ).lisp_type()).}..pub(crate).tra | 
| a700 | 69 74 20 4c 69 73 70 55 74 69 6c 73 20 7b 0a 20    20 20 20 66 6e 20 6c 69 73 70 5f 74 79 70 65 28 | it.LispUtils.{.....fn.lisp_type( | 
| a720 | 26 73 65 6c 66 29 20 2d 3e 20 26 27 73 74 61 74    69 63 20 47 6c 6f 62 61 6c 52 65 66 3b 0a 20 20 | &self).->.&'static.GlobalRef;... | 
| a740 | 20 20 66 6e 20 6c 69 73 70 5f 62 79 74 65 5f 72    61 6e 67 65 3c 27 65 3e 28 26 73 65 6c 66 2c 20 | ..fn.lisp_byte_range<'e>(&self,. | 
| a760 | 65 6e 76 3a 20 26 27 65 20 45 6e 76 29 20 2d 3e    20 52 65 73 75 6c 74 3c 56 61 6c 75 65 3c 27 65 | env:.&'e.Env).->.Result<Value<'e | 
| a780 | 3e 3e 3b 0a 20 20 20 20 66 6e 20 6c 69 73 70 5f    73 74 61 72 74 5f 62 79 74 65 28 26 73 65 6c 66 | >>;.....fn.lisp_start_byte(&self | 
| a7a0 | 29 20 2d 3e 20 42 79 74 65 50 6f 73 3b 0a 20 20    20 20 66 6e 20 6c 69 73 70 5f 65 6e 64 5f 62 79 | ).->.BytePos;.....fn.lisp_end_by | 
| a7c0 | 74 65 28 26 73 65 6c 66 29 20 2d 3e 20 42 79 74    65 50 6f 73 3b 0a 20 20 20 20 66 6e 20 6c 69 73 | te(&self).->.BytePos;.....fn.lis | 
| a7e0 | 70 5f 73 74 61 72 74 5f 70 6f 69 6e 74 28 26 73    65 6c 66 29 20 2d 3e 20 50 6f 69 6e 74 3b 0a 20 | p_start_point(&self).->.Point;.. | 
| a800 | 20 20 20 66 6e 20 6c 69 73 70 5f 65 6e 64 5f 70    6f 69 6e 74 28 26 73 65 6c 66 29 20 2d 3e 20 50 | ...fn.lisp_end_point(&self).->.P | 
| a820 | 6f 69 6e 74 3b 0a 20 20 20 20 66 6e 20 6c 69 73    70 5f 72 61 6e 67 65 28 26 73 65 6c 66 29 20 2d | oint;.....fn.lisp_range(&self).- | 
| a840 | 3e 20 52 61 6e 67 65 3b 0a 7d 0a 0a 69 6d 70 6c    3c 27 6e 3e 20 4c 69 73 70 55 74 69 6c 73 20 66 | >.Range;.}..impl<'n>.LispUtils.f | 
| a860 | 6f 72 20 4e 6f 64 65 3c 27 6e 3e 20 7b 0a 20 20    20 20 23 5b 69 6e 6c 69 6e 65 5d 0a 20 20 20 20 | or.Node<'n>.{.....#[inline]..... | 
| a880 | 66 6e 20 6c 69 73 70 5f 74 79 70 65 28 26 73 65    6c 66 29 20 2d 3e 20 26 27 73 74 61 74 69 63 20 | fn.lisp_type(&self).->.&'static. | 
| a8a0 | 47 6c 6f 62 61 6c 52 65 66 20 7b 0a 20 20 20 20    20 20 20 20 6c 65 74 20 6c 61 6e 67 75 61 67 65 | GlobalRef.{.........let.language | 
| a8c0 | 3a 20 4c 61 6e 67 75 61 67 65 20 3d 20 73 65 6c    66 2e 6c 61 6e 67 75 61 67 65 28 29 2e 69 6e 74 | :.Language.=.self.language().int | 
| a8e0 | 6f 28 29 3b 0a 20 20 20 20 20 20 20 20 69 66 20    73 65 6c 66 2e 69 73 5f 65 72 72 6f 72 28 29 20 | o();.........if.self.is_error(). | 
| a900 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 52    52 4f 52 0a 20 20 20 20 20 20 20 20 7d 20 65 6c | {.............ERROR.........}.el | 
| a920 | 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20    20 26 6c 61 6e 67 75 61 67 65 2e 69 6e 66 6f 28 | se.{.............&language.info( | 
| a940 | 29 2e 6e 6f 64 65 5f 74 79 70 65 28 73 65 6c 66    2e 6b 69 6e 64 5f 69 64 28 29 29 2e 65 78 70 65 | ).node_type(self.kind_id()).expe | 
| a960 | 63 74 28 22 46 61 69 6c 65 64 20 74 6f 20 67 65    74 20 6e 6f 64 65 20 74 79 70 65 20 66 72 6f 6d | ct("Failed.to.get.node.type.from | 
| a980 | 20 69 64 22 29 0a 20 20 20 20 20 20 20 20 7d 0a    20 20 20 20 7d 0a 0a 20 20 20 20 23 5b 69 6e 6c | .id").........}.....}......#[inl | 
| a9a0 | 69 6e 65 5d 0a 20 20 20 20 66 6e 20 6c 69 73 70    5f 62 79 74 65 5f 72 61 6e 67 65 3c 27 65 3e 28 | ine].....fn.lisp_byte_range<'e>( | 
| a9c0 | 26 73 65 6c 66 2c 20 65 6e 76 3a 20 26 27 65 20    45 6e 76 29 20 2d 3e 20 52 65 73 75 6c 74 3c 56 | &self,.env:.&'e.Env).->.Result<V | 
| a9e0 | 61 6c 75 65 3c 27 65 3e 3e 20 7b 0a 20 20 20 20    20 20 20 20 6c 65 74 20 62 65 67 3a 20 42 79 74 | alue<'e>>.{.........let.beg:.Byt | 
| aa00 | 65 50 6f 73 20 3d 20 73 65 6c 66 2e 73 74 61 72    74 5f 62 79 74 65 28 29 2e 69 6e 74 6f 28 29 3b | ePos.=.self.start_byte().into(); | 
| aa20 | 0a 20 20 20 20 20 20 20 20 6c 65 74 20 65 6e 64    3a 20 42 79 74 65 50 6f 73 20 3d 20 73 65 6c 66 | .........let.end:.BytePos.=.self | 
| aa40 | 2e 65 6e 64 5f 62 79 74 65 28 29 2e 69 6e 74 6f    28 29 3b 0a 20 20 20 20 20 20 20 20 65 6e 76 2e | .end_byte().into();.........env. | 
| aa60 | 63 6f 6e 73 28 62 65 67 2c 20 65 6e 64 29 0a 20    20 20 20 7d 0a 0a 20 20 20 20 23 5b 69 6e 6c 69 | cons(beg,.end).....}......#[inli | 
| aa80 | 6e 65 5d 0a 20 20 20 20 66 6e 20 6c 69 73 70 5f    73 74 61 72 74 5f 62 79 74 65 28 26 73 65 6c 66 | ne].....fn.lisp_start_byte(&self | 
| aaa0 | 29 20 2d 3e 20 42 79 74 65 50 6f 73 20 7b 0a 20    20 20 20 20 20 20 20 73 65 6c 66 2e 73 74 61 72 | ).->.BytePos.{.........self.star | 
| aac0 | 74 5f 62 79 74 65 28 29 2e 69 6e 74 6f 28 29 0a    20 20 20 20 7d 0a 0a 20 20 20 20 23 5b 69 6e 6c | t_byte().into().....}......#[inl | 
| aae0 | 69 6e 65 5d 0a 20 20 20 20 66 6e 20 6c 69 73 70    5f 65 6e 64 5f 62 79 74 65 28 26 73 65 6c 66 29 | ine].....fn.lisp_end_byte(&self) | 
| ab00 | 20 2d 3e 20 42 79 74 65 50 6f 73 20 7b 0a 20 20    20 20 20 20 20 20 73 65 6c 66 2e 65 6e 64 5f 62 | .->.BytePos.{.........self.end_b | 
| ab20 | 79 74 65 28 29 2e 69 6e 74 6f 28 29 0a 20 20 20    20 7d 0a 0a 20 20 20 20 23 5b 69 6e 6c 69 6e 65 | yte().into().....}......#[inline | 
| ab40 | 5d 0a 20 20 20 20 66 6e 20 6c 69 73 70 5f 73 74    61 72 74 5f 70 6f 69 6e 74 28 26 73 65 6c 66 29 | ].....fn.lisp_start_point(&self) | 
| ab60 | 20 2d 3e 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20    20 20 20 20 73 65 6c 66 2e 73 74 61 72 74 5f 70 | .->.Point.{.........self.start_p | 
| ab80 | 6f 73 69 74 69 6f 6e 28 29 2e 69 6e 74 6f 28 29    0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 5b 69 6e | osition().into().....}......#[in | 
| aba0 | 6c 69 6e 65 5d 0a 20 20 20 20 66 6e 20 6c 69 73    70 5f 65 6e 64 5f 70 6f 69 6e 74 28 26 73 65 6c | line].....fn.lisp_end_point(&sel | 
| abc0 | 66 29 20 2d 3e 20 50 6f 69 6e 74 20 7b 0a 20 20    20 20 20 20 20 20 73 65 6c 66 2e 65 6e 64 5f 70 | f).->.Point.{.........self.end_p | 
| abe0 | 6f 73 69 74 69 6f 6e 28 29 2e 69 6e 74 6f 28 29    0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 5b 69 6e | osition().into().....}......#[in | 
| ac00 | 6c 69 6e 65 5d 0a 20 20 20 20 66 6e 20 6c 69 73    70 5f 72 61 6e 67 65 28 26 73 65 6c 66 29 20 2d | line].....fn.lisp_range(&self).- | 
| ac20 | 3e 20 52 61 6e 67 65 20 7b 0a 20 20 20 20 20 20    20 20 73 65 6c 66 2e 72 61 6e 67 65 28 29 2e 69 | >.Range.{.........self.range().i | 
| ac40 | 6e 74 6f 28 29 0a 20 20 20 20 7d 7d 0a 0a 64 65    66 75 6e 5f 6e 6f 64 65 5f 70 72 6f 70 73 21 20 | nto().....}}..defun_node_props!. | 
| ac60 | 7b 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 6e    20 4e 4f 44 45 27 73 20 6e 75 6d 65 72 69 63 20 | {.....///.Return.NODE's.numeric. | 
| ac80 | 74 79 70 65 2d 69 64 2e 0a 20 20 20 20 22 6e 6f    64 65 2d 74 79 70 65 2d 69 64 22 20 66 6e 20 6b | type-id......"node-type-id".fn.k | 
| aca0 | 69 6e 64 5f 69 64 20 2d 3e 20 75 31 36 0a 0a 20    20 20 20 2f 2f 20 50 72 65 64 69 63 61 74 65 73 | ind_id.->.u16......//.Predicates | 
| acc0 | 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .------------------------------- | 
| ace0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| ad00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 | -------------------......///.Ret | 
| ad20 | 75 72 6e 20 74 20 69 66 20 4e 4f 44 45 20 69 73    20 27 6e 61 6d 65 64 27 2e 0a 20 20 20 20 2f 2f | urn.t.if.NODE.is.'named'......// | 
| ad40 | 2f 20 4e 61 6d 65 64 20 6e 6f 64 65 73 20 63 6f    72 72 65 73 70 6f 6e 64 20 74 6f 20 6e 61 6d 65 | /.Named.nodes.correspond.to.name | 
| ad60 | 64 20 72 75 6c 65 73 20 69 6e 20 74 68 65 20 67    72 61 6d 6d 61 72 2c 20 77 68 65 72 65 61 73 20 | d.rules.in.the.grammar,.whereas. | 
| ad80 | 61 6e 6f 6e 79 6d 6f 75 73 20 6e 6f 64 65 73 0a    20 20 20 20 2f 2f 2f 20 63 6f 72 72 65 73 70 6f | anonymous.nodes.....///.correspo | 
| ada0 | 6e 64 20 74 6f 20 73 74 72 69 6e 67 20 6c 69 74    65 72 61 6c 73 20 69 6e 20 74 68 65 20 67 72 61 | nd.to.string.literals.in.the.gra | 
| adc0 | 6d 6d 61 72 2e 0a 20 20 20 20 22 6e 6f 64 65 2d    6e 61 6d 65 64 2d 70 22 20 66 6e 20 69 73 5f 6e | mmar......"node-named-p".fn.is_n | 
| ade0 | 61 6d 65 64 20 2d 3e 20 62 6f 6f 6c 0a 0a 20 20    20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 74 20 69 | amed.->.bool......///.Return.t.i | 
| ae00 | 66 20 4e 4f 44 45 20 69 73 20 27 65 78 74 72 61    27 2e 0a 20 20 20 20 2f 2f 2f 20 45 78 74 72 61 | f.NODE.is.'extra'......///.Extra | 
| ae20 | 20 6e 6f 64 65 73 20 72 65 70 72 65 73 65 6e 74    20 74 68 69 6e 67 73 20 6c 69 6b 65 20 63 6f 6d | .nodes.represent.things.like.com | 
| ae40 | 6d 65 6e 74 73 2c 20 77 68 69 63 68 20 61 72 65    20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 74 68 | ments,.which.are.not.required.th | 
| ae60 | 65 20 67 72 61 6d 6d 61 72 2c 0a 20 20 20 20 2f    2f 2f 20 62 75 74 20 63 61 6e 20 61 70 70 65 61 | e.grammar,.....///.but.can.appea | 
| ae80 | 72 20 61 6e 79 77 68 65 72 65 2e 0a 20 20 20 20    22 6e 6f 64 65 2d 65 78 74 72 61 2d 70 22 20 66 | r.anywhere......"node-extra-p".f | 
| aea0 | 6e 20 69 73 5f 65 78 74 72 61 20 2d 3e 20 62 6f    6f 6c 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 | n.is_extra.->.bool......///.Retu | 
| aec0 | 72 6e 20 74 20 69 66 20 4e 4f 44 45 20 72 65 70    72 65 73 65 6e 74 73 20 61 20 73 79 6e 74 61 78 | rn.t.if.NODE.represents.a.syntax | 
| aee0 | 20 65 72 72 6f 72 2e 0a 20 20 20 20 2f 2f 2f 20    53 79 6e 74 61 78 20 65 72 72 6f 72 73 20 72 65 | .error......///.Syntax.errors.re | 
| af00 | 70 72 65 73 65 6e 74 20 70 61 72 74 73 20 6f 66    20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 63 | present.parts.of.the.code.that.c | 
| af20 | 6f 75 6c 64 20 6e 6f 74 20 62 65 20 69 6e 63 6f    72 70 6f 72 61 74 65 64 20 69 6e 74 6f 20 61 0a | ould.not.be.incorporated.into.a. | 
| af40 | 20 20 20 20 2f 2f 2f 20 76 61 6c 69 64 20 73 79    6e 74 61 78 20 74 72 65 65 2e 0a 20 20 20 20 22 | ....///.valid.syntax.tree......" | 
| af60 | 6e 6f 64 65 2d 65 72 72 6f 72 2d 70 22 20 66 6e    20 69 73 5f 65 72 72 6f 72 20 2d 3e 20 62 6f 6f | node-error-p".fn.is_error.->.boo | 
| af80 | 6c 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72    6e 20 74 20 69 66 20 4e 4f 44 45 20 69 73 20 27 | l......///.Return.t.if.NODE.is.' | 
| afa0 | 6d 69 73 73 69 6e 67 27 2e 0a 20 20 20 20 2f 2f    2f 20 4d 69 73 73 69 6e 67 20 6e 6f 64 65 73 20 | missing'......///.Missing.nodes. | 
| afc0 | 61 72 65 20 69 6e 73 65 72 74 65 64 20 62 79 20    74 68 65 20 70 61 72 73 65 72 20 69 6e 20 6f 72 | are.inserted.by.the.parser.in.or | 
| afe0 | 64 65 72 20 74 6f 20 72 65 63 6f 76 65 72 20 66    72 6f 6d 20 63 65 72 74 61 69 6e 20 6b 69 6e 64 | der.to.recover.from.certain.kind | 
| b000 | 73 0a 20 20 20 20 2f 2f 2f 20 6f 66 20 73 79 6e    74 61 78 20 65 72 72 6f 72 73 2e 0a 20 20 20 20 | s.....///.of.syntax.errors...... | 
| b020 | 22 6e 6f 64 65 2d 6d 69 73 73 69 6e 67 2d 70 22    20 66 6e 20 69 73 5f 6d 69 73 73 69 6e 67 20 2d | "node-missing-p".fn.is_missing.- | 
| b040 | 3e 20 62 6f 6f 6c 0a 0a 20 20 20 20 2f 2f 2f 20    52 65 74 75 72 6e 20 74 20 69 66 20 4e 4f 44 45 | >.bool......///.Return.t.if.NODE | 
| b060 | 20 68 61 73 20 62 65 65 6e 20 65 64 69 74 65 64    2e 0a 20 20 20 20 22 6e 6f 64 65 2d 68 61 73 2d | .has.been.edited......"node-has- | 
| b080 | 63 68 61 6e 67 65 73 2d 70 22 20 66 6e 20 68 61    73 5f 63 68 61 6e 67 65 73 20 2d 3e 20 62 6f 6f | changes-p".fn.has_changes.->.boo | 
| b0a0 | 6c 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72    6e 20 74 20 69 66 20 4e 4f 44 45 20 72 65 70 72 | l......///.Return.t.if.NODE.repr | 
| b0c0 | 65 73 65 6e 74 73 20 61 20 73 79 6e 74 61 78 20    65 72 72 6f 72 20 6f 72 20 63 6f 6e 74 61 69 6e | esents.a.syntax.error.or.contain | 
| b0e0 | 73 20 61 6e 79 20 73 79 6e 74 61 78 20 65 72 72    6f 72 73 2e 0a 20 20 20 20 22 6e 6f 64 65 2d 68 | s.any.syntax.errors......"node-h | 
| b100 | 61 73 2d 65 72 72 6f 72 2d 70 22 20 66 6e 20 68    61 73 5f 65 72 72 6f 72 20 2d 3e 20 62 6f 6f 6c | as-error-p".fn.has_error.->.bool | 
| b120 | 0a 0a 20 20 20 20 2f 2f 20 50 6f 73 69 74 69 6f    6e 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ......//.Position.-------------- | 
| b140 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| b160 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| b180 | 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 2f 2f 2f 20    52 65 74 75 72 6e 20 4e 4f 44 45 27 73 20 73 74 | ------......///.Return.NODE's.st | 
| b1a0 | 61 72 74 20 62 79 74 65 20 70 6f 73 69 74 69 6f    6e 2e 0a 20 20 20 20 22 6e 6f 64 65 2d 73 74 61 | art.byte.position......"node-sta | 
| b1c0 | 72 74 2d 62 79 74 65 22 20 66 6e 20 73 74 61 72    74 5f 62 79 74 65 20 2d 3e 20 42 79 74 65 50 6f | rt-byte".fn.start_byte.->.BytePo | 
| b1e0 | 73 3b 20 69 6e 74 6f 0a 0a 20 20 20 20 2f 2f 2f    20 52 65 74 75 72 6e 20 4e 4f 44 45 27 73 20 73 | s;.into......///.Return.NODE's.s | 
| b200 | 74 61 72 74 20 70 6f 69 6e 74 2c 20 69 6e 20 74    68 65 20 66 6f 72 6d 20 6f 66 20 28 4c 49 4e 45 | tart.point,.in.the.form.of.(LINE | 
| b220 | 2d 4e 55 4d 42 45 52 20 2e 20 42 59 54 45 2d 43    4f 4c 55 4d 4e 29 2e 0a 20 20 20 20 22 6e 6f 64 | -NUMBER...BYTE-COLUMN)......"nod | 
| b240 | 65 2d 73 74 61 72 74 2d 70 6f 69 6e 74 22 20 66    6e 20 73 74 61 72 74 5f 70 6f 73 69 74 69 6f 6e | e-start-point".fn.start_position | 
| b260 | 20 2d 3e 20 50 6f 69 6e 74 3b 20 69 6e 74 6f 0a    0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 | .->.Point;.into......///.Return. | 
| b280 | 4e 4f 44 45 27 73 20 65 6e 64 20 62 79 74 65 20    70 6f 73 69 74 69 6f 6e 2e 0a 20 20 20 20 22 6e | NODE's.end.byte.position......"n | 
| b2a0 | 6f 64 65 2d 65 6e 64 2d 62 79 74 65 22 20 66 6e    20 65 6e 64 5f 62 79 74 65 20 2d 3e 20 42 79 74 | ode-end-byte".fn.end_byte.->.Byt | 
| b2c0 | 65 50 6f 73 3b 20 69 6e 74 6f 0a 0a 20 20 20 20    2f 2f 2f 20 52 65 74 75 72 6e 20 4e 4f 44 45 27 | ePos;.into......///.Return.NODE' | 
| b2e0 | 73 20 65 6e 64 20 70 6f 69 6e 74 2c 20 69 6e 20    74 68 65 20 66 6f 72 6d 20 6f 66 20 28 4c 49 4e | s.end.point,.in.the.form.of.(LIN | 
| b300 | 45 2d 4e 55 4d 42 45 52 20 2e 20 42 59 54 45 2d    43 4f 4c 55 4d 4e 29 2e 0a 20 20 20 20 22 6e 6f | E-NUMBER...BYTE-COLUMN)......"no | 
| b320 | 64 65 2d 65 6e 64 2d 70 6f 69 6e 74 22 20 66 6e    20 65 6e 64 5f 70 6f 73 69 74 69 6f 6e 20 2d 3e | de-end-point".fn.end_position.-> | 
| b340 | 20 50 6f 69 6e 74 3b 20 69 6e 74 6f 0a 0a 20 20    20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 61 20 76 | .Point;.into......///.Return.a.v | 
| b360 | 65 63 74 6f 72 20 6f 66 20 4e 4f 44 45 27 73 20    5b 53 54 41 52 54 2d 42 59 54 45 50 4f 53 20 45 | ector.of.NODE's.[START-BYTEPOS.E | 
| b380 | 4e 44 2d 42 59 54 45 50 4f 53 20 53 54 41 52 54    2d 50 4f 49 4e 54 20 45 4e 44 2d 50 4f 49 4e 54 | ND-BYTEPOS.START-POINT.END-POINT | 
| b3a0 | 5d 2e 0a 20 20 20 20 22 6e 6f 64 65 2d 72 61 6e    67 65 22 20 66 6e 20 72 61 6e 67 65 20 2d 3e 20 | ]......"node-range".fn.range.->. | 
| b3c0 | 52 61 6e 67 65 3b 20 69 6e 74 6f 0a 0a 20 20 20    20 2f 2f 20 43 6f 75 6e 74 69 6e 67 20 63 68 69 | Range;.into......//.Counting.chi | 
| b3e0 | 6c 64 20 6e 6f 64 65 73 20 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ld.nodes.----------------------- | 
| b400 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| b420 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 | -----------------......///.Retur | 
| b440 | 6e 20 4e 4f 44 45 27 73 20 6e 75 6d 62 65 72 20    6f 66 20 63 68 69 6c 64 72 65 6e 2e 0a 20 20 20 | n.NODE's.number.of.children..... | 
| b460 | 20 22 63 6f 75 6e 74 2d 63 68 69 6c 64 72 65 6e    22 20 66 6e 20 63 68 69 6c 64 5f 63 6f 75 6e 74 | ."count-children".fn.child_count | 
| b480 | 20 2d 3e 20 75 73 69 7a 65 0a 0a 20 20 20 20 2f    2f 2f 20 52 65 74 75 72 6e 20 4e 4f 44 45 27 73 | .->.usize......///.Return.NODE's | 
| b4a0 | 20 6e 75 6d 62 65 72 20 6f 66 20 6e 61 6d 65 64    20 63 68 69 6c 64 72 65 6e 2e 0a 20 20 20 20 22 | .number.of.named.children......" | 
| b4c0 | 63 6f 75 6e 74 2d 6e 61 6d 65 64 2d 63 68 69 6c    64 72 65 6e 22 20 66 6e 20 6e 61 6d 65 64 5f 63 | count-named-children".fn.named_c | 
| b4e0 | 68 69 6c 64 5f 63 6f 75 6e 74 20 2d 3e 20 75 73    69 7a 65 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 | hild_count.->.usize.}..///.Retur | 
| b500 | 6e 20 4e 4f 44 45 27 73 20 28 53 54 41 52 54 2d    42 59 54 45 50 4f 53 20 2e 20 45 4e 44 2d 42 59 | n.NODE's.(START-BYTEPOS...END-BY | 
| b520 | 54 45 50 4f 53 29 2e 0a 23 5b 64 65 66 75 6e 5d    0a 66 6e 20 6e 6f 64 65 5f 62 79 74 65 5f 72 61 | TEPOS)..#[defun].fn.node_byte_ra | 
| b540 | 6e 67 65 3c 27 65 3e 28 65 6e 76 3a 20 26 27 65    20 45 6e 76 2c 20 6e 6f 64 65 3a 20 26 52 4e 6f | nge<'e>(env:.&'e.Env,.node:.&RNo | 
| b560 | 64 65 29 20 2d 3e 20 52 65 73 75 6c 74 3c 56 61    6c 75 65 3c 27 65 3e 3e 20 7b 0a 20 20 20 20 6e | de).->.Result<Value<'e>>.{.....n | 
| b580 | 6f 64 65 2e 62 6f 72 72 6f 77 28 29 2e 6c 69 73    70 5f 62 79 74 65 5f 72 61 6e 67 65 28 65 6e 76 | ode.borrow().lisp_byte_range(env | 
| b5a0 | 29 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20    74 20 69 66 20 74 77 6f 20 6e 6f 64 65 73 20 61 | ).}..///.Return.t.if.two.nodes.a | 
| b5c0 | 72 65 20 69 64 65 6e 74 69 63 61 6c 2e 0a 23 5b    64 65 66 75 6e 5d 0a 66 6e 20 6e 6f 64 65 5f 65 | re.identical..#[defun].fn.node_e | 
| b5e0 | 71 28 6e 6f 64 65 31 3a 20 26 52 4e 6f 64 65 2c    20 6e 6f 64 65 32 3a 20 26 52 4e 6f 64 65 29 20 | q(node1:.&RNode,.node2:.&RNode). | 
| b600 | 2d 3e 20 52 65 73 75 6c 74 3c 62 6f 6f 6c 3e 20    7b 0a 20 20 20 20 4f 6b 28 6e 6f 64 65 31 20 3d | ->.Result<bool>.{.....Ok(node1.= | 
| b620 | 3d 20 6e 6f 64 65 32 29 0a 7d 0a 0a 2f 2f 2f 20    41 70 70 6c 79 20 46 55 4e 43 54 49 4f 4e 20 74 | =.node2).}..///.Apply.FUNCTION.t | 
| b640 | 6f 20 65 61 63 68 20 6f 66 20 4e 4f 44 45 27 73    20 63 68 69 6c 64 72 65 6e 2c 20 66 6f 72 20 73 | o.each.of.NODE's.children,.for.s | 
| b660 | 69 64 65 20 65 66 66 65 63 74 73 20 6f 6e 6c 79    2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 6d 61 | ide.effects.only..#[defun].fn.ma | 
| b680 | 70 63 5f 63 68 69 6c 64 72 65 6e 28 66 75 6e 63    74 69 6f 6e 3a 20 56 61 6c 75 65 2c 20 6e 6f 64 | pc_children(function:.Value,.nod | 
| b6a0 | 65 3a 20 26 52 4e 6f 64 65 29 20 2d 3e 20 52 65    73 75 6c 74 3c 28 29 3e 20 7b 0a 20 20 20 20 6c | e:.&RNode).->.Result<()>.{.....l | 
| b6c0 | 65 74 20 69 6e 6e 65 72 20 3d 20 6e 6f 64 65 2e    62 6f 72 72 6f 77 28 29 3b 0a 20 20 20 20 2f 2f | et.inner.=.node.borrow();.....// | 
| b6e0 | 20 54 4f 44 4f 3a 20 52 65 75 73 65 20 63 75 72    73 6f 72 2e 0a 20 20 20 20 6c 65 74 20 63 75 72 | .TODO:.Reuse.cursor......let.cur | 
| b700 | 73 6f 72 20 3d 20 26 6d 75 74 20 69 6e 6e 65 72    2e 77 61 6c 6b 28 29 3b 0a 20 20 20 20 66 6f 72 | sor.=.&mut.inner.walk();.....for | 
| b720 | 20 63 68 69 6c 64 20 69 6e 20 69 6e 6e 65 72 2e    63 68 69 6c 64 72 65 6e 28 63 75 72 73 6f 72 29 | .child.in.inner.children(cursor) | 
| b740 | 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 63    68 69 6c 64 20 3d 20 6e 6f 64 65 2e 6d 61 70 28 | .{.........let.child.=.node.map( | 
| b760 | 7c 5f 7c 20 63 68 69 6c 64 29 3b 0a 20 20 20 20    20 20 20 20 66 75 6e 63 74 69 6f 6e 2e 63 61 6c | |_|.child);.........function.cal | 
| b780 | 6c 28 28 63 68 69 6c 64 2c 29 29 3f 3b 0a 20 20    20 20 7d 0a 20 20 20 20 4f 6b 28 28 29 29 0a 7d | l((child,))?;.....}.....Ok(()).} | 
| b7a0 | 0a 0a 2f 2f 20 54 4f 44 4f 3a 20 6e 61 6d 65 64    5f 63 68 69 6c 64 72 65 6e 2e 0a 2f 2f 20 54 4f | ..//.TODO:.named_children..//.TO | 
| b7c0 | 44 4f 3a 20 63 68 69 6c 64 72 65 6e 5f 62 79 5f    66 69 65 6c 64 5f 6e 61 6d 65 2e 0a 2f 2f 20 54 | DO:.children_by_field_name..//.T | 
| b7e0 | 4f 44 4f 3a 20 63 68 69 6c 64 72 65 6e 5f 62 79    5f 66 69 65 6c 64 5f 69 64 2e 0a 0a 64 65 66 75 | ODO:.children_by_field_id...defu | 
| b800 | 6e 5f 6e 6f 64 65 5f 6e 61 76 73 21 20 7b 0a 20    20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 4e 4f | n_node_navs!.{.....///.Return.NO | 
| b820 | 44 45 27 73 20 70 61 72 65 6e 74 20 6e 6f 64 65    2e 0a 20 20 20 20 22 67 65 74 2d 70 61 72 65 6e | DE's.parent.node......"get-paren | 
| b840 | 74 22 20 66 6e 20 70 61 72 65 6e 74 0a 0a 20 20    20 20 2f 2f 20 43 68 69 6c 64 20 2d 2d 2d 2d 2d | t".fn.parent......//.Child.----- | 
| b860 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| b880 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| b8a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 | ------------------......///.Retu | 
| b8c0 | 72 6e 20 4e 4f 44 45 27 73 20 63 68 69 6c 64 20    61 74 20 74 68 65 20 67 69 76 65 6e 20 30 2d 62 | rn.NODE's.child.at.the.given.0-b | 
| b8e0 | 61 73 65 64 20 69 6e 64 65 78 2e 0a 20 20 20 20    22 67 65 74 2d 6e 74 68 2d 63 68 69 6c 64 22 20 | ased.index......"get-nth-child". | 
| b900 | 66 6e 20 63 68 69 6c 64 28 69 3a 20 75 73 69 7a    65 29 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 | fn.child(i:.usize)......///.Retu | 
| b920 | 72 6e 20 4e 4f 44 45 27 73 20 6e 61 6d 65 64 20    63 68 69 6c 64 20 61 74 20 74 68 65 20 67 69 76 | rn.NODE's.named.child.at.the.giv | 
| b940 | 65 6e 20 30 2d 62 61 73 65 64 20 69 6e 64 65 78    2e 0a 20 20 20 20 22 67 65 74 2d 6e 74 68 2d 6e | en.0-based.index......"get-nth-n | 
| b960 | 61 6d 65 64 2d 63 68 69 6c 64 22 20 66 6e 20 6e    61 6d 65 64 5f 63 68 69 6c 64 28 69 3a 20 75 73 | amed-child".fn.named_child(i:.us | 
| b980 | 69 7a 65 29 0a 0a 20 20 20 20 2f 2f 2f 20 52 65    74 75 72 6e 20 4e 4f 44 45 27 73 20 63 68 69 6c | ize)......///.Return.NODE's.chil | 
| b9a0 | 64 20 77 69 74 68 20 74 68 65 20 67 69 76 65 6e    20 46 49 45 4c 44 2d 4e 41 4d 45 20 73 74 72 69 | d.with.the.given.FIELD-NAME.stri | 
| b9c0 | 6e 67 2e 0a 20 20 20 20 22 2d 67 65 74 2d 63 68    69 6c 64 2d 62 79 2d 66 69 65 6c 64 2d 6e 61 6d | ng......"-get-child-by-field-nam | 
| b9e0 | 65 22 20 66 6e 20 63 68 69 6c 64 5f 62 79 5f 66    69 65 6c 64 5f 6e 61 6d 65 28 66 69 65 6c 64 5f | e".fn.child_by_field_name(field_ | 
| ba00 | 6e 61 6d 65 3a 20 53 74 72 69 6e 67 29 0a 0a 20    20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 4e 4f | name:.String)......///.Return.NO | 
| ba20 | 44 45 27 73 20 63 68 69 6c 64 20 77 69 74 68 20    74 68 65 20 67 69 76 65 6e 20 6e 75 6d 65 72 69 | DE's.child.with.the.given.numeri | 
| ba40 | 63 61 6c 20 46 49 45 4c 44 2d 49 44 2e 0a 20 20    20 20 22 67 65 74 2d 63 68 69 6c 64 2d 62 79 2d | cal.FIELD-ID......"get-child-by- | 
| ba60 | 66 69 65 6c 64 2d 69 64 22 20 66 6e 20 63 68 69    6c 64 5f 62 79 5f 66 69 65 6c 64 5f 69 64 28 66 | field-id".fn.child_by_field_id(f | 
| ba80 | 69 65 6c 64 5f 69 64 3a 20 75 31 36 29 0a 0a 20    20 20 20 2f 2f 20 53 69 62 6c 69 6e 67 20 2d 2d | ield_id:.u16)......//.Sibling.-- | 
| baa0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| bac0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| bae0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 | -------------------......///.Ret | 
| bb00 | 75 72 6e 20 4e 4f 44 45 27 73 20 6e 65 78 74 20    73 69 62 6c 69 6e 67 2e 0a 20 20 20 20 22 67 65 | urn.NODE's.next.sibling......"ge | 
| bb20 | 74 2d 6e 65 78 74 2d 73 69 62 6c 69 6e 67 22 20    66 6e 20 6e 65 78 74 5f 73 69 62 6c 69 6e 67 0a | t-next-sibling".fn.next_sibling. | 
| bb40 | 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20    4e 4f 44 45 27 73 20 70 72 65 76 69 6f 75 73 20 | .....///.Return.NODE's.previous. | 
| bb60 | 73 69 62 6c 69 6e 67 2e 0a 20 20 20 20 22 67 65    74 2d 70 72 65 76 2d 73 69 62 6c 69 6e 67 22 20 | sibling......"get-prev-sibling". | 
| bb80 | 66 6e 20 70 72 65 76 5f 73 69 62 6c 69 6e 67 0a    0a 20 20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 | fn.prev_sibling......///.Return. | 
| bba0 | 4e 4f 44 45 27 73 20 6e 65 78 74 20 6e 61 6d 65    64 20 73 69 62 6c 69 6e 67 2e 0a 20 20 20 20 22 | NODE's.next.named.sibling......" | 
| bbc0 | 67 65 74 2d 6e 65 78 74 2d 6e 61 6d 65 64 2d 73    69 62 6c 69 6e 67 22 20 66 6e 20 6e 65 78 74 5f | get-next-named-sibling".fn.next_ | 
| bbe0 | 6e 61 6d 65 64 5f 73 69 62 6c 69 6e 67 0a 0a 20    20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 4e 4f | named_sibling......///.Return.NO | 
| bc00 | 44 45 27 73 20 70 72 65 76 69 6f 75 73 20 6e 61    6d 65 64 20 73 69 62 6c 69 6e 67 2e 0a 20 20 20 | DE's.previous.named.sibling..... | 
| bc20 | 20 22 67 65 74 2d 70 72 65 76 2d 6e 61 6d 65 64    2d 73 69 62 6c 69 6e 67 22 20 66 6e 20 70 72 65 | ."get-prev-named-sibling".fn.pre | 
| bc40 | 76 5f 6e 61 6d 65 64 5f 73 69 62 6c 69 6e 67 0a    0a 20 20 20 20 2f 2f 20 44 65 73 63 65 6e 64 61 | v_named_sibling......//.Descenda | 
| bc60 | 6e 74 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | nt.----------------------------- | 
| bc80 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| bca0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 0a 0a 20 20 20 20 2f 2f 2f 20 52 | ---------------------......///.R | 
| bcc0 | 65 74 75 72 6e 20 74 68 65 20 73 6d 61 6c 6c 65    73 74 20 6e 6f 64 65 20 77 69 74 68 69 6e 20 4e | eturn.the.smallest.node.within.N | 
| bce0 | 4f 44 45 20 74 68 61 74 20 73 70 61 6e 73 20 74    68 65 20 67 69 76 65 6e 20 72 61 6e 67 65 20 6f | ODE.that.spans.the.given.range.o | 
| bd00 | 66 20 62 79 74 65 0a 20 20 20 20 2f 2f 2f 20 70    6f 73 69 74 69 6f 6e 73 2e 0a 20 20 20 20 22 67 | f.byte.....///.positions......"g | 
| bd20 | 65 74 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f    72 2d 62 79 74 65 2d 72 61 6e 67 65 22 20 66 6e | et-descendant-for-byte-range".fn | 
| bd40 | 20 64 65 73 63 65 6e 64 61 6e 74 5f 66 6f 72 5f    62 79 74 65 5f 72 61 6e 67 65 28 73 74 61 72 74 | .descendant_for_byte_range(start | 
| bd60 | 20 69 6e 74 6f 3a 20 42 79 74 65 50 6f 73 2c 20    65 6e 64 20 69 6e 74 6f 3a 20 42 79 74 65 50 6f | .into:.BytePos,.end.into:.BytePo | 
| bd80 | 73 29 0a 0a 20 20 20 20 2f 2f 2f 20 52 65 74 75    72 6e 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 | s)......///.Return.the.smallest. | 
| bda0 | 6e 6f 64 65 20 77 69 74 68 69 6e 20 4e 4f 44 45    20 74 68 61 74 20 73 70 61 6e 73 20 74 68 65 20 | node.within.NODE.that.spans.the. | 
| bdc0 | 67 69 76 65 6e 20 70 6f 69 6e 74 20 72 61 6e 67    65 2e 0a 20 20 20 20 22 67 65 74 2d 64 65 73 63 | given.point.range......"get-desc | 
| bde0 | 65 6e 64 61 6e 74 2d 66 6f 72 2d 70 6f 69 6e 74    2d 72 61 6e 67 65 22 20 66 6e 20 64 65 73 63 65 | endant-for-point-range".fn.desce | 
| be00 | 6e 64 61 6e 74 5f 66 6f 72 5f 70 6f 69 6e 74 5f    72 61 6e 67 65 28 73 74 61 72 74 20 69 6e 74 6f | ndant_for_point_range(start.into | 
| be20 | 3a 20 50 6f 69 6e 74 2c 20 65 6e 64 20 69 6e 74    6f 3a 20 50 6f 69 6e 74 29 0a 0a 20 20 20 20 2f | :.Point,.end.into:.Point)....../ | 
| be40 | 2f 2f 20 52 65 74 75 72 6e 20 74 68 65 20 73 6d    61 6c 6c 65 73 74 20 6e 61 6d 65 64 20 6e 6f 64 | //.Return.the.smallest.named.nod | 
| be60 | 65 20 77 69 74 68 69 6e 20 4e 4f 44 45 20 74 68    61 74 20 73 70 61 6e 73 20 74 68 65 20 67 69 76 | e.within.NODE.that.spans.the.giv | 
| be80 | 65 6e 20 72 61 6e 67 65 20 6f 66 20 62 79 74 65    0a 20 20 20 20 2f 2f 2f 20 70 6f 73 69 74 69 6f | en.range.of.byte.....///.positio | 
| bea0 | 6e 73 2e 0a 20 20 20 20 22 67 65 74 2d 6e 61 6d    65 64 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f | ns......"get-named-descendant-fo | 
| bec0 | 72 2d 62 79 74 65 2d 72 61 6e 67 65 22 20 66 6e    20 6e 61 6d 65 64 5f 64 65 73 63 65 6e 64 61 6e | r-byte-range".fn.named_descendan | 
| bee0 | 74 5f 66 6f 72 5f 62 79 74 65 5f 72 61 6e 67 65    28 73 74 61 72 74 20 69 6e 74 6f 3a 20 42 79 74 | t_for_byte_range(start.into:.Byt | 
| bf00 | 65 50 6f 73 2c 20 65 6e 64 20 69 6e 74 6f 3a 20    42 79 74 65 50 6f 73 29 0a 0a 20 20 20 20 2f 2f | ePos,.end.into:.BytePos)......// | 
| bf20 | 2f 20 52 65 74 75 72 6e 20 74 68 65 20 73 6d 61    6c 6c 65 73 74 20 6e 61 6d 65 64 20 6e 6f 64 65 | /.Return.the.smallest.named.node | 
| bf40 | 20 77 69 74 68 69 6e 20 4e 4f 44 45 20 74 68 61    74 20 73 70 61 6e 73 20 74 68 65 20 67 69 76 65 | .within.NODE.that.spans.the.give | 
| bf60 | 6e 20 70 6f 69 6e 74 20 72 61 6e 67 65 2e 0a 20    20 20 20 22 67 65 74 2d 6e 61 6d 65 64 2d 64 65 | n.point.range......"get-named-de | 
| bf80 | 73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d 70 6f 69    6e 74 2d 72 61 6e 67 65 22 20 66 6e 20 6e 61 6d | scendant-for-point-range".fn.nam | 
| bfa0 | 65 64 5f 64 65 73 63 65 6e 64 61 6e 74 5f 66 6f    72 5f 70 6f 69 6e 74 5f 72 61 6e 67 65 28 73 74 | ed_descendant_for_point_range(st | 
| bfc0 | 61 72 74 20 69 6e 74 6f 3a 20 50 6f 69 6e 74 2c    20 65 6e 64 20 69 6e 74 6f 3a 20 50 6f 69 6e 74 | art.into:.Point,.end.into:.Point | 
| bfe0 | 29 0a 7d 0a 0a 64 65 66 75 6e 5f 6e 6f 64 65 5f    70 72 6f 70 73 21 20 7b 0a 20 20 20 20 2f 2f 2f | ).}..defun_node_props!.{...../// | 
| c000 | 20 52 65 74 75 72 6e 20 74 68 65 20 73 65 78 70    20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 | .Return.the.sexp.representation. | 
| c020 | 6f 66 20 4e 4f 44 45 2c 20 69 6e 20 61 20 73 74    72 69 6e 67 2e 0a 20 20 20 20 22 6e 6f 64 65 2d | of.NODE,.in.a.string......"node- | 
| c040 | 74 6f 2d 73 65 78 70 22 20 66 6e 20 74 6f 5f 73    65 78 70 20 2d 3e 20 53 74 72 69 6e 67 0a 7d 0a | to-sexp".fn.to_sexp.->.String.}. | 
| c060 | 0a 2f 2f 2f 20 45 64 69 74 20 4e 4f 44 45 20 74    6f 20 6b 65 65 70 20 69 74 20 69 6e 20 73 79 6e | .///.Edit.NODE.to.keep.it.in.syn | 
| c080 | 63 20 77 69 74 68 20 73 6f 75 72 63 65 20 63 6f    64 65 20 74 68 61 74 20 68 61 73 20 62 65 65 6e | c.with.source.code.that.has.been | 
| c0a0 | 20 65 64 69 74 65 64 2e 0a 2f 2f 2f 0a 2f 2f 2f    20 59 6f 75 20 6d 75 73 74 20 64 65 73 63 72 69 | .edited..///.///.You.must.descri | 
| c0c0 | 62 65 20 74 68 65 20 65 64 69 74 20 62 6f 74 68    20 69 6e 20 74 65 72 6d 73 20 6f 66 20 62 79 74 | be.the.edit.both.in.terms.of.byt | 
| c0e0 | 65 20 70 6f 73 69 74 69 6f 6e 73 20 61 6e 64 20    69 6e 20 74 65 72 6d 73 20 6f 66 0a 2f 2f 2f 20 | e.positions.and.in.terms.of.///. | 
| c100 | 28 4c 49 4e 45 2d 4e 55 4d 42 45 52 20 2e 20 42    59 54 45 2d 43 4f 4c 55 4d 4e 29 20 63 6f 6f 72 | (LINE-NUMBER...BYTE-COLUMN).coor | 
| c120 | 64 69 6e 61 74 65 73 2e 0a 2f 2f 2f 0a 2f 2f 2f    20 4c 49 4e 45 2d 4e 55 4d 42 45 52 20 73 68 6f | dinates..///.///.LINE-NUMBER.sho | 
| c140 | 75 6c 64 20 62 65 20 74 68 65 20 6e 75 6d 62 65    72 20 72 65 74 75 72 6e 65 64 20 62 79 20 60 6c | uld.be.the.number.returned.by.`l | 
| c160 | 69 6e 65 2d 6e 75 6d 62 65 72 2d 61 74 2d 70 6f    73 27 2c 20 77 68 69 63 68 20 63 6f 75 6e 74 73 | ine-number-at-pos',.which.counts | 
| c180 | 0a 2f 2f 2f 20 66 72 6f 6d 20 31 2e 0a 2f 2f 2f    0a 2f 2f 2f 20 42 59 54 45 2d 43 4f 4c 55 4d 4e | .///.from.1..///.///.BYTE-COLUMN | 
| c1a0 | 20 73 68 6f 75 6c 64 20 63 6f 75 6e 74 20 66 72    6f 6d 20 30 2c 20 6c 69 6b 65 20 45 6d 61 63 73 | .should.count.from.0,.like.Emacs | 
| c1c0 | 27 73 20 60 63 75 72 72 65 6e 74 2d 63 6f 6c 75    6d 6e 27 2e 20 48 6f 77 65 76 65 72 2c 20 75 6e | 's.`current-column'..However,.un | 
| c1e0 | 6c 69 6b 65 0a 2f 2f 2f 20 74 68 61 74 20 66 75    6e 63 74 69 6f 6e 2c 20 69 74 20 73 68 6f 75 6c | like.///.that.function,.it.shoul | 
| c200 | 64 20 63 6f 75 6e 74 20 62 79 74 65 73 2c 20 69    6e 73 74 65 61 64 20 6f 66 20 64 69 73 70 6c 61 | d.count.bytes,.instead.of.displa | 
| c220 | 79 65 64 20 67 6c 79 70 68 73 2e 0a 2f 2f 2f 0a    2f 2f 2f 20 54 68 69 73 20 66 75 6e 63 74 69 6f | yed.glyphs..///.///.This.functio | 
| c240 | 6e 20 69 73 20 6f 6e 6c 79 20 72 61 72 65 6c 79    20 6e 65 65 64 65 64 2e 20 57 68 65 6e 20 79 6f | n.is.only.rarely.needed..When.yo | 
| c260 | 75 20 65 64 69 74 20 61 20 73 79 6e 74 61 78 20    74 72 65 65 2c 20 61 6c 6c 20 6f 66 20 74 68 65 | u.edit.a.syntax.tree,.all.of.the | 
| c280 | 0a 2f 2f 2f 20 6e 6f 64 65 73 20 74 68 61 74 20    79 6f 75 20 72 65 74 72 69 65 76 65 20 66 72 6f | .///.nodes.that.you.retrieve.fro | 
| c2a0 | 6d 20 74 68 65 20 74 72 65 65 20 61 66 74 65 72    77 61 72 64 20 77 69 6c 6c 20 61 6c 72 65 61 64 | m.the.tree.afterward.will.alread | 
| c2c0 | 79 20 72 65 66 6c 65 63 74 20 74 68 65 20 65 64    69 74 2e 0a 2f 2f 2f 20 59 6f 75 20 6f 6e 6c 79 | y.reflect.the.edit..///.You.only | 
| c2e0 | 20 6e 65 65 64 20 74 6f 20 75 73 65 20 74 68 69    73 20 66 75 6e 63 74 69 6f 6e 20 77 68 65 6e 20 | .need.to.use.this.function.when. | 
| c300 | 79 6f 75 20 68 61 76 65 20 61 20 6e 6f 64 65 20    74 68 61 74 20 79 6f 75 20 77 61 6e 74 20 74 6f | you.have.a.node.that.you.want.to | 
| c320 | 20 6b 65 65 70 0a 2f 2f 2f 20 61 6e 64 20 63 6f    6e 74 69 6e 75 65 20 74 6f 20 75 73 65 20 61 66 | .keep.///.and.continue.to.use.af | 
| c340 | 74 65 72 20 61 6e 20 65 64 69 74 2e 0a 23 5b 64    65 66 75 6e 5d 0a 66 6e 20 65 64 69 74 5f 6e 6f | ter.an.edit..#[defun].fn.edit_no | 
| c360 | 64 65 28 0a 20 20 20 20 6e 6f 64 65 3a 20 26 6d    75 74 20 52 4e 6f 64 65 2c 0a 20 20 20 20 73 74 | de(.....node:.&mut.RNode,.....st | 
| c380 | 61 72 74 5f 62 79 74 65 70 6f 73 3a 20 42 79 74    65 50 6f 73 2c 0a 20 20 20 20 6f 6c 64 5f 65 6e | art_bytepos:.BytePos,.....old_en | 
| c3a0 | 64 5f 62 79 74 65 70 6f 73 3a 20 42 79 74 65 50    6f 73 2c 0a 20 20 20 20 6e 65 77 5f 65 6e 64 5f | d_bytepos:.BytePos,.....new_end_ | 
| c3c0 | 62 79 74 65 70 6f 73 3a 20 42 79 74 65 50 6f 73    2c 0a 20 20 20 20 73 74 61 72 74 5f 70 6f 69 6e | bytepos:.BytePos,.....start_poin | 
| c3e0 | 74 3a 20 50 6f 69 6e 74 2c 0a 20 20 20 20 6f 6c    64 5f 65 6e 64 5f 70 6f 69 6e 74 3a 20 50 6f 69 | t:.Point,.....old_end_point:.Poi | 
| c400 | 6e 74 2c 0a 20 20 20 20 6e 65 77 5f 65 6e 64 5f    70 6f 69 6e 74 3a 20 50 6f 69 6e 74 2c 0a 29 20 | nt,.....new_end_point:.Point,.). | 
| c420 | 2d 3e 20 52 65 73 75 6c 74 3c 28 29 3e 20 7b 0a    20 20 20 20 6c 65 74 20 65 64 69 74 20 3d 20 49 | ->.Result<()>.{.....let.edit.=.I | 
| c440 | 6e 70 75 74 45 64 69 74 20 7b 0a 20 20 20 20 20    20 20 20 73 74 61 72 74 5f 62 79 74 65 3a 20 73 | nputEdit.{.........start_byte:.s | 
| c460 | 74 61 72 74 5f 62 79 74 65 70 6f 73 2e 69 6e 74    6f 28 29 2c 0a 20 20 20 20 20 20 20 20 6f 6c 64 | tart_bytepos.into(),.........old | 
| c480 | 5f 65 6e 64 5f 62 79 74 65 3a 20 6f 6c 64 5f 65    6e 64 5f 62 79 74 65 70 6f 73 2e 69 6e 74 6f 28 | _end_byte:.old_end_bytepos.into( | 
| c4a0 | 29 2c 0a 20 20 20 20 20 20 20 20 6e 65 77 5f 65    6e 64 5f 62 79 74 65 3a 20 6e 65 77 5f 65 6e 64 | ),.........new_end_byte:.new_end | 
| c4c0 | 5f 62 79 74 65 70 6f 73 2e 69 6e 74 6f 28 29 2c    0a 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 70 | _bytepos.into(),.........start_p | 
| c4e0 | 6f 73 69 74 69 6f 6e 3a 20 73 74 61 72 74 5f 70    6f 69 6e 74 2e 69 6e 74 6f 28 29 2c 0a 20 20 20 | osition:.start_point.into(),.... | 
| c500 | 20 20 20 20 20 6f 6c 64 5f 65 6e 64 5f 70 6f 73    69 74 69 6f 6e 3a 20 6f 6c 64 5f 65 6e 64 5f 70 | .....old_end_position:.old_end_p | 
| c520 | 6f 69 6e 74 2e 69 6e 74 6f 28 29 2c 0a 20 20 20    20 20 20 20 20 6e 65 77 5f 65 6e 64 5f 70 6f 73 | oint.into(),.........new_end_pos | 
| c540 | 69 74 69 6f 6e 3a 20 6e 65 77 5f 65 6e 64 5f 70    6f 69 6e 74 2e 69 6e 74 6f 28 29 2c 0a 20 20 20 | ition:.new_end_point.into(),.... | 
| c560 | 20 7d 3b 0a 20 20 20 20 6e 6f 64 65 2e 62 6f 72    72 6f 77 5f 6d 75 74 28 29 2e 65 64 69 74 28 26 | .};.....node.borrow_mut().edit(& | 
| c580 | 65 64 69 74 29 3b 0a 20 20 20 20 4f 6b 28 28 29    29 0a 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 | edit);.....Ok(()).}............. | 
| c5a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c5c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c5e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c600 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 70 61 72 73 65 72 2e 72 73 00 | tsc-20220212.1632/src/parser.rs. | 
| c620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c660 | 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 | 
| c680 | 30 30 31 32 35 36 35 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 32 33 32 00 20 30 00 00 00 | 0012565.00000000000.014232..0... | 
| c6a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c6c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c6e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c700 | 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................... | 
| c720 | 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................... | 
| c740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c7a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c7c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c7e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| c800 | 75 73 65 20 73 74 64 3a 3a 7b 63 65 6c 6c 3a 3a    52 65 66 43 65 6c 6c 2c 20 72 63 3a 3a 52 63 7d | use.std::{cell::RefCell,.rc::Rc} | 
| c820 | 3b 0a 0a 75 73 65 20 65 6d 61 63 73 3a 3a 7b 64    65 66 75 6e 2c 20 52 65 73 75 6c 74 2c 20 56 61 | ;..use.emacs::{defun,.Result,.Va | 
| c840 | 6c 75 65 2c 20 56 65 63 74 6f 72 2c 20 45 6e 76    2c 20 52 65 73 75 6c 74 45 78 74 7d 3b 0a 75 73 | lue,.Vector,.Env,.ResultExt};.us | 
| c860 | 65 20 74 72 65 65 5f 73 69 74 74 65 72 3a 3a 7b    50 61 72 73 65 72 2c 20 54 72 65 65 7d 3b 0a 0a | e.tree_sitter::{Parser,.Tree};.. | 
| c880 | 75 73 65 20 63 72 61 74 65 3a 3a 7b 0a 20 20 20    20 74 79 70 65 73 3a 3a 7b 42 79 74 65 50 6f 73 | use.crate::{.....types::{BytePos | 
| c8a0 | 2c 20 50 6f 69 6e 74 2c 20 52 61 6e 67 65 2c 20    53 68 61 72 65 64 7d 2c 0a 20 20 20 20 6c 61 6e | ,.Point,.Range,.Shared},.....lan | 
| c8c0 | 67 3a 3a 4c 61 6e 67 75 61 67 65 2c 0a 20 20 20    20 65 72 72 6f 72 2c 0a 7d 3b 0a 0a 66 6e 20 73 | g::Language,.....error,.};..fn.s | 
| c8e0 | 68 61 72 65 64 3c 54 3e 28 74 3a 20 54 29 20 2d    3e 20 53 68 61 72 65 64 3c 54 3e 20 7b 0a 20 20 | hared<T>(t:.T).->.Shared<T>.{... | 
| c900 | 20 20 52 63 3a 3a 6e 65 77 28 52 65 66 43 65 6c    6c 3a 3a 6e 65 77 28 74 29 29 0a 7d 0a 0a 69 6d | ..Rc::new(RefCell::new(t)).}..im | 
| c920 | 70 6c 5f 70 72 65 64 21 28 70 61 72 73 65 72 5f    70 2c 20 26 52 65 66 43 65 6c 6c 3c 50 61 72 73 | pl_pred!(parser_p,.&RefCell<Pars | 
| c940 | 65 72 3e 29 3b 0a 0a 2f 2f 2f 20 43 72 65 61 74    65 20 61 20 6e 65 77 20 70 61 72 73 65 72 2e 0a | er>);..///.Create.a.new.parser.. | 
| c960 | 23 5b 64 65 66 75 6e 28 75 73 65 72 5f 70 74 72    29 5d 0a 66 6e 20 6d 61 6b 65 5f 70 61 72 73 65 | #[defun(user_ptr)].fn.make_parse | 
| c980 | 72 28 29 20 2d 3e 20 52 65 73 75 6c 74 3c 50 61    72 73 65 72 3e 20 7b 0a 20 20 20 20 4f 6b 28 50 | r().->.Result<Parser>.{.....Ok(P | 
| c9a0 | 61 72 73 65 72 3a 3a 6e 65 77 28 29 29 0a 7d 0a    0a 2f 2f 2f 20 53 65 74 20 74 68 65 20 4c 41 4e | arser::new()).}..///.Set.the.LAN | 
| c9c0 | 47 55 41 47 45 20 74 68 61 74 20 50 41 52 53 45    52 20 73 68 6f 75 6c 64 20 75 73 65 20 66 6f 72 | GUAGE.that.PARSER.should.use.for | 
| c9e0 | 20 70 61 72 73 69 6e 67 2e 0a 2f 2f 2f 0a 2f 2f    2f 20 54 68 69 73 20 6d 61 79 20 66 61 69 6c 20 | .parsing..///.///.This.may.fail. | 
| ca00 | 69 66 20 74 68 65 72 65 20 77 61 73 20 61 20 76    65 72 73 69 6f 6e 20 6d 69 73 6d 61 74 63 68 3a | if.there.was.a.version.mismatch: | 
| ca20 | 20 74 68 65 20 6c 6f 61 64 65 64 20 4c 41 4e 47    55 41 47 45 20 77 61 73 20 67 65 6e 65 72 61 74 | .the.loaded.LANGUAGE.was.generat | 
| ca40 | 65 64 0a 2f 2f 2f 20 77 69 74 68 20 61 6e 20 69    6e 63 6f 6d 70 61 74 69 62 6c 65 20 76 65 72 73 | ed.///.with.an.incompatible.vers | 
| ca60 | 69 6f 6e 20 6f 66 20 74 72 65 65 2d 73 69 74 74    65 72 2d 63 6c 69 2e 0a 23 5b 64 65 66 75 6e 5d | ion.of.tree-sitter-cli..#[defun] | 
| ca80 | 0a 66 6e 20 73 65 74 5f 6c 61 6e 67 75 61 67 65    28 70 61 72 73 65 72 3a 20 26 6d 75 74 20 50 61 | .fn.set_language(parser:.&mut.Pa | 
| caa0 | 72 73 65 72 2c 20 6c 61 6e 67 75 61 67 65 3a 20    4c 61 6e 67 75 61 67 65 2c 20 65 6e 76 3a 20 26 | rser,.language:.Language,.env:.& | 
| cac0 | 45 6e 76 29 20 2d 3e 20 52 65 73 75 6c 74 3c 28    29 3e 20 7b 0a 20 20 20 20 70 61 72 73 65 72 2e | Env).->.Result<()>.{.....parser. | 
| cae0 | 73 65 74 5f 6c 61 6e 67 75 61 67 65 28 6c 61 6e    67 75 61 67 65 2e 69 6e 74 6f 28 29 29 2e 6f 72 | set_language(language.into()).or | 
| cb00 | 5f 73 69 67 6e 61 6c 28 65 6e 76 2c 20 65 72 72    6f 72 3a 3a 74 73 63 5f 6c 61 6e 67 5f 61 62 69 | _signal(env,.error::tsc_lang_abi | 
| cb20 | 5f 65 72 72 6f 72 29 0a 7d 0a 0a 2f 2f 2f 20 52    65 74 75 72 6e 20 50 41 52 53 45 52 27 73 20 63 | _error).}..///.Return.PARSER's.c | 
| cb40 | 75 72 72 65 6e 74 20 6c 61 6e 67 75 61 67 65 2e    0a 23 5b 64 65 66 75 6e 28 6d 6f 64 5f 69 6e 5f | urrent.language..#[defun(mod_in_ | 
| cb60 | 6e 61 6d 65 20 3d 20 74 72 75 65 29 5d 0a 66 6e    20 6c 61 6e 67 75 61 67 65 28 70 61 72 73 65 72 | name.=.true)].fn.language(parser | 
| cb80 | 3a 20 26 50 61 72 73 65 72 29 20 2d 3e 20 52 65    73 75 6c 74 3c 4f 70 74 69 6f 6e 3c 4c 61 6e 67 | :.&Parser).->.Result<Option<Lang | 
| cba0 | 75 61 67 65 3e 3e 20 7b 0a 20 20 20 20 4f 6b 28    70 61 72 73 65 72 2e 6c 61 6e 67 75 61 67 65 28 | uage>>.{.....Ok(parser.language( | 
| cbc0 | 29 2e 6d 61 70 28 7c 6c 7c 20 6c 2e 69 6e 74 6f    28 29 29 29 0a 7d 0a 0a 2f 2f 20 54 4f 44 4f 3a | ).map(|l|.l.into())).}..//.TODO: | 
| cbe0 | 20 41 64 64 20 61 20 76 65 72 73 69 6f 6e 20 74    68 61 74 20 72 65 75 73 65 73 20 61 20 73 69 6e | .Add.a.version.that.reuses.a.sin | 
| cc00 | 67 6c 65 20 62 79 74 65 20 62 75 66 66 65 72 20    74 6f 20 61 76 6f 69 64 20 6d 75 6c 74 69 70 6c | gle.byte.buffer.to.avoid.multipl | 
| cc20 | 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 2e 20 41    6c 73 6f 20 61 6c 6c 6f 77 0a 2f 2f 20 60 70 61 | e.allocations..Also.allow.//.`pa | 
| cc40 | 72 73 65 60 20 74 6f 20 70 61 73 73 20 61 20 73    6f 66 74 20 73 69 7a 65 20 6c 69 6d 69 74 20 74 | rse`.to.pass.a.soft.size.limit.t | 
| cc60 | 6f 20 74 68 65 20 69 6e 70 75 74 20 66 75 6e 63    74 69 6f 6e 2e 0a 0a 2f 2f 20 54 4f 44 4f 3a 20 | o.the.input.function...//.TODO:. | 
| cc80 | 41 64 64 20 70 61 72 73 65 5f 62 75 66 66 65 72    2e 0a 0a 2f 2f 2f 20 50 61 72 73 65 20 73 6f 75 | Add.parse_buffer...///.Parse.sou | 
| cca0 | 72 63 65 20 63 6f 64 65 20 63 68 75 6e 6b 73 20    67 65 6e 65 72 61 74 65 64 20 62 79 20 49 4e 50 | rce.code.chunks.generated.by.INP | 
| ccc0 | 55 54 2d 46 55 4e 43 54 49 4f 4e 20 77 69 74 68    20 50 41 52 53 45 52 3b 20 72 65 74 75 72 6e 20 | UT-FUNCTION.with.PARSER;.return. | 
| cce0 | 61 20 74 72 65 65 2e 0a 2f 2f 2f 0a 2f 2f 2f 20    49 4e 50 55 54 2d 46 55 4e 43 54 49 4f 4e 20 73 | a.tree..///.///.INPUT-FUNCTION.s | 
| cd00 | 68 6f 75 6c 64 20 74 61 6b 65 20 33 20 70 61 72    61 6d 65 74 65 72 73 3a 20 28 42 59 54 45 50 4f | hould.take.3.parameters:.(BYTEPO | 
| cd20 | 53 20 4c 49 4e 45 2d 4e 55 4d 42 45 52 20 42 59    54 45 2d 43 4f 4c 55 4d 4e 29 2c 20 61 6e 64 0a | S.LINE-NUMBER.BYTE-COLUMN),.and. | 
| cd40 | 2f 2f 2f 20 72 65 74 75 72 6e 20 61 20 66 72 61    67 6d 65 6e 74 20 6f 66 20 74 68 65 20 73 6f 75 | ///.return.a.fragment.of.the.sou | 
| cd60 | 72 63 65 20 63 6f 64 65 2c 20 73 74 61 72 74 69    6e 67 20 66 72 6f 6d 20 74 68 65 20 70 6f 73 69 | rce.code,.starting.from.the.posi | 
| cd80 | 74 69 6f 6e 20 69 64 65 6e 74 69 66 69 65 64 20    62 79 0a 2f 2f 2f 20 65 69 74 68 65 72 20 42 59 | tion.identified.by.///.either.BY | 
| cda0 | 54 45 50 4f 53 20 6f 72 20 28 4c 49 4e 45 2d 4e    55 4d 42 45 52 20 2e 20 42 59 54 45 2d 43 4f 4c | TEPOS.or.(LINE-NUMBER...BYTE-COL | 
| cdc0 | 55 4d 4e 29 2e 20 49 74 20 73 68 6f 75 6c 64 20    72 65 74 75 72 6e 20 61 6e 20 65 6d 70 74 79 20 | UMN)..It.should.return.an.empty. | 
| cde0 | 73 74 72 69 6e 67 0a 2f 2f 2f 20 74 6f 20 73 69    67 6e 61 6c 20 74 68 65 20 65 6e 64 20 6f 66 20 | string.///.to.signal.the.end.of. | 
| ce00 | 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2e    0a 2f 2f 2f 0a 2f 2f 2f 20 42 59 54 45 50 4f 53 | the.source.code..///.///.BYTEPOS | 
| ce20 | 20 69 73 20 45 6d 61 63 73 27 73 20 31 2d 62 61    73 65 64 20 62 79 74 65 20 70 6f 73 69 74 69 6f | .is.Emacs's.1-based.byte.positio | 
| ce40 | 6e 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 4c 49 4e 45 2d    4e 55 4d 42 45 52 20 69 73 20 74 68 65 20 6e 75 | n..///.///.LINE-NUMBER.is.the.nu | 
| ce60 | 6d 62 65 72 20 72 65 74 75 72 6e 65 64 20 62 79    20 60 6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 61 74 | mber.returned.by.`line-number-at | 
| ce80 | 2d 70 6f 73 27 2c 20 77 68 69 63 68 20 63 6f 75    6e 74 73 20 66 72 6f 6d 20 31 2e 0a 2f 2f 2f 0a | -pos',.which.counts.from.1..///. | 
| cea0 | 2f 2f 2f 20 42 59 54 45 2d 43 4f 4c 55 4d 4e 20    63 6f 75 6e 74 73 20 66 72 6f 6d 20 30 2c 20 6c | ///.BYTE-COLUMN.counts.from.0,.l | 
| cec0 | 69 6b 65 73 20 45 6d 61 63 73 27 73 20 60 63 75    72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 27 2e 20 48 | ikes.Emacs's.`current-column'..H | 
| cee0 | 6f 77 65 76 65 72 2c 20 75 6e 6c 69 6b 65 20 74    68 61 74 0a 2f 2f 2f 20 66 75 6e 63 74 69 6f 6e | owever,.unlike.that.///.function | 
| cf00 | 2c 20 69 74 20 63 6f 75 6e 74 73 20 62 79 74 65    73 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 64 69 | ,.it.counts.bytes,.instead.of.di | 
| cf20 | 73 70 6c 61 79 65 64 20 67 6c 79 70 68 73 2e 0a    2f 2f 2f 0a 2f 2f 2f 20 49 66 20 79 6f 75 20 68 | splayed.glyphs..///.///.If.you.h | 
| cf40 | 61 76 65 20 61 6c 72 65 61 64 79 20 70 61 72 73    65 64 20 61 6e 20 65 61 72 6c 69 65 72 20 76 65 | ave.already.parsed.an.earlier.ve | 
| cf60 | 72 73 69 6f 6e 20 6f 66 20 74 68 69 73 20 64 6f    63 75 6d 65 6e 74 2c 20 61 6e 64 20 69 74 20 68 | rsion.of.this.document,.and.it.h | 
| cf80 | 61 73 20 73 69 6e 63 65 0a 2f 2f 2f 20 62 65 65    6e 20 65 64 69 74 65 64 2c 20 70 61 73 73 20 74 | as.since.///.been.edited,.pass.t | 
| cfa0 | 68 65 20 70 72 65 76 69 6f 75 73 6c 79 20 70 61    72 73 65 64 20 4f 4c 44 2d 54 52 45 45 20 73 6f | he.previously.parsed.OLD-TREE.so | 
| cfc0 | 20 74 68 61 74 20 69 74 73 20 75 6e 63 68 61 6e    67 65 64 20 70 61 72 74 73 20 63 61 6e 0a 2f 2f | .that.its.unchanged.parts.can.// | 
| cfe0 | 2f 20 62 65 20 72 65 75 73 65 64 2e 20 54 68 69    73 20 77 69 6c 6c 20 73 61 76 65 20 74 69 6d 65 | /.be.reused..This.will.save.time | 
| d000 | 20 61 6e 64 20 6d 65 6d 6f 72 79 2e 20 46 6f 72    20 74 68 69 73 20 74 6f 20 77 6f 72 6b 20 63 6f | .and.memory..For.this.to.work.co | 
| d020 | 72 72 65 63 74 6c 79 2c 20 79 6f 75 20 6d 75 73    74 0a 2f 2f 2f 20 68 61 76 65 20 61 6c 72 65 61 | rrectly,.you.must.///.have.alrea | 
| d040 | 64 79 20 65 64 69 74 65 64 20 69 74 20 75 73 69    6e 67 20 60 74 73 63 2d 65 64 69 74 2d 74 72 65 | dy.edited.it.using.`tsc-edit-tre | 
| d060 | 65 27 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 61    20 77 61 79 20 74 68 61 74 20 65 78 61 63 74 6c | e'.function.in.a.way.that.exactl | 
| d080 | 79 0a 2f 2f 2f 20 6d 61 74 63 68 65 73 20 74 68    65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 68 | y.///.matches.the.source.code.ch | 
| d0a0 | 61 6e 67 65 73 2e 0a 23 5b 64 65 66 75 6e 5d 0a    66 6e 20 70 61 72 73 65 5f 63 68 75 6e 6b 73 28 | anges..#[defun].fn.parse_chunks( | 
| d0c0 | 70 61 72 73 65 72 3a 20 26 6d 75 74 20 50 61 72    73 65 72 2c 20 69 6e 70 75 74 5f 66 75 6e 63 74 | parser:.&mut.Parser,.input_funct | 
| d0e0 | 69 6f 6e 3a 20 56 61 6c 75 65 2c 20 6f 6c 64 5f    74 72 65 65 3a 20 4f 70 74 69 6f 6e 3c 26 53 68 | ion:.Value,.old_tree:.Option<&Sh | 
| d100 | 61 72 65 64 3c 54 72 65 65 3e 3e 29 20 2d 3e 20    52 65 73 75 6c 74 3c 53 68 61 72 65 64 3c 54 72 | ared<Tree>>).->.Result<Shared<Tr | 
| d120 | 65 65 3e 3e 20 7b 0a 20 20 20 20 6c 65 74 20 6f    6c 64 5f 74 72 65 65 20 3d 20 6d 61 74 63 68 20 | ee>>.{.....let.old_tree.=.match. | 
| d140 | 6f 6c 64 5f 74 72 65 65 20 7b 0a 20 20 20 20 20    20 20 20 53 6f 6d 65 28 76 29 20 3d 3e 20 53 6f | old_tree.{.........Some(v).=>.So | 
| d160 | 6d 65 28 76 2e 74 72 79 5f 62 6f 72 72 6f 77 28    29 3f 29 2c 0a 20 20 20 20 20 20 20 20 5f 20 3d | me(v.try_borrow()?),........._.= | 
| d180 | 3e 20 4e 6f 6e 65 2c 0a 20 20 20 20 7d 3b 0a 20    20 20 20 6c 65 74 20 6f 6c 64 5f 74 72 65 65 20 | >.None,.....};.....let.old_tree. | 
| d1a0 | 3d 20 6d 61 74 63 68 20 26 6f 6c 64 5f 74 72 65    65 20 7b 0a 20 20 20 20 20 20 20 20 53 6f 6d 65 | =.match.&old_tree.{.........Some | 
| d1c0 | 28 72 29 20 3d 3e 20 53 6f 6d 65 28 26 2a 2a 72    29 2c 0a 20 20 20 20 20 20 20 20 5f 20 3d 3e 20 | (r).=>.Some(&**r),........._.=>. | 
| d1e0 | 4e 6f 6e 65 2c 0a 20 20 20 20 7d 3b 0a 20 20 20    20 2f 2f 20 54 68 69 73 20 69 73 20 75 73 65 64 | None,.....};.....//.This.is.used | 
| d200 | 20 74 6f 20 68 6f 6c 64 20 70 6f 74 65 6e 74 69    61 6c 20 65 72 72 6f 72 2c 20 62 65 63 61 75 73 | .to.hold.potential.error,.becaus | 
| d220 | 65 20 74 68 65 20 63 61 6c 6c 62 61 63 6b 20 63    61 6e 6e 6f 74 20 72 65 74 75 72 6e 20 61 20 52 | e.the.callback.cannot.return.a.R | 
| d240 | 65 73 75 6c 74 2c 20 61 6e 64 0a 20 20 20 20 2f    2f 20 75 6e 77 69 6e 64 69 6e 67 20 61 63 72 6f | esult,.and.....//.unwinding.acro | 
| d260 | 73 73 20 46 46 49 20 62 6f 75 6e 64 61 72 79 20    64 75 72 69 6e 67 20 61 20 70 61 6e 69 63 20 69 | ss.FFI.boundary.during.a.panic.i | 
| d280 | 73 20 55 42 20 28 66 75 74 75 72 65 20 52 75 73    74 20 76 65 72 73 69 6f 6e 73 20 77 69 6c 6c 20 | s.UB.(future.Rust.versions.will. | 
| d2a0 | 61 62 6f 72 74 29 2e 0a 20 20 20 20 2f 2f 20 53    65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 | abort)......//.See.https://githu | 
| d2c0 | 62 2e 63 6f 6d 2f 72 75 73 74 2d 6c 61 6e 67 2f    72 75 73 74 2f 69 73 73 75 65 73 2f 35 32 36 35 | b.com/rust-lang/rust/issues/5265 | 
| d2e0 | 32 2e 0a 20 20 20 20 6c 65 74 20 6d 75 74 20 69    6e 70 75 74 5f 65 72 72 6f 72 20 3d 20 4e 6f 6e | 2......let.mut.input_error.=.Non | 
| d300 | 65 3b 0a 20 20 20 20 6c 65 74 20 69 6e 70 75 74    20 3d 20 26 6d 75 74 20 7c 62 79 74 65 3a 20 75 | e;.....let.input.=.&mut.|byte:.u | 
| d320 | 73 69 7a 65 2c 20 70 6f 69 6e 74 3a 20 74 72 65    65 5f 73 69 74 74 65 72 3a 3a 50 6f 69 6e 74 7c | size,.point:.tree_sitter::Point| | 
| d340 | 20 2d 3e 20 53 74 72 69 6e 67 20 7b 0a 20 20 20    20 20 20 20 20 6c 65 74 20 62 79 74 65 70 6f 73 | .->.String.{.........let.bytepos | 
| d360 | 3a 20 42 79 74 65 50 6f 73 20 3d 20 62 79 74 65    2e 69 6e 74 6f 28 29 3b 0a 20 20 20 20 20 20 20 | :.BytePos.=.byte.into();........ | 
| d380 | 20 6c 65 74 20 70 6f 69 6e 74 3a 20 50 6f 69 6e    74 20 3d 20 70 6f 69 6e 74 2e 69 6e 74 6f 28 29 | .let.point:.Point.=.point.into() | 
| d3a0 | 3b 0a 20 20 20 20 20 20 20 20 69 6e 70 75 74 5f    66 75 6e 63 74 69 6f 6e 2e 63 61 6c 6c 28 28 62 | ;.........input_function.call((b | 
| d3c0 | 79 74 65 70 6f 73 2c 20 70 6f 69 6e 74 2e 6c 69    6e 65 5f 6e 75 6d 62 65 72 28 29 2c 20 70 6f 69 | ytepos,.point.line_number(),.poi | 
| d3e0 | 6e 74 2e 62 79 74 65 5f 63 6f 6c 75 6d 6e 28 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e | nt.byte_column())).............. | 
| d400 | 61 6e 64 5f 74 68 65 6e 28 7c 76 7c 20 76 2e 69    6e 74 6f 5f 72 75 73 74 28 29 29 0a 20 20 20 20 | and_then(|v|.v.into_rust())..... | 
| d420 | 20 20 20 20 20 20 20 20 2e 75 6e 77 72 61 70 5f    6f 72 5f 65 6c 73 65 28 7c 65 7c 20 7b 0a 20 20 | .........unwrap_or_else(|e|.{... | 
| d440 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e    70 75 74 5f 65 72 72 6f 72 20 3d 20 53 6f 6d 65 | ..............input_error.=.Some | 
| d460 | 28 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 22 22 2e 74 6f 5f 6f 77 6e 65 64 | (e);................."".to_owned | 
| d480 | 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d    29 0a 20 20 20 20 7d 3b 0a 20 20 20 20 2f 2f 20 | ().............}).....};.....//. | 
| d4a0 | 54 4f 44 4f 3a 20 53 75 70 70 6f 72 74 20 65 72    72 6f 72 20 63 61 73 65 73 20 28 4e 6f 6e 65 29 | TODO:.Support.error.cases.(None) | 
| d4c0 | 2e 0a 20 20 20 20 6c 65 74 20 74 72 65 65 20 3d    20 70 61 72 73 65 72 2e 70 61 72 73 65 5f 77 69 | ......let.tree.=.parser.parse_wi | 
| d4e0 | 74 68 28 69 6e 70 75 74 2c 20 6f 6c 64 5f 74 72    65 65 29 2e 75 6e 77 72 61 70 28 29 3b 0a 20 20 | th(input,.old_tree).unwrap();... | 
| d500 | 20 20 6d 61 74 63 68 20 69 6e 70 75 74 5f 65 72    72 6f 72 20 7b 0a 20 20 20 20 20 20 20 20 4e 6f | ..match.input_error.{.........No | 
| d520 | 6e 65 20 3d 3e 20 4f 6b 28 73 68 61 72 65 64 28    74 72 65 65 29 29 2c 0a 20 20 20 20 20 20 20 20 | ne.=>.Ok(shared(tree)),......... | 
| d540 | 53 6f 6d 65 28 65 29 20 3d 3e 20 45 72 72 28 65    29 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 2f 2f 2f 20 | Some(e).=>.Err(e),.....}.}..///. | 
| d560 | 55 73 65 20 50 41 52 53 45 52 20 74 6f 20 70 61    72 73 65 20 74 68 65 20 49 4e 50 55 54 20 73 74 | Use.PARSER.to.parse.the.INPUT.st | 
| d580 | 72 69 6e 67 2c 20 72 65 74 75 72 6e 69 6e 67 20    61 20 74 72 65 65 2e 0a 23 5b 64 65 66 75 6e 5d | ring,.returning.a.tree..#[defun] | 
| d5a0 | 0a 66 6e 20 70 61 72 73 65 5f 73 74 72 69 6e 67    28 70 61 72 73 65 72 3a 20 26 6d 75 74 20 50 61 | .fn.parse_string(parser:.&mut.Pa | 
| d5c0 | 72 73 65 72 2c 20 69 6e 70 75 74 3a 20 53 74 72    69 6e 67 29 20 2d 3e 20 52 65 73 75 6c 74 3c 53 | rser,.input:.String).->.Result<S | 
| d5e0 | 68 61 72 65 64 3c 54 72 65 65 3e 3e 20 7b 0a 20    20 20 20 6c 65 74 20 74 72 65 65 20 3d 20 70 61 | hared<Tree>>.{.....let.tree.=.pa | 
| d600 | 72 73 65 72 2e 70 61 72 73 65 28 69 6e 70 75 74    2c 20 4e 6f 6e 65 29 2e 75 6e 77 72 61 70 28 29 | rser.parse(input,.None).unwrap() | 
| d620 | 3b 0a 20 20 20 20 4f 6b 28 73 68 61 72 65 64 28    74 72 65 65 29 29 0a 7d 0a 0a 2f 2f 2f 20 49 6e | ;.....Ok(shared(tree)).}..///.In | 
| d640 | 73 74 72 75 63 74 20 50 41 52 53 45 52 20 74 6f    20 73 74 61 72 74 20 74 68 65 20 6e 65 78 74 20 | struct.PARSER.to.start.the.next. | 
| d660 | 70 61 72 73 65 20 66 72 6f 6d 20 74 68 65 20 62    65 67 69 6e 6e 69 6e 67 2e 0a 2f 2f 2f 0a 2f 2f | parse.from.the.beginning..///.// | 
| d680 | 2f 20 49 66 20 50 41 52 53 45 52 20 70 72 65 76    69 6f 75 73 6c 79 20 66 61 69 6c 65 64 20 62 65 | /.If.PARSER.previously.failed.be | 
| d6a0 | 63 61 75 73 65 20 6f 66 20 61 20 74 69 6d 65 6f    75 74 20 6f 72 20 61 20 63 61 6e 63 65 6c 6c 61 | cause.of.a.timeout.or.a.cancella | 
| d6c0 | 74 69 6f 6e 2c 20 74 68 65 6e 20 62 79 0a 2f 2f    2f 20 64 65 66 61 75 6c 74 2c 20 69 74 20 77 69 | tion,.then.by.///.default,.it.wi | 
| d6e0 | 6c 6c 20 72 65 73 75 6d 65 20 77 68 65 72 65 20    69 74 20 6c 65 66 74 20 6f 66 66 20 6f 6e 20 74 | ll.resume.where.it.left.off.on.t | 
| d700 | 68 65 20 6e 65 78 74 20 70 61 72 73 65 2e 20 49    66 20 79 6f 75 20 64 6f 6e 27 74 20 77 61 6e 74 | he.next.parse..If.you.don't.want | 
| d720 | 0a 2f 2f 2f 20 74 6f 20 72 65 73 75 6d 65 2c 20    61 6e 64 20 69 6e 73 74 65 61 64 20 69 6e 74 65 | .///.to.resume,.and.instead.inte | 
| d740 | 6e 64 20 74 6f 20 75 73 65 20 50 41 52 53 45 52    20 74 6f 20 70 61 72 73 65 20 73 6f 6d 65 20 6f | nd.to.use.PARSER.to.parse.some.o | 
| d760 | 74 68 65 72 20 63 6f 64 65 2c 20 79 6f 75 20 6d    75 73 74 0a 2f 2f 2f 20 63 61 6c 6c 20 74 68 69 | ther.code,.you.must.///.call.thi | 
| d780 | 73 20 66 75 6e 63 74 69 6f 6e 20 66 69 72 73 74    2e 0a 2f 2f 2f 0a 2f 2f 2f 20 4e 6f 74 65 3a 20 | s.function.first..///.///.Note:. | 
| d7a0 | 74 69 6d 65 6f 75 74 20 61 6e 64 20 63 61 6e 63    65 6c 6c 61 74 69 6f 6e 20 61 72 65 20 6e 6f 74 | timeout.and.cancellation.are.not | 
| d7c0 | 20 79 65 74 20 70 72 6f 70 65 72 6c 79 20 73 75    70 70 6f 72 74 65 64 2e 0a 23 5b 64 65 66 75 6e | .yet.properly.supported..#[defun | 
| d7e0 | 5d 0a 66 6e 20 5f 72 65 73 65 74 5f 70 61 72 73    65 72 28 70 61 72 73 65 72 3a 20 26 6d 75 74 20 | ].fn._reset_parser(parser:.&mut. | 
| d800 | 50 61 72 73 65 72 29 20 2d 3e 20 52 65 73 75 6c    74 3c 28 29 3e 20 7b 0a 20 20 20 20 4f 6b 28 70 | Parser).->.Result<()>.{.....Ok(p | 
| d820 | 61 72 73 65 72 2e 72 65 73 65 74 28 29 29 0a 7d    0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 74 68 65 | arser.reset()).}..///.Return.the | 
| d840 | 20 64 75 72 61 74 69 6f 6e 20 69 6e 20 6d 69 63    72 6f 73 65 63 6f 6e 64 73 20 74 68 61 74 20 50 | .duration.in.microseconds.that.P | 
| d860 | 41 52 53 45 52 20 69 73 20 61 6c 6c 6f 77 65 64    20 74 6f 20 74 61 6b 65 20 65 61 63 68 20 70 61 | ARSER.is.allowed.to.take.each.pa | 
| d880 | 72 73 65 2e 0a 2f 2f 2f 20 4e 6f 74 65 3a 20 74    69 6d 65 6f 75 74 20 61 6e 64 20 63 61 6e 63 65 | rse..///.Note:.timeout.and.cance | 
| d8a0 | 6c 6c 61 74 69 6f 6e 20 61 72 65 20 6e 6f 74 20    79 65 74 20 70 72 6f 70 65 72 6c 79 20 73 75 70 | llation.are.not.yet.properly.sup | 
| d8c0 | 70 6f 72 74 65 64 2e 0a 23 5b 64 65 66 75 6e 5d    0a 66 6e 20 5f 74 69 6d 65 6f 75 74 5f 6d 69 63 | ported..#[defun].fn._timeout_mic | 
| d8e0 | 72 6f 73 28 70 61 72 73 65 72 3a 20 26 50 61 72    73 65 72 29 20 2d 3e 20 52 65 73 75 6c 74 3c 75 | ros(parser:.&Parser).->.Result<u | 
| d900 | 36 34 3e 20 7b 0a 20 20 20 20 4f 6b 28 70 61 72    73 65 72 2e 74 69 6d 65 6f 75 74 5f 6d 69 63 72 | 64>.{.....Ok(parser.timeout_micr | 
| d920 | 6f 73 28 29 29 0a 7d 0a 0a 2f 2f 2f 20 53 65 74    20 4d 41 58 2d 44 55 52 41 54 49 4f 4e 20 69 6e | os()).}..///.Set.MAX-DURATION.in | 
| d940 | 20 6d 69 63 72 6f 73 65 63 6f 6e 64 73 20 74 68    61 74 20 50 41 52 53 45 52 20 69 73 20 61 6c 6c | .microseconds.that.PARSER.is.all | 
| d960 | 6f 77 65 64 20 74 6f 20 74 61 6b 65 20 65 61 63    68 20 70 61 72 73 65 2e 0a 2f 2f 2f 20 4e 6f 74 | owed.to.take.each.parse..///.Not | 
| d980 | 65 3a 20 74 69 6d 65 6f 75 74 20 61 6e 64 20 63    61 6e 63 65 6c 6c 61 74 69 6f 6e 20 61 72 65 20 | e:.timeout.and.cancellation.are. | 
| d9a0 | 6e 6f 74 20 79 65 74 20 70 72 6f 70 65 72 6c 79    20 73 75 70 70 6f 72 74 65 64 2e 0a 23 5b 64 65 | not.yet.properly.supported..#[de | 
| d9c0 | 66 75 6e 5d 0a 66 6e 20 5f 73 65 74 5f 74 69 6d    65 6f 75 74 5f 6d 69 63 72 6f 73 28 70 61 72 73 | fun].fn._set_timeout_micros(pars | 
| d9e0 | 65 72 3a 20 26 6d 75 74 20 50 61 72 73 65 72 2c    20 6d 61 78 5f 64 75 72 61 74 69 6f 6e 3a 20 75 | er:.&mut.Parser,.max_duration:.u | 
| da00 | 36 34 29 20 2d 3e 20 52 65 73 75 6c 74 3c 28 29    3e 20 7b 0a 20 20 20 20 4f 6b 28 70 61 72 73 65 | 64).->.Result<()>.{.....Ok(parse | 
| da20 | 72 2e 73 65 74 5f 74 69 6d 65 6f 75 74 5f 6d 69    63 72 6f 73 28 6d 61 78 5f 64 75 72 61 74 69 6f | r.set_timeout_micros(max_duratio | 
| da40 | 6e 29 29 0a 7d 0a 0a 2f 2f 2f 20 53 65 74 20 74    68 65 20 52 41 4e 47 45 53 20 6f 66 20 74 65 78 | n)).}..///.Set.the.RANGES.of.tex | 
| da60 | 74 20 74 68 61 74 20 50 41 52 53 45 52 20 73 68    6f 75 6c 64 20 69 6e 63 6c 75 64 65 20 77 68 65 | t.that.PARSER.should.include.whe | 
| da80 | 6e 20 70 61 72 73 69 6e 67 2e 0a 2f 2f 2f 0a 2f    2f 2f 20 42 79 20 64 65 66 61 75 6c 74 2c 20 50 | n.parsing..///.///.By.default,.P | 
| daa0 | 41 52 53 45 52 20 77 69 6c 6c 20 61 6c 77 61 79    73 20 69 6e 63 6c 75 64 65 20 65 6e 74 69 72 65 | ARSER.will.always.include.entire | 
| dac0 | 20 64 6f 63 75 6d 65 6e 74 73 2e 20 54 68 69 73    20 66 75 6e 63 74 69 6f 6e 20 61 6c 6c 6f 77 73 | .documents..This.function.allows | 
| dae0 | 0a 2f 2f 2f 20 79 6f 75 20 74 6f 20 70 61 72 73    65 20 6f 6e 6c 79 20 61 20 70 6f 72 74 69 6f 6e | .///.you.to.parse.only.a.portion | 
| db00 | 20 6f 66 20 61 20 64 6f 63 75 6d 65 6e 74 20 62    75 74 20 73 74 69 6c 6c 20 72 65 74 75 72 6e 20 | .of.a.document.but.still.return. | 
| db20 | 61 20 73 79 6e 74 61 78 20 74 72 65 65 20 77 68    6f 73 65 0a 2f 2f 2f 20 72 61 6e 67 65 73 20 6d | a.syntax.tree.whose.///.ranges.m | 
| db40 | 61 74 63 68 20 75 70 20 77 69 74 68 20 74 68 65    20 64 6f 63 75 6d 65 6e 74 20 61 73 20 61 20 77 | atch.up.with.the.document.as.a.w | 
| db60 | 68 6f 6c 65 2e 20 52 41 4e 47 45 53 20 73 68 6f    75 6c 64 20 62 65 20 61 20 76 65 63 74 6f 72 2c | hole..RANGES.should.be.a.vector, | 
| db80 | 20 61 6e 64 20 63 61 6e 0a 2f 2f 2f 20 62 65 20    64 69 73 6a 6f 69 6e 74 65 64 2e 0a 2f 2f 2f 0a | .and.can.///.be.disjointed..///. | 
| dba0 | 2f 2f 2f 20 54 68 69 73 20 69 73 20 75 73 65 66    75 6c 20 66 6f 72 20 70 61 72 73 69 6e 67 20 6d | ///.This.is.useful.for.parsing.m | 
| dbc0 | 75 6c 74 69 2d 6c 61 6e 67 75 61 67 65 20 64 6f    63 75 6d 65 6e 74 73 2e 0a 23 5b 64 65 66 75 6e | ulti-language.documents..#[defun | 
| dbe0 | 5d 0a 66 6e 20 73 65 74 5f 69 6e 63 6c 75 64 65    64 5f 72 61 6e 67 65 73 28 70 61 72 73 65 72 3a | ].fn.set_included_ranges(parser: | 
| dc00 | 20 26 6d 75 74 20 50 61 72 73 65 72 2c 20 72 61    6e 67 65 73 3a 20 56 65 63 74 6f 72 29 20 2d 3e | .&mut.Parser,.ranges:.Vector).-> | 
| dc20 | 20 52 65 73 75 6c 74 3c 28 29 3e 20 7b 0a 20 20    20 20 6c 65 74 20 6c 65 6e 20 3d 20 72 61 6e 67 | .Result<()>.{.....let.len.=.rang | 
| dc40 | 65 73 2e 6c 65 6e 28 29 3b 0a 20 20 20 20 6c 65    74 20 69 6e 63 6c 75 64 65 64 20 3d 20 26 6d 75 | es.len();.....let.included.=.&mu | 
| dc60 | 74 20 56 65 63 3a 3a 77 69 74 68 5f 63 61 70 61    63 69 74 79 28 6c 65 6e 29 3b 0a 20 20 20 20 66 | t.Vec::with_capacity(len);.....f | 
| dc80 | 6f 72 20 69 20 69 6e 20 30 2e 2e 6c 65 6e 20 7b    0a 20 20 20 20 20 20 20 20 6c 65 74 20 72 61 6e | or.i.in.0..len.{.........let.ran | 
| dca0 | 67 65 3a 20 52 61 6e 67 65 20 3d 20 72 61 6e 67    65 73 2e 67 65 74 28 69 29 3f 3b 0a 20 20 20 20 | ge:.Range.=.ranges.get(i)?;..... | 
| dcc0 | 20 20 20 20 69 6e 63 6c 75 64 65 64 2e 70 75 73    68 28 72 61 6e 67 65 2e 69 6e 74 6f 28 29 29 3b | ....included.push(range.into()); | 
| dce0 | 0a 20 20 20 20 7d 0a 20 20 20 20 70 61 72 73 65    72 2e 73 65 74 5f 69 6e 63 6c 75 64 65 64 5f 72 | .....}.....parser.set_included_r | 
| dd00 | 61 6e 67 65 73 28 69 6e 63 6c 75 64 65 64 29 2e    6f 72 5f 65 6c 73 65 28 7c 65 72 72 6f 72 7c 20 | anges(included).or_else(|error|. | 
| dd20 | 7b 0a 20 20 20 20 20 20 20 20 72 61 6e 67 65 73    2e 76 61 6c 75 65 28 29 2e 65 6e 76 2e 73 69 67 | {.........ranges.value().env.sig | 
| dd40 | 6e 61 6c 28 65 72 72 6f 72 3a 3a 74 73 63 5f 69    6e 76 61 6c 69 64 5f 72 61 6e 67 65 73 2c 20 28 | nal(error::tsc_invalid_ranges,.( | 
| dd60 | 65 72 72 6f 72 2e 30 2c 20 29 29 0a 20 20 20 20    7d 29 0a 7d 0a 00 00 00 00 00 00 00 00 00 00 00 | error.0,.)).....}).}............ | 
| dd80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dda0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| ddc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dde0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| de00 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 71 75 65 72 79 2e 72 73 00 00 | tsc-20220212.1632/src/query.rs.. | 
| de20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| de40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| de60 | 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 | 
| de80 | 30 30 32 32 31 36 34 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 30 37 37 00 20 30 00 00 00 | 0022164.00000000000.014077..0... | 
| dea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| df00 | 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................... | 
| df20 | 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................... | 
| df40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| df60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| df80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dfa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dfc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| dfe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| e000 | 75 73 65 20 73 74 64 3a 3a 7b 63 65 6c 6c 3a 3a    52 65 66 43 65 6c 6c 2c 20 69 74 65 72 7d 3b 0a | use.std::{cell::RefCell,.iter};. | 
| e020 | 0a 75 73 65 20 65 6d 61 63 73 3a 3a 7b 64 65 66    75 6e 2c 20 45 6e 76 2c 20 45 72 72 6f 72 2c 20 | .use.emacs::{defun,.Env,.Error,. | 
| e040 | 47 6c 6f 62 61 6c 52 65 66 2c 20 49 6e 74 6f 4c    69 73 70 2c 20 52 65 73 75 6c 74 2c 20 56 61 6c | GlobalRef,.IntoLisp,.Result,.Val | 
| e060 | 75 65 2c 20 56 65 63 74 6f 72 7d 3b 0a 75 73 65    20 74 72 65 65 5f 73 69 74 74 65 72 3a 3a 7b 4e | ue,.Vector};.use.tree_sitter::{N | 
| e080 | 6f 64 65 2c 20 51 75 65 72 79 43 75 72 73 6f 72    2c 20 51 75 65 72 79 45 72 72 6f 72 4b 69 6e 64 | ode,.QueryCursor,.QueryErrorKind | 
| e0a0 | 2c 20 54 65 78 74 50 72 6f 76 69 64 65 72 7d 3b    0a 0a 75 73 65 20 63 72 61 74 65 3a 3a 7b 0a 20 | ,.TextProvider};..use.crate::{.. | 
| e0c0 | 20 20 20 74 79 70 65 73 3a 3a 7b 42 79 74 65 50    6f 73 2c 20 50 6f 69 6e 74 7d 2c 0a 20 20 20 20 | ...types::{BytePos,.Point},..... | 
| e0e0 | 6c 61 6e 67 3a 3a 4c 61 6e 67 75 61 67 65 2c 0a    20 20 20 20 6e 6f 64 65 3a 3a 7b 52 4e 6f 64 65 | lang::Language,.....node::{RNode | 
| e100 | 2c 20 4c 69 73 70 55 74 69 6c 73 7d 2c 0a 20 20    20 20 65 72 72 6f 72 2c 0a 7d 3b 0a 0a 66 6e 20 | ,.LispUtils},.....error,.};..fn. | 
| e120 | 76 65 63 5f 74 6f 5f 76 65 63 74 6f 72 3c 27 65    2c 20 54 3a 20 49 6e 74 6f 4c 69 73 70 3c 27 65 | vec_to_vector<'e,.T:.IntoLisp<'e | 
| e140 | 3e 3e 28 65 6e 76 3a 20 26 27 65 20 45 6e 76 2c    20 76 65 63 3a 20 56 65 63 3c 54 3e 29 20 2d 3e | >>(env:.&'e.Env,.vec:.Vec<T>).-> | 
| e160 | 20 52 65 73 75 6c 74 3c 56 65 63 74 6f 72 3c 27    65 3e 3e 20 7b 0a 20 20 20 20 6c 65 74 20 76 65 | .Result<Vector<'e>>.{.....let.ve | 
| e180 | 63 74 6f 72 20 3d 20 65 6e 76 2e 6d 61 6b 65 5f    76 65 63 74 6f 72 28 76 65 63 2e 6c 65 6e 28 29 | ctor.=.env.make_vector(vec.len() | 
| e1a0 | 2c 20 28 29 29 3f 3b 0a 20 20 20 20 66 6f 72 20    28 69 2c 20 76 29 20 69 6e 20 76 65 63 2e 69 6e | ,.())?;.....for.(i,.v).in.vec.in | 
| e1c0 | 74 6f 5f 69 74 65 72 28 29 2e 65 6e 75 6d 65 72    61 74 65 28 29 20 7b 0a 20 20 20 20 20 20 20 20 | to_iter().enumerate().{......... | 
| e1e0 | 76 65 63 74 6f 72 2e 73 65 74 28 69 2c 20 76 29    3f 3b 0a 20 20 20 20 7d 0a 20 20 20 20 4f 6b 28 | vector.set(i,.v)?;.....}.....Ok( | 
| e200 | 76 65 63 74 6f 72 29 0a 7d 0a 0a 2f 2f 20 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | vector).}..//.------------------ | 
| e220 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| e240 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| e260 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a    2f 2f 20 51 75 65 72 79 0a 0a 73 74 72 75 63 74 | ---------------.//.Query..struct | 
| e280 | 20 51 75 65 72 79 20 7b 0a 20 20 20 20 70 75 62    28 63 72 61 74 65 29 20 72 61 77 3a 20 74 72 65 | .Query.{.....pub(crate).raw:.tre | 
| e2a0 | 65 5f 73 69 74 74 65 72 3a 3a 51 75 65 72 79 2c    0a 20 20 20 20 70 75 62 28 63 72 61 74 65 29 20 | e_sitter::Query,.....pub(crate). | 
| e2c0 | 63 61 70 74 75 72 65 5f 74 61 67 73 3a 20 56 65    63 3c 47 6c 6f 62 61 6c 52 65 66 3e 2c 0a 7d 0a | capture_tags:.Vec<GlobalRef>,.}. | 
| e2e0 | 0a 69 6d 70 6c 5f 70 72 65 64 21 28 71 75 65 72    79 5f 70 2c 20 26 52 65 66 43 65 6c 6c 3c 51 75 | .impl_pred!(query_p,.&RefCell<Qu | 
| e300 | 65 72 79 3e 29 3b 0a 0a 2f 2f 2f 20 43 72 65 61    74 65 20 61 20 6e 65 77 20 71 75 65 72 79 20 66 | ery>);..///.Create.a.new.query.f | 
| e320 | 72 6f 6d 20 61 20 53 4f 55 52 43 45 20 63 6f 6e    74 61 69 6e 69 6e 67 20 6f 6e 65 20 6f 72 20 6d | rom.a.SOURCE.containing.one.or.m | 
| e340 | 6f 72 65 20 53 2d 65 78 70 72 65 73 73 69 6f 6e    20 70 61 74 74 65 72 6e 73 2e 0a 2f 2f 2f 0a 2f | ore.S-expression.patterns..///./ | 
| e360 | 2f 2f 20 54 68 65 20 71 75 65 72 79 20 69 73 20    61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 | //.The.query.is.associated.with. | 
| e380 | 4c 41 4e 47 55 41 47 45 2c 20 61 6e 64 20 63 61    6e 20 6f 6e 6c 79 20 62 65 20 72 75 6e 20 6f 6e | LANGUAGE,.and.can.only.be.run.on | 
| e3a0 | 20 73 79 6e 74 61 78 20 6e 6f 64 65 73 0a 2f 2f    2f 20 70 61 72 73 65 64 20 77 69 74 68 20 4c 41 | .syntax.nodes.///.parsed.with.LA | 
| e3c0 | 4e 47 55 41 47 45 2e 0a 2f 2f 2f 0a 2f 2f 2f 20    54 41 47 2d 41 53 53 49 47 4e 45 52 20 69 73 20 | NGUAGE..///.///.TAG-ASSIGNER.is. | 
| e3e0 | 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20    69 73 20 63 61 6c 6c 65 64 20 74 6f 20 64 65 74 | a.function.that.is.called.to.det | 
| e400 | 65 72 6d 69 6e 65 20 68 6f 77 20 63 61 70 74 75    72 65 73 20 61 72 65 20 74 61 67 67 65 64 0a 2f | ermine.how.captures.are.tagged./ | 
| e420 | 2f 2f 20 69 6e 20 71 75 65 72 79 20 72 65 73 75    6c 74 73 2e 20 49 74 20 73 68 6f 75 6c 64 20 74 | //.in.query.results..It.should.t | 
| e440 | 61 6b 65 20 61 20 63 61 70 74 75 72 65 20 6e 61    6d 65 20 64 65 66 69 6e 65 64 20 69 6e 20 53 4f | ake.a.capture.name.defined.in.SO | 
| e460 | 55 52 43 45 27 73 20 70 61 74 74 65 72 6e 73 0a    2f 2f 2f 20 28 65 2e 67 2e 20 22 66 75 6e 63 74 | URCE's.patterns.///.(e.g.."funct | 
| e480 | 69 6f 6e 2e 62 75 69 6c 74 69 6e 22 29 2c 20 61    6e 64 20 72 65 74 75 72 6e 20 61 20 74 61 67 20 | ion.builtin"),.and.return.a.tag. | 
| e4a0 | 76 61 6c 75 65 2e 20 49 66 20 74 68 65 20 72 65    74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 6e 69 | value..If.the.return.value.is.ni | 
| e4c0 | 6c 2c 0a 2f 2f 2f 20 74 68 65 20 61 73 73 6f 63    69 61 74 65 64 20 63 61 70 74 75 72 65 20 6e 61 | l,.///.the.associated.capture.na | 
| e4e0 | 6d 65 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0a    23 5b 64 65 66 75 6e 28 75 73 65 72 5f 70 74 72 | me.is.disabled..#[defun(user_ptr | 
| e500 | 29 5d 0a 66 6e 20 5f 6d 61 6b 65 5f 71 75 65 72    79 28 6c 61 6e 67 75 61 67 65 3a 20 4c 61 6e 67 | )].fn._make_query(language:.Lang | 
| e520 | 75 61 67 65 2c 20 73 6f 75 72 63 65 3a 20 53 74    72 69 6e 67 2c 20 74 61 67 5f 61 73 73 69 67 6e | uage,.source:.String,.tag_assign | 
| e540 | 65 72 3a 20 56 61 6c 75 65 29 20 2d 3e 20 52 65    73 75 6c 74 3c 51 75 65 72 79 3e 20 7b 0a 20 20 | er:.Value).->.Result<Query>.{... | 
| e560 | 20 20 6c 65 74 20 6d 75 74 20 72 61 77 20 3d 20    74 72 65 65 5f 73 69 74 74 65 72 3a 3a 51 75 65 | ..let.mut.raw.=.tree_sitter::Que | 
| e580 | 72 79 3a 3a 6e 65 77 28 6c 61 6e 67 75 61 67 65    2e 69 6e 74 6f 28 29 2c 20 26 73 6f 75 72 63 65 | ry::new(language.into(),.&source | 
| e5a0 | 29 2e 6f 72 5f 65 6c 73 65 28 7c 65 72 72 7c 20    7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 73 79 | ).or_else(|err|.{.........let.sy | 
| e5c0 | 6d 62 6f 6c 20 3d 20 6d 61 74 63 68 20 65 72 72    2e 6b 69 6e 64 20 7b 0a 20 20 20 20 20 20 20 20 | mbol.=.match.err.kind.{......... | 
| e5e0 | 20 20 20 20 51 75 65 72 79 45 72 72 6f 72 4b 69    6e 64 3a 3a 53 79 6e 74 61 78 20 3d 3e 20 65 72 | ....QueryErrorKind::Syntax.=>.er | 
| e600 | 72 6f 72 3a 3a 74 73 63 5f 71 75 65 72 79 5f 69    6e 76 61 6c 69 64 5f 73 79 6e 74 61 78 2c 0a 20 | ror::tsc_query_invalid_syntax,.. | 
| e620 | 20 20 20 20 20 20 20 20 20 20 20 51 75 65 72 79    45 72 72 6f 72 4b 69 6e 64 3a 3a 4e 6f 64 65 54 | ...........QueryErrorKind::NodeT | 
| e640 | 79 70 65 20 3d 3e 20 65 72 72 6f 72 3a 3a 74 73    63 5f 71 75 65 72 79 5f 69 6e 76 61 6c 69 64 5f | ype.=>.error::tsc_query_invalid_ | 
| e660 | 6e 6f 64 65 5f 74 79 70 65 2c 0a 20 20 20 20 20    20 20 20 20 20 20 20 51 75 65 72 79 45 72 72 6f | node_type,.............QueryErro | 
| e680 | 72 4b 69 6e 64 3a 3a 46 69 65 6c 64 20 3d 3e 20    65 72 72 6f 72 3a 3a 74 73 63 5f 71 75 65 72 79 | rKind::Field.=>.error::tsc_query | 
| e6a0 | 5f 69 6e 76 61 6c 69 64 5f 66 69 65 6c 64 2c 0a    20 20 20 20 20 20 20 20 20 20 20 20 51 75 65 72 | _invalid_field,.............Quer | 
| e6c0 | 79 45 72 72 6f 72 4b 69 6e 64 3a 3a 43 61 70 74    75 72 65 20 3d 3e 20 65 72 72 6f 72 3a 3a 74 73 | yErrorKind::Capture.=>.error::ts | 
| e6e0 | 63 5f 71 75 65 72 79 5f 69 6e 76 61 6c 69 64 5f    63 61 70 74 75 72 65 2c 0a 20 20 20 20 20 20 20 | c_query_invalid_capture,........ | 
| e700 | 20 20 20 20 20 51 75 65 72 79 45 72 72 6f 72 4b    69 6e 64 3a 3a 50 72 65 64 69 63 61 74 65 20 3d | .....QueryErrorKind::Predicate.= | 
| e720 | 3e 20 65 72 72 6f 72 3a 3a 74 73 63 5f 71 75 65    72 79 5f 69 6e 76 61 6c 69 64 5f 70 72 65 64 69 | >.error::tsc_query_invalid_predi | 
| e740 | 63 61 74 65 2c 0a 20 20 20 20 20 20 20 20 20 20    20 20 51 75 65 72 79 45 72 72 6f 72 4b 69 6e 64 | cate,.............QueryErrorKind | 
| e760 | 3a 3a 53 74 72 75 63 74 75 72 65 20 3d 3e 20 65    72 72 6f 72 3a 3a 74 73 63 5f 71 75 65 72 79 5f | ::Structure.=>.error::tsc_query_ | 
| e780 | 69 6e 76 61 6c 69 64 5f 73 74 72 75 63 74 75 72    65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 51 | invalid_structure,.............Q | 
| e7a0 | 75 65 72 79 45 72 72 6f 72 4b 69 6e 64 3a 3a 4c    61 6e 67 75 61 67 65 20 3d 3e 20 65 72 72 6f 72 | ueryErrorKind::Language.=>.error | 
| e7c0 | 3a 3a 74 73 63 5f 6c 61 6e 67 5f 61 62 69 5f 65    72 72 6f 72 2c 0a 20 20 20 20 20 20 20 20 7d 3b | ::tsc_lang_abi_error,.........}; | 
| e7e0 | 0a 20 20 20 20 20 20 20 20 6c 65 74 20 62 79 74    65 5f 70 6f 73 3a 20 42 79 74 65 50 6f 73 20 3d | .........let.byte_pos:.BytePos.= | 
| e800 | 20 65 72 72 2e 6f 66 66 73 65 74 2e 69 6e 74 6f    28 29 3b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 | .err.offset.into();.........let. | 
| e820 | 70 6f 69 6e 74 3a 20 50 6f 69 6e 74 20 3d 20 74    72 65 65 5f 73 69 74 74 65 72 3a 3a 50 6f 69 6e | point:.Point.=.tree_sitter::Poin | 
| e840 | 74 20 7b 20 72 6f 77 3a 20 65 72 72 2e 72 6f 77    2c 20 63 6f 6c 75 6d 6e 3a 20 65 72 72 2e 63 6f | t.{.row:.err.row,.column:.err.co | 
| e860 | 6c 75 6d 6e 20 7d 2e 69 6e 74 6f 28 29 3b 0a 20    20 20 20 20 20 20 20 2f 2f 20 54 4f 44 4f 3a 20 | lumn.}.into();.........//.TODO:. | 
| e880 | 43 68 61 72 61 63 74 65 72 20 70 6f 73 69 74 69    6f 6e 3f 0a 20 20 20 20 20 20 20 20 2f 2f 20 54 | Character.position?.........//.T | 
| e8a0 | 4f 44 4f 3a 20 43 6f 6e 76 65 72 74 20 6e 61 6d    65 64 20 6e 6f 64 65 20 74 79 70 65 73 20 61 6e | ODO:.Convert.named.node.types.an | 
| e8c0 | 64 20 66 69 65 6c 64 20 6e 61 6d 65 73 20 74 6f    20 73 79 6d 62 6f 6c 73 20 61 6e 64 20 6b 65 79 | d.field.names.to.symbols.and.key | 
| e8e0 | 77 6f 72 64 73 3f 0a 20 20 20 20 20 20 20 20 74    61 67 5f 61 73 73 69 67 6e 65 72 2e 65 6e 76 2e | words?.........tag_assigner.env. | 
| e900 | 73 69 67 6e 61 6c 28 73 79 6d 62 6f 6c 2c 20 28    65 72 72 2e 6d 65 73 73 61 67 65 2c 20 70 6f 69 | signal(symbol,.(err.message,.poi | 
| e920 | 6e 74 2c 20 62 79 74 65 5f 70 6f 73 29 29 0a 20    20 20 20 7d 29 3f 3b 0a 20 20 20 20 6c 65 74 20 | nt,.byte_pos)).....})?;.....let. | 
| e940 | 63 61 70 74 75 72 65 5f 6e 61 6d 65 73 20 3d 20    72 61 77 2e 63 61 70 74 75 72 65 5f 6e 61 6d 65 | capture_names.=.raw.capture_name | 
| e960 | 73 28 29 2e 74 6f 5f 76 65 63 28 29 3b 0a 20 20    20 20 6c 65 74 20 6d 75 74 20 63 61 70 74 75 72 | s().to_vec();.....let.mut.captur | 
| e980 | 65 5f 74 61 67 73 20 3d 20 76 65 63 21 5b 5d 3b    0a 20 20 20 20 66 6f 72 20 6e 61 6d 65 20 69 6e | e_tags.=.vec![];.....for.name.in | 
| e9a0 | 20 26 63 61 70 74 75 72 65 5f 6e 61 6d 65 73 20    7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 76 61 | .&capture_names.{.........let.va | 
| e9c0 | 6c 75 65 20 3d 20 74 61 67 5f 61 73 73 69 67 6e    65 72 2e 63 61 6c 6c 28 28 6e 61 6d 65 2c 20 29 | lue.=.tag_assigner.call((name,.) | 
| e9e0 | 29 3f 3b 0a 20 20 20 20 20 20 20 20 69 66 20 21    76 61 6c 75 65 2e 69 73 5f 6e 6f 74 5f 6e 69 6c | )?;.........if.!value.is_not_nil | 
| ea00 | 28 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20    20 72 61 77 2e 64 69 73 61 62 6c 65 5f 63 61 70 | ().{.............raw.disable_cap | 
| ea20 | 74 75 72 65 28 6e 61 6d 65 29 3b 0a 20 20 20 20    20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 63 61 | ture(name);.........}.........ca | 
| ea40 | 70 74 75 72 65 5f 74 61 67 73 2e 70 75 73 68 28    76 61 6c 75 65 2e 6d 61 6b 65 5f 67 6c 6f 62 61 | pture_tags.push(value.make_globa | 
| ea60 | 6c 5f 72 65 66 28 29 29 0a 20 20 20 20 7d 0a 20    20 20 20 4f 6b 28 51 75 65 72 79 20 7b 20 72 61 | l_ref()).....}.....Ok(Query.{.ra | 
| ea80 | 77 2c 20 63 61 70 74 75 72 65 5f 74 61 67 73 20    7d 29 0a 7d 0a 0a 6d 61 63 72 6f 5f 72 75 6c 65 | w,.capture_tags.}).}..macro_rule | 
| eaa0 | 73 21 20 64 65 66 75 6e 5f 71 75 65 72 79 5f 6d    65 74 68 6f 64 73 20 7b 0a 20 20 20 20 28 24 28 | s!.defun_query_methods.{.....($( | 
| eac0 | 24 28 23 5b 24 6d 65 74 61 3a 6d 65 74 61 5d 29    2a 20 24 28 24 6c 69 73 70 5f 6e 61 6d 65 3a 6c | $(#[$meta:meta])*.$($lisp_name:l | 
| eae0 | 69 74 65 72 61 6c 29 3f 20 66 6e 20 24 6e 61 6d    65 3a 69 64 65 6e 74 20 24 28 20 28 20 24 28 20 | iteral)?.fn.$name:ident.$(.(.$(. | 
| eb00 | 24 70 61 72 61 6d 3a 69 64 65 6e 74 20 3a 20 24    74 79 70 65 3a 74 79 20 29 2c 2a 20 29 20 29 3f | $param:ident.:.$type:ty.),*.).)? | 
| eb20 | 20 2d 3e 20 24 72 74 79 70 65 3a 74 79 20 24 28    3b 20 24 69 6e 74 6f 3a 69 64 65 6e 74 29 3f 20 | .->.$rtype:ty.$(;.$into:ident)?. | 
| eb40 | 29 2a 29 20 3d 3e 20 7b 0a 20 20 20 20 20 20 20    20 24 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 | )*).=>.{.........$(............. | 
| eb60 | 23 5b 64 65 66 75 6e 24 28 28 6e 61 6d 65 20 3d    20 24 6c 69 73 70 5f 6e 61 6d 65 29 29 3f 5d 0a | #[defun$((name.=.$lisp_name))?]. | 
| eb80 | 20 20 20 20 20 20 20 20 20 20 20 20 24 28 23 5b    24 6d 65 74 61 5d 29 2a 0a 20 20 20 20 20 20 20 | ............$(#[$meta])*........ | 
| eba0 | 20 20 20 20 20 66 6e 20 24 6e 61 6d 65 28 71 75    65 72 79 3a 20 26 51 75 65 72 79 2c 20 24 28 20 | .....fn.$name(query:.&Query,.$(. | 
| ebc0 | 24 28 20 24 70 61 72 61 6d 20 3a 20 24 74 79 70    65 20 29 2c 2a 20 29 3f 20 29 20 2d 3e 20 52 65 | $(.$param.:.$type.),*.)?.).->.Re | 
| ebe0 | 73 75 6c 74 3c 24 72 74 79 70 65 3e 20 7b 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4f | sult<$rtype>.{.................O | 
| ec00 | 6b 28 71 75 65 72 79 2e 72 61 77 2e 24 6e 61 6d    65 28 20 24 28 20 24 28 20 24 70 61 72 61 6d 20 | k(query.raw.$name(.$(.$(.$param. | 
| ec20 | 29 2c 2a 20 29 3f 20 29 24 28 2e 24 69 6e 74 6f    28 29 29 3f 29 0a 20 20 20 20 20 20 20 20 20 20 | ),*.)?.)$(.$into())?)........... | 
| ec40 | 20 20 7d 0a 20 20 20 20 20 20 20 20 29 2a 0a 20    20 20 20 7d 3b 0a 7d 0a 0a 64 65 66 75 6e 5f 71 | ..}.........)*.....};.}..defun_q | 
| ec60 | 75 65 72 79 5f 6d 65 74 68 6f 64 73 21 20 7b 0a    20 20 20 20 2f 2f 2f 20 52 65 74 75 72 6e 20 74 | uery_methods!.{.....///.Return.t | 
| ec80 | 68 65 20 62 79 74 65 20 70 6f 73 69 74 69 6f 6e    20 77 68 65 72 65 20 74 68 65 20 4e 54 48 20 70 | he.byte.position.where.the.NTH.p | 
| eca0 | 61 74 74 65 72 6e 20 73 74 61 72 74 73 20 69 6e    20 51 55 45 52 59 27 73 20 73 6f 75 72 63 65 2e | attern.starts.in.QUERY's.source. | 
| ecc0 | 0a 20 20 20 20 22 2d 71 75 65 72 79 2d 73 74 61    72 74 2d 62 79 74 65 2d 66 6f 72 2d 70 61 74 74 | ....."-query-start-byte-for-patt | 
| ece0 | 65 72 6e 22 20 66 6e 20 73 74 61 72 74 5f 62 79    74 65 5f 66 6f 72 5f 70 61 74 74 65 72 6e 28 6e | ern".fn.start_byte_for_pattern(n | 
| ed00 | 74 68 3a 20 75 73 69 7a 65 29 20 2d 3e 20 42 79    74 65 50 6f 73 3b 20 69 6e 74 6f 0a 0a 20 20 20 | th:.usize).->.BytePos;.into..... | 
| ed20 | 20 2f 2f 2f 20 52 65 74 75 72 6e 20 74 68 65 20    6e 75 6d 62 65 72 20 6f 66 20 70 61 74 74 65 72 | .///.Return.the.number.of.patter | 
| ed40 | 6e 73 20 69 6e 20 51 55 45 52 59 2e 0a 20 20 20    20 22 71 75 65 72 79 2d 63 6f 75 6e 74 2d 70 61 | ns.in.QUERY......"query-count-pa | 
| ed60 | 74 74 65 72 6e 73 22 20 66 6e 20 70 61 74 74 65    72 6e 5f 63 6f 75 6e 74 20 2d 3e 20 75 73 69 7a | tterns".fn.pattern_count.->.usiz | 
| ed80 | 65 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20    74 68 65 20 6e 61 6d 65 73 20 6f 66 20 74 68 65 | e.}..///.Return.the.names.of.the | 
| eda0 | 20 63 61 70 74 75 72 65 73 20 75 73 65 64 20 69    6e 20 51 55 45 52 59 2e 0a 23 5b 64 65 66 75 6e | .captures.used.in.QUERY..#[defun | 
| edc0 | 5d 0a 66 6e 20 5f 71 75 65 72 79 5f 63 61 70 74    75 72 65 5f 6e 61 6d 65 73 28 71 75 65 72 79 3a | ].fn._query_capture_names(query: | 
| ede0 | 20 56 61 6c 75 65 29 20 2d 3e 20 52 65 73 75 6c    74 3c 56 65 63 74 6f 72 3e 20 7b 0a 20 20 20 20 | .Value).->.Result<Vector>.{..... | 
| ee00 | 6c 65 74 20 65 6e 76 20 3d 20 71 75 65 72 79 2e    65 6e 76 3b 0a 20 20 20 20 6c 65 74 20 71 75 65 | let.env.=.query.env;.....let.que | 
| ee20 | 72 79 20 3d 20 71 75 65 72 79 2e 69 6e 74 6f 5f    72 65 66 3a 3a 3c 51 75 65 72 79 3e 28 29 3f 3b | ry.=.query.into_ref::<Query>()?; | 
| ee40 | 0a 20 20 20 20 6c 65 74 20 6e 61 6d 65 73 20 3d    20 71 75 65 72 79 2e 72 61 77 2e 63 61 70 74 75 | .....let.names.=.query.raw.captu | 
| ee60 | 72 65 5f 6e 61 6d 65 73 28 29 3b 0a 20 20 20 20    6c 65 74 20 76 65 63 20 3d 20 65 6e 76 2e 6d 61 | re_names();.....let.vec.=.env.ma | 
| ee80 | 6b 65 5f 76 65 63 74 6f 72 28 6e 61 6d 65 73 2e    6c 65 6e 28 29 2c 20 28 29 29 3f 3b 0a 20 20 20 | ke_vector(names.len(),.())?;.... | 
| eea0 | 20 66 6f 72 20 28 69 2c 20 6e 61 6d 65 29 20 69    6e 20 6e 61 6d 65 73 2e 69 74 65 72 28 29 2e 65 | .for.(i,.name).in.names.iter().e | 
| eec0 | 6e 75 6d 65 72 61 74 65 28 29 20 7b 0a 20 20 20    20 20 20 20 20 76 65 63 2e 73 65 74 28 69 2c 20 | numerate().{.........vec.set(i,. | 
| eee0 | 6e 61 6d 65 29 3f 3b 0a 20 20 20 20 7d 0a 20 20    20 20 4f 6b 28 76 65 63 29 0a 7d 0a 0a 2f 2f 2f | name)?;.....}.....Ok(vec).}../// | 
| ef00 | 20 52 65 74 75 72 6e 20 61 6c 6c 20 6f 66 20 51    55 45 52 59 27 73 20 61 76 61 69 6c 61 62 6c 65 | .Return.all.of.QUERY's.available | 
| ef20 | 20 63 61 70 74 75 72 65 20 74 61 67 73 2e 0a 2f    2f 2f 20 53 65 65 20 60 74 73 63 2d 6d 61 6b 65 | .capture.tags..///.See.`tsc-make | 
| ef40 | 2d 71 75 65 72 79 27 20 66 6f 72 20 61 6e 20 65    78 70 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 63 61 | -query'.for.an.explanation.of.ca | 
| ef60 | 70 74 75 72 65 20 74 61 67 67 69 6e 67 2e 0a 23    5b 64 65 66 75 6e 28 6d 6f 64 5f 69 6e 5f 6e 61 | pture.tagging..#[defun(mod_in_na | 
| ef80 | 6d 65 20 3d 20 74 72 75 65 29 5d 0a 66 6e 20 63    61 70 74 75 72 65 5f 74 61 67 73 3c 27 65 3e 28 | me.=.true)].fn.capture_tags<'e>( | 
| efa0 | 65 6e 76 3a 20 26 27 65 20 45 6e 76 2c 20 71 75    65 72 79 3a 20 26 51 75 65 72 79 29 20 2d 3e 20 | env:.&'e.Env,.query:.&Query).->. | 
| efc0 | 52 65 73 75 6c 74 3c 56 65 63 74 6f 72 3c 27 65    3e 3e 20 7b 0a 20 20 20 20 6c 65 74 20 73 79 6d | Result<Vector<'e>>.{.....let.sym | 
| efe0 | 62 6f 6c 73 20 3d 20 65 6e 76 2e 6d 61 6b 65 5f    76 65 63 74 6f 72 28 71 75 65 72 79 2e 63 61 70 | bols.=.env.make_vector(query.cap | 
| f000 | 74 75 72 65 5f 74 61 67 73 2e 6c 65 6e 28 29 2c    20 28 29 29 3f 3b 0a 20 20 20 20 66 6f 72 20 28 | ture_tags.len(),.())?;.....for.( | 
| f020 | 69 2c 20 73 79 6d 62 6f 6c 29 20 69 6e 20 71 75    65 72 79 2e 63 61 70 74 75 72 65 5f 74 61 67 73 | i,.symbol).in.query.capture_tags | 
| f040 | 2e 69 74 65 72 28 29 2e 65 6e 75 6d 65 72 61 74    65 28 29 20 7b 0a 20 20 20 20 20 20 20 20 73 79 | .iter().enumerate().{.........sy | 
| f060 | 6d 62 6f 6c 73 2e 73 65 74 28 69 2c 20 73 79 6d    62 6f 6c 29 3f 3b 0a 20 20 20 20 7d 0a 20 20 20 | mbols.set(i,.symbol)?;.....}.... | 
| f080 | 20 4f 6b 28 73 79 6d 62 6f 6c 73 29 0a 7d 0a 0a    2f 2f 2f 20 44 69 73 61 62 6c 65 20 61 20 63 65 | .Ok(symbols).}..///.Disable.a.ce | 
| f0a0 | 72 74 61 69 6e 20 63 61 70 74 75 72 65 20 77 69    74 68 69 6e 20 51 55 45 52 59 2c 20 62 79 20 73 | rtain.capture.within.QUERY,.by.s | 
| f0c0 | 70 65 63 69 66 79 69 6e 67 20 69 74 73 20 4e 41    4d 45 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 54 68 69 73 | pecifying.its.NAME..///.///.This | 
| f0e0 | 20 70 72 65 76 65 6e 74 73 20 74 68 65 20 63 61    70 74 75 72 65 20 66 72 6f 6d 20 62 65 69 6e 67 | .prevents.the.capture.from.being | 
| f100 | 20 72 65 74 75 72 6e 65 64 20 69 6e 20 6d 61 74    63 68 65 73 2c 20 61 6e 64 20 61 6c 73 6f 20 61 | .returned.in.matches,.and.also.a | 
| f120 | 76 6f 69 64 73 20 61 6e 79 0a 2f 2f 2f 20 72 65    73 6f 75 72 63 65 20 75 73 61 67 65 20 61 73 73 | voids.any.///.resource.usage.ass | 
| f140 | 6f 63 69 61 74 65 64 20 77 69 74 68 20 72 65 63    6f 72 64 69 6e 67 20 74 68 65 20 63 61 70 74 75 | ociated.with.recording.the.captu | 
| f160 | 72 65 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20    5f 64 69 73 61 62 6c 65 5f 63 61 70 74 75 72 65 | re..#[defun].fn._disable_capture | 
| f180 | 28 71 75 65 72 79 3a 20 26 6d 75 74 20 51 75 65    72 79 2c 20 6e 61 6d 65 3a 20 53 74 72 69 6e 67 | (query:.&mut.Query,.name:.String | 
| f1a0 | 29 20 2d 3e 20 52 65 73 75 6c 74 3c 28 29 3e 20    7b 0a 20 20 20 20 71 75 65 72 79 2e 72 61 77 2e | ).->.Result<()>.{.....query.raw. | 
| f1c0 | 64 69 73 61 62 6c 65 5f 63 61 70 74 75 72 65 28    26 6e 61 6d 65 29 3b 0a 20 20 20 20 4f 6b 28 28 | disable_capture(&name);.....Ok(( | 
| f1e0 | 29 29 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | )).}..//.----------------------- | 
| f200 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| f220 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| f240 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2f 2f 20 51 75    65 72 79 43 75 72 73 6f 72 0a 0a 69 6d 70 6c 5f | ----------.//.QueryCursor..impl_ | 
| f260 | 70 72 65 64 21 28 71 75 65 72 79 5f 63 75 72 73    6f 72 5f 70 2c 20 26 52 65 66 43 65 6c 6c 3c 51 | pred!(query_cursor_p,.&RefCell<Q | 
| f280 | 75 65 72 79 43 75 72 73 6f 72 3e 29 3b 0a 0a 2f    2f 2f 20 43 72 65 61 74 65 20 61 20 6e 65 77 20 | ueryCursor>);..///.Create.a.new. | 
| f2a0 | 63 75 72 73 6f 72 20 66 6f 72 20 65 78 65 63 75    74 69 6e 67 20 61 20 67 69 76 65 6e 20 71 75 65 | cursor.for.executing.a.given.que | 
| f2c0 | 72 79 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 54 68 65 20    63 75 72 73 6f 72 20 73 74 6f 72 65 73 20 74 68 | ry..///.///.The.cursor.stores.th | 
| f2e0 | 65 20 73 74 61 74 65 20 74 68 61 74 20 69 73 20    6e 65 65 64 65 64 20 74 6f 20 69 74 65 72 61 74 | e.state.that.is.needed.to.iterat | 
| f300 | 69 76 65 6c 79 20 73 65 61 72 63 68 20 66 6f 72    20 6d 61 74 63 68 65 73 2e 0a 23 5b 64 65 66 75 | ively.search.for.matches..#[defu | 
| f320 | 6e 28 75 73 65 72 5f 70 74 72 29 5d 0a 66 6e 20    6d 61 6b 65 5f 71 75 65 72 79 5f 63 75 72 73 6f | n(user_ptr)].fn.make_query_curso | 
| f340 | 72 28 29 20 2d 3e 20 52 65 73 75 6c 74 3c 51 75    65 72 79 43 75 72 73 6f 72 3e 20 7b 0a 20 20 20 | r().->.Result<QueryCursor>.{.... | 
| f360 | 20 4f 6b 28 51 75 65 72 79 43 75 72 73 6f 72 3a    3a 6e 65 77 28 29 29 0a 7d 0a 0a 66 6e 20 74 65 | .Ok(QueryCursor::new()).}..fn.te | 
| f380 | 78 74 5f 63 61 6c 6c 62 61 63 6b 3c 27 65 3e 28    0a 20 20 20 20 74 65 78 74 5f 66 75 6e 63 74 69 | xt_callback<'e>(.....text_functi | 
| f3a0 | 6f 6e 3a 20 56 61 6c 75 65 3c 27 65 3e 2c 0a 20    20 20 20 65 72 72 6f 72 3a 20 26 27 65 20 52 65 | on:.Value<'e>,.....error:.&'e.Re | 
| f3c0 | 66 43 65 6c 6c 3c 4f 70 74 69 6f 6e 3c 45 72 72    6f 72 3e 3e 2c 0a 29 20 2d 3e 20 69 6d 70 6c 20 | fCell<Option<Error>>,.).->.impl. | 
| f3e0 | 54 65 78 74 50 72 6f 76 69 64 65 72 3c 27 65 3e    20 7b 0a 20 20 20 20 6d 6f 76 65 20 7c 63 68 69 | TextProvider<'e>.{.....move.|chi | 
| f400 | 6c 64 3a 20 4e 6f 64 65 7c 20 7b 0a 20 20 20 20    20 20 20 20 6c 65 74 20 62 65 67 20 3d 20 63 68 | ld:.Node|.{.........let.beg.=.ch | 
| f420 | 69 6c 64 2e 6c 69 73 70 5f 73 74 61 72 74 5f 62    79 74 65 28 29 3b 0a 20 20 20 20 20 20 20 20 6c | ild.lisp_start_byte();.........l | 
| f440 | 65 74 20 65 6e 64 20 3d 20 63 68 69 6c 64 2e 6c    69 73 70 5f 65 6e 64 5f 62 79 74 65 28 29 3b 0a | et.end.=.child.lisp_end_byte();. | 
| f460 | 20 20 20 20 20 20 20 20 6c 65 74 20 74 65 78 74    20 3d 20 74 65 78 74 5f 66 75 6e 63 74 69 6f 6e | ........let.text.=.text_function | 
| f480 | 2e 63 61 6c 6c 28 28 62 65 67 2c 20 65 6e 64 29    29 2e 61 6e 64 5f 74 68 65 6e 28 7c 76 7c 20 76 | .call((beg,.end)).and_then(|v|.v | 
| f4a0 | 2e 69 6e 74 6f 5f 72 75 73 74 28 29 29 2e 75 6e    77 72 61 70 5f 6f 72 5f 65 6c 73 65 28 7c 65 7c | .into_rust()).unwrap_or_else(|e| | 
| f4c0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65    72 72 6f 72 2e 62 6f 72 72 6f 77 5f 6d 75 74 28 | .{.............error.borrow_mut( | 
| f4e0 | 29 2e 72 65 70 6c 61 63 65 28 65 29 3b 0a 20 20    20 20 20 20 20 20 20 20 20 20 22 22 2e 74 6f 5f | ).replace(e);............."".to_ | 
| f500 | 6f 77 6e 65 64 28 29 0a 20 20 20 20 20 20 20 20    7d 29 3b 0a 20 20 20 20 20 20 20 20 69 74 65 72 | owned().........});.........iter | 
| f520 | 3a 3a 6f 6e 63 65 28 74 65 78 74 2e 69 6e 74 6f    5f 62 79 74 65 73 28 29 29 0a 20 20 20 20 7d 0a | ::once(text.into_bytes()).....}. | 
| f540 | 7d 0a 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 5f    71 75 65 72 79 5f 63 75 72 73 6f 72 5f 6d 61 74 | }..#[defun].fn._query_cursor_mat | 
| f560 | 63 68 65 73 3c 27 65 3e 28 0a 20 20 20 20 63 75    72 73 6f 72 3a 20 26 6d 75 74 20 51 75 65 72 79 | ches<'e>(.....cursor:.&mut.Query | 
| f580 | 43 75 72 73 6f 72 2c 0a 20 20 20 20 71 75 65 72    79 3a 20 26 51 75 65 72 79 2c 0a 20 20 20 20 6e | Cursor,.....query:.&Query,.....n | 
| f5a0 | 6f 64 65 3a 20 26 52 4e 6f 64 65 2c 0a 20 20 20    20 74 65 78 74 5f 66 75 6e 63 74 69 6f 6e 3a 20 | ode:.&RNode,.....text_function:. | 
| f5c0 | 56 61 6c 75 65 3c 27 65 3e 2c 0a 29 20 2d 3e 20    52 65 73 75 6c 74 3c 56 65 63 74 6f 72 3c 27 65 | Value<'e>,.).->.Result<Vector<'e | 
| f5e0 | 3e 3e 20 7b 0a 20 20 20 20 6c 65 74 20 72 61 77    20 3d 20 26 71 75 65 72 79 2e 72 61 77 3b 0a 20 | >>.{.....let.raw.=.&query.raw;.. | 
| f600 | 20 20 20 6c 65 74 20 65 72 72 6f 72 20 3d 20 52    65 66 43 65 6c 6c 3a 3a 6e 65 77 28 4e 6f 6e 65 | ...let.error.=.RefCell::new(None | 
| f620 | 29 3b 0a 20 20 20 20 6c 65 74 20 6d 61 74 63 68    65 73 20 3d 20 63 75 72 73 6f 72 2e 6d 61 74 63 | );.....let.matches.=.cursor.matc | 
| f640 | 68 65 73 28 0a 20 20 20 20 20 20 20 20 72 61 77    2c 0a 20 20 20 20 20 20 20 20 6e 6f 64 65 2e 62 | hes(.........raw,.........node.b | 
| f660 | 6f 72 72 6f 77 28 29 2e 63 6c 6f 6e 65 28 29 2c    0a 20 20 20 20 20 20 20 20 74 65 78 74 5f 63 61 | orrow().clone(),.........text_ca | 
| f680 | 6c 6c 62 61 63 6b 28 74 65 78 74 5f 66 75 6e 63    74 69 6f 6e 2c 20 26 65 72 72 6f 72 29 2c 0a 20 | llback(text_function,.&error),.. | 
| f6a0 | 20 20 20 29 3b 0a 20 20 20 20 6c 65 74 20 6d 75    74 20 76 65 63 20 3d 20 76 65 63 21 5b 5d 3b 0a | ...);.....let.mut.vec.=.vec![];. | 
| f6c0 | 20 20 20 20 6c 65 74 20 65 6e 76 20 3d 20 74 65    78 74 5f 66 75 6e 63 74 69 6f 6e 2e 65 6e 76 3b | ....let.env.=.text_function.env; | 
| f6e0 | 0a 20 20 20 20 66 6f 72 20 6d 20 69 6e 20 6d 61    74 63 68 65 73 20 7b 0a 20 20 20 20 20 20 20 20 | .....for.m.in.matches.{......... | 
| f700 | 69 66 20 6c 65 74 20 53 6f 6d 65 28 65 72 72 6f    72 29 20 3d 20 65 72 72 6f 72 2e 62 6f 72 72 6f | if.let.Some(error).=.error.borro | 
| f720 | 77 5f 6d 75 74 28 29 2e 74 61 6b 65 28 29 20 7b    0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 | w_mut().take().{.............ret | 
| f740 | 75 72 6e 20 45 72 72 28 65 72 72 6f 72 29 3b 0a    20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | urn.Err(error);.........}....... | 
| f760 | 20 20 6c 65 74 20 63 61 70 74 75 72 65 73 20 3d    20 65 6e 76 2e 6d 61 6b 65 5f 76 65 63 74 6f 72 | ..let.captures.=.env.make_vector | 
| f780 | 28 6d 2e 63 61 70 74 75 72 65 73 2e 6c 65 6e 28    29 2c 20 28 29 29 3f 3b 0a 20 20 20 20 20 20 20 | (m.captures.len(),.())?;........ | 
| f7a0 | 20 66 6f 72 20 28 63 69 2c 20 63 29 20 69 6e 20    6d 2e 63 61 70 74 75 72 65 73 2e 69 74 65 72 28 | .for.(ci,.c).in.m.captures.iter( | 
| f7c0 | 29 2e 65 6e 75 6d 65 72 61 74 65 28 29 20 7b 0a    20 20 20 20 20 20 20 20 20 20 20 20 6c 65 74 20 | ).enumerate().{.............let. | 
| f7e0 | 63 61 70 74 75 72 65 64 5f 6e 6f 64 65 20 3d 20    6e 6f 64 65 2e 6d 61 70 28 7c 5f 7c 20 63 2e 6e | captured_node.=.node.map(|_|.c.n | 
| f800 | 6f 64 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20    20 20 6c 65 74 20 63 61 70 74 75 72 65 20 3d 20 | ode);.............let.capture.=. | 
| f820 | 65 6e 76 2e 63 6f 6e 73 28 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 26 71 75 65 72 79 | env.cons(.................&query | 
| f840 | 2e 63 61 70 74 75 72 65 5f 74 61 67 73 5b 63 2e    69 6e 64 65 78 20 61 73 20 75 73 69 7a 65 5d 2c | .capture_tags[c.index.as.usize], | 
| f860 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 63 61 70 74 75 72 65 64 5f 6e 6f 64 65 0a 20 | .................captured_node.. | 
| f880 | 20 20 20 20 20 20 20 20 20 20 20 29 3f 3b 0a 20    20 20 20 20 20 20 20 20 20 20 20 63 61 70 74 75 | ...........)?;.............captu | 
| f8a0 | 72 65 73 2e 73 65 74 28 63 69 2c 20 63 61 70 74    75 72 65 29 3f 3b 0a 20 20 20 20 20 20 20 20 7d | res.set(ci,.capture)?;.........} | 
| f8c0 | 0a 20 20 20 20 20 20 20 20 6c 65 74 20 5f 6d 61    74 63 68 20 3d 20 65 6e 76 2e 63 6f 6e 73 28 6d | .........let._match.=.env.cons(m | 
| f8e0 | 2e 70 61 74 74 65 72 6e 5f 69 6e 64 65 78 2c 20    63 61 70 74 75 72 65 73 29 3f 3b 0a 20 20 20 20 | .pattern_index,.captures)?;..... | 
| f900 | 20 20 20 20 76 65 63 2e 70 75 73 68 28 5f 6d 61    74 63 68 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | ....vec.push(_match);.....}..... | 
| f920 | 76 65 63 5f 74 6f 5f 76 65 63 74 6f 72 28 65 6e    76 2c 20 76 65 63 29 0a 7d 0a 0a 2f 2f 20 54 4f | vec_to_vector(env,.vec).}..//.TO | 
| f940 | 44 4f 3a 20 4d 61 6b 65 20 5f 71 75 65 72 79 5f    63 75 72 73 6f 72 5f 63 61 70 74 75 72 65 73 20 | DO:.Make._query_cursor_captures. | 
| f960 | 61 63 63 65 70 74 20 61 20 60 63 61 70 74 75 72    65 5f 74 79 70 65 60 20 69 6e 73 74 65 61 64 2c | accept.a.`capture_type`.instead, | 
| f980 | 20 65 2e 67 2e 20 6e 6f 64 65 20 74 79 70 65 2c    20 62 79 74 65 20 72 61 6e 67 65 2e 0a 23 5b 64 | .e.g..node.type,.byte.range..#[d | 
| f9a0 | 65 66 75 6e 5d 0a 66 6e 20 5f 71 75 65 72 79 5f    63 75 72 73 6f 72 5f 63 61 70 74 75 72 65 73 5f | efun].fn._query_cursor_captures_ | 
| f9c0 | 31 3c 27 65 3e 28 0a 20 20 20 20 63 75 72 73 6f    72 3a 20 26 6d 75 74 20 51 75 65 72 79 43 75 72 | 1<'e>(.....cursor:.&mut.QueryCur | 
| f9e0 | 73 6f 72 2c 0a 20 20 20 20 71 75 65 72 79 3a 20    56 61 6c 75 65 3c 27 65 3e 2c 0a 20 20 20 20 6e | sor,.....query:.Value<'e>,.....n | 
| fa00 | 6f 64 65 3a 20 26 52 4e 6f 64 65 2c 0a 20 20 20    20 74 65 78 74 5f 66 75 6e 63 74 69 6f 6e 3a 20 | ode:.&RNode,.....text_function:. | 
| fa20 | 56 61 6c 75 65 3c 27 65 3e 2c 0a 29 20 2d 3e 20    52 65 73 75 6c 74 3c 56 65 63 74 6f 72 3c 27 65 | Value<'e>,.).->.Result<Vector<'e | 
| fa40 | 3e 3e 20 7b 0a 20 20 20 20 6c 65 74 20 71 75 65    72 79 20 3d 20 71 75 65 72 79 2e 69 6e 74 6f 5f | >>.{.....let.query.=.query.into_ | 
| fa60 | 72 75 73 74 3a 3a 3c 26 52 65 66 43 65 6c 6c 3c    51 75 65 72 79 3e 3e 28 29 3f 2e 62 6f 72 72 6f | rust::<&RefCell<Query>>()?.borro | 
| fa80 | 77 28 29 3b 0a 20 20 20 20 6c 65 74 20 72 61 77    20 3d 20 26 71 75 65 72 79 2e 72 61 77 3b 0a 20 | w();.....let.raw.=.&query.raw;.. | 
| faa0 | 20 20 20 6c 65 74 20 65 72 72 6f 72 20 3d 20 52    65 66 43 65 6c 6c 3a 3a 6e 65 77 28 4e 6f 6e 65 | ...let.error.=.RefCell::new(None | 
| fac0 | 29 3b 0a 20 20 20 20 6c 65 74 20 63 61 70 74 75    72 65 73 20 3d 20 63 75 72 73 6f 72 2e 63 61 70 | );.....let.captures.=.cursor.cap | 
| fae0 | 74 75 72 65 73 28 0a 20 20 20 20 20 20 20 20 72    61 77 2c 0a 20 20 20 20 20 20 20 20 6e 6f 64 65 | tures(.........raw,.........node | 
| fb00 | 2e 62 6f 72 72 6f 77 28 29 2e 63 6c 6f 6e 65 28    29 2c 0a 20 20 20 20 20 20 20 20 74 65 78 74 5f | .borrow().clone(),.........text_ | 
| fb20 | 63 61 6c 6c 62 61 63 6b 28 74 65 78 74 5f 66 75    6e 63 74 69 6f 6e 2c 20 26 65 72 72 6f 72 29 2c | callback(text_function,.&error), | 
| fb40 | 0a 20 20 20 20 29 3b 0a 20 20 20 20 6c 65 74 20    6d 75 74 20 76 65 63 20 3d 20 76 65 63 21 5b 5d | .....);.....let.mut.vec.=.vec![] | 
| fb60 | 3b 0a 20 20 20 20 6c 65 74 20 65 6e 76 20 3d 20    74 65 78 74 5f 66 75 6e 63 74 69 6f 6e 2e 65 6e | ;.....let.env.=.text_function.en | 
| fb80 | 76 3b 0a 20 20 20 20 66 6f 72 20 28 6d 2c 20 63    61 70 74 75 72 65 5f 69 6e 64 65 78 29 20 69 6e | v;.....for.(m,.capture_index).in | 
| fba0 | 20 63 61 70 74 75 72 65 73 20 7b 0a 20 20 20 20    20 20 20 20 69 66 20 6c 65 74 20 53 6f 6d 65 28 | .captures.{.........if.let.Some( | 
| fbc0 | 65 72 72 6f 72 29 20 3d 20 65 72 72 6f 72 2e 62    6f 72 72 6f 77 5f 6d 75 74 28 29 2e 74 61 6b 65 | error).=.error.borrow_mut().take | 
| fbe0 | 28 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20    20 72 65 74 75 72 6e 20 45 72 72 28 65 72 72 6f | ().{.............return.Err(erro | 
| fc00 | 72 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20    20 20 20 20 20 20 6c 65 74 20 63 20 3d 20 6d 2e | r);.........}.........let.c.=.m. | 
| fc20 | 63 61 70 74 75 72 65 73 5b 63 61 70 74 75 72 65    5f 69 6e 64 65 78 5d 3b 0a 20 20 20 20 20 20 20 | captures[capture_index];........ | 
| fc40 | 20 6c 65 74 20 63 61 70 74 75 72 65 20 3d 20 65    6e 76 2e 63 6f 6e 73 28 0a 20 20 20 20 20 20 20 | .let.capture.=.env.cons(........ | 
| fc60 | 20 20 20 20 20 26 71 75 65 72 79 2e 63 61 70 74    75 72 65 5f 74 61 67 73 5b 63 2e 69 6e 64 65 78 | .....&query.capture_tags[c.index | 
| fc80 | 20 61 73 20 75 73 69 7a 65 5d 2c 0a 20 20 20 20    20 20 20 20 20 20 20 20 63 2e 6e 6f 64 65 2e 6c | .as.usize],.............c.node.l | 
| fca0 | 69 73 70 5f 62 79 74 65 5f 72 61 6e 67 65 28 65    6e 76 29 3f 2c 0a 20 20 20 20 20 20 20 20 29 3f | isp_byte_range(env)?,.........)? | 
| fcc0 | 3b 0a 20 20 20 20 20 20 20 20 76 65 63 2e 70 75    73 68 28 28 6d 2e 70 61 74 74 65 72 6e 5f 69 6e | ;.........vec.push((m.pattern_in | 
| fce0 | 64 65 78 2c 20 63 61 70 74 75 72 65 29 29 3b 0a    20 20 20 20 7d 0a 20 20 20 20 2f 2f 20 50 72 69 | dex,.capture));.....}.....//.Pri | 
| fd00 | 6f 72 69 74 69 7a 65 20 63 61 70 74 75 72 65 73    20 66 72 6f 6d 20 65 61 72 6c 69 65 72 20 70 61 | oritize.captures.from.earlier.pa | 
| fd20 | 74 74 65 72 6e 73 2e 0a 20 20 20 20 76 65 63 2e    73 6f 72 74 5f 75 6e 73 74 61 62 6c 65 5f 62 79 | tterns......vec.sort_unstable_by | 
| fd40 | 5f 6b 65 79 28 7c 28 69 2c 20 5f 29 7c 20 2a 69    29 3b 0a 20 20 20 20 6c 65 74 20 76 65 63 74 6f | _key(|(i,._)|.*i);.....let.vecto | 
| fd60 | 72 20 3d 20 65 6e 76 2e 6d 61 6b 65 5f 76 65 63    74 6f 72 28 76 65 63 2e 6c 65 6e 28 29 2c 20 28 | r.=.env.make_vector(vec.len(),.( | 
| fd80 | 29 29 3f 3b 0a 20 20 20 20 66 6f 72 20 28 69 2c    20 28 5f 2c 20 76 29 29 20 69 6e 20 76 65 63 2e | ))?;.....for.(i,.(_,.v)).in.vec. | 
| fda0 | 69 6e 74 6f 5f 69 74 65 72 28 29 2e 65 6e 75 6d    65 72 61 74 65 28 29 20 7b 0a 20 20 20 20 20 20 | into_iter().enumerate().{....... | 
| fdc0 | 20 20 76 65 63 74 6f 72 2e 73 65 74 28 69 2c 20    76 29 3f 3b 0a 20 20 20 20 7d 0a 20 20 20 20 4f | ..vector.set(i,.v)?;.....}.....O | 
| fde0 | 6b 28 76 65 63 74 6f 72 29 0a 7d 0a 0a 23 5b 64    65 66 75 6e 5d 0a 66 6e 20 5f 71 75 65 72 79 5f | k(vector).}..#[defun].fn._query_ | 
| fe00 | 63 75 72 73 6f 72 5f 63 61 70 74 75 72 65 73 3c    27 65 3e 28 0a 20 20 20 20 63 75 72 73 6f 72 3a | cursor_captures<'e>(.....cursor: | 
| fe20 | 20 26 6d 75 74 20 51 75 65 72 79 43 75 72 73 6f    72 2c 0a 20 20 20 20 71 75 65 72 79 3a 20 56 61 | .&mut.QueryCursor,.....query:.Va | 
| fe40 | 6c 75 65 3c 27 65 3e 2c 0a 20 20 20 20 6e 6f 64    65 3a 20 26 52 4e 6f 64 65 2c 0a 20 20 20 20 74 | lue<'e>,.....node:.&RNode,.....t | 
| fe60 | 65 78 74 5f 66 75 6e 63 74 69 6f 6e 3a 20 56 61    6c 75 65 3c 27 65 3e 2c 0a 29 20 2d 3e 20 52 65 | ext_function:.Value<'e>,.).->.Re | 
| fe80 | 73 75 6c 74 3c 56 65 63 74 6f 72 3c 27 65 3e 3e    20 7b 0a 20 20 20 20 6c 65 74 20 71 75 65 72 79 | sult<Vector<'e>>.{.....let.query | 
| fea0 | 20 3d 20 71 75 65 72 79 2e 69 6e 74 6f 5f 72 75    73 74 3a 3a 3c 26 52 65 66 43 65 6c 6c 3c 51 75 | .=.query.into_rust::<&RefCell<Qu | 
| fec0 | 65 72 79 3e 3e 28 29 3f 2e 62 6f 72 72 6f 77 28    29 3b 0a 20 20 20 20 6c 65 74 20 72 61 77 20 3d | ery>>()?.borrow();.....let.raw.= | 
| fee0 | 20 26 71 75 65 72 79 2e 72 61 77 3b 0a 20 20 20    20 6c 65 74 20 65 72 72 6f 72 20 3d 20 52 65 66 | .&query.raw;.....let.error.=.Ref | 
| ff00 | 43 65 6c 6c 3a 3a 6e 65 77 28 4e 6f 6e 65 29 3b    0a 20 20 20 20 6c 65 74 20 63 61 70 74 75 72 65 | Cell::new(None);.....let.capture | 
| ff20 | 73 20 3d 20 63 75 72 73 6f 72 2e 63 61 70 74 75    72 65 73 28 0a 20 20 20 20 20 20 20 20 72 61 77 | s.=.cursor.captures(.........raw | 
| ff40 | 2c 0a 20 20 20 20 20 20 20 20 6e 6f 64 65 2e 62    6f 72 72 6f 77 28 29 2e 63 6c 6f 6e 65 28 29 2c | ,.........node.borrow().clone(), | 
| ff60 | 0a 20 20 20 20 20 20 20 20 74 65 78 74 5f 63 61    6c 6c 62 61 63 6b 28 74 65 78 74 5f 66 75 6e 63 | .........text_callback(text_func | 
| ff80 | 74 69 6f 6e 2c 20 26 65 72 72 6f 72 29 2c 0a 20    20 20 20 29 3b 0a 20 20 20 20 6c 65 74 20 6d 75 | tion,.&error),.....);.....let.mu | 
| ffa0 | 74 20 76 65 63 20 3d 20 76 65 63 21 5b 5d 3b 0a    20 20 20 20 6c 65 74 20 65 6e 76 20 3d 20 74 65 | t.vec.=.vec![];.....let.env.=.te | 
| ffc0 | 78 74 5f 66 75 6e 63 74 69 6f 6e 2e 65 6e 76 3b    0a 20 20 20 20 66 6f 72 20 28 6d 2c 20 63 61 70 | xt_function.env;.....for.(m,.cap | 
| ffe0 | 74 75 72 65 5f 69 6e 64 65 78 29 20 69 6e 20 63    61 70 74 75 72 65 73 20 7b 0a 20 20 20 20 20 20 | ture_index).in.captures.{....... | 
| 10000 | 20 20 69 66 20 6c 65 74 20 53 6f 6d 65 28 65 72    72 6f 72 29 20 3d 20 65 72 72 6f 72 2e 62 6f 72 | ..if.let.Some(error).=.error.bor | 
| 10020 | 72 6f 77 5f 6d 75 74 28 29 2e 74 61 6b 65 28 29    20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 | row_mut().take().{.............r | 
| 10040 | 65 74 75 72 6e 20 45 72 72 28 65 72 72 6f 72 29    3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | eturn.Err(error);.........}..... | 
| 10060 | 20 20 20 20 6c 65 74 20 63 20 3d 20 6d 2e 63 61    70 74 75 72 65 73 5b 63 61 70 74 75 72 65 5f 69 | ....let.c.=.m.captures[capture_i | 
| 10080 | 6e 64 65 78 5d 3b 0a 20 20 20 20 20 20 20 20 6c    65 74 20 63 61 70 74 75 72 65 64 5f 6e 6f 64 65 | ndex];.........let.captured_node | 
| 100a0 | 20 3d 20 6e 6f 64 65 2e 6d 61 70 28 7c 5f 7c 20    63 2e 6e 6f 64 65 29 3b 0a 20 20 20 20 20 20 20 | .=.node.map(|_|.c.node);........ | 
| 100c0 | 20 6c 65 74 20 63 61 70 74 75 72 65 20 3d 20 65    6e 76 2e 63 6f 6e 73 28 0a 20 20 20 20 20 20 20 | .let.capture.=.env.cons(........ | 
| 100e0 | 20 20 20 20 20 26 71 75 65 72 79 2e 63 61 70 74    75 72 65 5f 74 61 67 73 5b 63 2e 69 6e 64 65 78 | .....&query.capture_tags[c.index | 
| 10100 | 20 61 73 20 75 73 69 7a 65 5d 2c 0a 20 20 20 20    20 20 20 20 20 20 20 20 63 61 70 74 75 72 65 64 | .as.usize],.............captured | 
| 10120 | 5f 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 29 3f    3b 0a 20 20 20 20 20 20 20 20 76 65 63 2e 70 75 | _node.........)?;.........vec.pu | 
| 10140 | 73 68 28 63 61 70 74 75 72 65 29 3b 0a 20 20 20    20 7d 0a 0a 20 20 20 20 2f 2f 20 58 58 58 0a 20 | sh(capture);.....}......//.XXX.. | 
| 10160 | 20 20 20 6c 65 74 20 76 65 63 74 6f 72 20 3d 20    65 6e 76 2e 6d 61 6b 65 5f 76 65 63 74 6f 72 28 | ...let.vector.=.env.make_vector( | 
| 10180 | 76 65 63 2e 6c 65 6e 28 29 2c 20 28 29 29 3f 3b    0a 20 20 20 20 66 6f 72 20 28 69 2c 20 76 29 20 | vec.len(),.())?;.....for.(i,.v). | 
| 101a0 | 69 6e 20 76 65 63 2e 69 6e 74 6f 5f 69 74 65 72    28 29 2e 65 6e 75 6d 65 72 61 74 65 28 29 20 7b | in.vec.into_iter().enumerate().{ | 
| 101c0 | 0a 20 20 20 20 20 20 20 20 76 65 63 74 6f 72 2e    73 65 74 28 69 2c 20 76 29 3f 3b 0a 20 20 20 20 | .........vector.set(i,.v)?;..... | 
| 101e0 | 7d 0a 20 20 20 20 4f 6b 28 76 65 63 74 6f 72 29    0a 7d 0a 0a 2f 2f 2f 20 4c 69 6d 69 74 20 43 55 | }.....Ok(vector).}..///.Limit.CU | 
| 10200 | 52 53 4f 52 27 73 20 71 75 65 72 79 20 65 78 65    63 75 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 72 | RSOR's.query.executions.to.the.r | 
| 10220 | 61 6e 67 65 20 6f 66 20 62 79 74 65 20 70 6f 73    69 74 69 6f 6e 73 2c 20 66 72 6f 6d 20 42 45 47 | ange.of.byte.positions,.from.BEG | 
| 10240 | 20 74 6f 20 45 4e 44 2e 0a 23 5b 64 65 66 75 6e    5d 0a 66 6e 20 5f 71 75 65 72 79 5f 63 75 72 73 | .to.END..#[defun].fn._query_curs | 
| 10260 | 6f 72 5f 73 65 74 5f 62 79 74 65 5f 72 61 6e 67    65 28 63 75 72 73 6f 72 3a 20 26 6d 75 74 20 51 | or_set_byte_range(cursor:.&mut.Q | 
| 10280 | 75 65 72 79 43 75 72 73 6f 72 2c 20 62 65 67 3a    20 42 79 74 65 50 6f 73 2c 20 65 6e 64 3a 20 42 | ueryCursor,.beg:.BytePos,.end:.B | 
| 102a0 | 79 74 65 50 6f 73 29 20 2d 3e 20 52 65 73 75 6c    74 3c 28 29 3e 20 7b 0a 20 20 20 20 63 75 72 73 | ytePos).->.Result<()>.{.....curs | 
| 102c0 | 6f 72 2e 73 65 74 5f 62 79 74 65 5f 72 61 6e 67    65 28 62 65 67 2e 69 6e 74 6f 28 29 2e 2e 65 6e | or.set_byte_range(beg.into()..en | 
| 102e0 | 64 2e 69 6e 74 6f 28 29 29 3b 0a 20 20 20 20 4f    6b 28 28 29 29 0a 7d 0a 0a 2f 2f 2f 20 4c 69 6d | d.into());.....Ok(()).}..///.Lim | 
| 10300 | 69 74 20 43 55 52 53 4f 52 27 73 20 71 75 65 72    79 20 65 78 65 63 75 74 69 6f 6e 73 20 74 6f 20 | it.CURSOR's.query.executions.to. | 
| 10320 | 74 68 65 20 70 6f 69 6e 74 20 72 61 6e 67 65 2c    20 66 72 6f 6d 20 42 45 47 20 74 6f 20 45 4e 44 | the.point.range,.from.BEG.to.END | 
| 10340 | 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 41 20 22 70 6f 69    6e 74 22 20 69 6e 20 74 68 69 73 20 63 6f 6e 74 | ..///.///.A."point".in.this.cont | 
| 10360 | 65 78 74 20 69 73 20 61 20 28 4c 49 4e 45 2d 4e    55 4d 42 45 52 20 2e 20 42 59 54 45 2d 43 4f 4c | ext.is.a.(LINE-NUMBER...BYTE-COL | 
| 10380 | 55 4d 4e 29 20 70 61 69 72 2e 20 53 65 65 0a 2f    2f 2f 20 60 74 73 63 2d 70 61 72 73 65 2d 63 68 | UMN).pair..See.///.`tsc-parse-ch | 
| 103a0 | 75 6e 6b 73 27 20 66 6f 72 20 61 20 6d 6f 72 65    20 64 65 74 61 69 6c 65 64 20 65 78 70 6c 61 6e | unks'.for.a.more.detailed.explan | 
| 103c0 | 61 74 69 6f 6e 2e 0a 23 5b 64 65 66 75 6e 5d 0a    66 6e 20 5f 71 75 65 72 79 5f 63 75 72 73 6f 72 | ation..#[defun].fn._query_cursor | 
| 103e0 | 5f 73 65 74 5f 70 6f 69 6e 74 5f 72 61 6e 67 65    28 63 75 72 73 6f 72 3a 20 26 6d 75 74 20 51 75 | _set_point_range(cursor:.&mut.Qu | 
| 10400 | 65 72 79 43 75 72 73 6f 72 2c 20 62 65 67 3a 20    50 6f 69 6e 74 2c 20 65 6e 64 3a 20 50 6f 69 6e | eryCursor,.beg:.Point,.end:.Poin | 
| 10420 | 74 29 20 2d 3e 20 52 65 73 75 6c 74 3c 28 29 3e    20 7b 0a 20 20 20 20 63 75 72 73 6f 72 2e 73 65 | t).->.Result<()>.{.....cursor.se | 
| 10440 | 74 5f 70 6f 69 6e 74 5f 72 61 6e 67 65 28 62 65    67 2e 69 6e 74 6f 28 29 2e 2e 65 6e 64 2e 69 6e | t_point_range(beg.into()..end.in | 
| 10460 | 74 6f 28 29 29 3b 0a 20 20 20 20 4f 6b 28 28 29    29 0a 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 | to());.....Ok(()).}............. | 
| 10480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 104a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 104c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 104e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 105a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 105c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 105e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10600 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 74 72 65 65 2e 72 73 00 00 00 | tsc-20220212.1632/src/tree.rs... | 
| 10620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10660 | 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 | 
| 10680 | 30 30 30 36 32 35 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 36 37 36 00 20 30 00 00 00 | 0006257.00000000000.013676..0... | 
| 106a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 106c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 106e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10700 | 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................... | 
| 10720 | 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................... | 
| 10740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 107a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 107c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 107e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 10800 | 75 73 65 20 65 6d 61 63 73 3a 3a 7b 64 65 66 75    6e 2c 20 56 61 6c 75 65 2c 20 52 65 73 75 6c 74 | use.emacs::{defun,.Value,.Result | 
| 10820 | 2c 20 56 65 63 74 6f 72 7d 3b 0a 0a 75 73 65 20    74 72 65 65 5f 73 69 74 74 65 72 3a 3a 7b 49 6e | ,.Vector};..use.tree_sitter::{In | 
| 10840 | 70 75 74 45 64 69 74 2c 20 54 72 65 65 7d 3b 0a    0a 75 73 65 20 63 72 61 74 65 3a 3a 7b 0a 20 20 | putEdit,.Tree};..use.crate::{... | 
| 10860 | 20 20 74 79 70 65 73 3a 3a 7b 53 68 61 72 65 64    2c 20 42 79 74 65 50 6f 73 2c 20 50 6f 69 6e 74 | ..types::{Shared,.BytePos,.Point | 
| 10880 | 2c 20 52 61 6e 67 65 7d 2c 0a 20 20 20 20 6c 61    6e 67 3a 3a 4c 61 6e 67 75 61 67 65 2c 0a 20 20 | ,.Range},.....lang::Language,... | 
| 108a0 | 20 20 6e 6f 64 65 3a 3a 52 4e 6f 64 65 2c 0a 7d    3b 0a 0a 2f 2f 20 58 58 58 3a 20 49 66 20 77 65 | ..node::RNode,.};..//.XXX:.If.we | 
| 108c0 | 20 70 61 73 73 20 61 20 26 2c 20 23 5b 64 65 66    75 6e 5d 20 77 69 6c 6c 20 61 73 73 75 6d 65 20 | .pass.a.&,.#[defun].will.assume. | 
| 108e0 | 69 74 27 73 20 72 65 66 63 65 6c 6c 2d 77 72 61    70 70 65 64 2e 20 49 66 20 77 65 20 70 61 73 73 | it's.refcell-wrapped..If.we.pass | 
| 10900 | 20 61 20 56 61 6c 75 65 2c 20 77 65 20 6e 65 65    64 0a 2f 2f 20 2e 69 6e 74 6f 5f 72 75 73 74 28 | .a.Value,.we.need.//..into_rust( | 
| 10920 | 29 20 62 6f 69 6c 65 72 70 6c 61 74 65 2e 20 54    68 69 73 20 69 73 20 61 20 74 72 69 63 6b 20 74 | ).boilerplate..This.is.a.trick.t | 
| 10940 | 6f 20 61 76 6f 69 64 20 62 6f 74 68 2e 0a 70 75    62 28 63 72 61 74 65 29 20 74 79 70 65 20 42 6f | o.avoid.both..pub(crate).type.Bo | 
| 10960 | 72 72 6f 77 65 64 3c 27 65 2c 20 54 3e 20 3d 20    26 27 65 20 53 68 61 72 65 64 3c 54 3e 3b 0a 0a | rrowed<'e,.T>.=.&'e.Shared<T>;.. | 
| 10980 | 69 6d 70 6c 5f 70 72 65 64 21 28 74 72 65 65 5f    70 2c 20 26 53 68 61 72 65 64 3c 54 72 65 65 3e | impl_pred!(tree_p,.&Shared<Tree> | 
| 109a0 | 29 3b 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 74    68 65 20 6c 61 6e 67 75 61 67 65 20 74 68 61 74 | );..///.Return.the.language.that | 
| 109c0 | 20 77 61 73 20 75 73 65 64 20 74 6f 20 70 61 72    73 65 20 74 68 65 20 73 79 6e 74 61 78 20 54 52 | .was.used.to.parse.the.syntax.TR | 
| 109e0 | 45 45 2e 0a 23 5b 64 65 66 75 6e 28 6d 6f 64 5f    69 6e 5f 6e 61 6d 65 20 3d 20 74 72 75 65 29 5d | EE..#[defun(mod_in_name.=.true)] | 
| 10a00 | 0a 66 6e 20 6c 61 6e 67 75 61 67 65 28 74 72 65    65 3a 20 42 6f 72 72 6f 77 65 64 3c 54 72 65 65 | .fn.language(tree:.Borrowed<Tree | 
| 10a20 | 3e 29 20 2d 3e 20 52 65 73 75 6c 74 3c 4c 61 6e    67 75 61 67 65 3e 20 7b 0a 20 20 20 20 4f 6b 28 | >).->.Result<Language>.{.....Ok( | 
| 10a40 | 74 72 65 65 2e 62 6f 72 72 6f 77 28 29 2e 6c 61    6e 67 75 61 67 65 28 29 2e 69 6e 74 6f 28 29 29 | tree.borrow().language().into()) | 
| 10a60 | 0a 7d 0a 0a 2f 2f 2f 20 52 65 74 75 72 6e 20 74    68 65 20 73 65 78 70 20 72 65 70 72 65 73 65 6e | .}..///.Return.the.sexp.represen | 
| 10a80 | 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 79    6e 74 61 78 20 54 52 45 45 2c 20 69 6e 20 61 20 | tation.of.the.syntax.TREE,.in.a. | 
| 10aa0 | 73 74 72 69 6e 67 2e 0a 23 5b 64 65 66 75 6e 28    6d 6f 64 5f 69 6e 5f 6e 61 6d 65 20 3d 20 74 72 | string..#[defun(mod_in_name.=.tr | 
| 10ac0 | 75 65 29 5d 0a 66 6e 20 74 6f 5f 73 65 78 70 28    74 72 65 65 3a 20 42 6f 72 72 6f 77 65 64 3c 54 | ue)].fn.to_sexp(tree:.Borrowed<T | 
| 10ae0 | 72 65 65 3e 29 20 2d 3e 20 52 65 73 75 6c 74 3c    53 74 72 69 6e 67 3e 20 7b 0a 20 20 20 20 4f 6b | ree>).->.Result<String>.{.....Ok | 
| 10b00 | 28 74 72 65 65 2e 62 6f 72 72 6f 77 28 29 2e 72    6f 6f 74 5f 6e 6f 64 65 28 29 2e 74 6f 5f 73 65 | (tree.borrow().root_node().to_se | 
| 10b20 | 78 70 28 29 29 0a 7d 0a 0a 2f 2f 2f 20 52 65 74    75 72 6e 20 74 68 65 20 72 6f 6f 74 20 6e 6f 64 | xp()).}..///.Return.the.root.nod | 
| 10b40 | 65 20 6f 66 20 74 68 65 20 73 79 6e 74 61 78 20    54 52 45 45 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 | e.of.the.syntax.TREE..#[defun].f | 
| 10b60 | 6e 20 72 6f 6f 74 5f 6e 6f 64 65 28 74 72 65 65    3a 20 42 6f 72 72 6f 77 65 64 3c 54 72 65 65 3e | n.root_node(tree:.Borrowed<Tree> | 
| 10b80 | 29 20 2d 3e 20 52 65 73 75 6c 74 3c 52 4e 6f 64    65 3e 20 7b 0a 20 20 20 20 4f 6b 28 52 4e 6f 64 | ).->.Result<RNode>.{.....Ok(RNod | 
| 10ba0 | 65 3a 3a 6e 65 77 28 74 72 65 65 2e 63 6c 6f 6e    65 28 29 2c 20 7c 74 72 65 65 7c 20 74 72 65 65 | e::new(tree.clone(),.|tree|.tree | 
| 10bc0 | 2e 72 6f 6f 74 5f 6e 6f 64 65 28 29 29 29 0a 7d    0a 0a 2f 2f 2f 20 45 64 69 74 20 74 68 65 20 73 | .root_node())).}..///.Edit.the.s | 
| 10be0 | 79 6e 74 61 78 20 54 52 45 45 20 74 6f 20 6b 65    65 70 20 69 74 20 69 6e 20 73 79 6e 63 20 77 69 | yntax.TREE.to.keep.it.in.sync.wi | 
| 10c00 | 74 68 20 73 6f 75 72 63 65 20 63 6f 64 65 20 74    68 61 74 20 68 61 73 20 62 65 65 6e 20 65 64 69 | th.source.code.that.has.been.edi | 
| 10c20 | 74 65 64 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 59 6f 75    20 6d 75 73 74 20 64 65 73 63 72 69 62 65 20 74 | ted..///.///.You.must.describe.t | 
| 10c40 | 68 65 20 65 64 69 74 20 62 6f 74 68 20 69 6e 20    74 65 72 6d 73 20 6f 66 20 62 79 74 65 20 70 6f | he.edit.both.in.terms.of.byte.po | 
| 10c60 | 73 69 74 69 6f 6e 73 20 61 6e 64 20 69 6e 20 74    65 72 6d 73 20 6f 66 0a 2f 2f 2f 20 28 4c 49 4e | sitions.and.in.terms.of.///.(LIN | 
| 10c80 | 45 2d 4e 55 4d 42 45 52 20 2e 20 42 59 54 45 2d    43 4f 4c 55 4d 4e 29 20 63 6f 6f 72 64 69 6e 61 | E-NUMBER...BYTE-COLUMN).coordina | 
| 10ca0 | 74 65 73 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 4c 49 4e    45 2d 4e 55 4d 42 45 52 20 73 68 6f 75 6c 64 20 | tes..///.///.LINE-NUMBER.should. | 
| 10cc0 | 62 65 20 74 68 65 20 6e 75 6d 62 65 72 20 72 65    74 75 72 6e 65 64 20 62 79 20 60 6c 69 6e 65 2d | be.the.number.returned.by.`line- | 
| 10ce0 | 6e 75 6d 62 65 72 2d 61 74 2d 70 6f 73 27 2c 20    77 68 69 63 68 20 63 6f 75 6e 74 73 0a 2f 2f 2f | number-at-pos',.which.counts./// | 
| 10d00 | 20 66 72 6f 6d 20 31 2e 0a 2f 2f 2f 0a 2f 2f 2f    20 42 59 54 45 2d 43 4f 4c 55 4d 4e 20 73 68 6f | .from.1..///.///.BYTE-COLUMN.sho | 
| 10d20 | 75 6c 64 20 63 6f 75 6e 74 20 66 72 6f 6d 20 30    2c 20 6c 69 6b 65 20 45 6d 61 63 73 27 73 20 60 | uld.count.from.0,.like.Emacs's.` | 
| 10d40 | 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 27 2e    20 48 6f 77 65 76 65 72 2c 20 75 6e 6c 69 6b 65 | current-column'..However,.unlike | 
| 10d60 | 0a 2f 2f 2f 20 74 68 61 74 20 66 75 6e 63 74 69    6f 6e 2c 20 69 74 20 73 68 6f 75 6c 64 20 63 6f | .///.that.function,.it.should.co | 
| 10d80 | 75 6e 74 20 62 79 74 65 73 2c 20 69 6e 73 74 65    61 64 20 6f 66 20 64 69 73 70 6c 61 79 65 64 20 | unt.bytes,.instead.of.displayed. | 
| 10da0 | 67 6c 79 70 68 73 2e 0a 23 5b 64 65 66 75 6e 5d    0a 66 6e 20 65 64 69 74 5f 74 72 65 65 28 0a 20 | glyphs..#[defun].fn.edit_tree(.. | 
| 10dc0 | 20 20 20 74 72 65 65 3a 20 42 6f 72 72 6f 77 65    64 3c 54 72 65 65 3e 2c 0a 20 20 20 20 73 74 61 | ...tree:.Borrowed<Tree>,.....sta | 
| 10de0 | 72 74 5f 62 79 74 65 70 6f 73 3a 20 42 79 74 65    50 6f 73 2c 0a 20 20 20 20 6f 6c 64 5f 65 6e 64 | rt_bytepos:.BytePos,.....old_end | 
| 10e00 | 5f 62 79 74 65 70 6f 73 3a 20 42 79 74 65 50 6f    73 2c 0a 20 20 20 20 6e 65 77 5f 65 6e 64 5f 62 | _bytepos:.BytePos,.....new_end_b | 
| 10e20 | 79 74 65 70 6f 73 3a 20 42 79 74 65 50 6f 73 2c    0a 20 20 20 20 73 74 61 72 74 5f 70 6f 69 6e 74 | ytepos:.BytePos,.....start_point | 
| 10e40 | 3a 20 50 6f 69 6e 74 2c 0a 20 20 20 20 6f 6c 64    5f 65 6e 64 5f 70 6f 69 6e 74 3a 20 50 6f 69 6e | :.Point,.....old_end_point:.Poin | 
| 10e60 | 74 2c 0a 20 20 20 20 6e 65 77 5f 65 6e 64 5f 70    6f 69 6e 74 3a 20 50 6f 69 6e 74 2c 0a 29 20 2d | t,.....new_end_point:.Point,.).- | 
| 10e80 | 3e 20 52 65 73 75 6c 74 3c 28 29 3e 20 7b 0a 20    20 20 20 6c 65 74 20 65 64 69 74 20 3d 20 49 6e | >.Result<()>.{.....let.edit.=.In | 
| 10ea0 | 70 75 74 45 64 69 74 20 7b 0a 20 20 20 20 20 20    20 20 73 74 61 72 74 5f 62 79 74 65 3a 20 73 74 | putEdit.{.........start_byte:.st | 
| 10ec0 | 61 72 74 5f 62 79 74 65 70 6f 73 2e 69 6e 74 6f    28 29 2c 0a 20 20 20 20 20 20 20 20 6f 6c 64 5f | art_bytepos.into(),.........old_ | 
| 10ee0 | 65 6e 64 5f 62 79 74 65 3a 20 6f 6c 64 5f 65 6e    64 5f 62 79 74 65 70 6f 73 2e 69 6e 74 6f 28 29 | end_byte:.old_end_bytepos.into() | 
| 10f00 | 2c 0a 20 20 20 20 20 20 20 20 6e 65 77 5f 65 6e    64 5f 62 79 74 65 3a 20 6e 65 77 5f 65 6e 64 5f | ,.........new_end_byte:.new_end_ | 
| 10f20 | 62 79 74 65 70 6f 73 2e 69 6e 74 6f 28 29 2c 0a    20 20 20 20 20 20 20 20 73 74 61 72 74 5f 70 6f | bytepos.into(),.........start_po | 
| 10f40 | 73 69 74 69 6f 6e 3a 20 73 74 61 72 74 5f 70 6f    69 6e 74 2e 69 6e 74 6f 28 29 2c 0a 20 20 20 20 | sition:.start_point.into(),..... | 
| 10f60 | 20 20 20 20 6f 6c 64 5f 65 6e 64 5f 70 6f 73 69    74 69 6f 6e 3a 20 6f 6c 64 5f 65 6e 64 5f 70 6f | ....old_end_position:.old_end_po | 
| 10f80 | 69 6e 74 2e 69 6e 74 6f 28 29 2c 0a 20 20 20 20    20 20 20 20 6e 65 77 5f 65 6e 64 5f 70 6f 73 69 | int.into(),.........new_end_posi | 
| 10fa0 | 74 69 6f 6e 3a 20 6e 65 77 5f 65 6e 64 5f 70 6f    69 6e 74 2e 69 6e 74 6f 28 29 2c 0a 20 20 20 20 | tion:.new_end_point.into(),..... | 
| 10fc0 | 7d 3b 0a 20 20 20 20 74 72 65 65 2e 62 6f 72 72    6f 77 5f 6d 75 74 28 29 2e 65 64 69 74 28 26 65 | };.....tree.borrow_mut().edit(&e | 
| 10fe0 | 64 69 74 29 3b 0a 20 20 20 20 4f 6b 28 28 29 29    0a 7d 0a 0a 2f 2f 2f 20 43 6f 6d 70 61 72 65 20 | dit);.....Ok(()).}..///.Compare. | 
| 11000 | 61 6e 20 65 64 69 74 65 64 20 4f 4c 44 2d 54 52    45 45 20 74 6f 20 4e 45 57 2d 54 52 45 45 2c 20 | an.edited.OLD-TREE.to.NEW-TREE,. | 
| 11020 | 62 6f 74 68 20 72 65 70 72 65 73 65 6e 74 69 6e    67 20 74 68 65 20 73 61 6d 65 20 64 6f 63 75 6d | both.representing.the.same.docum | 
| 11040 | 65 6e 74 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 54 68 69    73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 | ent..///.///.This.function.retur | 
| 11060 | 6e 73 20 61 20 73 65 71 75 65 6e 63 65 20 6f 66    20 72 61 6e 67 65 73 20 77 68 6f 73 65 20 73 79 | ns.a.sequence.of.ranges.whose.sy | 
| 11080 | 6e 74 61 63 74 69 63 20 73 74 72 75 63 74 75 72    65 20 68 61 73 20 63 68 61 6e 67 65 64 2e 0a 2f | ntactic.structure.has.changed../ | 
| 110a0 | 2f 2f 0a 2f 2f 2f 20 46 6f 72 20 74 68 69 73 20    74 6f 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c | //.///.For.this.to.work.correctl | 
| 110c0 | 79 2c 20 4f 4c 44 2d 54 52 45 45 20 6d 75 73 74    20 68 61 76 65 20 62 65 65 6e 20 65 64 69 74 65 | y,.OLD-TREE.must.have.been.edite | 
| 110e0 | 64 20 73 75 63 68 20 74 68 61 74 20 69 74 73 20    72 61 6e 67 65 73 0a 2f 2f 2f 20 6d 61 74 63 68 | d.such.that.its.ranges.///.match | 
| 11100 | 20 75 70 20 74 6f 20 4e 45 57 2d 54 52 45 45 2e    20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 27 | .up.to.NEW-TREE..Generally,.you' | 
| 11120 | 6c 6c 20 77 61 6e 74 20 74 6f 20 63 61 6c 6c 20    74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 69 | ll.want.to.call.this.function.ri | 
| 11140 | 67 68 74 20 61 66 74 65 72 0a 2f 2f 2f 20 63 61    6c 6c 69 6e 67 20 6f 6e 65 20 6f 66 20 74 68 65 | ght.after.///.calling.one.of.the | 
| 11160 | 20 70 61 72 73 69 6e 67 20 66 75 6e 63 74 69 6f    6e 73 2c 20 70 61 73 73 69 6e 67 20 69 6e 20 74 | .parsing.functions,.passing.in.t | 
| 11180 | 68 65 20 6f 6c 64 20 74 72 65 65 20 74 68 61 74    20 77 61 73 20 70 61 73 73 65 64 0a 2f 2f 2f 20 | he.old.tree.that.was.passed.///. | 
| 111a0 | 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 61    6e 64 20 74 68 65 20 6e 65 77 20 74 72 65 65 20 | as.a.parameter.and.the.new.tree. | 
| 111c0 | 74 68 61 74 20 77 61 73 20 72 65 74 75 72 6e 65    64 2e 0a 23 5b 64 65 66 75 6e 5d 0a 66 6e 20 63 | that.was.returned..#[defun].fn.c | 
| 111e0 | 68 61 6e 67 65 64 5f 72 61 6e 67 65 73 3c 27 65    3e 28 6f 6c 64 5f 74 72 65 65 3a 20 56 61 6c 75 | hanged_ranges<'e>(old_tree:.Valu | 
| 11200 | 65 3c 27 65 3e 2c 20 6e 65 77 5f 74 72 65 65 3a    20 42 6f 72 72 6f 77 65 64 3c 27 65 2c 20 54 72 | e<'e>,.new_tree:.Borrowed<'e,.Tr | 
| 11220 | 65 65 3e 29 20 2d 3e 20 52 65 73 75 6c 74 3c 56    65 63 74 6f 72 3c 27 65 3e 3e 20 7b 0a 20 20 20 | ee>).->.Result<Vector<'e>>.{.... | 
| 11240 | 20 6c 65 74 20 65 6e 76 20 3d 20 6f 6c 64 5f 74    72 65 65 2e 65 6e 76 3b 0a 20 20 20 20 6c 65 74 | .let.env.=.old_tree.env;.....let | 
| 11260 | 20 6f 6c 64 5f 74 72 65 65 20 3d 20 6f 6c 64 5f    74 72 65 65 2e 69 6e 74 6f 5f 72 75 73 74 3a 3a | .old_tree.=.old_tree.into_rust:: | 
| 11280 | 3c 42 6f 72 72 6f 77 65 64 3c 54 72 65 65 3e 3e    28 29 3f 2e 62 6f 72 72 6f 77 28 29 3b 0a 20 20 | <Borrowed<Tree>>()?.borrow();... | 
| 112a0 | 20 20 6c 65 74 20 6e 65 77 5f 74 72 65 65 20 3d    20 6e 65 77 5f 74 72 65 65 2e 62 6f 72 72 6f 77 | ..let.new_tree.=.new_tree.borrow | 
| 112c0 | 28 29 3b 0a 20 20 20 20 2f 2f 20 54 4f 44 4f 3a    20 41 64 64 20 61 20 74 65 73 74 20 74 6f 20 73 | ();.....//.TODO:.Add.a.test.to.s | 
| 112e0 | 68 6f 77 20 74 68 61 74 20 6f 72 64 65 72 20 69    73 20 69 6d 70 6f 72 74 61 6e 63 65 2e 0a 20 20 | how.that.order.is.importance.... | 
| 11300 | 20 20 6c 65 74 20 72 61 6e 67 65 73 20 3d 20 6f    6c 64 5f 74 72 65 65 2e 63 68 61 6e 67 65 64 5f | ..let.ranges.=.old_tree.changed_ | 
| 11320 | 72 61 6e 67 65 73 28 26 2a 6e 65 77 5f 74 72 65    65 29 3b 0a 20 20 20 20 6c 65 74 20 76 65 63 20 | ranges(&*new_tree);.....let.vec. | 
| 11340 | 3d 20 65 6e 76 2e 6d 61 6b 65 5f 76 65 63 74 6f    72 28 72 61 6e 67 65 73 2e 6c 65 6e 28 29 2c 20 | =.env.make_vector(ranges.len(),. | 
| 11360 | 28 29 29 3f 3b 0a 20 20 20 20 66 6f 72 20 28 69    2c 20 72 61 6e 67 65 29 20 69 6e 20 72 61 6e 67 | ())?;.....for.(i,.range).in.rang | 
| 11380 | 65 73 2e 65 6e 75 6d 65 72 61 74 65 28 29 20 7b    0a 20 20 20 20 20 20 20 20 76 65 63 2e 73 65 74 | es.enumerate().{.........vec.set | 
| 113a0 | 28 69 2c 20 52 61 6e 67 65 28 72 61 6e 67 65 29    29 3f 3b 0a 20 20 20 20 7d 0a 20 20 20 20 4f 6b | (i,.Range(range))?;.....}.....Ok | 
| 113c0 | 28 76 65 63 29 0a 7d 0a 0a 2f 2f 2f 20 43 72 65    61 74 65 20 61 20 73 68 61 6c 6c 6f 77 20 63 6f | (vec).}..///.Create.a.shallow.co | 
| 113e0 | 70 79 20 6f 66 20 74 68 65 20 73 79 6e 74 61 78    20 54 52 45 45 2e 0a 2f 2f 2f 0a 2f 2f 2f 20 54 | py.of.the.syntax.TREE..///.///.T | 
| 11400 | 68 69 73 20 69 73 20 6e 6f 74 20 76 65 72 79 20    75 73 65 66 75 6c 20 63 75 72 72 65 6e 74 6c 79 | his.is.not.very.useful.currently | 
| 11420 | 2c 20 61 73 20 45 6d 61 63 73 20 4c 69 73 70 20    74 68 72 65 61 64 73 20 61 72 65 20 73 75 62 6a | ,.as.Emacs.Lisp.threads.are.subj | 
| 11440 | 65 63 74 65 64 20 74 6f 20 61 20 47 49 4c 2e 0a    23 5b 64 65 66 75 6e 5d 0a 66 6e 20 5f 63 6c 6f | ected.to.a.GIL..#[defun].fn._clo | 
| 11460 | 6e 65 5f 74 72 65 65 28 74 72 65 65 3a 20 42 6f    72 72 6f 77 65 64 3c 54 72 65 65 3e 29 20 2d 3e | ne_tree(tree:.Borrowed<Tree>).-> | 
| 11480 | 20 52 65 73 75 6c 74 3c 53 68 61 72 65 64 3c 54    72 65 65 3e 3e 20 7b 0a 20 20 20 20 4f 6b 28 74 | .Result<Shared<Tree>>.{.....Ok(t | 
| 114a0 | 72 65 65 2e 63 6c 6f 6e 65 28 29 29 0a 7d 0a 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ree.clone()).}.................. | 
| 114c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 114e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 115a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 115c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 115e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11600 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 73 72 63 2f 74 79 70 65 73 2e 72 73 00 00 | tsc-20220212.1632/src/types.rs.. | 
| 11620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11660 | 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 | 
| 11680 | 30 30 30 37 32 35 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 30 37 35 00 20 30 00 00 00 | 0007250.00000000000.014075..0... | 
| 116a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 116c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 116e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11700 | 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................... | 
| 11720 | 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................... | 
| 11740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 117a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 117c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 117e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 11800 | 75 73 65 20 73 74 64 3a 3a 7b 0a 20 20 20 20 6d    65 6d 2c 0a 20 20 20 20 63 65 6c 6c 3a 3a 52 65 | use.std::{.....mem,.....cell::Re | 
| 11820 | 66 43 65 6c 6c 2c 0a 20 20 20 20 72 63 3a 3a 52    63 2c 0a 7d 3b 0a 0a 75 73 65 20 65 6d 61 63 73 | fCell,.....rc::Rc,.};..use.emacs | 
| 11840 | 3a 3a 7b 64 65 66 75 6e 2c 20 45 6e 76 2c 20 46    72 6f 6d 4c 69 73 70 2c 20 49 6e 74 6f 4c 69 73 | ::{defun,.Env,.FromLisp,.IntoLis | 
| 11860 | 70 2c 20 52 65 73 75 6c 74 2c 20 56 61 6c 75 65    2c 20 56 65 63 74 6f 72 7d 3b 0a 0a 70 75 62 20 | p,.Result,.Value,.Vector};..pub. | 
| 11880 | 74 79 70 65 20 53 68 61 72 65 64 3c 54 3e 20 3d    20 52 63 3c 52 65 66 43 65 6c 6c 3c 54 3e 3e 3b | type.Shared<T>.=.Rc<RefCell<T>>; | 
| 118a0 | 0a 0a 70 75 62 20 75 6e 73 61 66 65 20 66 6e 20    65 72 61 73 65 5f 6c 69 66 65 74 69 6d 65 3c 27 | ..pub.unsafe.fn.erase_lifetime<' | 
| 118c0 | 74 2c 20 54 3e 28 78 3a 20 26 27 74 20 54 29 20    2d 3e 20 26 27 73 74 61 74 69 63 20 54 20 7b 0a | t,.T>(x:.&'t.T).->.&'static.T.{. | 
| 118e0 | 20 20 20 20 6d 65 6d 3a 3a 74 72 61 6e 73 6d 75    74 65 28 78 29 0a 7d 0a 0a 6d 61 63 72 6f 5f 72 | ....mem::transmute(x).}..macro_r | 
| 11900 | 75 6c 65 73 21 20 69 6d 70 6c 5f 70 72 65 64 20    7b 0a 20 20 20 20 28 24 6e 61 6d 65 3a 69 64 65 | ules!.impl_pred.{.....($name:ide | 
| 11920 | 6e 74 2c 20 24 74 79 70 65 3a 74 79 29 20 3d 3e    20 7b 0a 20 20 20 20 20 20 20 20 23 5b 64 65 66 | nt,.$type:ty).=>.{.........#[def | 
| 11940 | 75 6e 5d 0a 20 20 20 20 20 20 20 20 66 6e 20 24    6e 61 6d 65 28 76 61 6c 75 65 3a 20 56 61 6c 75 | un].........fn.$name(value:.Valu | 
| 11960 | 65 29 20 2d 3e 20 52 65 73 75 6c 74 3c 62 6f 6f    6c 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | e).->.Result<bool>.{............ | 
| 11980 | 20 4f 6b 28 76 61 6c 75 65 2e 69 6e 74 6f 5f 72    75 73 74 3a 3a 3c 24 74 79 70 65 3e 28 29 2e 69 | .Ok(value.into_rust::<$type>().i | 
| 119a0 | 73 5f 6f 6b 28 29 29 0a 20 20 20 20 20 20 20 20    7d 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 6d 61 63 72 | s_ok()).........}.....};.}..macr | 
| 119c0 | 6f 5f 72 75 6c 65 73 21 20 69 6d 70 6c 5f 6e 65    77 74 79 70 65 5f 74 72 61 69 74 73 20 7b 0a 20 | o_rules!.impl_newtype_traits.{.. | 
| 119e0 | 20 20 20 28 24 6e 65 77 74 79 70 65 3a 74 79 2c    20 24 69 6e 6e 65 72 3a 74 79 29 20 3d 3e 20 7b | ...($newtype:ty,.$inner:ty).=>.{ | 
| 11a00 | 0a 20 20 20 20 20 20 20 20 69 6d 70 6c 20 46 72    6f 6d 3c 24 69 6e 6e 65 72 3e 20 66 6f 72 20 24 | .........impl.From<$inner>.for.$ | 
| 11a20 | 6e 65 77 74 79 70 65 20 7b 0a 20 20 20 20 20 20    20 20 20 20 20 20 23 5b 69 6e 6c 69 6e 65 28 61 | newtype.{.............#[inline(a | 
| 11a40 | 6c 77 61 79 73 29 5d 0a 20 20 20 20 20 20 20 20    20 20 20 20 66 6e 20 66 72 6f 6d 28 69 6e 6e 65 | lways)].............fn.from(inne | 
| 11a60 | 72 3a 20 24 69 6e 6e 65 72 29 20 2d 3e 20 53 65    6c 66 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | r:.$inner).->.Self.{............ | 
| 11a80 | 20 20 20 20 20 53 65 6c 66 28 69 6e 6e 65 72 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 | .....Self(inner).............}.. | 
| 11aa0 | 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20    20 20 69 6d 70 6c 20 49 6e 74 6f 3c 24 69 6e 6e | .......}..........impl.Into<$inn | 
| 11ac0 | 65 72 3e 20 66 6f 72 20 24 6e 65 77 74 79 70 65    20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 23 | er>.for.$newtype.{.............# | 
| 11ae0 | 5b 69 6e 6c 69 6e 65 28 61 6c 77 61 79 73 29 5d    0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6e 20 | [inline(always)].............fn. | 
| 11b00 | 69 6e 74 6f 28 73 65 6c 66 29 20 2d 3e 20 24 69    6e 6e 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 | into(self).->.$inner.{.......... | 
| 11b20 | 20 20 20 20 20 20 20 73 65 6c 66 2e 30 0a 20 20    20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | .......self.0.............}..... | 
| 11b40 | 20 20 20 20 7d 0a 20 20 20 20 7d 3b 0a 20 20 20    20 28 24 6e 61 6d 65 3a 69 64 65 6e 74 29 20 3d | ....}.....};.....($name:ident).= | 
| 11b60 | 3e 20 7b 0a 20 20 20 20 20 20 20 20 69 6d 70 6c    5f 6e 65 77 74 79 70 65 5f 74 72 61 69 74 73 21 | >.{.........impl_newtype_traits! | 
| 11b80 | 28 24 6e 61 6d 65 2c 20 74 72 65 65 5f 73 69 74    74 65 72 3a 3a 24 6e 61 6d 65 29 3b 0a 20 20 20 | ($name,.tree_sitter::$name);.... | 
| 11ba0 | 20 7d 3b 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .};.}..//.---------------------- | 
| 11bc0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 11be0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 11c00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2f 2f 20 50    6f 69 6e 74 0a 0a 23 5b 64 65 72 69 76 65 28 43 | -----------.//.Point..#[derive(C | 
| 11c20 | 6c 6f 6e 65 2c 20 43 6f 70 79 2c 20 44 65 62 75    67 2c 20 50 61 72 74 69 61 6c 45 71 2c 20 45 71 | lone,.Copy,.Debug,.PartialEq,.Eq | 
| 11c40 | 2c 20 50 61 72 74 69 61 6c 4f 72 64 2c 20 4f 72    64 29 5d 0a 70 75 62 20 73 74 72 75 63 74 20 50 | ,.PartialOrd,.Ord)].pub.struct.P | 
| 11c60 | 6f 69 6e 74 28 74 72 65 65 5f 73 69 74 74 65 72    3a 3a 50 6f 69 6e 74 29 3b 0a 0a 69 6d 70 6c 5f | oint(tree_sitter::Point);..impl_ | 
| 11c80 | 70 72 65 64 21 28 70 6f 69 6e 74 5f 70 2c 20 50    6f 69 6e 74 29 3b 0a 0a 69 6d 70 6c 5f 6e 65 77 | pred!(point_p,.Point);..impl_new | 
| 11ca0 | 74 79 70 65 5f 74 72 61 69 74 73 21 28 50 6f 69    6e 74 29 3b 0a 0a 69 6d 70 6c 20 49 6e 74 6f 4c | type_traits!(Point);..impl.IntoL | 
| 11cc0 | 69 73 70 3c 27 5f 3e 20 66 6f 72 20 50 6f 69 6e    74 20 7b 0a 20 20 20 20 66 6e 20 69 6e 74 6f 5f | isp<'_>.for.Point.{.....fn.into_ | 
| 11ce0 | 6c 69 73 70 28 73 65 6c 66 2c 20 65 6e 76 3a 20    26 45 6e 76 29 20 2d 3e 20 52 65 73 75 6c 74 3c | lisp(self,.env:.&Env).->.Result< | 
| 11d00 | 56 61 6c 75 65 3e 20 7b 0a 20 20 20 20 20 20 20    20 65 6e 76 2e 63 6f 6e 73 28 73 65 6c 66 2e 6c | Value>.{.........env.cons(self.l | 
| 11d20 | 69 6e 65 5f 6e 75 6d 62 65 72 28 29 2c 20 73 65    6c 66 2e 62 79 74 65 5f 63 6f 6c 75 6d 6e 28 29 | ine_number(),.self.byte_column() | 
| 11d40 | 29 0a 20 20 20 20 7d 0a 7d 0a 0a 69 6d 70 6c 20    46 72 6f 6d 4c 69 73 70 3c 27 5f 3e 20 66 6f 72 | ).....}.}..impl.FromLisp<'_>.for | 
| 11d60 | 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 66 6e 20    66 72 6f 6d 5f 6c 69 73 70 28 76 61 6c 75 65 3a | .Point.{.....fn.from_lisp(value: | 
| 11d80 | 20 56 61 6c 75 65 29 20 2d 3e 20 52 65 73 75 6c    74 3c 50 6f 69 6e 74 3e 20 7b 0a 20 20 20 20 20 | .Value).->.Result<Point>.{...... | 
| 11da0 | 20 20 20 6c 65 74 20 72 6f 77 20 3d 20 76 61 6c    75 65 2e 63 61 72 3a 3a 3c 75 73 69 7a 65 3e 28 | ...let.row.=.value.car::<usize>( | 
| 11dc0 | 29 3f 20 2d 20 31 3b 0a 20 20 20 20 20 20 20 20    6c 65 74 20 63 6f 6c 75 6d 6e 20 3d 20 76 61 6c | )?.-.1;.........let.column.=.val | 
| 11de0 | 75 65 2e 63 64 72 28 29 3f 3b 0a 20 20 20 20 20    20 20 20 4f 6b 28 74 72 65 65 5f 73 69 74 74 65 | ue.cdr()?;.........Ok(tree_sitte | 
| 11e00 | 72 3a 3a 50 6f 69 6e 74 20 7b 20 72 6f 77 2c 20    63 6f 6c 75 6d 6e 20 7d 2e 69 6e 74 6f 28 29 29 | r::Point.{.row,.column.}.into()) | 
| 11e20 | 0a 20 20 20 20 7d 0a 7d 0a 0a 69 6d 70 6c 20 50    6f 69 6e 74 20 7b 0a 20 20 20 20 23 5b 69 6e 6c | .....}.}..impl.Point.{.....#[inl | 
| 11e40 | 69 6e 65 28 61 6c 77 61 79 73 29 5d 0a 20 20 20    20 70 75 62 28 63 72 61 74 65 29 20 66 6e 20 6c | ine(always)].....pub(crate).fn.l | 
| 11e60 | 69 6e 65 5f 6e 75 6d 62 65 72 28 26 73 65 6c 66    29 20 2d 3e 20 75 73 69 7a 65 20 7b 0a 20 20 20 | ine_number(&self).->.usize.{.... | 
| 11e80 | 20 20 20 20 20 73 65 6c 66 2e 30 2e 72 6f 77 20    2b 20 31 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 | .....self.0.row.+.1.....}......# | 
| 11ea0 | 5b 69 6e 6c 69 6e 65 28 61 6c 77 61 79 73 29 5d    0a 20 20 20 20 70 75 62 28 63 72 61 74 65 29 20 | [inline(always)].....pub(crate). | 
| 11ec0 | 66 6e 20 62 79 74 65 5f 63 6f 6c 75 6d 6e 28 26    73 65 6c 66 29 20 2d 3e 20 75 73 69 7a 65 20 7b | fn.byte_column(&self).->.usize.{ | 
| 11ee0 | 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 30 2e    63 6f 6c 75 6d 6e 0a 20 20 20 20 7d 0a 7d 0a 0a | .........self.0.column.....}.}.. | 
| 11f00 | 2f 2f 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | //.----------------------------- | 
| 11f20 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 11f40 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 11f60 | 2d 2d 2d 2d 0a 2f 2f 20 45 6d 61 63 73 20 42 79    74 65 20 50 6f 73 69 74 69 6f 6e 20 28 31 2d 62 | ----.//.Emacs.Byte.Position.(1-b | 
| 11f80 | 61 73 65 64 2c 20 77 68 69 63 68 20 69 73 20 64    69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 62 79 | ased,.which.is.different.from.by | 
| 11fa0 | 74 65 20 6f 66 66 73 65 74 2c 20 77 68 69 63 68    20 69 73 20 30 2d 62 61 73 65 64 29 2e 0a 0a 23 | te.offset,.which.is.0-based)...# | 
| 11fc0 | 5b 64 65 72 69 76 65 28 43 6c 6f 6e 65 2c 20 43    6f 70 79 2c 20 44 65 62 75 67 2c 20 50 61 72 74 | [derive(Clone,.Copy,.Debug,.Part | 
| 11fe0 | 69 61 6c 45 71 2c 20 45 71 2c 20 50 61 72 74 69    61 6c 4f 72 64 2c 20 4f 72 64 29 5d 0a 70 75 62 | ialEq,.Eq,.PartialOrd,.Ord)].pub | 
| 12000 | 20 73 74 72 75 63 74 20 42 79 74 65 50 6f 73 28    75 73 69 7a 65 29 3b 0a 0a 69 6d 70 6c 20 46 72 | .struct.BytePos(usize);..impl.Fr | 
| 12020 | 6f 6d 3c 75 73 69 7a 65 3e 20 66 6f 72 20 42 79    74 65 50 6f 73 20 7b 0a 20 20 20 20 23 5b 69 6e | om<usize>.for.BytePos.{.....#[in | 
| 12040 | 6c 69 6e 65 28 61 6c 77 61 79 73 29 5d 0a 20 20    20 20 66 6e 20 66 72 6f 6d 28 62 79 74 65 5f 6f | line(always)].....fn.from(byte_o | 
| 12060 | 66 66 73 65 74 3a 20 75 73 69 7a 65 29 20 2d 3e    20 53 65 6c 66 20 7b 0a 20 20 20 20 20 20 20 20 | ffset:.usize).->.Self.{......... | 
| 12080 | 53 65 6c 66 28 62 79 74 65 5f 6f 66 66 73 65 74    20 2b 20 31 29 0a 20 20 20 20 7d 0a 7d 0a 0a 69 | Self(byte_offset.+.1).....}.}..i | 
| 120a0 | 6d 70 6c 20 49 6e 74 6f 3c 75 73 69 7a 65 3e 20    66 6f 72 20 42 79 74 65 50 6f 73 20 7b 0a 20 20 | mpl.Into<usize>.for.BytePos.{... | 
| 120c0 | 20 20 23 5b 69 6e 6c 69 6e 65 28 61 6c 77 61 79    73 29 5d 0a 20 20 20 20 66 6e 20 69 6e 74 6f 28 | ..#[inline(always)].....fn.into( | 
| 120e0 | 73 65 6c 66 29 20 2d 3e 20 75 73 69 7a 65 20 7b    0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 30 20 | self).->.usize.{.........self.0. | 
| 12100 | 2d 20 31 0a 20 20 20 20 7d 0a 7d 0a 0a 69 6d 70    6c 20 46 72 6f 6d 4c 69 73 70 3c 27 5f 3e 20 66 | -.1.....}.}..impl.FromLisp<'_>.f | 
| 12120 | 6f 72 20 42 79 74 65 50 6f 73 20 7b 0a 20 20 20    20 23 5b 69 6e 6c 69 6e 65 28 61 6c 77 61 79 73 | or.BytePos.{.....#[inline(always | 
| 12140 | 29 5d 0a 20 20 20 20 66 6e 20 66 72 6f 6d 5f 6c    69 73 70 28 76 61 6c 75 65 3a 20 56 61 6c 75 65 | )].....fn.from_lisp(value:.Value | 
| 12160 | 29 20 2d 3e 20 52 65 73 75 6c 74 3c 42 79 74 65    50 6f 73 3e 20 7b 0a 20 20 20 20 20 20 20 20 76 | ).->.Result<BytePos>.{.........v | 
| 12180 | 61 6c 75 65 2e 69 6e 74 6f 5f 72 75 73 74 28 29    2e 6d 61 70 28 53 65 6c 66 29 0a 20 20 20 20 7d | alue.into_rust().map(Self).....} | 
| 121a0 | 0a 7d 0a 0a 69 6d 70 6c 20 49 6e 74 6f 4c 69 73    70 3c 27 5f 3e 20 66 6f 72 20 42 79 74 65 50 6f | .}..impl.IntoLisp<'_>.for.BytePo | 
| 121c0 | 73 20 7b 0a 20 20 20 20 23 5b 69 6e 6c 69 6e 65    28 61 6c 77 61 79 73 29 5d 0a 20 20 20 20 66 6e | s.{.....#[inline(always)].....fn | 
| 121e0 | 20 69 6e 74 6f 5f 6c 69 73 70 28 73 65 6c 66 2c    20 65 6e 76 3a 20 26 45 6e 76 29 20 2d 3e 20 52 | .into_lisp(self,.env:.&Env).->.R | 
| 12200 | 65 73 75 6c 74 3c 56 61 6c 75 65 3e 20 7b 0a 20    20 20 20 20 20 20 20 73 65 6c 66 2e 30 2e 69 6e | esult<Value>.{.........self.0.in | 
| 12220 | 74 6f 5f 6c 69 73 70 28 65 6e 76 29 0a 20 20 20    20 7d 0a 7d 0a 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d | to_lisp(env).....}.}..//.------- | 
| 12240 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 12260 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 12280 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2f 2f 20 52 61 | --------------------------.//.Ra | 
| 122a0 | 6e 67 65 0a 0a 23 5b 64 65 72 69 76 65 28 43 6c    6f 6e 65 2c 20 43 6f 70 79 2c 20 44 65 62 75 67 | nge..#[derive(Clone,.Copy,.Debug | 
| 122c0 | 2c 20 50 61 72 74 69 61 6c 45 71 2c 20 45 71 2c    20 50 61 72 74 69 61 6c 4f 72 64 2c 20 4f 72 64 | ,.PartialEq,.Eq,.PartialOrd,.Ord | 
| 122e0 | 29 5d 0a 70 75 62 20 73 74 72 75 63 74 20 52 61    6e 67 65 28 70 75 62 28 63 72 61 74 65 29 20 74 | )].pub.struct.Range(pub(crate).t | 
| 12300 | 72 65 65 5f 73 69 74 74 65 72 3a 3a 52 61 6e 67    65 29 3b 0a 0a 69 6d 70 6c 5f 70 72 65 64 21 28 | ree_sitter::Range);..impl_pred!( | 
| 12320 | 72 61 6e 67 65 5f 70 2c 20 52 61 6e 67 65 29 3b    0a 0a 69 6d 70 6c 5f 6e 65 77 74 79 70 65 5f 74 | range_p,.Range);..impl_newtype_t | 
| 12340 | 72 61 69 74 73 21 28 52 61 6e 67 65 29 3b 0a 0a    69 6d 70 6c 20 49 6e 74 6f 4c 69 73 70 3c 27 5f | raits!(Range);..impl.IntoLisp<'_ | 
| 12360 | 3e 20 66 6f 72 20 52 61 6e 67 65 20 7b 0a 20 20    20 20 66 6e 20 69 6e 74 6f 5f 6c 69 73 70 28 73 | >.for.Range.{.....fn.into_lisp(s | 
| 12380 | 65 6c 66 2c 20 65 6e 76 3a 20 26 45 6e 76 29 20    2d 3e 20 52 65 73 75 6c 74 3c 56 61 6c 75 65 3e | elf,.env:.&Env).->.Result<Value> | 
| 123a0 | 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 69    6e 6e 65 72 20 3d 20 73 65 6c 66 2e 30 3b 0a 20 | .{.........let.inner.=.self.0;.. | 
| 123c0 | 20 20 20 20 20 20 20 6c 65 74 20 73 74 61 72 74    5f 62 79 74 65 5f 70 6f 73 3a 20 42 79 74 65 50 | .......let.start_byte_pos:.ByteP | 
| 123e0 | 6f 73 20 3d 20 69 6e 6e 65 72 2e 73 74 61 72 74    5f 62 79 74 65 2e 69 6e 74 6f 28 29 3b 0a 20 20 | os.=.inner.start_byte.into();... | 
| 12400 | 20 20 20 20 20 20 6c 65 74 20 65 6e 64 5f 62 79    74 65 5f 70 6f 73 3a 20 42 79 74 65 50 6f 73 20 | ......let.end_byte_pos:.BytePos. | 
| 12420 | 3d 20 69 6e 6e 65 72 2e 65 6e 64 5f 62 79 74 65    2e 69 6e 74 6f 28 29 3b 0a 20 20 20 20 20 20 20 | =.inner.end_byte.into();........ | 
| 12440 | 20 65 6e 76 2e 76 65 63 74 6f 72 28 28 0a 20 20    20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f | .env.vector((.............start_ | 
| 12460 | 62 79 74 65 5f 70 6f 73 2c 0a 20 20 20 20 20 20    20 20 20 20 20 20 65 6e 64 5f 62 79 74 65 5f 70 | byte_pos,.............end_byte_p | 
| 12480 | 6f 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20    50 6f 69 6e 74 28 69 6e 6e 65 72 2e 73 74 61 72 | os,.............Point(inner.star | 
| 124a0 | 74 5f 70 6f 69 6e 74 29 2c 0a 20 20 20 20 20 20    20 20 20 20 20 20 50 6f 69 6e 74 28 69 6e 6e 65 | t_point),.............Point(inne | 
| 124c0 | 72 2e 65 6e 64 5f 70 6f 69 6e 74 29 2c 0a 20 20    20 20 20 20 20 20 29 29 0a 20 20 20 20 7d 0a 7d | r.end_point),.........)).....}.} | 
| 124e0 | 0a 0a 69 6d 70 6c 20 46 72 6f 6d 4c 69 73 70 3c    27 5f 3e 20 66 6f 72 20 52 61 6e 67 65 20 7b 0a | ..impl.FromLisp<'_>.for.Range.{. | 
| 12500 | 20 20 20 20 66 6e 20 66 72 6f 6d 5f 6c 69 73 70    28 76 61 6c 75 65 3a 20 56 61 6c 75 65 29 20 2d | ....fn.from_lisp(value:.Value).- | 
| 12520 | 3e 20 52 65 73 75 6c 74 3c 52 61 6e 67 65 3e 20    7b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 76 65 | >.Result<Range>.{.........let.ve | 
| 12540 | 63 74 6f 72 3a 20 56 65 63 74 6f 72 20 3d 20 76    61 6c 75 65 2e 69 6e 74 6f 5f 72 75 73 74 28 29 | ctor:.Vector.=.value.into_rust() | 
| 12560 | 3f 3b 0a 20 20 20 20 20 20 20 20 6c 65 74 20 73    74 61 72 74 5f 62 79 74 65 20 3d 20 76 65 63 74 | ?;.........let.start_byte.=.vect | 
| 12580 | 6f 72 2e 67 65 74 3a 3a 3c 42 79 74 65 50 6f 73    3e 28 30 29 3f 2e 69 6e 74 6f 28 29 3b 0a 20 20 | or.get::<BytePos>(0)?.into();... | 
| 125a0 | 20 20 20 20 20 20 6c 65 74 20 65 6e 64 5f 62 79    74 65 20 3d 20 76 65 63 74 6f 72 2e 67 65 74 3a | ......let.end_byte.=.vector.get: | 
| 125c0 | 3a 3c 42 79 74 65 50 6f 73 3e 28 31 29 3f 2e 69    6e 74 6f 28 29 3b 0a 20 20 20 20 20 20 20 20 6c | :<BytePos>(1)?.into();.........l | 
| 125e0 | 65 74 20 73 74 61 72 74 5f 70 6f 69 6e 74 20 3d    20 76 65 63 74 6f 72 2e 67 65 74 3a 3a 3c 50 6f | et.start_point.=.vector.get::<Po | 
| 12600 | 69 6e 74 3e 28 32 29 3f 2e 69 6e 74 6f 28 29 3b    0a 20 20 20 20 20 20 20 20 6c 65 74 20 65 6e 64 | int>(2)?.into();.........let.end | 
| 12620 | 5f 70 6f 69 6e 74 20 3d 20 76 65 63 74 6f 72 2e    67 65 74 3a 3a 3c 50 6f 69 6e 74 3e 28 33 29 3f | _point.=.vector.get::<Point>(3)? | 
| 12640 | 2e 69 6e 74 6f 28 29 3b 0a 20 20 20 20 20 20 20    20 4f 6b 28 74 72 65 65 5f 73 69 74 74 65 72 3a | .into();.........Ok(tree_sitter: | 
| 12660 | 3a 52 61 6e 67 65 20 7b 20 73 74 61 72 74 5f 62    79 74 65 2c 20 65 6e 64 5f 62 79 74 65 2c 20 73 | :Range.{.start_byte,.end_byte,.s | 
| 12680 | 74 61 72 74 5f 70 6f 69 6e 74 2c 20 65 6e 64 5f    70 6f 69 6e 74 20 7d 2e 69 6e 74 6f 28 29 29 0a | tart_point,.end_point.}.into()). | 
| 126a0 | 20 20 20 20 7d 0a 7d 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 | ....}.}......................... | 
| 126c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 126e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 127a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 127c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 127e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12800 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 74 73 63 2d 64 79 6e 2d 67 65 74 2e 65 6c | tsc-20220212.1632/tsc-dyn-get.el | 
| 12820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12860 | 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 | 
| 12880 | 30 30 34 31 36 34 34 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 32 36 31 00 20 30 00 00 00 | 0041644.00000000000.014261..0... | 
| 128a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 128c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 128e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12900 | 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................... | 
| 12920 | 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................... | 
| 12940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 129a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 129c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 129e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 12a00 | 3b 3b 3b 20 74 73 63 2d 64 79 6e 2d 67 65 74 2e    65 6c 20 2d 2d 2d 20 55 74 69 6c 69 74 69 65 73 | ;;;.tsc-dyn-get.el.---.Utilities | 
| 12a20 | 20 74 6f 20 6f 62 74 61 69 6e 20 74 73 63 2d 64    79 6e 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 | .to.obtain.tsc-dyn.-*-.lexical-b | 
| 12a40 | 69 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e    67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 0a 3b 3b | inding:.t;.coding:.utf-8.-*-..;; | 
| 12a60 | 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32    30 32 30 20 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 | .Copyright.(C).2020..Tu...n-Anh. | 
| 12a80 | 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41    75 74 68 6f 72 3a 20 54 75 e1 ba a5 6e 2d 41 6e | Nguy...n.;;.;;.Author:.Tu...n-An | 
| 12aa0 | 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c    6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 3e | h.Nguy...n.<ubolonton@gmail.com> | 
| 12ac0 | 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65    2d 49 64 65 6e 74 69 66 69 65 72 3a 20 4d 49 54 | .;;.SPDX-License-Identifier:.MIT | 
| 12ae0 | 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79    3a 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 | ..;;;.Commentary:..;;.This.file. | 
| 12b00 | 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 75 74 69    6c 69 74 69 65 73 20 74 6f 20 6f 62 74 61 69 6e | contains.the.utilities.to.obtain | 
| 12b20 | 20 74 68 65 20 64 79 6e 61 6d 69 63 20 6d 6f 64    75 6c 65 20 60 74 73 63 2d 64 79 6e 27 2c 20 62 | .the.dynamic.module.`tsc-dyn',.b | 
| 12b40 | 79 0a 3b 3b 20 65 69 74 68 65 72 20 64 6f 77 6e    6c 6f 61 64 69 6e 67 20 70 72 65 2d 62 75 69 6c | y.;;.either.downloading.pre-buil | 
| 12b60 | 74 20 62 69 6e 61 72 69 65 73 20 6f 72 20 62 75    69 6c 64 69 6e 67 20 66 72 6f 6d 20 73 6f 75 72 | t.binaries.or.building.from.sour | 
| 12b80 | 63 65 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a    28 72 65 71 75 69 72 65 20 27 73 65 71 29 0a 28 | ce...;;;.Code:..(require.'seq).( | 
| 12ba0 | 72 65 71 75 69 72 65 20 27 64 69 72 65 64 2d 61    75 78 29 0a 28 72 65 71 75 69 72 65 20 27 63 6f | require.'dired-aux).(require.'co | 
| 12bc0 | 6d 70 69 6c 65 29 0a 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 | mpile)..(eval-when-compile...(re | 
| 12be0 | 71 75 69 72 65 20 27 73 75 62 72 2d 78 29 0a 20    20 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 | quire.'subr-x)...(require.'cl-li | 
| 12c00 | 62 29 29 0a 0a 28 65 76 61 6c 2d 77 68 65 6e 2d    63 6f 6d 70 69 6c 65 0a 20 20 3b 3b 20 56 65 72 | b))..(eval-when-compile...;;.Ver | 
| 12c20 | 73 69 6f 6e 20 73 74 72 69 6e 67 20 73 65 74 20    62 79 20 60 74 73 63 2d 64 79 6e 27 20 77 68 65 | sion.string.set.by.`tsc-dyn'.whe | 
| 12c40 | 6e 20 69 74 27 73 20 6c 6f 61 64 65 64 2e 0a 20    20 28 64 65 66 76 61 72 20 74 73 63 2d 64 79 6e | n.it's.loaded....(defvar.tsc-dyn | 
| 12c60 | 2d 2d 76 65 72 73 69 6f 6e 29 29 0a 0a 28 64 65    66 63 6f 6e 73 74 20 74 73 63 2d 64 79 6e 2d 67 | --version))..(defconst.tsc-dyn-g | 
| 12c80 | 65 74 2d 2d 76 65 72 73 69 6f 6e 2d 66 69 6c 65    20 22 44 59 4e 2d 56 45 52 53 49 4f 4e 22 0a 20 | et--version-file."DYN-VERSION".. | 
| 12ca0 | 20 22 46 69 6c 65 20 74 68 61 74 20 72 65 63 6f    72 64 73 20 74 68 65 20 76 65 72 73 69 6f 6e 20 | ."File.that.records.the.version. | 
| 12cc0 | 61 66 74 65 72 20 67 65 74 74 69 6e 67 20 74 68    65 20 62 69 6e 61 72 79 20 66 72 6f 6d 20 61 20 | after.getting.the.binary.from.a. | 
| 12ce0 | 73 6f 75 72 63 65 2e 22 29 0a 0a 28 64 65 66 63    6f 6e 73 74 20 74 73 63 2d 2d 64 69 72 20 28 66 | source.")..(defconst.tsc--dir.(f | 
| 12d00 | 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f    72 79 20 28 6f 72 20 28 6c 6f 63 61 74 65 2d 6c | ile-name-directory.(or.(locate-l | 
| 12d20 | 69 62 72 61 72 79 20 22 74 73 63 2e 65 6c 22 29    20 22 22 29 29 0a 20 20 22 54 68 65 20 64 69 72 | ibrary."tsc.el").""))..."The.dir | 
| 12d40 | 65 63 74 6f 72 79 20 77 68 65 72 65 20 74 68 65    20 6c 69 62 72 61 72 79 20 60 74 73 63 27 20 69 | ectory.where.the.library.`tsc'.i | 
| 12d60 | 73 20 6c 6f 63 61 74 65 64 2e 22 29 0a 0a 28 64    65 66 67 72 6f 75 70 20 74 73 63 20 6e 69 6c 0a | s.located.")..(defgroup.tsc.nil. | 
| 12d80 | 20 20 22 43 6f 72 65 20 74 72 65 65 2d 73 69 74    74 65 72 20 41 50 49 73 2e 22 0a 20 20 3a 67 72 | .."Core.tree-sitter.APIs."...:gr | 
| 12da0 | 6f 75 70 20 27 6c 61 6e 67 75 61 67 65 73 29 0a    0a 28 64 65 66 63 75 73 74 6f 6d 20 74 73 63 2d | oup.'languages)..(defcustom.tsc- | 
| 12dc0 | 64 79 6e 2d 64 69 72 20 74 73 63 2d 2d 64 69 72    0a 20 20 22 54 68 65 20 64 69 72 65 63 74 6f 72 | dyn-dir.tsc--dir..."The.director | 
| 12de0 | 79 20 74 68 61 74 20 60 74 73 63 2d 64 79 6e 27    20 6d 6f 64 75 6c 65 20 69 73 20 72 65 73 69 64 | y.that.`tsc-dyn'.module.is.resid | 
| 12e00 | 65 64 2e 0a 54 68 69 73 20 73 68 6f 75 6c 64 20    62 65 20 73 65 74 20 62 65 66 6f 72 65 20 60 74 | ed..This.should.be.set.before.`t | 
| 12e20 | 73 63 27 20 69 73 20 6c 6f 61 64 65 64 2e 0a 0a    49 6e 20 57 69 6e 64 6f 77 73 20 79 6f 75 20 6d | sc'.is.loaded...In.Windows.you.m | 
| 12e40 | 61 79 20 77 61 6e 74 20 74 6f 20 73 65 74 20 74    68 69 73 20 74 6f 20 70 72 65 76 65 6e 74 20 70 | ay.want.to.set.this.to.prevent.p | 
| 12e60 | 61 63 6b 61 67 65 20 75 70 67 72 61 64 65 20 66    61 69 6c 75 72 65 20 62 79 20 6c 6f 61 64 65 64 | ackage.upgrade.failure.by.loaded | 
| 12e80 | 0a 6d 6f 64 75 6c 65 20 64 65 6c 65 74 69 6f 6e    2e 20 53 65 65 20 75 62 6f 6c 6f 6e 74 6f 6e 2f | .module.deletion..See.ubolonton/ | 
| 12ea0 | 65 6d 61 63 73 2d 74 72 65 65 2d 73 69 74 74 65    72 23 31 32 32 20 66 6f 72 20 6d 6f 72 65 20 64 | emacs-tree-sitter#122.for.more.d | 
| 12ec0 | 65 74 61 69 6c 2e 0a 0a 45 78 61 6d 70 6c 65 20    73 65 74 74 69 6e 67 3a 0a 5c 28 73 65 74 71 20 | etail...Example.setting:.\(setq. | 
| 12ee0 | 74 73 63 2d 64 79 6e 2d 64 69 72 20 28 65 78 70    61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 5c 22 | tsc-dyn-dir.(expand-file-name.\" | 
| 12f00 | 74 72 65 65 2d 73 69 74 74 65 72 2f 5c 22 20 75    73 65 72 2d 65 6d 61 63 73 2d 64 69 72 65 63 74 | tree-sitter/\".user-emacs-direct | 
| 12f20 | 6f 72 79 29 29 22 0a 20 20 3a 67 72 6f 75 70 20    27 74 73 63 0a 20 20 3a 74 79 70 65 20 27 64 69 | ory))"...:group.'tsc...:type.'di | 
| 12f40 | 72 65 63 74 6f 72 79 29 0a 0a 28 64 65 66 63 75    73 74 6f 6d 20 74 73 63 2d 64 79 6e 2d 67 65 74 | rectory)..(defcustom.tsc-dyn-get | 
| 12f60 | 2d 66 72 6f 6d 20 27 28 3a 67 69 74 68 75 62 20    3a 63 6f 6d 70 69 6c 61 74 69 6f 6e 29 0a 20 20 | -from.'(:github.:compilation)... | 
| 12f80 | 22 57 68 65 72 65 20 74 68 65 20 64 79 6e 61 6d    69 63 20 6d 6f 64 75 6c 65 20 62 69 6e 61 72 79 | "Where.the.dynamic.module.binary | 
| 12fa0 | 20 73 68 6f 75 6c 64 20 63 6f 6d 65 20 66 72 6f    6d 2c 20 69 6e 20 6f 72 64 65 72 20 6f 66 20 70 | .should.come.from,.in.order.of.p | 
| 12fc0 | 72 69 6f 72 69 74 79 2e 0a 0a 46 6f 72 20 70 72    65 2d 62 75 69 6c 74 20 62 69 6e 61 72 69 65 73 | riority...For.pre-built.binaries | 
| 12fe0 | 2c 20 69 74 20 61 74 74 65 6d 70 74 73 20 74 6f    20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 20 72 65 | ,.it.attempts.to.download.the.re | 
| 13000 | 71 75 65 73 74 65 64 20 76 65 72 73 69 6f 6e 2e    0a 0a 46 6f 72 20 6c 6f 63 61 6c 20 63 6f 6d 70 | quested.version...For.local.comp | 
| 13020 | 69 6c 61 74 69 6f 6e 2c 20 74 68 65 20 52 75 73    74 20 74 6f 6f 6c 63 68 61 69 6e 20 69 73 20 72 | ilation,.the.Rust.toolchain.is.r | 
| 13040 | 65 71 75 69 72 65 64 2e 0a 0a 49 66 20 79 6f 75    20 77 61 6e 74 20 74 6f 20 6d 61 6e 75 61 6c 6c | equired...If.you.want.to.manuall | 
| 13060 | 79 20 67 65 74 20 74 68 65 20 64 79 6e 61 6d 69    63 20 6d 6f 64 75 6c 65 20 74 68 72 6f 75 67 68 | y.get.the.dynamic.module.through | 
| 13080 | 20 61 6e 6f 74 68 65 72 20 6d 65 63 68 61 6e 69    73 6d 2c 0a 69 6e 73 74 65 61 64 20 6f 66 20 6c | .another.mechanism,.instead.of.l | 
| 130a0 | 65 74 74 69 6e 67 20 60 74 73 63 2d 64 79 6e 2d    67 65 74 27 20 61 75 74 6f 6d 61 74 69 63 61 6c | etting.`tsc-dyn-get'.automatical | 
| 130c0 | 6c 79 20 74 72 79 20 74 6f 20 64 6f 77 6e 6c 6f    61 64 2f 62 75 69 6c 64 20 69 74 2c 20 73 65 74 | ly.try.to.download/build.it,.set | 
| 130e0 | 0a 74 68 69 73 20 74 6f 20 6e 69 6c 2e 22 0a 20    20 3a 67 72 6f 75 70 20 27 74 73 63 0a 20 20 3a | .this.to.nil."...:group.'tsc...: | 
| 13100 | 74 79 70 65 20 27 28 73 65 74 20 28 63 6f 6e 73    74 20 3a 74 61 67 20 22 42 69 6e 61 72 79 20 66 | type.'(set.(const.:tag."Binary.f | 
| 13120 | 72 6f 6d 20 47 69 74 48 75 62 22 20 3a 67 69 74    68 75 62 29 0a 20 20 20 20 20 20 20 20 20 20 20 | rom.GitHub".:github)............ | 
| 13140 | 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22    4c 6f 63 61 6c 20 43 6f 6d 70 69 6c 61 74 69 6f | ...(const.:tag."Local.Compilatio | 
| 13160 | 6e 22 20 3a 63 6f 6d 70 69 6c 61 74 69 6f 6e 29    29 29 0a 0a 28 64 65 66 76 61 72 20 74 73 63 2d | n".:compilation)))..(defvar.tsc- | 
| 13180 | 64 79 6e 2d 67 65 74 2d 2d 66 6f 72 63 65 2d 73    79 6e 63 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e | dyn-get--force-sync.nil)..(defun | 
| 131a0 | 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 64 69    72 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 | .tsc-dyn-get--dir.()..."Return.t | 
| 131c0 | 68 65 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20    70 75 74 20 60 74 73 63 2d 64 79 6e 27 20 6d 6f | he.directory.to.put.`tsc-dyn'.mo | 
| 131e0 | 64 75 6c 65 20 69 6e 2e 22 0a 20 20 28 6f 72 20    74 73 63 2d 64 79 6e 2d 64 69 72 0a 20 20 20 20 | dule.in."...(or.tsc-dyn-dir..... | 
| 13200 | 20 20 28 65 72 72 6f 72 20 22 43 6f 75 6c 64 20    6e 6f 74 20 6c 6f 63 61 74 65 20 74 68 65 20 64 | ..(error."Could.not.locate.the.d | 
| 13220 | 69 72 65 63 74 6f 72 79 20 66 6f 72 20 60 74 73    63 2d 64 79 6e 27 22 29 29 29 0a 0a 28 64 65 66 | irectory.for.`tsc-dyn'")))..(def | 
| 13240 | 75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d    65 78 74 20 28 29 0a 20 20 22 52 65 74 75 72 6e | un.tsc-dyn-get--ext.()..."Return | 
| 13260 | 20 74 68 65 20 64 79 6e 61 6d 69 63 20 6d 6f 64    75 6c 65 20 65 78 74 65 6e 73 69 6f 6e 2c 20 77 | .the.dynamic.module.extension,.w | 
| 13280 | 68 69 63 68 20 69 73 20 73 79 73 74 65 6d 2d 64    65 70 65 6e 64 65 6e 74 2e 22 0a 20 20 28 70 63 | hich.is.system-dependent."...(pc | 
| 132a0 | 61 73 65 20 73 79 73 74 65 6d 2d 74 79 70 65 0a    20 20 20 20 28 27 77 69 6e 64 6f 77 73 2d 6e 74 | ase.system-type.....('windows-nt | 
| 132c0 | 20 22 64 6c 6c 22 29 0a 20 20 20 20 28 27 64 61    72 77 69 6e 20 22 64 79 6c 69 62 22 29 0a 20 20 | ."dll").....('darwin."dylib")... | 
| 132e0 | 20 20 28 28 6f 72 20 27 67 6e 75 20 27 67 6e 75    2f 6c 69 6e 75 78 20 27 67 6e 75 2f 6b 66 72 65 | ..((or.'gnu.'gnu/linux.'gnu/kfre | 
| 13300 | 65 62 73 64 29 20 22 73 6f 22 29 0a 20 20 20 20    28 28 6f 72 20 27 6d 73 2d 64 6f 73 20 27 63 79 | ebsd)."so").....((or.'ms-dos.'cy | 
| 13320 | 67 77 69 6e 29 20 28 65 72 72 6f 72 20 22 55 6e    73 75 70 70 6f 72 74 65 64 20 73 79 73 74 65 6d | gwin).(error."Unsupported.system | 
| 13340 | 2d 74 79 70 65 20 25 73 22 20 73 79 73 74 65 6d    2d 74 79 70 65 29 29 0a 20 20 20 20 28 5f 20 22 | -type.%s".system-type)).....(_." | 
| 13360 | 73 6f 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 74    73 63 2d 64 79 6e 2d 67 65 74 2d 2d 66 69 6c 65 | so")))..(defun.tsc-dyn-get--file | 
| 13380 | 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68    65 20 64 79 6e 61 6d 69 63 20 6d 6f 64 75 6c 65 | .()..."Return.the.dynamic.module | 
| 133a0 | 20 66 69 6c 65 6e 61 6d 65 2c 20 77 68 69 63 68    20 69 73 20 4f 53 2d 64 65 70 65 6e 64 65 6e 74 | .filename,.which.is.OS-dependent | 
| 133c0 | 2e 22 0a 20 20 28 66 6f 72 6d 61 74 20 22 74 73    63 2d 64 79 6e 2e 25 73 22 20 28 74 73 63 2d 64 | ."...(format."tsc-dyn.%s".(tsc-d | 
| 133e0 | 79 6e 2d 67 65 74 2d 2d 65 78 74 29 29 29 0a 0a    3b 3b 3b 20 54 4f 44 4f 3a 20 4d 61 6b 65 20 74 | yn-get--ext)))..;;;.TODO:.Make.t | 
| 13400 | 68 69 73 20 63 6f 72 72 65 63 74 2e 0a 28 64 65    66 75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d | his.correct..(defun.tsc-dyn-get- | 
| 13420 | 2d 73 79 73 74 65 6d 2d 73 70 65 63 69 66 69 63    2d 66 69 6c 65 20 28 29 0a 20 20 22 52 65 74 75 | -system-specific-file.()..."Retu | 
| 13440 | 72 6e 20 74 68 65 20 64 79 6e 61 6d 69 63 20 6d    6f 64 75 6c 65 20 66 69 6c 65 6e 61 6d 65 2c 20 | rn.the.dynamic.module.filename,. | 
| 13460 | 77 68 69 63 68 20 69 73 20 73 79 73 74 65 6d 2d    64 65 70 65 6e 64 65 6e 74 2e 22 0a 20 20 28 70 | which.is.system-dependent."...(p | 
| 13480 | 63 61 73 65 20 73 79 73 74 65 6d 2d 74 79 70 65    0a 20 20 20 20 28 27 77 69 6e 64 6f 77 73 2d 6e | case.system-type.....('windows-n | 
| 134a0 | 74 20 22 74 73 63 2d 64 79 6e 2e 78 38 36 5f 36    34 2d 70 63 2d 77 69 6e 64 6f 77 73 2d 6d 73 76 | t."tsc-dyn.x86_64-pc-windows-msv | 
| 134c0 | 63 2e 64 6c 6c 22 29 0a 20 20 20 20 28 27 64 61    72 77 69 6e 20 28 69 66 20 28 73 74 72 69 6e 67 | c.dll").....('darwin.(if.(string | 
| 134e0 | 2d 70 72 65 66 69 78 2d 70 20 22 78 38 36 5f 36    34 22 20 73 79 73 74 65 6d 2d 63 6f 6e 66 69 67 | -prefix-p."x86_64".system-config | 
| 13500 | 75 72 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 22 74 73 63 2d 64 | uration).................."tsc-d | 
| 13520 | 79 6e 2e 78 38 36 5f 36 34 2d 61 70 70 6c 65 2d    64 61 72 77 69 6e 2e 64 79 6c 69 62 22 0a 20 20 | yn.x86_64-apple-darwin.dylib"... | 
| 13540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 73    63 2d 64 79 6e 2e 61 61 72 63 68 36 34 2d 61 70 | ............."tsc-dyn.aarch64-ap | 
| 13560 | 70 6c 65 2d 64 61 72 77 69 6e 2e 64 79 6c 69 62    22 29 29 0a 20 20 20 20 28 28 6f 72 20 27 67 6e | ple-darwin.dylib")).....((or.'gn | 
| 13580 | 75 20 27 67 6e 75 2f 6c 69 6e 75 78 20 27 67 6e    75 2f 6b 66 72 65 65 62 73 64 29 0a 20 20 20 20 | u.'gnu/linux.'gnu/kfreebsd)..... | 
| 135a0 | 20 22 74 73 63 2d 64 79 6e 2e 78 38 36 5f 36 34    2d 75 6e 6b 6e 6f 77 6e 2d 6c 69 6e 75 78 2d 67 | ."tsc-dyn.x86_64-unknown-linux-g | 
| 135c0 | 6e 75 2e 73 6f 22 29 29 29 0a 0a 28 64 65 66 75    6e 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 6c | nu.so")))..(defun.tsc-dyn-get--l | 
| 135e0 | 6f 67 20 28 66 6f 72 6d 61 74 2d 73 74 72 69 6e    67 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 | og.(format-string.&rest.args)... | 
| 13600 | 28 61 70 70 6c 79 20 23 27 6d 65 73 73 61 67 65    20 28 63 6f 6e 63 61 74 20 22 74 73 63 2d 64 79 | (apply.#'message.(concat."tsc-dy | 
| 13620 | 6e 2d 67 65 74 3a 20 22 20 66 6f 72 6d 61 74 2d    73 74 72 69 6e 67 29 20 61 72 67 73 29 29 0a 0a | n-get:.".format-string).args)).. | 
| 13640 | 28 64 65 66 75 6e 20 74 73 63 2d 64 79 6e 2d 67    65 74 2d 2d 77 61 72 6e 20 28 26 72 65 73 74 20 | (defun.tsc-dyn-get--warn.(&rest. | 
| 13660 | 61 72 67 73 29 0a 20 20 28 64 69 73 70 6c 61 79    2d 77 61 72 6e 69 6e 67 20 27 74 73 63 2d 64 79 | args)...(display-warning.'tsc-dy | 
| 13680 | 6e 2d 67 65 74 20 28 61 70 70 6c 79 20 23 27 66    6f 72 6d 61 74 20 61 72 67 73 29 20 3a 65 6d 65 | n-get.(apply.#'format.args).:eme | 
| 136a0 | 72 67 65 6e 63 79 29 29 0a 0a 28 64 65 66 75 6e    20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 72 65 | rgency))..(defun.tsc-dyn-get--re | 
| 136c0 | 63 6f 72 64 65 64 2d 76 65 72 73 69 6f 6e 20 28    29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 | corded-version.()..."Return.the. | 
| 136e0 | 60 74 73 63 2d 64 79 6e 27 20 76 65 72 73 69 6f    6e 20 72 65 63 6f 72 64 65 64 20 69 6e 20 74 68 | `tsc-dyn'.version.recorded.in.th | 
| 13700 | 65 20 6d 61 6e 69 66 65 73 74 0a 60 74 73 63 2d    64 79 6e 2d 67 65 74 2d 2d 76 65 72 73 69 6f 6e | e.manifest.`tsc-dyn-get--version | 
| 13720 | 2d 66 69 6c 65 27 2e 22 0a 20 20 28 6c 65 74 20    28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 | -file'."...(let.((default-direct | 
| 13740 | 6f 72 79 20 28 74 73 63 2d 64 79 6e 2d 67 65 74    2d 2d 64 69 72 29 29 29 0a 20 20 20 20 28 77 68 | ory.(tsc-dyn-get--dir))).....(wh | 
| 13760 | 65 6e 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d    70 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 76 | en.(file-exists-p.tsc-dyn-get--v | 
| 13780 | 65 72 73 69 6f 6e 2d 66 69 6c 65 29 0a 20 20 20    20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 | ersion-file).......(with-temp-bu | 
| 137a0 | 66 66 65 72 0a 20 20 20 20 20 20 20 20 28 6c 65    74 20 28 28 63 6f 64 69 6e 67 2d 73 79 73 74 65 | ffer.........(let.((coding-syste | 
| 137c0 | 6d 2d 66 6f 72 2d 72 65 61 64 20 27 75 74 66 2d    38 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 | m-for-read.'utf-8))...........(i | 
| 137e0 | 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65    6e 74 73 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d | nsert-file-contents.tsc-dyn-get- | 
| 13800 | 2d 76 65 72 73 69 6f 6e 2d 66 69 6c 65 29 0a 20    20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 | -version-file)...........(buffer | 
| 13820 | 2d 73 74 72 69 6e 67 29 29 29 29 29 29 0a 0a 28    64 65 66 75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 | -string))))))..(defun.tsc-dyn-ge | 
| 13840 | 74 2d 2d 6c 6f 61 64 65 64 2d 76 65 72 73 69 6f    6e 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 | t--loaded-version.()..."Return.t | 
| 13860 | 68 65 20 63 75 72 72 65 6e 74 6c 79 20 6c 6f 61    64 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 60 | he.currently.loaded.version.of.` | 
| 13880 | 74 73 63 2d 64 79 6e 27 2e 22 0a 20 20 28 61 6e    64 20 28 66 65 61 74 75 72 65 70 20 27 74 73 63 | tsc-dyn'."...(and.(featurep.'tsc | 
| 138a0 | 2d 64 79 6e 29 20 28 62 6f 75 6e 64 2d 61 6e 64    2d 74 72 75 65 2d 70 20 74 73 63 2d 64 79 6e 2d | -dyn).(bound-and-true-p.tsc-dyn- | 
| 138c0 | 2d 76 65 72 73 69 6f 6e 29 29 29 0a 0a 3b 3b 3b    20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -version)))..;;;.--------------- | 
| 138e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 13900 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b | -----------------------------.;; | 
| 13920 | 3b 20 50 72 65 2d 62 75 69 6c 74 20 62 69 6e 61    72 69 65 73 20 64 6f 77 6e 6c 6f 61 64 65 64 20 | ;.Pre-built.binaries.downloaded. | 
| 13940 | 74 68 72 6f 75 67 68 20 48 54 54 50 2e 0a 0a 28    64 65 66 75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 | through.HTTP...(defun.tsc-dyn-ge | 
| 13960 | 74 2d 2d 63 68 65 63 6b 2d 68 74 74 70 20 28 26    72 65 73 74 20 5f 61 72 67 73 29 0a 20 20 28 77 | t--check-http.(&rest._args)...(w | 
| 13980 | 68 65 6e 2d 6c 65 74 20 28 28 73 74 61 74 75 73    20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 | hen-let.((status.(bound-and-true | 
| 139a0 | 2d 70 20 75 72 6c 2d 68 74 74 70 2d 72 65 73 70    6f 6e 73 65 2d 73 74 61 74 75 73 29 29 29 0a 20 | -p.url-http-response-status))).. | 
| 139c0 | 20 20 20 28 77 68 65 6e 20 28 3e 3d 20 73 74 61    74 75 73 20 34 30 30 29 0a 20 20 20 20 20 20 28 | ...(when.(>=.status.400).......( | 
| 139e0 | 65 72 72 6f 72 20 22 47 6f 74 20 48 54 54 50 20    73 74 61 74 75 73 20 63 6f 64 65 20 25 73 22 20 | error."Got.HTTP.status.code.%s". | 
| 13a00 | 73 74 61 74 75 73 29 29 29 29 0a 0a 3b 3b 20 54    4f 44 4f 3a 20 46 69 6e 64 20 61 20 62 65 74 74 | status))))..;;.TODO:.Find.a.bett | 
| 13a20 | 65 72 20 77 61 79 20 74 6f 20 6d 61 6b 65 20 60    75 72 6c 2d 63 6f 70 79 2d 66 69 6c 65 27 20 68 | er.way.to.make.`url-copy-file'.h | 
| 13a40 | 61 6e 64 6c 65 20 62 61 64 20 48 54 54 50 20 73    74 61 74 75 73 20 63 6f 64 65 73 2e 0a 28 64 65 | andle.bad.HTTP.status.codes..(de | 
| 13a60 | 66 75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d    2d 75 72 6c 2d 63 6f 70 79 2d 66 69 6c 65 20 28 | fun.tsc-dyn-get--url-copy-file.( | 
| 13a80 | 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 41    20 77 72 61 70 70 65 72 20 61 72 6f 75 6e 64 20 | &rest.args)..."A.wrapper.around. | 
| 13aa0 | 60 75 72 6c 2d 63 6f 70 79 2d 66 69 6c 65 27 20    74 68 61 74 20 73 69 67 6e 61 6c 73 20 65 72 72 | `url-copy-file'.that.signals.err | 
| 13ac0 | 6f 72 73 20 66 6f 72 20 62 61 64 20 48 54 54 50    20 73 74 61 74 75 73 65 73 2e 22 0a 20 20 28 61 | ors.for.bad.HTTP.statuses."...(a | 
| 13ae0 | 64 76 69 63 65 2d 61 64 64 20 27 6d 6d 2d 64 69    73 73 65 63 74 2d 62 75 66 66 65 72 20 3a 62 65 | dvice-add.'mm-dissect-buffer.:be | 
| 13b00 | 66 6f 72 65 20 23 27 74 73 63 2d 64 79 6e 2d 67    65 74 2d 2d 63 68 65 63 6b 2d 68 74 74 70 29 0a | fore.#'tsc-dyn-get--check-http). | 
| 13b20 | 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63    74 0a 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 | ..(unwind-protect.......(apply.# | 
| 13b40 | 27 75 72 6c 2d 63 6f 70 79 2d 66 69 6c 65 20 61    72 67 73 29 0a 20 20 20 20 28 61 64 76 69 63 65 | 'url-copy-file.args).....(advice | 
| 13b60 | 2d 72 65 6d 6f 76 65 20 27 6d 6d 2d 64 69 73 73    65 63 74 2d 62 75 66 66 65 72 20 23 27 74 73 63 | -remove.'mm-dissect-buffer.#'tsc | 
| 13b80 | 2d 64 79 6e 2d 67 65 74 2d 2d 63 68 65 63 6b 2d    68 74 74 70 29 29 29 0a 0a 28 64 65 66 75 6e 20 | -dyn-get--check-http)))..(defun. | 
| 13ba0 | 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 67 69 74    68 75 62 20 28 76 65 72 73 69 6f 6e 29 0a 20 20 | tsc-dyn-get--github.(version)... | 
| 13bc0 | 22 44 6f 77 6e 6c 6f 61 64 20 74 68 65 20 70 72    65 2d 63 6f 6d 70 69 6c 65 64 20 56 45 52 53 49 | "Download.the.pre-compiled.VERSI | 
| 13be0 | 4f 4e 20 6f 66 20 60 74 73 63 2d 64 79 6e 27 20    66 72 6f 6d 20 47 69 74 48 75 62 2e 0a 54 68 69 | ON.of.`tsc-dyn'.from.GitHub..Thi | 
| 13c00 | 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 63 6f 72    64 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 | s.function.records.the.downloade | 
| 13c20 | 64 20 76 65 72 73 69 6f 6e 20 69 6e 20 74 68 65    20 6d 61 6e 69 66 65 73 74 0a 60 74 73 63 2d 64 | d.version.in.the.manifest.`tsc-d | 
| 13c40 | 79 6e 2d 67 65 74 2d 2d 76 65 72 73 69 6f 6e 2d    66 69 6c 65 27 2e 22 0a 20 20 28 6c 65 74 2a 20 | yn-get--version-file'."...(let*. | 
| 13c60 | 28 28 62 69 6e 2d 64 69 72 20 28 74 73 63 2d 64    79 6e 2d 67 65 74 2d 2d 64 69 72 29 29 0a 20 20 | ((bin-dir.(tsc-dyn-get--dir))... | 
| 13c80 | 20 20 20 20 20 20 20 28 64 65 66 61 75 6c 74 2d    64 69 72 65 63 74 6f 72 79 20 62 69 6e 2d 64 69 | .......(default-directory.bin-di | 
| 13ca0 | 72 29 0a 20 20 20 20 20 20 20 20 20 28 5f 20 28    75 6e 6c 65 73 73 20 28 66 69 6c 65 2d 64 69 72 | r)..........(_.(unless.(file-dir | 
| 13cc0 | 65 63 74 6f 72 79 2d 70 20 62 69 6e 2d 64 69 72    29 20 28 6d 61 6b 65 2d 64 69 72 65 63 74 6f 72 | ectory-p.bin-dir).(make-director | 
| 13ce0 | 79 20 62 69 6e 2d 64 69 72 29 29 29 0a 20 20 20    20 20 20 20 20 20 28 75 6e 63 6f 6d 70 72 65 73 | y.bin-dir)))..........(uncompres | 
| 13d00 | 73 65 64 3f 20 28 76 65 72 73 69 6f 6e 3c 20 22    30 2e 37 2e 30 22 20 76 65 72 73 69 6f 6e 29 29 | sed?.(version<."0.7.0".version)) | 
| 13d20 | 0a 20 20 20 20 20 20 20 20 20 28 73 79 73 74 65    6d 2d 73 70 65 63 69 66 69 63 3f 20 28 76 65 72 | ..........(system-specific?.(ver | 
| 13d40 | 73 69 6f 6e 3c 3d 20 22 30 2e 31 36 2e 31 22 20    76 65 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 | sion<=."0.16.1".version))....... | 
| 13d60 | 20 20 20 28 6c 6f 63 61 6c 2d 6e 61 6d 65 20 28    74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 66 69 6c | ...(local-name.(tsc-dyn-get--fil | 
| 13d80 | 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 65    6d 6f 74 65 2d 6e 61 6d 65 20 28 66 6f 72 6d 61 | e))..........(remote-name.(forma | 
| 13da0 | 74 20 22 25 73 25 73 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t."%s%s"........................ | 
| 13dc0 | 20 20 20 20 20 20 20 28 69 66 20 73 79 73 74 65    6d 2d 73 70 65 63 69 66 69 63 3f 0a 20 20 20 20 | .......(if.system-specific?..... | 
| 13de0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 | ..............................(t | 
| 13e00 | 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 73 79 73 74    65 6d 2d 73 70 65 63 69 66 69 63 2d 66 69 6c 65 | sc-dyn-get--system-specific-file | 
| 13e20 | 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 20 20 20 20 | )............................... | 
| 13e40 | 20 20 6c 6f 63 61 6c 2d 6e 61 6d 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..local-name)................... | 
| 13e60 | 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20    75 6e 63 6f 6d 70 72 65 73 73 65 64 3f 20 22 22 | ............(if.uncompressed?."" | 
| 13e80 | 20 22 2e 67 7a 22 29 29 29 0a 20 20 20 20 20 20    20 20 20 28 75 72 6c 20 28 66 6f 72 6d 61 74 20 | .".gz")))..........(url.(format. | 
| 13ea0 | 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e    63 6f 6d 2f 65 6d 61 63 73 2d 74 72 65 65 2d 73 | "https://github.com/emacs-tree-s | 
| 13ec0 | 69 74 74 65 72 2f 65 6c 69 73 70 2d 74 72 65 65    2d 73 69 74 74 65 72 2f 72 65 6c 65 61 73 65 73 | itter/elisp-tree-sitter/releases | 
| 13ee0 | 2f 64 6f 77 6e 6c 6f 61 64 2f 25 73 2f 25 73 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | /download/%s/%s"................ | 
| 13f00 | 20 20 20 20 20 20 20 76 65 72 73 69 6f 6e 20 72    65 6d 6f 74 65 2d 6e 61 6d 65 29 29 29 0a 20 20 | .......version.remote-name)))... | 
| 13f20 | 20 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d    6c 6f 67 20 22 44 6f 77 6e 6c 6f 61 64 69 6e 67 | ..(tsc-dyn-get--log."Downloading | 
| 13f40 | 20 25 73 22 20 75 72 6c 29 0a 20 20 20 20 28 69    66 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 3f 0a | .%s".url).....(if.uncompressed?. | 
| 13f60 | 20 20 20 20 20 20 20 20 28 74 73 63 2d 64 79 6e    2d 67 65 74 2d 2d 75 72 6c 2d 63 6f 70 79 2d 66 | ........(tsc-dyn-get--url-copy-f | 
| 13f80 | 69 6c 65 20 75 72 6c 20 6c 6f 63 61 6c 2d 6e 61    6d 65 20 3a 6f 6b 2d 69 66 2d 61 6c 72 65 61 64 | ile.url.local-name.:ok-if-alread | 
| 13fa0 | 79 2d 65 78 69 73 74 73 29 0a 20 20 20 20 20 20    28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 75 72 | y-exists).......(tsc-dyn-get--ur | 
| 13fc0 | 6c 2d 63 6f 70 79 2d 66 69 6c 65 20 75 72 6c 20    72 65 6d 6f 74 65 2d 6e 61 6d 65 29 0a 20 20 20 | l-copy-file.url.remote-name).... | 
| 13fe0 | 20 20 20 28 77 68 65 6e 20 28 66 69 6c 65 2d 65    78 69 73 74 73 2d 70 20 6c 6f 63 61 6c 2d 6e 61 | ...(when.(file-exists-p.local-na | 
| 14000 | 6d 65 29 0a 20 20 20 20 20 20 20 20 28 64 65 6c    65 74 65 2d 66 69 6c 65 20 6c 6f 63 61 6c 2d 6e | me).........(delete-file.local-n | 
| 14020 | 61 6d 65 29 29 0a 20 20 20 20 20 20 3b 3b 20 58    58 58 3a 20 55 6e 63 6f 6d 70 72 65 73 73 69 6e | ame)).......;;.XXX:.Uncompressin | 
| 14040 | 67 20 77 69 74 68 20 60 64 69 72 65 64 2d 63 6f    6d 70 72 65 73 73 2d 66 69 6c 65 27 20 64 6f 65 | g.with.`dired-compress-file'.doe | 
| 14060 | 73 6e 27 74 20 77 6f 72 6b 20 6f 6e 20 57 69 6e    64 6f 77 73 2e 0a 20 20 20 20 20 20 28 64 69 72 | sn't.work.on.Windows........(dir | 
| 14080 | 65 64 2d 63 6f 6d 70 72 65 73 73 2d 66 69 6c 65    20 72 65 6d 6f 74 65 2d 6e 61 6d 65 29 29 0a 20 | ed-compress-file.remote-name)).. | 
| 140a0 | 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 66 69    6c 65 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d | ...(with-temp-file.tsc-dyn-get-- | 
| 140c0 | 76 65 72 73 69 6f 6e 2d 66 69 6c 65 0a 20 20 20    20 20 20 28 6c 65 74 20 28 28 63 6f 64 69 6e 67 | version-file.......(let.((coding | 
| 140e0 | 2d 73 79 73 74 65 6d 2d 66 6f 72 2d 77 72 69 74    65 20 27 75 74 66 2d 38 29 29 0a 20 20 20 20 20 | -system-for-write.'utf-8))...... | 
| 14100 | 20 20 20 28 69 6e 73 65 72 74 20 76 65 72 73 69    6f 6e 29 29 29 29 29 0a 0a 3b 3b 3b 20 2d 2d 2d | ...(insert.version)))))..;;;.--- | 
| 14120 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 14140 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 14160 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 4c 6f    63 61 6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e | ---------.;;;.Local.compilation. | 
| 14180 | 0a 0a 28 64 65 66 69 6e 65 2d 65 72 72 6f 72 20    27 74 73 63 2d 63 6f 6d 70 69 6c 65 2d 65 72 72 | ..(define-error.'tsc-compile-err | 
| 141a0 | 6f 72 20 22 43 6f 75 6c 64 20 6e 6f 74 20 63 6f    6d 70 69 6c 65 20 60 74 73 63 2d 64 79 6e 27 22 | or."Could.not.compile.`tsc-dyn'" | 
| 141c0 | 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 64 79    6e 2d 67 65 74 2d 2d 62 75 69 6c 64 2d 6f 75 74 | )..(defun.tsc-dyn-get--build-out | 
| 141e0 | 70 75 74 20 28 66 61 63 65 20 26 72 65 73 74 20    61 72 67 73 29 0a 20 20 28 64 65 63 6c 61 72 65 | put.(face.&rest.args)...(declare | 
| 14200 | 20 28 69 6e 64 65 6e 74 20 31 29 29 0a 20 20 28    6c 65 74 20 28 28 73 74 72 20 28 70 72 6f 70 65 | .(indent.1))...(let.((str.(prope | 
| 14220 | 72 74 69 7a 65 20 28 61 70 70 6c 79 20 23 27 66    6f 72 6d 61 74 20 61 72 67 73 29 20 27 66 61 63 | rtize.(apply.#'format.args).'fac | 
| 14240 | 65 20 66 61 63 65 20 27 66 6f 6e 74 2d 6c 6f 63    6b 2d 66 61 63 65 20 66 61 63 65 29 29 0a 20 20 | e.face.'font-lock-face.face))... | 
| 14260 | 20 20 20 20 20 20 28 69 6e 68 69 62 69 74 2d 72    65 61 64 2d 6f 6e 6c 79 20 74 29 29 0a 20 20 20 | ......(inhibit-read-only.t)).... | 
| 14280 | 20 28 69 66 20 6e 6f 6e 69 6e 74 65 72 61 63 74    69 76 65 0a 20 20 20 20 20 20 20 20 28 70 72 6f | .(if.noninteractive.........(pro | 
| 142a0 | 67 6e 20 28 70 72 69 6e 63 20 73 74 72 29 20 28    70 72 69 6e 63 20 22 5c 6e 22 29 29 0a 20 20 20 | gn.(princ.str).(princ."\n")).... | 
| 142c0 | 20 20 20 28 69 6e 73 65 72 74 20 73 74 72 29 0a    20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c | ...(insert.str).......(insert."\ | 
| 142e0 | 6e 22 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 72    6f 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 63 | n"))))..(defmacro.tsc-dyn-get--c | 
| 14300 | 6f 6d 70 69 6c 61 74 69 6f 6e 2d 74 6f 2d 73 74    64 6f 75 74 20 28 63 6f 6e 64 69 74 69 6f 6e 20 | ompilation-to-stdout.(condition. | 
| 14320 | 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 45    76 61 6c 20 42 4f 44 59 20 66 6f 72 6d 73 20 77 | &rest.body)..."Eval.BODY.forms.w | 
| 14340 | 69 74 68 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20    6f 75 74 70 75 74 20 63 6f 6e 64 69 74 69 6f 6e | ith.compilation.output.condition | 
| 14360 | 61 6c 6c 79 20 72 65 64 69 72 65 63 74 65 64 20    74 6f 20 60 70 72 69 6e 63 27 2e 22 0a 20 20 28 | ally.redirected.to.`princ'."...( | 
| 14380 | 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20    31 29 29 0a 20 20 28 6c 65 74 20 28 28 70 72 69 | declare.(indent.1))...(let.((pri | 
| 143a0 | 6e 74 2d 73 74 64 6f 75 74 20 28 6d 61 6b 65 2d    73 79 6d 62 6f 6c 20 22 70 72 69 6e 74 2d 73 74 | nt-stdout.(make-symbol."print-st | 
| 143c0 | 64 6f 75 74 22 29 29 29 0a 20 20 20 20 60 28 69    66 20 2c 63 6f 6e 64 69 74 69 6f 6e 0a 20 20 20 | dout"))).....`(if.,condition.... | 
| 143e0 | 20 20 20 20 20 20 28 6c 65 74 20 28 28 2c 70 72    69 6e 74 2d 73 74 64 6f 75 74 20 28 6c 61 6d 62 | ......(let.((,print-stdout.(lamb | 
| 14400 | 64 61 20 28 5f 70 72 6f 63 20 73 74 72 69 6e 67    29 20 28 70 72 69 6e 63 20 73 74 72 69 6e 67 29 | da.(_proc.string).(princ.string) | 
| 14420 | 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28    61 64 76 69 63 65 2d 61 64 64 20 27 63 6f 6d 70 | )))............(advice-add.'comp | 
| 14440 | 69 6c 61 74 69 6f 6e 2d 66 69 6c 74 65 72 20 3a    6f 76 65 72 72 69 64 65 20 2c 70 72 69 6e 74 2d | ilation-filter.:override.,print- | 
| 14460 | 73 74 64 6f 75 74 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 | stdout)............(unwind-prote | 
| 14480 | 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 70 72 6f 67 6e 20 2c 40 62 6f 64 79 29 | ct................(progn.,@body) | 
| 144a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61    64 76 69 63 65 2d 72 65 6d 6f 76 65 20 27 63 6f | ..............(advice-remove.'co | 
| 144c0 | 6d 70 69 6c 61 74 69 6f 6e 2d 66 69 6c 74 65 72    20 2c 70 72 69 6e 74 2d 73 74 64 6f 75 74 29 29 | mpilation-filter.,print-stdout)) | 
| 144e0 | 29 0a 20 20 20 20 20 20 20 2c 40 62 6f 64 79 29    29 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 64 | )........,@body)))..(defun.tsc-d | 
| 14500 | 79 6e 2d 67 65 74 2d 2d 62 75 69 6c 64 2d 76 65    72 73 69 6f 6e 20 28 29 0a 20 20 22 52 65 74 75 | yn-get--build-version.()..."Retu | 
| 14520 | 72 6e 20 74 68 65 20 64 79 6e 61 6d 69 63 20 6d    6f 64 75 6c 65 27 73 20 76 65 72 73 69 6f 6e 20 | rn.the.dynamic.module's.version. | 
| 14540 | 61 66 74 65 72 20 61 73 6b 69 6e 67 20 27 63 61    72 67 6f 27 2e 22 0a 20 20 28 74 68 72 65 61 64 | after.asking.'cargo'."...(thread | 
| 14560 | 2d 66 69 72 73 74 20 28 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 2d 74 6f 2d 73 74 72 69 6e 67 20 | -first.(shell-command-to-string. | 
| 14580 | 22 63 61 72 67 6f 20 70 6b 67 69 64 22 29 0a 20    20 20 20 73 74 72 69 6e 67 2d 74 72 69 6d 0a 20 | "cargo.pkgid").....string-trim.. | 
| 145a0 | 20 20 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67    20 22 5c 5b 23 3a 5c 5d 22 29 0a 20 20 20 20 6c | ...(split-string."\[#:\]").....l | 
| 145c0 | 61 73 74 20 63 61 72 29 29 0a 0a 3b 3b 20 54 4f    44 4f 3a 20 52 65 6d 6f 76 65 20 74 68 69 73 20 | ast.car))..;;.TODO:.Remove.this. | 
| 145e0 | 77 68 65 6e 20 63 61 72 67 6f 20 61 6c 6c 6f 77    73 20 73 70 65 63 69 66 79 69 6e 67 20 6f 75 74 | when.cargo.allows.specifying.out | 
| 14600 | 70 75 74 20 66 69 6c 65 20 6e 61 6d 65 2e 0a 28    64 65 66 75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 | put.file.name..(defun.tsc-dyn-ge | 
| 14620 | 74 2d 2d 6f 75 74 2d 66 69 6c 65 20 28 29 0a 20    20 22 52 65 74 75 72 6e 20 63 61 72 67 6f 27 73 | t--out-file.()..."Return.cargo's | 
| 14640 | 20 6f 75 74 70 75 74 20 66 69 6c 65 6e 61 6d 65    2c 20 77 68 69 63 68 20 69 73 20 73 79 73 74 65 | .output.filename,.which.is.syste | 
| 14660 | 6d 2d 64 65 70 65 6e 64 65 6e 74 2e 22 0a 20 20    28 6c 65 74 20 28 28 62 61 73 65 20 28 70 63 61 | m-dependent."...(let.((base.(pca | 
| 14680 | 73 65 20 73 79 73 74 65 6d 2d 74 79 70 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | se.system-type.................( | 
| 146a0 | 27 77 69 6e 64 6f 77 73 2d 6e 74 20 22 74 73 63    5f 64 79 6e 22 29 0a 20 20 20 20 20 20 20 20 20 | 'windows-nt."tsc_dyn").......... | 
| 146c0 | 20 20 20 20 20 20 20 28 5f 20 22 6c 69 62 74 73    63 5f 64 79 6e 22 29 29 29 29 0a 20 20 20 20 28 | .......(_."libtsc_dyn")))).....( | 
| 146e0 | 66 6f 72 6d 61 74 20 22 25 73 2e 25 73 22 20 62    61 73 65 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 | format."%s.%s".base.(tsc-dyn-get | 
| 14700 | 2d 2d 65 78 74 29 29 29 29 0a 0a 28 64 65 66 75    6e 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 62 | --ext))))..(defun.tsc-dyn-get--b | 
| 14720 | 75 69 6c 64 2d 63 6c 65 61 6e 75 70 20 28 63 6f    6d 70 2d 62 75 66 66 65 72 20 73 74 61 74 75 73 | uild-cleanup.(comp-buffer.status | 
| 14740 | 29 0a 20 20 22 43 6c 65 61 6e 20 75 70 20 61 66    74 65 72 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 | )..."Clean.up.after.compiling.th | 
| 14760 | 65 20 64 79 6e 61 6d 69 63 20 6d 6f 64 75 6c 65    20 60 74 73 63 2d 64 79 6e 27 2e 0a 54 68 69 73 | e.dynamic.module.`tsc-dyn'..This | 
| 14780 | 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 69 65 73    20 74 68 65 20 62 75 69 6c 74 20 62 69 6e 61 72 | .function.copies.the.built.binar | 
| 147a0 | 79 20 74 6f 20 74 68 65 20 61 70 70 72 6f 70 72    69 61 74 65 20 6c 6f 63 61 74 69 6f 6e 2c 20 64 | y.to.the.appropriate.location,.d | 
| 147c0 | 65 6c 65 74 65 20 74 68 65 0a 62 75 69 6c 64 20    64 69 72 65 63 74 6f 72 79 2c 20 61 6e 64 20 72 | elete.the.build.directory,.and.r | 
| 147e0 | 65 63 6f 72 64 20 74 68 65 20 62 75 69 6c 74 20    76 65 72 73 69 6f 6e 20 69 6e 20 74 68 65 20 6d | ecord.the.built.version.in.the.m | 
| 14800 | 61 6e 69 66 65 73 74 0a 60 74 73 63 2d 64 79 6e    2d 67 65 74 2d 2d 76 65 72 73 69 6f 6e 2d 66 69 | anifest.`tsc-dyn-get--version-fi | 
| 14820 | 6c 65 27 2e 22 0a 20 20 28 77 69 74 68 2d 63 75    72 72 65 6e 74 2d 62 75 66 66 65 72 20 63 6f 6d | le'."...(with-current-buffer.com | 
| 14840 | 70 2d 62 75 66 66 65 72 0a 20 20 20 20 28 6c 65    74 2a 20 28 28 66 69 6c 65 20 28 74 73 63 2d 64 | p-buffer.....(let*.((file.(tsc-d | 
| 14860 | 79 6e 2d 67 65 74 2d 2d 66 69 6c 65 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 28 6f 75 74 2d 6e | yn-get--file))............(out-n | 
| 14880 | 61 6d 65 20 28 74 73 63 2d 64 79 6e 2d 67 65 74    2d 2d 6f 75 74 2d 66 69 6c 65 29 29 0a 20 20 20 | ame.(tsc-dyn-get--out-file)).... | 
| 148a0 | 20 20 20 20 20 20 20 20 28 6f 75 74 2d 66 69 6c    65 20 28 66 6f 72 6d 61 74 20 22 74 61 72 67 65 | ........(out-file.(format."targe | 
| 148c0 | 74 2f 72 65 6c 65 61 73 65 2f 25 73 22 20 6f 75    74 2d 6e 61 6d 65 29 29 29 0a 20 20 20 20 20 20 | t/release/%s".out-name)))....... | 
| 148e0 | 28 75 6e 6c 65 73 73 20 28 73 74 72 69 6e 67 3d    20 73 74 61 74 75 73 20 22 66 69 6e 69 73 68 65 | (unless.(string=.status."finishe | 
| 14900 | 64 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 28 73    69 67 6e 61 6c 20 27 74 73 63 2d 63 6f 6d 70 69 | d\n").........(signal.'tsc-compi | 
| 14920 | 6c 65 2d 65 72 72 6f 72 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 | le-error.................(list.( | 
| 14940 | 66 6f 72 6d 61 74 20 22 43 6f 6d 70 69 6c 61 74    69 6f 6e 20 66 61 69 6c 65 64 20 77 69 74 68 20 | format."Compilation.failed.with. | 
| 14960 | 73 74 61 74 75 73 3a 20 25 73 22 20 73 74 61 74    75 73 29 29 29 29 0a 20 20 20 20 20 20 28 74 73 | status:.%s".status)))).......(ts | 
| 14980 | 63 2d 64 79 6e 2d 67 65 74 2d 2d 62 75 69 6c 64    2d 6f 75 74 70 75 74 20 27 63 6f 6d 70 69 6c 61 | c-dyn-get--build-output.'compila | 
| 149a0 | 74 69 6f 6e 2d 69 6e 66 6f 0a 20 20 20 20 20 20    20 20 22 4d 6f 76 69 6e 67 20 62 69 6e 61 72 79 | tion-info........."Moving.binary | 
| 149c0 | 20 25 73 20 66 72 6f 6d 20 62 75 69 6c 64 20 64    69 72 22 20 6f 75 74 2d 6e 61 6d 65 29 0a 20 20 | .%s.from.build.dir".out-name)... | 
| 149e0 | 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63    61 73 65 20 5f 0a 20 20 20 20 20 20 20 20 20 20 | ....(condition-case._........... | 
| 14a00 | 28 72 65 6e 61 6d 65 2d 66 69 6c 65 20 6f 75 74    2d 66 69 6c 65 20 66 69 6c 65 29 0a 20 20 20 20 | (rename-file.out-file.file)..... | 
| 14a20 | 20 20 20 20 28 66 69 6c 65 2d 61 6c 72 65 61 64    79 2d 65 78 69 73 74 73 0a 20 20 20 20 20 20 20 | ....(file-already-exists........ | 
| 14a40 | 20 20 28 64 65 6c 65 74 65 2d 66 69 6c 65 20 66    69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 28 72 | ..(delete-file.file)..........(r | 
| 14a60 | 65 6e 61 6d 65 2d 66 69 6c 65 20 6f 75 74 2d 66    69 6c 65 20 66 69 6c 65 29 29 29 0a 20 20 20 20 | ename-file.out-file.file)))..... | 
| 14a80 | 20 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d    62 75 69 6c 64 2d 6f 75 74 70 75 74 20 27 63 6f | ..(tsc-dyn-get--build-output.'co | 
| 14aa0 | 6d 70 69 6c 61 74 69 6f 6e 2d 69 6e 66 6f 0a 20    20 20 20 20 20 20 20 22 52 65 6d 6f 76 69 6e 67 | mpilation-info........."Removing | 
| 14ac0 | 20 62 75 69 6c 64 20 64 69 72 22 29 0a 20 20 20    20 20 20 28 64 65 6c 65 74 65 2d 64 69 72 65 63 | .build.dir").......(delete-direc | 
| 14ae0 | 74 6f 72 79 20 22 74 61 72 67 65 74 22 20 3a 72    65 63 75 72 73 69 76 65 29 0a 20 20 20 20 20 20 | tory."target".:recursive)....... | 
| 14b00 | 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 62 75    69 6c 64 2d 6f 75 74 70 75 74 20 27 63 6f 6d 70 | (tsc-dyn-get--build-output.'comp | 
| 14b20 | 69 6c 61 74 69 6f 6e 2d 69 6e 66 6f 0a 20 20 20    20 20 20 20 20 22 52 65 63 6f 72 64 69 6e 67 20 | ilation-info........."Recording. | 
| 14b40 | 62 75 69 6c 74 20 76 65 72 73 69 6f 6e 20 69 6e    20 25 73 22 20 74 73 63 2d 64 79 6e 2d 67 65 74 | built.version.in.%s".tsc-dyn-get | 
| 14b60 | 2d 2d 76 65 72 73 69 6f 6e 2d 66 69 6c 65 29 0a    20 20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 | --version-file).......(with-temp | 
| 14b80 | 2d 66 69 6c 65 20 74 73 63 2d 64 79 6e 2d 67 65    74 2d 2d 76 65 72 73 69 6f 6e 2d 66 69 6c 65 0a | -file.tsc-dyn-get--version-file. | 
| 14ba0 | 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63    6f 64 69 6e 67 2d 73 79 73 74 65 6d 2d 66 6f 72 | ........(let.((coding-system-for | 
| 14bc0 | 2d 77 72 69 74 65 20 27 75 74 66 2d 38 29 29 0a    20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 | -write.'utf-8))...........(inser | 
| 14be0 | 74 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d    62 75 69 6c 64 2d 76 65 72 73 69 6f 6e 29 29 29 | t.(tsc-dyn-get--build-version))) | 
| 14c00 | 29 0a 20 20 20 20 20 20 28 74 73 63 2d 64 79 6e    2d 67 65 74 2d 2d 62 75 69 6c 64 2d 6f 75 74 70 | ).......(tsc-dyn-get--build-outp | 
| 14c20 | 75 74 20 27 73 75 63 63 65 73 73 20 22 44 6f 6e    65 22 29 29 29 29 0a 0a 3b 3b 20 58 58 58 3a 20 | ut.'success."Done"))))..;;.XXX:. | 
| 14c40 | 57 65 20 64 6f 6e 27 74 20 75 73 65 20 60 63 61    6c 6c 2d 70 72 6f 63 65 73 73 27 20 62 65 63 61 | We.don't.use.`call-process'.beca | 
| 14c60 | 75 73 65 20 74 68 65 20 70 72 6f 63 65 73 73 20    69 74 20 63 72 65 61 74 65 73 20 69 73 20 6e 6f | use.the.process.it.creates.is.no | 
| 14c80 | 74 20 6b 69 6c 6c 65 64 0a 3b 3b 20 77 68 65 6e    20 45 6d 61 63 73 20 65 78 69 74 73 20 69 6e 20 | t.killed.;;.when.Emacs.exits.in. | 
| 14ca0 | 62 61 74 63 68 20 6d 6f 64 65 2e 20 54 68 61 74    27 73 20 70 72 6f 62 61 62 6c 79 20 61 6e 20 45 | batch.mode..That's.probably.an.E | 
| 14cc0 | 6d 61 63 73 27 73 20 62 75 67 2e 0a 28 64 65 66    75 6e 20 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d | macs's.bug..(defun.tsc-dyn-get-- | 
| 14ce0 | 62 75 69 6c 64 2d 73 79 6e 63 20 28 64 69 72 29    0a 20 20 22 42 75 69 6c 64 20 74 68 65 20 64 79 | build-sync.(dir)..."Build.the.dy | 
| 14d00 | 6e 61 6d 69 63 20 6d 6f 64 75 6c 65 20 60 74 73    63 2d 64 79 6e 27 20 61 6e 64 20 70 75 74 20 69 | namic.module.`tsc-dyn'.and.put.i | 
| 14d20 | 74 20 69 6e 20 44 49 52 2c 20 62 6c 6f 63 6b 69    6e 67 20 75 6e 74 69 6c 20 64 6f 6e 65 2e 22 0a | t.in.DIR,.blocking.until.done.". | 
| 14d40 | 20 20 3b 3b 20 46 49 58 3a 20 46 69 67 75 72 65    20 6f 75 74 20 68 6f 77 20 74 6f 20 70 72 69 6e | ..;;.FIX:.Figure.out.how.to.prin | 
| 14d60 | 74 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 62    61 72 20 77 68 65 6e 20 72 75 6e 20 73 79 6e 63 | t.the.progress.bar.when.run.sync | 
| 14d80 | 68 72 6f 6e 6f 75 73 6c 79 2e 0a 20 20 28 74 73    63 2d 64 79 6e 2d 67 65 74 2d 2d 63 6f 6d 70 69 | hronously....(tsc-dyn-get--compi | 
| 14da0 | 6c 61 74 69 6f 6e 2d 74 6f 2d 73 74 64 6f 75 74    20 6e 6f 6e 69 6e 74 65 72 61 63 74 69 76 65 0a | lation-to-stdout.noninteractive. | 
| 14dc0 | 20 20 20 20 28 6c 65 74 20 28 28 70 72 6f 63 20    28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 62 75 | ....(let.((proc.(tsc-dyn-get--bu | 
| 14de0 | 69 6c 64 2d 61 73 79 6e 63 20 64 69 72 29 29 29    0a 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f | ild-async.dir))).......(conditio | 
| 14e00 | 6e 2d 63 61 73 65 20 73 0a 20 20 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 61 63 63 65 70 | n-case.s...........(while.(accep | 
| 14e20 | 74 2d 70 72 6f 63 65 73 73 2d 6f 75 74 70 75 74    20 70 72 6f 63 29 0a 20 20 20 20 20 20 20 20 20 | t-process-output.proc).......... | 
| 14e40 | 20 20 20 28 75 6e 6c 65 73 73 20 6e 6f 6e 69 6e    74 65 72 61 63 74 69 76 65 0a 20 20 20 20 20 20 | ...(unless.noninteractive....... | 
| 14e60 | 20 20 20 20 20 20 20 20 28 72 65 64 69 73 70 6c    61 79 29 29 29 0a 20 20 20 20 20 20 20 20 28 71 | ........(redisplay))).........(q | 
| 14e80 | 75 69 74 20 28 6c 65 74 20 28 28 62 75 66 20 28    70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 20 70 | uit.(let.((buf.(process-buffer.p | 
| 14ea0 | 72 6f 63 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 73 65 74 2d 70 72 6f 63 | roc))).................(set-proc | 
| 14ec0 | 65 73 73 2d 71 75 65 72 79 2d 6f 6e 2d 65 78 69    74 2d 66 6c 61 67 20 70 72 6f 63 20 6e 69 6c 29 | ess-query-on-exit-flag.proc.nil) | 
| 14ee0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 69 6e 74 65 72 72 75 70 74 2d 70 72 6f 63 | .................(interrupt-proc | 
| 14f00 | 65 73 73 20 70 72 6f 63 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d | ess.proc).................(with- | 
| 14f20 | 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62    75 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | current-buffer.buf.............. | 
| 14f40 | 20 20 20 20 20 28 74 73 63 2d 64 79 6e 2d 67 65    74 2d 2d 62 75 69 6c 64 2d 6f 75 74 70 75 74 20 | .....(tsc-dyn-get--build-output. | 
| 14f60 | 27 65 72 72 6f 72 20 22 43 61 6e 63 65 6c 6c 65    64 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | 'error."Cancelled")............. | 
| 14f80 | 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 44    6f 6e 27 74 20 77 61 69 74 20 66 6f 72 20 61 20 | ......;;.TODO:.Don't.wait.for.a. | 
| 14fa0 | 66 69 78 65 64 20 61 6d 6f 75 6e 74 20 6f 66 20    74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 | fixed.amount.of.time............ | 
| 14fc0 | 20 20 20 20 20 20 20 20 28 73 69 74 2d 66 6f 72    20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ........(sit-for.1)............. | 
| 14fe0 | 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66    65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 | ......(kill-buffer)))........... | 
| 15000 | 20 20 20 20 28 73 69 67 6e 61 6c 20 28 63 61 72    20 73 29 20 28 63 64 72 20 73 29 29 29 29 29 29 | ....(signal.(car.s).(cdr.s)))))) | 
| 15020 | 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 64 79    6e 2d 67 65 74 2d 2d 62 75 69 6c 64 2d 61 73 79 | )..(defun.tsc-dyn-get--build-asy | 
| 15040 | 6e 63 20 28 64 69 72 29 0a 20 20 22 42 75 69 6c    64 20 74 68 65 20 64 79 6e 61 6d 69 63 20 6d 6f | nc.(dir)..."Build.the.dynamic.mo | 
| 15060 | 64 75 6c 65 20 60 74 73 63 2d 64 79 6e 27 20 61    6e 64 20 70 75 74 20 69 74 20 69 6e 20 44 49 52 | dule.`tsc-dyn'.and.put.it.in.DIR | 
| 15080 | 2c 20 61 73 79 6e 63 68 72 6f 75 6e 6f 75 73 6c    79 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 64 65 | ,.asynchrounously."...(let*.((de | 
| 150a0 | 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20    64 69 72 29 0a 20 20 20 20 20 20 20 20 20 28 63 | fault-directory.dir)..........(c | 
| 150c0 | 6f 6d 70 69 6c 61 74 69 6f 6e 2d 61 75 74 6f 2d    6a 75 6d 70 2d 74 6f 2d 66 69 72 73 74 2d 65 72 | ompilation-auto-jump-to-first-er | 
| 150e0 | 72 6f 72 20 6e 69 6c 29 0a 20 20 20 20 20 20 20    20 20 28 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 73 | ror.nil)..........(compilation-s | 
| 15100 | 63 72 6f 6c 6c 2d 6f 75 74 70 75 74 20 74 29 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 77 | croll-output.t)..........;;.We.w | 
| 15120 | 61 6e 74 20 72 65 73 70 6f 6e 73 69 76 65 20 70    72 6f 67 72 65 73 73 20 62 61 72 2e 20 49 74 27 | ant.responsive.progress.bar..It' | 
| 15140 | 73 20 6f 6b 20 73 69 6e 63 65 20 74 68 65 20 6f    75 74 70 75 74 20 69 73 20 73 6d 61 6c 6c 2e 0a | s.ok.since.the.output.is.small.. | 
| 15160 | 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73    73 2d 61 64 61 70 74 69 76 65 2d 72 65 61 64 2d | .........(process-adaptive-read- | 
| 15180 | 62 75 66 66 65 72 69 6e 67 20 6e 69 6c 29 0a 20    20 20 20 20 20 20 20 20 28 63 6f 6d 70 2d 62 75 | buffering.nil)..........(comp-bu | 
| 151a0 | 66 66 65 72 20 28 63 6f 6d 70 69 6c 61 74 69 6f    6e 2d 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 | ffer.(compilation-start......... | 
| 151c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22    63 61 72 67 6f 20 62 75 69 6c 64 20 2d 2d 72 65 | ..............."cargo.build.--re | 
| 151e0 | 6c 65 61 73 65 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 | lease"........................ni | 
| 15200 | 6c 20 28 6c 61 6d 62 64 61 20 28 5f 29 20 22 2a    74 73 63 2d 64 79 6e 20 63 6f 6d 70 69 6c 61 74 | l.(lambda.(_)."*tsc-dyn.compilat | 
| 15220 | 69 6f 6e 2a 22 29 29 29 0a 20 20 20 20 20 20 20    20 20 28 70 72 6f 63 20 28 67 65 74 2d 62 75 66 | ion*")))..........(proc.(get-buf | 
| 15240 | 66 65 72 2d 70 72 6f 63 65 73 73 20 63 6f 6d 70    2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 28 | fer-process.comp-buffer))).....( | 
| 15260 | 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66    66 65 72 20 63 6f 6d 70 2d 62 75 66 66 65 72 0a | with-current-buffer.comp-buffer. | 
| 15280 | 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61    6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 65 72 | ......(setq-local.compilation-er | 
| 152a0 | 72 6f 72 2d 72 65 67 65 78 70 2d 61 6c 69 73 74    20 6e 69 6c 29 0a 20 20 20 20 20 20 28 61 64 64 | ror-regexp-alist.nil).......(add | 
| 152c0 | 2d 68 6f 6f 6b 20 27 63 6f 6d 70 69 6c 61 74 69    6f 6e 2d 66 69 6e 69 73 68 2d 66 75 6e 63 74 69 | -hook.'compilation-finish-functi | 
| 152e0 | 6f 6e 73 20 23 27 74 73 63 2d 64 79 6e 2d 67 65    74 2d 2d 62 75 69 6c 64 2d 63 6c 65 61 6e 75 70 | ons.#'tsc-dyn-get--build-cleanup | 
| 15300 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 6e 69 6c 20 3a 6c 6f 63 61 6c 29 0a 20 20 20 | .................nil.:local).... | 
| 15320 | 20 20 20 28 75 6e 6c 65 73 73 20 6e 6f 6e 69 6e    74 65 72 61 63 74 69 76 65 0a 20 20 20 20 20 20 | ...(unless.noninteractive....... | 
| 15340 | 20 20 28 77 68 65 6e 20 28 66 75 6e 63 74 69 6f    6e 70 20 27 61 6e 73 69 2d 63 6f 6c 6f 72 2d 61 | ..(when.(functionp.'ansi-color-a | 
| 15360 | 70 70 6c 79 2d 6f 6e 2d 72 65 67 69 6f 6e 29 0a    20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 68 | pply-on-region)...........(add-h | 
| 15380 | 6f 6f 6b 20 27 63 6f 6d 70 69 6c 61 74 69 6f 6e    2d 66 69 6c 74 65 72 2d 68 6f 6f 6b 0a 20 20 20 | ook.'compilation-filter-hook.... | 
| 153a0 | 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61    20 28 29 20 28 61 6e 73 69 2d 63 6f 6c 6f 72 2d | .........(lambda.().(ansi-color- | 
| 153c0 | 61 70 70 6c 79 2d 6f 6e 2d 72 65 67 69 6f 6e 20    28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 | apply-on-region.(point-min).(poi | 
| 153e0 | 6e 74 2d 6d 61 78 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 6e 69 6c 20 3a 6c 6f 63 61 6c | nt-max))).............nil.:local | 
| 15400 | 29 29 29 29 0a 20 20 20 20 70 72 6f 63 29 29 0a    0a 28 64 65 66 75 6e 20 74 73 63 2d 64 79 6e 2d | )))).....proc))..(defun.tsc-dyn- | 
| 15420 | 67 65 74 2d 2d 62 75 69 6c 64 20 28 26 6f 70 74    69 6f 6e 61 6c 20 64 69 72 29 0a 20 20 22 42 75 | get--build.(&optional.dir)..."Bu | 
| 15440 | 69 6c 64 20 74 68 65 20 64 79 6e 61 6d 69 63 20    6d 6f 64 75 6c 65 20 60 74 73 63 2d 64 79 6e 27 | ild.the.dynamic.module.`tsc-dyn' | 
| 15460 | 20 66 72 6f 6d 20 73 6f 75 72 63 65 2e 0a 0a 57    68 65 6e 20 63 61 6c 6c 65 64 20 64 75 72 69 6e | .from.source...When.called.durin | 
| 15480 | 67 20 61 6e 20 61 74 74 65 6d 70 74 20 74 6f 20    6c 6f 61 64 20 60 74 73 63 27 2c 20 6f 72 20 69 | g.an.attempt.to.load.`tsc',.or.i | 
| 154a0 | 6e 20 62 61 74 63 68 20 6d 6f 64 65 2c 20 74 68    69 73 20 62 6c 6f 63 6b 73 20 75 6e 74 69 6c 0a | n.batch.mode,.this.blocks.until. | 
| 154c0 | 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 66 69 6e 69    73 68 65 73 2e 20 49 6e 20 6f 74 68 65 72 20 73 | compilation.finishes..In.other.s | 
| 154e0 | 69 74 75 61 74 69 6f 6e 73 2c 20 69 74 20 72 75    6e 73 20 69 6e 20 74 68 65 20 62 61 63 6b 67 72 | ituations,.it.runs.in.the.backgr | 
| 15500 | 6f 75 6e 64 2e 0a 0a 54 68 69 73 20 66 75 6e 63    74 69 6f 6e 20 72 65 63 6f 72 64 73 20 74 68 65 | ound...This.function.records.the | 
| 15520 | 20 62 75 69 6c 74 20 76 65 72 73 69 6f 6e 20 69    6e 20 74 68 65 20 6d 61 6e 69 66 65 73 74 0a 60 | .built.version.in.the.manifest.` | 
| 15540 | 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 76 65 72    73 69 6f 6e 2d 66 69 6c 65 27 2e 0a 0a 4f 6e 20 | tsc-dyn-get--version-file'...On. | 
| 15560 | 57 69 6e 64 6f 77 73 2c 20 69 66 20 60 74 73 63    2d 64 79 6e 27 20 68 61 73 20 61 6c 72 65 61 64 | Windows,.if.`tsc-dyn'.has.alread | 
| 15580 | 79 20 62 65 65 6e 20 6c 6f 61 64 65 64 2c 20 63    6f 6d 70 69 6c 61 74 69 6f 6e 20 77 69 6c 6c 20 | y.been.loaded,.compilation.will. | 
| 155a0 | 66 61 69 6c 20 62 65 63 61 75 73 65 0a 74 68 65    20 4f 53 20 64 6f 65 73 6e 27 74 20 61 6c 6c 6f | fail.because.the.OS.doesn't.allo | 
| 155c0 | 77 20 6f 76 65 72 77 72 69 74 69 6e 67 20 6f 70    65 6e 65 64 20 64 79 6e 61 6d 69 63 61 6c 6c 79 | w.overwriting.opened.dynamically | 
| 155e0 | 2d 6c 6f 61 64 65 64 20 6c 69 62 72 61 72 69 65    73 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 64 69 | -loaded.libraries."...(unless.di | 
| 15600 | 72 20 28 73 65 74 71 20 64 69 72 20 74 73 63 2d    2d 64 69 72 29 29 0a 20 20 28 77 68 69 6c 65 20 | r.(setq.dir.tsc--dir))...(while. | 
| 15620 | 28 6e 6f 74 20 28 65 78 65 63 75 74 61 62 6c 65    2d 66 69 6e 64 20 22 63 61 72 67 6f 22 29 29 0a | (not.(executable-find."cargo")). | 
| 15640 | 20 20 20 20 28 69 66 20 6e 6f 6e 69 6e 74 65 72    61 63 74 69 76 65 0a 20 20 20 20 20 20 20 20 28 | ....(if.noninteractive.........( | 
| 15660 | 73 69 67 6e 61 6c 20 27 74 73 63 2d 63 6f 6d 70    69 6c 65 2d 65 72 72 6f 72 20 22 43 6f 75 6c 64 | signal.'tsc-compile-error."Could | 
| 15680 | 20 6e 6f 74 20 66 69 6e 64 20 60 63 61 72 67 6f    27 20 65 78 65 63 75 74 61 62 6c 65 22 29 0a 20 | .not.find.`cargo'.executable").. | 
| 156a0 | 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 4d 61    6b 65 20 61 20 62 65 74 74 65 72 20 70 72 6f 6d | .....;;.TODO:.Make.a.better.prom | 
| 156c0 | 70 74 2e 0a 20 20 20 20 20 20 28 75 6e 6c 65 73    73 20 28 79 2d 6f 72 2d 6e 2d 70 0a 20 20 20 20 | pt........(unless.(y-or-n-p..... | 
| 156e0 | 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d    61 74 20 22 43 6f 75 6c 64 20 6e 6f 74 20 66 69 | ...........(format."Could.not.fi | 
| 15700 | 6e 64 20 60 63 61 72 67 6f 27 20 65 78 65 63 75    74 61 62 6c 65 2e 0a 50 6c 65 61 73 65 20 70 72 | nd.`cargo'.executable..Please.pr | 
| 15720 | 65 73 73 20 27 25 73 27 20 61 66 74 65 72 20 69    6e 73 74 61 6c 6c 69 6e 67 20 74 68 65 20 52 75 | ess.'%s'.after.installing.the.Ru | 
| 15740 | 73 74 20 74 6f 6f 6c 63 68 61 69 6e 20 28 65 2e    67 2e 20 66 72 6f 6d 20 68 74 74 70 73 3a 2f 2f | st.toolchain.(e.g..from.https:// | 
| 15760 | 72 75 73 74 75 70 2e 72 73 2f 29 2e 0a 50 72 65    73 73 20 27 25 73 27 20 74 6f 20 63 61 6e 63 65 | rustup.rs/)..Press.'%s'.to.cance | 
| 15780 | 6c 2e 20 22 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f | l.."........................(pro | 
| 157a0 | 70 65 72 74 69 7a 65 20 22 79 22 20 27 66 61 63    65 20 27 62 6f 6c 64 29 0a 20 20 20 20 20 20 20 | pertize."y".'face.'bold)........ | 
| 157c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 70 72 6f 70 65 72 74 69 7a 65 20 22 6e 22 20 | ................(propertize."n". | 
| 157e0 | 27 66 61 63 65 20 27 65 72 72 6f 72 29 29 29 0a    20 20 20 20 20 20 20 20 28 73 69 67 6e 61 6c 20 | 'face.'error))).........(signal. | 
| 15800 | 27 74 73 63 2d 63 6f 6d 70 69 6c 65 2d 65 72 72    6f 72 20 22 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 | 'tsc-compile-error."Compilation. | 
| 15820 | 77 61 73 20 63 61 6e 63 65 6c 6c 65 64 22 29 29    29 29 0a 20 20 28 69 66 20 28 6f 72 20 6e 6f 6e | was.cancelled"))))...(if.(or.non | 
| 15840 | 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 20    20 20 20 20 20 20 28 6e 6f 74 20 28 66 65 61 74 | interactive...........(not.(feat | 
| 15860 | 75 72 65 70 20 27 74 73 63 2d 64 79 6e 29 29 0a    20 20 20 20 20 20 20 20 20 20 74 73 63 2d 64 79 | urep.'tsc-dyn))...........tsc-dy | 
| 15880 | 6e 2d 67 65 74 2d 2d 66 6f 72 63 65 2d 73 79 6e    63 29 0a 20 20 20 20 20 20 28 74 73 63 2d 64 79 | n-get--force-sync).......(tsc-dy | 
| 158a0 | 6e 2d 67 65 74 2d 2d 62 75 69 6c 64 2d 73 79 6e    63 20 64 69 72 29 0a 20 20 20 20 3b 3b 20 54 4f | n-get--build-sync.dir).....;;.TO | 
| 158c0 | 44 4f 3a 20 4e 6f 74 69 66 79 20 75 73 65 72 20    66 6f 72 20 66 75 72 74 68 65 72 20 61 63 74 69 | DO:.Notify.user.for.further.acti | 
| 158e0 | 6f 6e 73 2e 20 49 66 20 60 74 73 63 27 20 68 61    73 20 6e 6f 74 20 62 65 65 6e 20 6c 6f 61 64 65 | ons..If.`tsc'.has.not.been.loade | 
| 15900 | 64 2c 0a 20 20 20 20 3b 3b 20 6f 66 66 65 72 20    74 6f 20 6c 6f 61 64 20 69 74 2e 20 49 66 20 69 | d,.....;;.offer.to.load.it..If.i | 
| 15920 | 74 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65    65 6e 20 6c 6f 61 64 65 64 2c 20 6f 66 66 65 72 | t.has.already.been.loaded,.offer | 
| 15940 | 20 74 6f 20 72 65 73 74 61 72 74 20 45 6d 61 63    73 0a 20 20 20 20 3b 3b 20 74 6f 20 62 65 20 61 | .to.restart.Emacs.....;;.to.be.a | 
| 15960 | 62 6c 65 20 74 6f 20 6c 6f 61 64 20 74 68 65 20    6e 65 77 6c 79 20 62 75 69 6c 74 20 60 74 73 63 | ble.to.load.the.newly.built.`tsc | 
| 15980 | 2d 64 79 6e 27 2e 0a 20 20 20 20 28 74 73 63 2d    64 79 6e 2d 67 65 74 2d 2d 62 75 69 6c 64 2d 61 | -dyn'......(tsc-dyn-get--build-a | 
| 159a0 | 73 79 6e 63 20 64 69 72 29 29 29 0a 0a 3b 3b 3b    20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | sync.dir)))..;;;.--------------- | 
| 159c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- | 
| 159e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b | -----------------------------.;; | 
| 15a00 | 3b 20 47 65 6e 65 72 69 63 20 6d 65 63 68 61 6e    69 73 6d 2e 0a 0a 28 64 65 66 75 6e 20 74 73 63 | ;.Generic.mechanism...(defun.tsc | 
| 15a20 | 2d 2d 6d 6f 64 75 6c 65 2d 6c 6f 61 64 2d 6e 6f    65 72 72 6f 72 20 28 66 69 6c 65 29 0a 20 20 22 | --module-load-noerror.(file)..." | 
| 15a40 | 54 72 79 20 6c 6f 61 64 69 6e 67 20 60 74 73 63    2d 64 79 6e 27 20 66 72 6f 6d 20 46 49 4c 45 2e | Try.loading.`tsc-dyn'.from.FILE. | 
| 15a60 | 0a 52 65 74 75 72 6e 20 6e 69 6c 20 69 66 20 74    68 65 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 | .Return.nil.if.the.file.does.not | 
| 15a80 | 20 65 78 69 73 74 2c 20 6f 72 20 69 73 20 6e 6f    74 20 61 20 6c 6f 61 64 61 62 6c 65 20 73 68 61 | .exist,.or.is.not.a.loadable.sha | 
| 15aa0 | 72 65 64 20 6c 69 62 72 61 72 79 2e 22 0a 20 20    28 6f 72 20 28 66 65 61 74 75 72 65 70 20 27 74 | red.library."...(or.(featurep.'t | 
| 15ac0 | 73 63 2d 64 79 6e 29 0a 20 20 20 20 20 20 28 63    6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 5f 0a | sc-dyn).......(condition-case._. | 
| 15ae0 | 20 20 20 20 20 20 20 20 20 20 28 6d 6f 64 75 6c    65 2d 6c 6f 61 64 20 66 69 6c 65 29 0a 20 20 20 | ..........(module-load.file).... | 
| 15b00 | 20 20 20 20 20 28 6d 6f 64 75 6c 65 2d 6f 70 65    6e 2d 66 61 69 6c 65 64 20 6e 69 6c 29 29 29 29 | .....(module-open-failed.nil)))) | 
| 15b20 | 0a 0a 3b 3b 20 4f 6e 20 6d 61 63 4f 53 2c 20 77    65 20 75 73 65 60 2e 64 79 6c 69 62 27 2c 20 77 | ..;;.On.macOS,.we.use`.dylib',.w | 
| 15b40 | 68 69 63 68 20 69 73 20 6d 6f 72 65 20 73 65 6e    73 69 62 6c 65 20 74 68 61 6e 20 60 2e 73 6f 27 | hich.is.more.sensible.than.`.so' | 
| 15b60 | 2e 0a 3b 3b 0a 3b 3b 20 58 58 58 3a 20 55 73 69    6e 67 20 60 72 65 71 75 69 72 65 27 20 61 66 74 | ..;;.;;.XXX:.Using.`require'.aft | 
| 15b80 | 65 72 20 73 65 74 74 69 6e 67 60 6d 6f 64 75 6c    65 2d 66 69 6c 65 2d 73 75 66 66 69 78 27 20 74 | er.setting`module-file-suffix'.t | 
| 15ba0 | 6f 20 60 2e 64 79 6c 69 62 27 20 72 65 73 75 6c    74 73 20 69 6e 0a 3b 3b 20 22 43 61 6e 6e 6f 74 | o.`.dylib'.results.in.;;."Cannot | 
| 15bc0 | 20 6f 70 65 6e 20 6c 6f 61 64 20 66 69 6c 65 3a    20 4e 6f 20 73 75 63 68 20 66 69 6c 65 20 6f 72 | .open.load.file:.No.such.file.or | 
| 15be0 | 20 64 69 72 65 63 74 6f 72 79 2c 20 74 73 63 2d    64 79 6e 22 2e 0a 3b 3b 0a 3b 3b 20 58 58 58 3a | .directory,.tsc-dyn"..;;.;;.XXX: | 
| 15c00 | 20 55 73 69 6e 67 20 60 6c 6f 61 64 27 20 72 65    73 75 6c 74 73 20 69 6e 20 61 6e 20 65 72 72 6f | .Using.`load'.results.in.an.erro | 
| 15c20 | 72 20 6d 65 73 73 61 67 65 20 77 69 74 68 20 67    61 72 62 6c 65 64 20 74 65 78 74 3a 20 22 53 79 | r.message.with.garbled.text:."Sy | 
| 15c40 | 6d 62 6f 6c e2 80 99 73 0a 3b 3b 20 76 61 6c 75    65 20 61 73 20 76 61 72 69 61 62 6c 65 20 69 73 | mbol...s.;;.value.as.variable.is | 
| 15c60 | 20 76 6f 69 64 3a 20 c3 8f c3 ba c3 ad c3 be 22    2e 0a 3b 3b 0a 3b 3b 20 54 68 65 72 65 66 6f 72 | .void:........."..;;.;;.Therefor | 
| 15c80 | 65 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 73 65    61 72 63 68 20 66 6f 72 20 74 68 65 20 66 69 6c | e,.we.need.to.search.for.the.fil | 
| 15ca0 | 65 20 61 6e 64 20 75 73 65 20 60 6d 6f 64 75 6c    65 2d 6c 6f 61 64 27 20 64 69 72 65 63 74 6c 79 | e.and.use.`module-load'.directly | 
| 15cc0 | 2e 0a 28 64 65 66 75 6e 20 74 73 63 2d 64 79 6e    2d 2d 74 72 79 2d 6c 6f 61 64 2d 6d 61 63 20 28 | ..(defun.tsc-dyn--try-load-mac.( | 
| 15ce0 | 29 0a 20 20 22 53 65 61 72 63 68 20 61 6e 64 20    6c 6f 61 64 20 74 68 65 20 64 79 6e 61 6d 69 63 | )..."Search.and.load.the.dynamic | 
| 15d00 | 20 6d 6f 64 75 6c 65 20 6f 6e 20 6d 61 63 4f 53    2e 22 0a 20 20 28 6c 65 74 20 28 28 66 69 6c 65 | .module.on.macOS."...(let.((file | 
| 15d20 | 20 22 74 73 63 2d 64 79 6e 2e 64 79 6c 69 62 22    29 29 0a 20 20 20 20 3b 3b 20 54 72 79 20 64 69 | ."tsc-dyn.dylib")).....;;.Try.di | 
| 15d40 | 72 65 63 74 6f 72 79 20 63 6f 6e 74 61 69 6e 69    6e 67 20 60 6c 6f 61 64 2d 66 69 6c 65 2d 6e 61 | rectory.containing.`load-file-na | 
| 15d60 | 6d 65 27 2e 20 54 79 70 69 63 61 6c 20 63 61 73    65 2e 20 54 4f 44 4f 3a 20 52 65 6d 6f 76 65 0a | me'..Typical.case..TODO:.Remove. | 
| 15d80 | 20 20 20 20 3b 3b 20 74 68 69 73 20 73 70 65 63    69 61 6c 20 63 61 73 65 2e 0a 20 20 20 20 28 77 | ....;;.this.special.case......(w | 
| 15da0 | 68 65 6e 20 6c 6f 61 64 2d 66 69 6c 65 2d 6e 61    6d 65 0a 20 20 20 20 20 20 28 74 73 63 2d 2d 6d | hen.load-file-name.......(tsc--m | 
| 15dc0 | 6f 64 75 6c 65 2d 6c 6f 61 64 2d 6e 6f 65 72 72    6f 72 20 28 63 6f 6e 63 61 74 20 28 66 69 6c 65 | odule-load-noerror.(concat.(file | 
| 15de0 | 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 20    6c 6f 61 64 2d 66 69 6c 65 2d 6e 61 6d 65 29 0a | -name-directory.load-file-name). | 
| 15e00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ | 
| 15e20 | 20 20 20 20 20 20 20 20 66 69 6c 65 29 29 29 0a    20 20 20 20 3b 3b 20 54 72 79 20 77 6f 72 6b 69 | ........file))).....;;.Try.worki | 
| 15e40 | 6e 67 20 64 69 72 65 63 74 6f 72 79 20 28 65 2e    67 2e 20 77 68 65 6e 20 69 6e 76 6f 6b 65 64 20 | ng.directory.(e.g..when.invoked. | 
| 15e60 | 62 79 20 60 63 61 73 6b 27 29 2e 20 54 4f 44 4f    3a 20 4d 6f 64 69 66 79 69 6e 67 20 6c 6f 61 64 | by.`cask')..TODO:.Modifying.load | 
| 15e80 | 0a 20 20 20 20 3b 3b 20 70 61 74 68 20 77 68 65    6e 20 75 73 69 6e 67 20 60 63 61 73 6b 27 20 69 | .....;;.path.when.using.`cask'.i | 
| 15ea0 | 6e 73 74 65 61 64 2e 0a 20 20 20 20 28 74 73 63    2d 2d 6d 6f 64 75 6c 65 2d 6c 6f 61 64 2d 6e 6f | nstead......(tsc--module-load-no | 
| 15ec0 | 65 72 72 6f 72 20 66 69 6c 65 29 0a 20 20 20 20    3b 3b 20 46 61 6c 6c 20 62 61 63 6b 20 74 6f 20 | error.file).....;;.Fall.back.to. | 
| 15ee0 | 60 6c 6f 61 64 2d 70 61 74 68 27 2e 0a 20 20 20    20 28 73 65 71 2d 66 69 6e 64 20 28 6c 61 6d 62 | `load-path'......(seq-find.(lamb | 
| 15f00 | 64 61 20 28 64 69 72 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 | da.(dir).................(let.(( | 
| 15f20 | 66 75 6c 6c 2d 6e 61 6d 65 20 28 63 6f 6e 63 61    74 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 61 73 2d | full-name.(concat.(file-name-as- | 
| 15f40 | 64 69 72 65 63 74 6f 72 79 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | directory....................... | 
| 15f60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 | ....................(expand-file | 
| 15f80 | 2d 6e 61 6d 65 20 64 69 72 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -name.dir))..................... | 
| 15fa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 66 69 6c 65 29 29 29 0a 20 20 20 | .....................file))).... | 
| 15fc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    74 73 63 2d 2d 6d 6f 64 75 6c 65 2d 6c 6f 61 64 | ...............(tsc--module-load | 
| 15fe0 | 2d 6e 6f 65 72 72 6f 72 20 66 75 6c 6c 2d 6e 61    6d 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 | -noerror.full-name)))........... | 
| 16000 | 20 20 20 20 6c 6f 61 64 2d 70 61 74 68 29 29 29    0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 64 79 6e | ....load-path)))..(defun.tsc-dyn | 
| 16020 | 2d 2d 74 72 79 2d 6c 6f 61 64 20 28 29 0a 20 20    22 54 72 79 20 6c 6f 61 64 69 6e 67 20 60 74 73 | --try-load.()..."Try.loading.`ts | 
| 16040 | 63 2d 64 79 6e 27 20 77 69 74 68 6f 75 74 20 73    69 67 6e 61 6c 69 6e 67 20 61 6e 20 65 72 72 6f | c-dyn'.without.signaling.an.erro | 
| 16060 | 72 2e 0a 52 65 74 75 72 6e 20 74 20 6f 6e 20 73    75 63 63 65 73 73 2c 20 6e 69 6c 20 6f 74 68 65 | r..Return.t.on.success,.nil.othe | 
| 16080 | 72 77 69 73 65 2e 22 0a 20 20 28 69 66 20 28 66    65 61 74 75 72 65 70 20 27 74 73 63 2d 64 79 6e | rwise."...(if.(featurep.'tsc-dyn | 
| 160a0 | 29 0a 20 20 20 20 20 20 74 0a 20 20 20 20 28 77    68 65 6e 20 28 65 71 20 73 79 73 74 65 6d 2d 74 | ).......t.....(when.(eq.system-t | 
| 160c0 | 79 70 65 20 27 64 61 72 77 69 6e 29 0a 20 20 20    20 20 20 28 74 73 63 2d 64 79 6e 2d 2d 74 72 79 | ype.'darwin).......(tsc-dyn--try | 
| 160e0 | 2d 6c 6f 61 64 2d 6d 61 63 29 29 0a 20 20 20 20    28 72 65 71 75 69 72 65 20 27 74 73 63 2d 64 79 | -load-mac)).....(require.'tsc-dy | 
| 16100 | 6e 20 6e 69 6c 20 3a 6e 6f 65 72 72 6f 72 29 29    29 0a 0a 3b 3b 20 54 4f 44 4f 3a 20 41 64 64 20 | n.nil.:noerror)))..;;.TODO:.Add. | 
| 16120 | 74 65 73 74 73 20 66 6f 72 20 74 68 69 73 2e 0a    28 64 65 66 75 6e 20 74 73 63 2d 64 79 6e 2d 67 | tests.for.this..(defun.tsc-dyn-g | 
| 16140 | 65 74 2d 65 6e 73 75 72 65 20 28 72 65 71 75 65    73 74 65 64 29 0a 20 20 22 54 72 79 20 74 6f 20 | et-ensure.(requested)..."Try.to. | 
| 16160 | 67 65 74 20 61 6e 64 20 6c 6f 61 64 20 74 68 65    20 52 45 51 55 45 53 54 45 44 20 28 6f 72 20 6c | get.and.load.the.REQUESTED.(or.l | 
| 16180 | 61 74 65 72 29 20 76 65 72 73 69 6f 6e 20 6f 66    20 60 74 73 63 2d 64 79 6e 27 2e 0a 0a 49 66 20 | ater).version.of.`tsc-dyn'...If. | 
| 161a0 | 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61    6e 6e 6f 74 20 66 69 6e 64 20 61 20 73 75 69 74 | this.function.cannot.find.a.suit | 
| 161c0 | 61 62 6c 65 20 76 65 72 73 69 6f 6e 20 6f 6e 20    60 6c 6f 61 64 2d 70 61 74 68 27 2c 20 69 74 20 | able.version.on.`load-path',.it. | 
| 161e0 | 74 72 69 65 73 20 74 6f 20 67 65 74 0a 74 68 65    20 64 79 6e 61 6d 69 63 20 6d 6f 64 75 6c 65 20 | tries.to.get.the.dynamic.module. | 
| 16200 | 66 72 6f 6d 20 73 6f 75 72 63 65 73 20 6c 69 73    74 65 64 20 69 6e 20 60 74 73 63 2d 64 79 6e 2d | from.sources.listed.in.`tsc-dyn- | 
| 16220 | 67 65 74 2d 66 72 6f 6d 27 2e 0a 0a 4e 4f 54 45    3a 20 45 6d 61 63 73 20 63 61 6e 6e 6f 74 20 75 | get-from'...NOTE:.Emacs.cannot.u | 
| 16240 | 6e 6c 6f 61 64 20 64 79 6e 61 6d 69 63 20 6d 6f    64 75 6c 65 73 2c 20 73 6f 20 69 66 20 60 74 73 | nload.dynamic.modules,.so.if.`ts | 
| 16260 | 63 2d 64 79 6e 27 20 77 61 73 20 61 6c 72 65 61    64 79 20 6c 6f 61 64 65 64 2c 0a 79 6f 75 20 77 | c-dyn'.was.already.loaded,.you.w | 
| 16280 | 69 6c 6c 20 6e 65 65 64 20 74 6f 20 72 65 73 74    61 72 74 20 45 6d 61 63 73 20 74 6f 20 6c 6f 61 | ill.need.to.restart.Emacs.to.loa | 
| 162a0 | 64 20 74 68 65 20 6e 65 77 20 76 65 72 73 69 6f    6e 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 64 65 | d.the.new.version."...(let*.((de | 
| 162c0 | 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20    28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 64 69 | fault-directory.(tsc-dyn-get--di | 
| 162e0 | 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 65    63 6f 72 64 65 64 20 28 74 73 63 2d 64 79 6e 2d | r))..........(recorded.(tsc-dyn- | 
| 16300 | 67 65 74 2d 2d 72 65 63 6f 72 64 65 64 2d 76 65    72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 | get--recorded-version))......... | 
| 16320 | 20 28 6c 6f 61 64 65 64 20 28 74 73 63 2d 64 79    6e 2d 67 65 74 2d 2d 6c 6f 61 64 65 64 2d 76 65 | .(loaded.(tsc-dyn-get--loaded-ve | 
| 16340 | 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20    20 28 6c 6f 61 64 2d 70 61 74 68 20 28 63 6f 6e | rsion))..........(load-path.(con | 
| 16360 | 73 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d    64 69 72 29 20 6c 6f 61 64 2d 70 61 74 68 29 29 | s.(tsc-dyn-get--dir).load-path)) | 
| 16380 | 0a 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 64    79 6e 2d 67 65 74 2d 2d 66 6f 72 63 65 2d 73 79 | ..........(tsc-dyn-get--force-sy | 
| 163a0 | 6e 63 20 74 29 0a 20 20 20 20 20 20 20 20 20 67    65 74 2d 6e 65 77 29 0a 20 20 20 20 28 63 6c 2d | nc.t)..........get-new).....(cl- | 
| 163c0 | 62 6c 6f 63 6b 20 6e 69 6c 0a 20 20 20 20 20 20    28 64 6f 6c 69 73 74 20 28 73 6f 75 72 63 65 20 | block.nil.......(dolist.(source. | 
| 163e0 | 74 73 63 2d 64 79 6e 2d 67 65 74 2d 66 72 6f 6d    29 0a 20 20 20 20 20 20 20 20 28 74 73 63 2d 64 | tsc-dyn-get-from).........(tsc-d | 
| 16400 | 79 6e 2d 67 65 74 2d 2d 6c 6f 67 20 22 55 73 69    6e 67 20 73 6f 75 72 63 65 20 25 73 20 28 3a 6c | yn-get--log."Using.source.%s.(:l | 
| 16420 | 6f 61 64 65 64 20 25 73 20 3a 72 65 63 6f 72 64    65 64 20 25 73 20 3a 72 65 71 75 65 73 74 65 64 | oaded.%s.:recorded.%s.:requested | 
| 16440 | 20 25 73 29 22 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 | .%s)"........................... | 
| 16460 | 73 6f 75 72 63 65 20 6c 6f 61 64 65 64 20 72 65    63 6f 72 64 65 64 20 72 65 71 75 65 73 74 65 64 | source.loaded.recorded.requested | 
| 16480 | 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20    67 65 74 2d 6e 65 77 20 28 70 63 61 73 65 20 73 | ).........(setq.get-new.(pcase.s | 
| 164a0 | 6f 75 72 63 65 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 28 3a | ource.........................(: | 
| 164c0 | 67 69 74 68 75 62 20 28 6c 61 6d 62 64 61 20 28    29 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d | github.(lambda.().(tsc-dyn-get-- | 
| 164e0 | 67 69 74 68 75 62 20 72 65 71 75 65 73 74 65 64    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | github.requested)))............. | 
| 16500 | 20 20 20 20 20 20 20 20 20 20 20 20 28 3a 63 6f    6d 70 69 6c 61 74 69 6f 6e 20 28 6c 61 6d 62 64 | ............(:compilation.(lambd | 
| 16520 | 61 20 28 29 20 28 74 73 63 2d 64 79 6e 2d 67 65    74 2d 2d 62 75 69 6c 64 29 29 29 0a 20 20 20 20 | a.().(tsc-dyn-get--build)))..... | 
| 16540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 5f 20 28 65 72 72 6f 72 20 22 44 | ....................(_.(error."D | 
| 16560 | 6f 6e 27 74 20 6b 6e 6f 77 20 68 6f 77 20 74 6f    20 67 65 74 20 60 74 73 63 2d 64 79 6e 27 20 66 | on't.know.how.to.get.`tsc-dyn'.f | 
| 16580 | 72 6f 6d 20 73 6f 75 72 63 65 20 25 73 22 20 73    6f 75 72 63 65 29 29 29 29 0a 20 20 20 20 20 20 | rom.source.%s".source))))....... | 
| 165a0 | 20 20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d    65 72 72 6f 72 73 20 22 43 6f 75 6c 64 20 6e 6f | ..(with-demoted-errors."Could.no | 
| 165c0 | 74 20 67 65 74 20 60 74 73 63 2d 64 79 6e 27 3a    20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 28 | t.get.`tsc-dyn':.%s"...........( | 
| 165e0 | 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20    28 6c 6f 61 64 65 64 20 28 69 66 20 28 76 65 72 | cond............(loaded.(if.(ver | 
| 16600 | 73 69 6f 6e 3c 3d 20 72 65 71 75 65 73 74 65 64    20 6c 6f 61 64 65 64 29 0a 20 20 20 20 20 20 20 | sion<=.requested.loaded)........ | 
| 16620 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 6c 6f | ................(tsc-dyn-get--lo | 
| 16640 | 67 20 22 4c 6f 61 64 65 64 20 76 65 72 73 69 6f    6e 20 61 6c 72 65 61 64 79 20 73 61 74 69 73 66 | g."Loaded.version.already.satisf | 
| 16660 | 69 65 73 20 72 65 71 75 65 73 74 65 64 20 2d 3e    20 73 6b 69 70 70 69 6e 67 22 29 0a 20 20 20 20 | ies.requested.->.skipping")..... | 
| 16680 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 54 4f 44 4f 3a 20 4f 6e 20 57 69 6e | .................;;.TODO:.On.Win | 
| 166a0 | 64 6f 77 73 2c 20 72 65 66 75 73 65 20 74 6f 20    63 6f 6e 74 69 6e 75 65 20 61 6e 64 20 61 73 6b | dows,.refuse.to.continue.and.ask | 
| 166c0 | 20 75 73 65 72 20 74 6f 20 73 65 74 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .user.to.set.................... | 
| 166e0 | 20 20 3b 3b 20 74 68 65 20 72 65 71 75 65 73 74    65 64 20 76 65 72 73 69 6f 6e 20 61 6e 64 20 72 | ..;;.the.requested.version.and.r | 
| 16700 | 65 73 74 61 72 74 20 69 6e 73 74 65 61 64 2e 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | estart.instead.................. | 
| 16720 | 20 20 20 20 20 28 74 73 63 2d 64 79 6e 2d 67 65    74 2d 2d 6c 6f 67 20 22 4c 6f 61 64 65 64 20 76 | .....(tsc-dyn-get--log."Loaded.v | 
| 16740 | 65 72 73 69 6f 6e 20 69 73 20 6f 6c 64 65 72 20    74 68 61 6e 20 72 65 71 75 65 73 74 65 64 20 2d | ersion.is.older.than.requested.- | 
| 16760 | 3e 20 67 65 74 74 69 6e 67 20 6e 65 77 22 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | >.getting.new")................. | 
| 16780 | 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 67 65    74 2d 6e 65 77 29 29 29 0a 20 20 20 20 20 20 20 | .....(funcall.get-new)))........ | 
| 167a0 | 20 20 20 20 28 72 65 63 6f 72 64 65 64 20 28 69    66 20 28 76 65 72 73 69 6f 6e 3c 3d 20 72 65 71 | ....(recorded.(if.(version<=.req | 
| 167c0 | 75 65 73 74 65 64 20 72 65 63 6f 72 64 65 64 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | uested.recorded)................ | 
| 167e0 | 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........(progn................ | 
| 16800 | 20 20 20 20 20 20 20 20 20 20 20 20 28 74 73 63    2d 64 79 6e 2d 67 65 74 2d 2d 6c 6f 67 20 22 52 | ............(tsc-dyn-get--log."R | 
| 16820 | 65 63 6f 72 64 65 64 20 76 65 72 73 69 6f 6e 20    61 6c 72 65 61 64 79 20 73 61 74 69 66 69 65 73 | ecorded.version.already.satifies | 
| 16840 | 20 72 65 71 75 65 73 74 65 64 20 2d 3e 20 6c 6f    61 64 69 6e 67 22 29 0a 20 20 20 20 20 20 20 20 | .requested.->.loading")......... | 
| 16860 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 75 6e 6c 65 73 73 20 28 74 73 63 2d | ...................(unless.(tsc- | 
| 16880 | 64 79 6e 2d 2d 74 72 79 2d 6c 6f 61 64 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | dyn--try-load).................. | 
| 168a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54    68 65 20 76 65 72 73 69 6f 6e 20 66 69 6c 65 20 | ............;;.The.version.file. | 
| 168c0 | 6d 61 79 20 68 61 76 65 20 62 65 65 6e 20 61 63    63 69 64 65 6e 74 61 6c 6c 79 20 64 65 6c 65 74 | may.have.been.accidentally.delet | 
| 168e0 | 65 64 2e 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 20 20 | ed.............................. | 
| 16900 | 20 28 74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 6c    6f 67 20 22 43 6f 75 6c 64 20 6e 6f 74 20 6c 6f | .(tsc-dyn-get--log."Could.not.lo | 
| 16920 | 61 64 20 2d 3e 20 67 65 74 74 69 6e 67 20 6e 65    77 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ad.->.getting.new")............. | 
| 16940 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 66 75 6e 63 61 6c 6c 20 67 65 74 2d 6e 65 | .................(funcall.get-ne | 
| 16960 | 77 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 20 20 20 | w).............................. | 
| 16980 | 28 74 73 63 2d 64 79 6e 2d 2d 74 72 79 2d 6c 6f    61 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 | (tsc-dyn--try-load)))........... | 
| 169a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 73    63 2d 64 79 6e 2d 67 65 74 2d 2d 6c 6f 67 20 22 | .............(tsc-dyn-get--log." | 
| 169c0 | 52 65 63 6f 72 64 65 64 20 76 65 72 73 69 6f 6e    20 69 73 20 6f 6c 64 65 72 20 74 68 61 6e 20 72 | Recorded.version.is.older.than.r | 
| 169e0 | 65 71 75 65 73 74 65 64 20 2d 3e 20 67 65 74 74    69 6e 67 20 6e 65 77 22 29 0a 20 20 20 20 20 20 | equested.->.getting.new")....... | 
| 16a00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 66 75 6e 63 61 6c 6c 20 67 65 74 2d 6e 65 | .................(funcall.get-ne | 
| 16a20 | 77 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 28 74 73 63 2d 64 | w)........................(tsc-d | 
| 16a40 | 79 6e 2d 2d 74 72 79 2d 6c 6f 61 64 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 66 | yn--try-load)))............(t.(f | 
| 16a60 | 75 6e 63 61 6c 6c 20 67 65 74 2d 6e 65 77 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 | uncall.get-new)...............(t | 
| 16a80 | 73 63 2d 64 79 6e 2d 2d 74 72 79 2d 6c 6f 61 64    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 | sc-dyn--try-load)))...........(w | 
| 16aa0 | 68 65 6e 20 28 66 65 61 74 75 72 65 70 20 27 74    73 63 2d 64 79 6e 29 0a 20 20 20 20 20 20 20 20 | hen.(featurep.'tsc-dyn)......... | 
| 16ac0 | 20 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 29 29    29 29 29 0a 20 20 20 20 28 69 66 20 28 61 6e 64 | ....(cl-return))))).....(if.(and | 
| 16ae0 | 20 6c 6f 61 64 65 64 20 28 76 65 72 73 69 6f 6e    3c 20 6c 6f 61 64 65 64 20 72 65 71 75 65 73 74 | .loaded.(version<.loaded.request | 
| 16b00 | 65 64 29 29 0a 20 20 20 20 20 20 20 20 28 74 73    63 2d 64 79 6e 2d 67 65 74 2d 2d 77 61 72 6e 20 | ed)).........(tsc-dyn-get--warn. | 
| 16b20 | 22 56 65 72 73 69 6f 6e 20 25 73 20 69 73 20 72    65 71 75 65 73 74 65 64 2c 20 62 75 74 20 25 73 | "Version.%s.is.requested,.but.%s | 
| 16b40 | 20 77 61 73 20 61 6c 72 65 61 64 79 20 6c 6f 61    64 65 64 2e 20 50 6c 65 61 73 65 20 74 72 79 20 | .was.already.loaded..Please.try. | 
| 16b60 | 72 65 73 74 61 72 74 69 6e 67 20 45 6d 61 63 73    2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | restarting.Emacs.".............. | 
| 16b80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65    71 75 65 73 74 65 64 20 6c 6f 61 64 65 64 29 0a | ..............requested.loaded). | 
| 16ba0 | 20 20 20 20 20 20 3b 3b 20 45 76 65 6e 20 69 66    20 6e 6f 6e 65 20 6f 66 20 74 68 65 20 73 6f 75 | ......;;.Even.if.none.of.the.sou | 
| 16bc0 | 72 63 65 73 20 77 6f 72 6b 65 64 2c 20 74 68 65    20 6d 6f 64 75 6c 65 20 6d 61 79 20 73 74 69 6c | rces.worked,.the.module.may.stil | 
| 16be0 | 6c 20 62 65 20 74 68 65 72 65 2e 0a 20 20 20 20    20 20 28 74 73 63 2d 64 79 6e 2d 2d 74 72 79 2d | l.be.there........(tsc-dyn--try- | 
| 16c00 | 6c 6f 61 64 29 0a 20 20 20 20 20 20 28 69 66 2d    6c 65 74 20 28 28 6c 6f 61 64 65 64 20 28 74 73 | load).......(if-let.((loaded.(ts | 
| 16c20 | 63 2d 64 79 6e 2d 67 65 74 2d 2d 6c 6f 61 64 65    64 2d 76 65 72 73 69 6f 6e 29 29 29 0a 20 20 20 | c-dyn-get--loaded-version))).... | 
| 16c40 | 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 76 65    72 73 69 6f 6e 3c 20 6c 6f 61 64 65 64 20 72 65 | .......(when.(version<.loaded.re | 
| 16c60 | 71 75 65 73 74 65 64 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 74 73 63 2d 64 79 6e 2d 67 65 | quested).............(tsc-dyn-ge | 
| 16c80 | 74 2d 2d 77 61 72 6e 20 22 56 65 72 73 69 6f 6e    20 25 73 20 69 73 20 72 65 71 75 65 73 74 65 64 | t--warn."Version.%s.is.requested | 
| 16ca0 | 2c 20 62 75 74 20 61 63 74 75 61 6c 20 76 65 72    73 69 6f 6e 20 61 66 74 65 72 20 6c 6f 61 64 69 | ,.but.actual.version.after.loadi | 
| 16cc0 | 6e 67 20 69 73 20 25 73 2e 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ng.is.%s."...................... | 
| 16ce0 | 20 20 20 20 20 20 20 20 20 20 72 65 71 75 65 73    74 65 64 20 6c 6f 61 64 65 64 29 29 0a 20 20 20 | ..........requested.loaded)).... | 
| 16d00 | 20 20 20 20 20 28 74 73 63 2d 64 79 6e 2d 67 65    74 2d 2d 77 61 72 6e 20 22 46 61 69 6c 65 64 20 | .....(tsc-dyn-get--warn."Failed. | 
| 16d20 | 74 6f 20 67 65 74 20 72 65 71 75 65 73 74 65 64    20 76 65 72 73 69 6f 6e 20 25 73 2e 22 20 72 65 | to.get.requested.version.%s.".re | 
| 16d40 | 71 75 65 73 74 65 64 29 29 29 0a 20 20 20 20 28    74 73 63 2d 64 79 6e 2d 67 65 74 2d 2d 6c 6f 61 | quested))).....(tsc-dyn-get--loa | 
| 16d60 | 64 65 64 2d 76 65 72 73 69 6f 6e 29 29 29 0a 0a    28 70 72 6f 76 69 64 65 20 27 74 73 63 2d 64 79 | ded-version)))..(provide.'tsc-dy | 
| 16d80 | 6e 2d 67 65 74 29 0a 3b 3b 3b 20 74 73 63 2d 64    79 6e 2d 67 65 74 2e 65 6c 20 65 6e 64 73 20 68 | n-get).;;;.tsc-dyn-get.el.ends.h | 
| 16da0 | 65 72 65 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 00 00 00 | ere............................. | 
| 16dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16e00 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 74 73 63 2d 6f 62 73 6f 6c 65 74 65 2e 65 | tsc-20220212.1632/tsc-obsolete.e | 
| 16e20 | 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | l............................... | 
| 16e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16e60 | 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 | 
| 16e80 | 30 30 32 35 35 32 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 35 32 32 00 20 30 00 00 00 | 0025521.00000000000.014522..0... | 
| 16ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16f00 | 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................... | 
| 16f20 | 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................... | 
| 16f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 16fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 17000 | 3b 3b 3b 20 74 73 63 2d 6f 62 73 6f 6c 65 74 65    2e 65 6c 20 2d 2d 2d 20 4f 62 73 6f 6c 65 74 65 | ;;;.tsc-obsolete.el.---.Obsolete | 
| 17020 | 20 74 72 65 65 2d 73 69 74 74 65 72 20 41 50 49    73 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 | .tree-sitter.APIs.-*-.lexical-bi | 
| 17040 | 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e 67    3a 20 75 74 66 2d 38 2d 2a 2d 0a 0a 3b 3b 20 43 | nding:.t;.coding:.utf-8-*-..;;.C | 
| 17060 | 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 32    30 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 | opyright.(C).2020.Tu...n-Anh.Ngu | 
| 17080 | 79 e1 bb 85 6e 0a 3b 3b 20 53 50 44 58 2d 4c 69    63 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 | y...n.;;.SPDX-License-Identifier | 
| 170a0 | 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65    6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 | :.MIT..;;;.Commentary:..;;.This. | 
| 170c0 | 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 6f 62    73 6f 6c 65 74 65 20 60 74 73 63 27 20 66 75 6e | file.contains.obsolete.`tsc'.fun | 
| 170e0 | 63 74 69 6f 6e 73 2c 20 6b 65 70 74 20 61 72 6f    75 6e 64 20 66 6f 72 20 74 65 6d 70 6f 72 61 72 | ctions,.kept.around.for.temporar | 
| 17100 | 79 0a 3b 3b 20 62 61 63 6b 77 61 72 64 20 63 6f    6d 70 61 74 69 62 69 6c 69 74 79 2e 20 54 68 65 | y.;;.backward.compatibility..The | 
| 17120 | 79 20 77 69 6c 6c 20 65 76 65 6e 74 75 61 6c 6c    79 20 62 65 20 72 65 6d 6f 76 65 64 2e 0a 0a 3b | y.will.eventually.be.removed...; | 
| 17140 | 3b 3b 20 43 6f 64 65 3a 0a 0a 3b 3b 3b 20 50 75    62 6c 69 63 2e 0a 28 64 65 66 69 6e 65 2d 6f 62 | ;;.Code:..;;;.Public..(define-ob | 
| 17160 | 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d    61 6c 69 61 73 20 27 74 73 2d 63 68 61 6e 67 65 | solete-function-alias.'ts-change | 
| 17180 | 64 2d 72 61 6e 67 65 73 20 27 74 73 63 2d 63 68    61 6e 67 65 64 2d 72 61 6e 67 65 73 20 22 32 30 | d-ranges.'tsc-changed-ranges."20 | 
| 171a0 | 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69    6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 | 20-10-13").(define-obsolete-func | 
| 171c0 | 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 63    6f 75 6e 74 2d 63 68 69 6c 64 72 65 6e 20 27 74 | tion-alias.'ts-count-children.'t | 
| 171e0 | 73 63 2d 63 6f 75 6e 74 2d 63 68 69 6c 64 72 65    6e 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a | sc-count-children."2020-10-13"). | 
| 17200 | 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65    2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 | (define-obsolete-function-alias. | 
| 17220 | 27 74 73 2d 63 6f 75 6e 74 2d 6e 61 6d 65 64 2d    63 68 69 6c 64 72 65 6e 20 27 74 73 63 2d 63 6f | 'ts-count-named-children.'tsc-co | 
| 17240 | 75 6e 74 2d 6e 61 6d 65 64 2d 63 68 69 6c 64 72    65 6e 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 | unt-named-children."2020-10-13") | 
| 17260 | 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74    65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 | .(define-obsolete-function-alias | 
| 17280 | 20 27 74 73 2d 63 75 72 72 65 6e 74 2d 66 69 65    6c 64 20 27 74 73 63 2d 63 75 72 72 65 6e 74 2d | .'ts-current-field.'tsc-current- | 
| 172a0 | 66 69 65 6c 64 20 22 32 30 32 30 2d 31 30 2d 31    33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f | field."2020-10-13").(define-obso | 
| 172c0 | 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c    69 61 73 20 27 74 73 2d 63 75 72 72 65 6e 74 2d | lete-function-alias.'ts-current- | 
| 172e0 | 66 69 65 6c 64 2d 69 64 20 27 74 73 63 2d 63 75    72 72 65 6e 74 2d 66 69 65 6c 64 2d 69 64 20 22 | field-id.'tsc-current-field-id." | 
| 17300 | 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65    66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 | 2020-10-13").(define-obsolete-fu | 
| 17320 | 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73    2d 63 75 72 72 65 6e 74 2d 6e 6f 64 65 20 27 74 | nction-alias.'ts-current-node.'t | 
| 17340 | 73 63 2d 63 75 72 72 65 6e 74 2d 6e 6f 64 65 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | sc-current-node."2020-10-13").(d | 
| 17360 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 17380 | 73 2d 63 75 72 73 6f 72 2d 70 20 27 74 73 63 2d    63 75 72 73 6f 72 2d 70 20 22 32 30 32 30 2d 31 | s-cursor-p.'tsc-cursor-p."2020-1 | 
| 173a0 | 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f    62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e | 0-13").(define-obsolete-function | 
| 173c0 | 2d 61 6c 69 61 73 20 27 74 73 2d 64 79 6e 2d 67    65 74 20 27 74 73 63 2d 64 79 6e 2d 67 65 74 20 | -alias.'ts-dyn-get.'tsc-dyn-get. | 
| 173e0 | 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64    65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 | "2020-10-13").(define-obsolete-f | 
| 17400 | 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74    73 2d 64 79 6e 2d 67 65 74 2d 65 6e 73 75 72 65 | unction-alias.'ts-dyn-get-ensure | 
| 17420 | 20 27 74 73 63 2d 64 79 6e 2d 67 65 74 2d 65 6e    73 75 72 65 20 22 32 30 32 30 2d 31 30 2d 31 33 | .'tsc-dyn-get-ensure."2020-10-13 | 
| 17440 | 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c    65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 | ").(define-obsolete-function-ali | 
| 17460 | 61 73 20 27 74 73 2d 65 64 69 74 2d 6e 6f 64 65    20 27 74 73 63 2d 65 64 69 74 2d 6e 6f 64 65 20 | as.'ts-edit-node.'tsc-edit-node. | 
| 17480 | 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64    65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 | "2020-10-13").(define-obsolete-f | 
| 174a0 | 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74    73 2d 65 64 69 74 2d 74 72 65 65 20 27 74 73 63 | unction-alias.'ts-edit-tree.'tsc | 
| 174c0 | 2d 65 64 69 74 2d 74 72 65 65 20 22 32 30 32 30    2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 | -edit-tree."2020-10-13").(define | 
| 174e0 | 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69    6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 67 65 74 | -obsolete-function-alias.'ts-get | 
| 17500 | 2d 63 68 69 6c 64 2d 62 79 2d 66 69 65 6c 64 20    27 74 73 63 2d 67 65 74 2d 63 68 69 6c 64 2d 62 | -child-by-field.'tsc-get-child-b | 
| 17520 | 79 2d 66 69 65 6c 64 20 22 32 30 32 30 2d 31 30    2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 | y-field."2020-10-13").(define-ob | 
| 17540 | 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d    61 6c 69 61 73 20 27 74 73 2d 67 65 74 2d 63 68 | solete-function-alias.'ts-get-ch | 
| 17560 | 69 6c 64 2d 62 79 2d 66 69 65 6c 64 2d 69 64 20    27 74 73 63 2d 67 65 74 2d 63 68 69 6c 64 2d 62 | ild-by-field-id.'tsc-get-child-b | 
| 17580 | 79 2d 66 69 65 6c 64 2d 69 64 20 22 32 30 32 30    2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 | y-field-id."2020-10-13").(define | 
| 175a0 | 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69    6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 67 65 74 | -obsolete-function-alias.'ts-get | 
| 175c0 | 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d    62 79 74 65 2d 72 61 6e 67 65 20 27 74 73 63 2d | -descendant-for-byte-range.'tsc- | 
| 175e0 | 67 65 74 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66    6f 72 2d 62 79 74 65 2d 72 61 6e 67 65 20 22 32 | get-descendant-for-byte-range."2 | 
| 17600 | 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66    69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e | 020-10-13").(define-obsolete-fun | 
| 17620 | 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d    67 65 74 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 | ction-alias.'ts-get-descendant-f | 
| 17640 | 6f 72 2d 70 6f 69 6e 74 2d 72 61 6e 67 65 20 27    74 73 63 2d 67 65 74 2d 64 65 73 63 65 6e 64 61 | or-point-range.'tsc-get-descenda | 
| 17660 | 6e 74 2d 66 6f 72 2d 70 6f 69 6e 74 2d 72 61 6e    67 65 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 | nt-for-point-range."2020-10-13") | 
| 17680 | 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74    65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 | .(define-obsolete-function-alias | 
| 176a0 | 20 27 74 73 2d 67 65 74 2d 64 65 73 63 65 6e 64    61 6e 74 2d 66 6f 72 2d 70 6f 73 69 74 69 6f 6e | .'ts-get-descendant-for-position | 
| 176c0 | 2d 72 61 6e 67 65 20 27 74 73 63 2d 67 65 74 2d    64 65 73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d 70 | -range.'tsc-get-descendant-for-p | 
| 176e0 | 6f 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 22 32    30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 | osition-range."2020-10-13").(def | 
| 17700 | 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e    63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d | ine-obsolete-function-alias.'ts- | 
| 17720 | 67 65 74 2d 6e 61 6d 65 64 2d 64 65 73 63 65 6e    64 61 6e 74 2d 66 6f 72 2d 62 79 74 65 2d 72 61 | get-named-descendant-for-byte-ra | 
| 17740 | 6e 67 65 20 27 74 73 63 2d 67 65 74 2d 6e 61 6d    65 64 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f | nge.'tsc-get-named-descendant-fo | 
| 17760 | 72 2d 62 79 74 65 2d 72 61 6e 67 65 20 22 32 30    32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 | r-byte-range."2020-10-13").(defi | 
| 17780 | 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63    74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 67 | ne-obsolete-function-alias.'ts-g | 
| 177a0 | 65 74 2d 6e 61 6d 65 64 2d 64 65 73 63 65 6e 64    61 6e 74 2d 66 6f 72 2d 70 6f 69 6e 74 2d 72 61 | et-named-descendant-for-point-ra | 
| 177c0 | 6e 67 65 20 27 74 73 63 2d 67 65 74 2d 6e 61 6d    65 64 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f | nge.'tsc-get-named-descendant-fo | 
| 177e0 | 72 2d 70 6f 69 6e 74 2d 72 61 6e 67 65 20 22 32    30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 | r-point-range."2020-10-13").(def | 
| 17800 | 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e    63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d | ine-obsolete-function-alias.'ts- | 
| 17820 | 67 65 74 2d 6e 61 6d 65 64 2d 64 65 73 63 65 6e    64 61 6e 74 2d 66 6f 72 2d 70 6f 73 69 74 69 6f | get-named-descendant-for-positio | 
| 17840 | 6e 2d 72 61 6e 67 65 20 27 74 73 63 2d 67 65 74    2d 6e 61 6d 65 64 2d 64 65 73 63 65 6e 64 61 6e | n-range.'tsc-get-named-descendan | 
| 17860 | 74 2d 66 6f 72 2d 70 6f 73 69 74 69 6f 6e 2d 72    61 6e 67 65 20 22 32 30 32 30 2d 31 30 2d 31 33 | t-for-position-range."2020-10-13 | 
| 17880 | 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c    65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 | ").(define-obsolete-function-ali | 
| 178a0 | 61 73 20 27 74 73 2d 67 65 74 2d 6e 65 78 74 2d    6e 61 6d 65 64 2d 73 69 62 6c 69 6e 67 20 27 74 | as.'ts-get-next-named-sibling.'t | 
| 178c0 | 73 63 2d 67 65 74 2d 6e 65 78 74 2d 6e 61 6d 65    64 2d 73 69 62 6c 69 6e 67 20 22 32 30 32 30 2d | sc-get-next-named-sibling."2020- | 
| 178e0 | 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d    6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f | 10-13").(define-obsolete-functio | 
| 17900 | 6e 2d 61 6c 69 61 73 20 27 74 73 2d 67 65 74 2d    6e 65 78 74 2d 73 69 62 6c 69 6e 67 20 27 74 73 | n-alias.'ts-get-next-sibling.'ts | 
| 17920 | 63 2d 67 65 74 2d 6e 65 78 74 2d 73 69 62 6c 69    6e 67 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 | c-get-next-sibling."2020-10-13") | 
| 17940 | 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74    65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 | .(define-obsolete-function-alias | 
| 17960 | 20 27 74 73 2d 67 65 74 2d 6e 74 68 2d 63 68 69    6c 64 20 27 74 73 63 2d 67 65 74 2d 6e 74 68 2d | .'ts-get-nth-child.'tsc-get-nth- | 
| 17980 | 63 68 69 6c 64 20 22 32 30 32 30 2d 31 30 2d 31    33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f | child."2020-10-13").(define-obso | 
| 179a0 | 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c    69 61 73 20 27 74 73 2d 67 65 74 2d 6e 74 68 2d | lete-function-alias.'ts-get-nth- | 
| 179c0 | 6e 61 6d 65 64 2d 63 68 69 6c 64 20 27 74 73 63    2d 67 65 74 2d 6e 74 68 2d 6e 61 6d 65 64 2d 63 | named-child.'tsc-get-nth-named-c | 
| 179e0 | 68 69 6c 64 20 22 32 30 32 30 2d 31 30 2d 31 33    22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c | hild."2020-10-13").(define-obsol | 
| 17a00 | 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69    61 73 20 27 74 73 2d 67 65 74 2d 70 61 72 65 6e | ete-function-alias.'ts-get-paren | 
| 17a20 | 74 20 27 74 73 63 2d 67 65 74 2d 70 61 72 65 6e    74 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a | t.'tsc-get-parent."2020-10-13"). | 
| 17a40 | 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65    2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 | (define-obsolete-function-alias. | 
| 17a60 | 27 74 73 2d 67 65 74 2d 70 72 65 76 2d 6e 61 6d    65 64 2d 73 69 62 6c 69 6e 67 20 27 74 73 63 2d | 'ts-get-prev-named-sibling.'tsc- | 
| 17a80 | 67 65 74 2d 70 72 65 76 2d 6e 61 6d 65 64 2d 73    69 62 6c 69 6e 67 20 22 32 30 32 30 2d 31 30 2d | get-prev-named-sibling."2020-10- | 
| 17aa0 | 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73    6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 | 13").(define-obsolete-function-a | 
| 17ac0 | 6c 69 61 73 20 27 74 73 2d 67 65 74 2d 70 72 65    76 2d 73 69 62 6c 69 6e 67 20 27 74 73 63 2d 67 | lias.'ts-get-prev-sibling.'tsc-g | 
| 17ae0 | 65 74 2d 70 72 65 76 2d 73 69 62 6c 69 6e 67 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | et-prev-sibling."2020-10-13").(d | 
| 17b00 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 17b20 | 73 2d 67 6f 74 6f 2d 66 69 72 73 74 2d 63 68 69    6c 64 20 27 74 73 63 2d 67 6f 74 6f 2d 66 69 72 | s-goto-first-child.'tsc-goto-fir | 
| 17b40 | 73 74 2d 63 68 69 6c 64 20 22 32 30 32 30 2d 31    30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f | st-child."2020-10-13").(define-o | 
| 17b60 | 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e    2d 61 6c 69 61 73 20 27 74 73 2d 67 6f 74 6f 2d | bsolete-function-alias.'ts-goto- | 
| 17b80 | 66 69 72 73 74 2d 63 68 69 6c 64 2d 66 6f 72 2d    62 79 74 65 20 27 74 73 63 2d 67 6f 74 6f 2d 66 | first-child-for-byte.'tsc-goto-f | 
| 17ba0 | 69 72 73 74 2d 63 68 69 6c 64 2d 66 6f 72 2d 62    79 74 65 20 22 32 30 32 30 2d 31 30 2d 31 33 22 | irst-child-for-byte."2020-10-13" | 
| 17bc0 | 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65    74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 | ).(define-obsolete-function-alia | 
| 17be0 | 73 20 27 74 73 2d 67 6f 74 6f 2d 66 69 72 73 74    2d 63 68 69 6c 64 2d 66 6f 72 2d 70 6f 73 69 74 | s.'ts-goto-first-child-for-posit | 
| 17c00 | 69 6f 6e 20 27 74 73 63 2d 67 6f 74 6f 2d 66 69    72 73 74 2d 63 68 69 6c 64 2d 66 6f 72 2d 70 6f | ion.'tsc-goto-first-child-for-po | 
| 17c20 | 73 69 74 69 6f 6e 20 22 32 30 32 30 2d 31 30 2d    31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 | sition."2020-10-13").(define-obs | 
| 17c40 | 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61    6c 69 61 73 20 27 74 73 2d 67 6f 74 6f 2d 6e 65 | olete-function-alias.'ts-goto-ne | 
| 17c60 | 78 74 2d 73 69 62 6c 69 6e 67 20 27 74 73 63 2d    67 6f 74 6f 2d 6e 65 78 74 2d 73 69 62 6c 69 6e | xt-sibling.'tsc-goto-next-siblin | 
| 17c80 | 67 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a    28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 | g."2020-10-13").(define-obsolete | 
| 17ca0 | 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20    27 74 73 2d 67 6f 74 6f 2d 70 61 72 65 6e 74 20 | -function-alias.'ts-goto-parent. | 
| 17cc0 | 27 74 73 63 2d 67 6f 74 6f 2d 70 61 72 65 6e 74    20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 | 'tsc-goto-parent."2020-10-13").( | 
| 17ce0 | 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d    66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 | define-obsolete-function-alias.' | 
| 17d00 | 74 73 2d 6c 61 6e 67 2d 63 6f 75 6e 74 2d 66 69    65 6c 64 73 20 27 74 73 63 2d 6c 61 6e 67 2d 63 | ts-lang-count-fields.'tsc-lang-c | 
| 17d20 | 6f 75 6e 74 2d 66 69 65 6c 64 73 20 22 32 30 32    30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e | ount-fields."2020-10-13").(defin | 
| 17d40 | 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74    69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6c 61 | e-obsolete-function-alias.'ts-la | 
| 17d60 | 6e 67 2d 63 6f 75 6e 74 2d 74 79 70 65 73 20 27    74 73 63 2d 6c 61 6e 67 2d 63 6f 75 6e 74 2d 74 | ng-count-types.'tsc-lang-count-t | 
| 17d80 | 79 70 65 73 20 22 32 30 32 30 2d 31 30 2d 31 33    22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c | ypes."2020-10-13").(define-obsol | 
| 17da0 | 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69    61 73 20 27 74 73 2d 6c 61 6e 67 2d 66 69 65 6c | ete-function-alias.'ts-lang-fiel | 
| 17dc0 | 64 20 27 74 73 63 2d 6c 61 6e 67 2d 66 69 65 6c    64 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a | d.'tsc-lang-field."2020-10-13"). | 
| 17de0 | 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65    2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 | (define-obsolete-function-alias. | 
| 17e00 | 27 74 73 2d 6c 61 6e 67 2d 66 69 65 6c 64 2d 69    64 20 27 74 73 63 2d 6c 61 6e 67 2d 66 69 65 6c | 'ts-lang-field-id.'tsc-lang-fiel | 
| 17e20 | 64 2d 69 64 20 22 32 30 32 30 2d 31 30 2d 31 33    22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c | d-id."2020-10-13").(define-obsol | 
| 17e40 | 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69    61 73 20 27 74 73 2d 6c 61 6e 67 2d 6e 6f 64 65 | ete-function-alias.'ts-lang-node | 
| 17e60 | 2d 74 79 70 65 20 27 74 73 63 2d 6c 61 6e 67 2d    6e 6f 64 65 2d 74 79 70 65 20 22 32 30 32 30 2d | -type.'tsc-lang-node-type."2020- | 
| 17e80 | 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d    6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f | 10-13").(define-obsolete-functio | 
| 17ea0 | 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6c 61 6e 67    2d 6e 6f 64 65 2d 74 79 70 65 2d 69 64 20 27 74 | n-alias.'ts-lang-node-type-id.'t | 
| 17ec0 | 73 63 2d 6c 61 6e 67 2d 6e 6f 64 65 2d 74 79 70    65 2d 69 64 20 22 32 30 32 30 2d 31 30 2d 31 33 | sc-lang-node-type-id."2020-10-13 | 
| 17ee0 | 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c    65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 | ").(define-obsolete-function-ali | 
| 17f00 | 61 73 20 27 74 73 2d 6c 61 6e 67 2d 6e 6f 64 65    2d 74 79 70 65 2d 6e 61 6d 65 64 2d 70 20 27 74 | as.'ts-lang-node-type-named-p.'t | 
| 17f20 | 73 63 2d 6c 61 6e 67 2d 6e 6f 64 65 2d 74 79 70    65 2d 6e 61 6d 65 64 2d 70 20 22 32 30 32 30 2d | sc-lang-node-type-named-p."2020- | 
| 17f40 | 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d    6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f | 10-13").(define-obsolete-functio | 
| 17f60 | 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6c 61 6e 67    2d 76 65 72 73 69 6f 6e 20 27 74 73 63 2d 6c 61 | n-alias.'ts-lang-version.'tsc-la | 
| 17f80 | 6e 67 2d 76 65 72 73 69 6f 6e 20 22 32 30 32 30    2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 | ng-version."2020-10-13").(define | 
| 17fa0 | 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69    6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6c 61 6e | -obsolete-function-alias.'ts-lan | 
| 17fc0 | 67 75 61 67 65 2d 70 20 27 74 73 63 2d 6c 61 6e    67 75 61 67 65 2d 70 20 22 32 30 32 30 2d 31 30 | guage-p.'tsc-language-p."2020-10 | 
| 17fe0 | 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62    73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d | -13").(define-obsolete-function- | 
| 18000 | 61 6c 69 61 73 20 27 74 73 2d 6d 61 6b 65 2d 63    75 72 73 6f 72 20 27 74 73 63 2d 6d 61 6b 65 2d | alias.'ts-make-cursor.'tsc-make- | 
| 18020 | 63 75 72 73 6f 72 20 22 32 30 32 30 2d 31 30 2d    31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 | cursor."2020-10-13").(define-obs | 
| 18040 | 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61    6c 69 61 73 20 27 74 73 2d 6d 61 6b 65 2d 70 61 | olete-function-alias.'ts-make-pa | 
| 18060 | 72 73 65 72 20 27 74 73 63 2d 6d 61 6b 65 2d 70    61 72 73 65 72 20 22 32 30 32 30 2d 31 30 2d 31 | rser.'tsc-make-parser."2020-10-1 | 
| 18080 | 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f    6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c | 3").(define-obsolete-function-al | 
| 180a0 | 69 61 73 20 27 74 73 2d 6d 61 6b 65 2d 71 75 65    72 79 20 27 74 73 63 2d 6d 61 6b 65 2d 71 75 65 | ias.'ts-make-query.'tsc-make-que | 
| 180c0 | 72 79 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29    0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 | ry."2020-10-13").(define-obsolet | 
| 180e0 | 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73    20 27 74 73 2d 6d 61 6b 65 2d 71 75 65 72 79 2d | e-function-alias.'ts-make-query- | 
| 18100 | 63 75 72 73 6f 72 20 27 74 73 63 2d 6d 61 6b 65    2d 71 75 65 72 79 2d 63 75 72 73 6f 72 20 22 32 | cursor.'tsc-make-query-cursor."2 | 
| 18120 | 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66    69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e | 020-10-13").(define-obsolete-fun | 
| 18140 | 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d    6d 61 70 63 2d 63 68 69 6c 64 72 65 6e 20 27 74 | ction-alias.'ts-mapc-children.'t | 
| 18160 | 73 63 2d 6d 61 70 63 2d 63 68 69 6c 64 72 65 6e    20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 | sc-mapc-children."2020-10-13").( | 
| 18180 | 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d    66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 | define-obsolete-function-alias.' | 
| 181a0 | 74 73 2d 6e 6f 64 65 2d 62 79 74 65 2d 72 61 6e    67 65 20 27 74 73 63 2d 6e 6f 64 65 2d 62 79 74 | ts-node-byte-range.'tsc-node-byt | 
| 181c0 | 65 2d 72 61 6e 67 65 20 22 32 30 32 30 2d 31 30    2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 | e-range."2020-10-13").(define-ob | 
| 181e0 | 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d    61 6c 69 61 73 20 27 74 73 2d 6e 6f 64 65 2d 65 | solete-function-alias.'ts-node-e | 
| 18200 | 6e 64 2d 62 79 74 65 20 27 74 73 63 2d 6e 6f 64    65 2d 65 6e 64 2d 62 79 74 65 20 22 32 30 32 30 | nd-byte.'tsc-node-end-byte."2020 | 
| 18220 | 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65    2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 | -10-13").(define-obsolete-functi | 
| 18240 | 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6e 6f 64    65 2d 65 6e 64 2d 70 6f 69 6e 74 20 27 74 73 63 | on-alias.'ts-node-end-point.'tsc | 
| 18260 | 2d 6e 6f 64 65 2d 65 6e 64 2d 70 6f 69 6e 74 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | -node-end-point."2020-10-13").(d | 
| 18280 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 182a0 | 73 2d 6e 6f 64 65 2d 65 6e 64 2d 70 6f 73 69 74    69 6f 6e 20 27 74 73 63 2d 6e 6f 64 65 2d 65 6e | s-node-end-position.'tsc-node-en | 
| 182c0 | 64 2d 70 6f 73 69 74 69 6f 6e 20 22 32 30 32 30    2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 | d-position."2020-10-13").(define | 
| 182e0 | 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69    6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6e 6f 64 | -obsolete-function-alias.'ts-nod | 
| 18300 | 65 2d 65 71 20 27 74 73 63 2d 6e 6f 64 65 2d 65    71 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a | e-eq.'tsc-node-eq."2020-10-13"). | 
| 18320 | 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65    2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 | (define-obsolete-function-alias. | 
| 18340 | 27 74 73 2d 6e 6f 64 65 2d 65 72 72 6f 72 2d 70    20 27 74 73 63 2d 6e 6f 64 65 2d 65 72 72 6f 72 | 'ts-node-error-p.'tsc-node-error | 
| 18360 | 2d 70 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29    0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 | -p."2020-10-13").(define-obsolet | 
| 18380 | 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73    20 27 74 73 2d 6e 6f 64 65 2d 65 78 74 72 61 2d | e-function-alias.'ts-node-extra- | 
| 183a0 | 70 20 27 74 73 63 2d 6e 6f 64 65 2d 65 78 74 72    61 2d 70 20 22 32 30 32 30 2d 31 30 2d 31 33 22 | p.'tsc-node-extra-p."2020-10-13" | 
| 183c0 | 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65    74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 | ).(define-obsolete-function-alia | 
| 183e0 | 73 20 27 74 73 2d 6e 6f 64 65 2d 68 61 73 2d 63    68 61 6e 67 65 73 2d 70 20 27 74 73 63 2d 6e 6f | s.'ts-node-has-changes-p.'tsc-no | 
| 18400 | 64 65 2d 68 61 73 2d 63 68 61 6e 67 65 73 2d 70    20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 | de-has-changes-p."2020-10-13").( | 
| 18420 | 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d    66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 | define-obsolete-function-alias.' | 
| 18440 | 74 73 2d 6e 6f 64 65 2d 68 61 73 2d 65 72 72 6f    72 2d 70 20 27 74 73 63 2d 6e 6f 64 65 2d 68 61 | ts-node-has-error-p.'tsc-node-ha | 
| 18460 | 73 2d 65 72 72 6f 72 2d 70 20 22 32 30 32 30 2d    31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d | s-error-p."2020-10-13").(define- | 
| 18480 | 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f    6e 2d 61 6c 69 61 73 20 27 74 73 2d 6e 6f 64 65 | obsolete-function-alias.'ts-node | 
| 184a0 | 2d 6d 69 73 73 69 6e 67 2d 70 20 27 74 73 63 2d    6e 6f 64 65 2d 6d 69 73 73 69 6e 67 2d 70 20 22 | -missing-p.'tsc-node-missing-p." | 
| 184c0 | 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65    66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 | 2020-10-13").(define-obsolete-fu | 
| 184e0 | 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73    2d 6e 6f 64 65 2d 6e 61 6d 65 64 2d 70 20 27 74 | nction-alias.'ts-node-named-p.'t | 
| 18500 | 73 63 2d 6e 6f 64 65 2d 6e 61 6d 65 64 2d 70 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | sc-node-named-p."2020-10-13").(d | 
| 18520 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 18540 | 73 2d 6e 6f 64 65 2d 70 20 27 74 73 63 2d 6e 6f    64 65 2d 70 20 22 32 30 32 30 2d 31 30 2d 31 33 | s-node-p.'tsc-node-p."2020-10-13 | 
| 18560 | 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c    65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 | ").(define-obsolete-function-ali | 
| 18580 | 61 73 20 27 74 73 2d 6e 6f 64 65 2d 70 6f 73 69    74 69 6f 6e 2d 72 61 6e 67 65 20 27 74 73 63 2d | as.'ts-node-position-range.'tsc- | 
| 185a0 | 6e 6f 64 65 2d 70 6f 73 69 74 69 6f 6e 2d 72 61    6e 67 65 20 22 32 30 32 30 2d 31 30 2d 31 33 22 | node-position-range."2020-10-13" | 
| 185c0 | 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65    74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 | ).(define-obsolete-function-alia | 
| 185e0 | 73 20 27 74 73 2d 6e 6f 64 65 2d 72 61 6e 67 65    20 27 74 73 63 2d 6e 6f 64 65 2d 72 61 6e 67 65 | s.'ts-node-range.'tsc-node-range | 
| 18600 | 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28    64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d | ."2020-10-13").(define-obsolete- | 
| 18620 | 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27    74 73 2d 6e 6f 64 65 2d 73 74 61 72 74 2d 62 79 | function-alias.'ts-node-start-by | 
| 18640 | 74 65 20 27 74 73 63 2d 6e 6f 64 65 2d 73 74 61    72 74 2d 62 79 74 65 20 22 32 30 32 30 2d 31 30 | te.'tsc-node-start-byte."2020-10 | 
| 18660 | 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62    73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d | -13").(define-obsolete-function- | 
| 18680 | 61 6c 69 61 73 20 27 74 73 2d 6e 6f 64 65 2d 73    74 61 72 74 2d 70 6f 69 6e 74 20 27 74 73 63 2d | alias.'ts-node-start-point.'tsc- | 
| 186a0 | 6e 6f 64 65 2d 73 74 61 72 74 2d 70 6f 69 6e 74    20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 | node-start-point."2020-10-13").( | 
| 186c0 | 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d    66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 | define-obsolete-function-alias.' | 
| 186e0 | 74 73 2d 6e 6f 64 65 2d 73 74 61 72 74 2d 70 6f    73 69 74 69 6f 6e 20 27 74 73 63 2d 6e 6f 64 65 | ts-node-start-position.'tsc-node | 
| 18700 | 2d 73 74 61 72 74 2d 70 6f 73 69 74 69 6f 6e 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | -start-position."2020-10-13").(d | 
| 18720 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 18740 | 73 2d 6e 6f 64 65 2d 74 65 78 74 20 27 74 73 63    2d 6e 6f 64 65 2d 74 65 78 74 20 22 32 30 32 30 | s-node-text.'tsc-node-text."2020 | 
| 18760 | 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65    2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 | -10-13").(define-obsolete-functi | 
| 18780 | 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6e 6f 64    65 2d 74 6f 2d 73 65 78 70 20 27 74 73 63 2d 6e | on-alias.'ts-node-to-sexp.'tsc-n | 
| 187a0 | 6f 64 65 2d 74 6f 2d 73 65 78 70 20 22 32 30 32    30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e | ode-to-sexp."2020-10-13").(defin | 
| 187c0 | 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74    69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 6e 6f | e-obsolete-function-alias.'ts-no | 
| 187e0 | 64 65 2d 74 79 70 65 20 27 74 73 63 2d 6e 6f 64    65 2d 74 79 70 65 20 22 32 30 32 30 2d 31 30 2d | de-type.'tsc-node-type."2020-10- | 
| 18800 | 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73    6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 | 13").(define-obsolete-function-a | 
| 18820 | 6c 69 61 73 20 27 74 73 2d 6e 6f 64 65 2d 74 79    70 65 2d 69 64 20 27 74 73 63 2d 6e 6f 64 65 2d | lias.'ts-node-type-id.'tsc-node- | 
| 18840 | 74 79 70 65 2d 69 64 20 22 32 30 32 30 2d 31 30    2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 | type-id."2020-10-13").(define-ob | 
| 18860 | 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d    61 6c 69 61 73 20 27 74 73 2d 70 61 72 73 65 2d | solete-function-alias.'ts-parse- | 
| 18880 | 63 68 75 6e 6b 73 20 27 74 73 63 2d 70 61 72 73    65 2d 63 68 75 6e 6b 73 20 22 32 30 32 30 2d 31 | chunks.'tsc-parse-chunks."2020-1 | 
| 188a0 | 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f    62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e | 0-13").(define-obsolete-function | 
| 188c0 | 2d 61 6c 69 61 73 20 27 74 73 2d 70 61 72 73 65    2d 73 74 72 69 6e 67 20 27 74 73 63 2d 70 61 72 | -alias.'ts-parse-string.'tsc-par | 
| 188e0 | 73 65 2d 73 74 72 69 6e 67 20 22 32 30 32 30 2d    31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d | se-string."2020-10-13").(define- | 
| 18900 | 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f    6e 2d 61 6c 69 61 73 20 27 74 73 2d 70 61 72 73 | obsolete-function-alias.'ts-pars | 
| 18920 | 65 72 2d 6c 61 6e 67 75 61 67 65 20 27 74 73 63    2d 70 61 72 73 65 72 2d 6c 61 6e 67 75 61 67 65 | er-language.'tsc-parser-language | 
| 18940 | 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28    64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d | ."2020-10-13").(define-obsolete- | 
| 18960 | 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27    74 73 2d 70 61 72 73 65 72 2d 70 20 27 74 73 63 | function-alias.'ts-parser-p.'tsc | 
| 18980 | 2d 70 61 72 73 65 72 2d 70 20 22 32 30 32 30 2d    31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d | -parser-p."2020-10-13").(define- | 
| 189a0 | 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f    6e 2d 61 6c 69 61 73 20 27 74 73 2d 70 6f 69 6e | obsolete-function-alias.'ts-poin | 
| 189c0 | 74 2d 66 72 6f 6d 2d 70 6f 73 69 74 69 6f 6e 20    27 74 73 63 2d 70 6f 69 6e 74 2d 66 72 6f 6d 2d | t-from-position.'tsc-point-from- | 
| 189e0 | 70 6f 73 69 74 69 6f 6e 20 22 32 30 32 30 2d 31    30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f | position."2020-10-13").(define-o | 
| 18a00 | 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e    2d 61 6c 69 61 73 20 27 74 73 2d 70 6f 69 6e 74 | bsolete-function-alias.'ts-point | 
| 18a20 | 2d 70 20 27 74 73 63 2d 70 6f 69 6e 74 2d 70 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | -p.'tsc-point-p."2020-10-13").(d | 
| 18a40 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 18a60 | 73 2d 70 6f 69 6e 74 2d 74 6f 2d 70 6f 73 69 74    69 6f 6e 20 27 74 73 63 2d 70 6f 69 6e 74 2d 74 | s-point-to-position.'tsc-point-t | 
| 18a80 | 6f 2d 70 6f 73 69 74 69 6f 6e 20 22 32 30 32 30    2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 | o-position."2020-10-13").(define | 
| 18aa0 | 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69    6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 70 70 2d | -obsolete-function-alias.'ts-pp- | 
| 18ac0 | 74 6f 2d 73 74 72 69 6e 67 20 27 74 73 63 2d 70    70 2d 74 6f 2d 73 74 72 69 6e 67 20 22 32 30 32 | to-string.'tsc-pp-to-string."202 | 
| 18ae0 | 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e    65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 | 0-10-13").(define-obsolete-funct | 
| 18b00 | 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 71 75    65 72 79 2d 63 61 70 74 75 72 65 2d 74 61 67 73 | ion-alias.'ts-query-capture-tags | 
| 18b20 | 20 27 74 73 63 2d 71 75 65 72 79 2d 63 61 70 74    75 72 65 2d 74 61 67 73 20 22 32 30 32 30 2d 31 | .'tsc-query-capture-tags."2020-1 | 
| 18b40 | 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f    62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e | 0-13").(define-obsolete-function | 
| 18b60 | 2d 61 6c 69 61 73 20 27 74 73 2d 71 75 65 72 79    2d 63 61 70 74 75 72 65 73 20 27 74 73 63 2d 71 | -alias.'ts-query-captures.'tsc-q | 
| 18b80 | 75 65 72 79 2d 63 61 70 74 75 72 65 73 20 22 32    30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 | uery-captures."2020-10-13").(def | 
| 18ba0 | 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e    63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d | ine-obsolete-function-alias.'ts- | 
| 18bc0 | 71 75 65 72 79 2d 63 6f 75 6e 74 2d 70 61 74 74    65 72 6e 73 20 27 74 73 63 2d 71 75 65 72 79 2d | query-count-patterns.'tsc-query- | 
| 18be0 | 63 6f 75 6e 74 2d 70 61 74 74 65 72 6e 73 20 22    32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 | count-patterns."2020-10-13").(de | 
| 18c00 | 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75    6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 | fine-obsolete-function-alias.'ts | 
| 18c20 | 2d 71 75 65 72 79 2d 63 75 72 73 6f 72 2d 70 20    27 74 73 63 2d 71 75 65 72 79 2d 63 75 72 73 6f | -query-cursor-p.'tsc-query-curso | 
| 18c40 | 72 2d 70 20 22 32 30 32 30 2d 31 30 2d 31 33 22    29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 | r-p."2020-10-13").(define-obsole | 
| 18c60 | 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61    73 20 27 74 73 2d 71 75 65 72 79 2d 6d 61 74 63 | te-function-alias.'ts-query-matc | 
| 18c80 | 68 65 73 20 27 74 73 63 2d 71 75 65 72 79 2d 6d    61 74 63 68 65 73 20 22 32 30 32 30 2d 31 30 2d | hes.'tsc-query-matches."2020-10- | 
| 18ca0 | 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73    6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 | 13").(define-obsolete-function-a | 
| 18cc0 | 6c 69 61 73 20 27 74 73 2d 71 75 65 72 79 2d 70    20 27 74 73 63 2d 71 75 65 72 79 2d 70 20 22 32 | lias.'ts-query-p.'tsc-query-p."2 | 
| 18ce0 | 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66    69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e | 020-10-13").(define-obsolete-fun | 
| 18d00 | 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d    72 61 6e 67 65 2d 70 20 27 74 73 63 2d 72 61 6e | ction-alias.'ts-range-p.'tsc-ran | 
| 18d20 | 67 65 2d 70 20 22 32 30 32 30 2d 31 30 2d 31 33    22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c | ge-p."2020-10-13").(define-obsol | 
| 18d40 | 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69    61 73 20 27 74 73 2d 72 65 73 65 74 2d 63 75 72 | ete-function-alias.'ts-reset-cur | 
| 18d60 | 73 6f 72 20 27 74 73 63 2d 72 65 73 65 74 2d 63    75 72 73 6f 72 20 22 32 30 32 30 2d 31 30 2d 31 | sor.'tsc-reset-cursor."2020-10-1 | 
| 18d80 | 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f    6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c | 3").(define-obsolete-function-al | 
| 18da0 | 69 61 73 20 27 74 73 2d 72 6f 6f 74 2d 6e 6f 64    65 20 27 74 73 63 2d 72 6f 6f 74 2d 6e 6f 64 65 | ias.'ts-root-node.'tsc-root-node | 
| 18dc0 | 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28    64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d | ."2020-10-13").(define-obsolete- | 
| 18de0 | 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27    74 73 2d 73 65 74 2d 69 6e 63 6c 75 64 65 64 2d | function-alias.'ts-set-included- | 
| 18e00 | 72 61 6e 67 65 73 20 27 74 73 63 2d 73 65 74 2d    69 6e 63 6c 75 64 65 64 2d 72 61 6e 67 65 73 20 | ranges.'tsc-set-included-ranges. | 
| 18e20 | 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64    65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 | "2020-10-13").(define-obsolete-f | 
| 18e40 | 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74    73 2d 73 65 74 2d 6c 61 6e 67 75 61 67 65 20 27 | unction-alias.'ts-set-language.' | 
| 18e60 | 74 73 63 2d 73 65 74 2d 6c 61 6e 67 75 61 67 65    20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 | tsc-set-language."2020-10-13").( | 
| 18e80 | 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d    66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 | define-obsolete-function-alias.' | 
| 18ea0 | 74 73 2d 74 72 65 65 2d 6c 61 6e 67 75 61 67 65    20 27 74 73 63 2d 74 72 65 65 2d 6c 61 6e 67 75 | ts-tree-language.'tsc-tree-langu | 
| 18ec0 | 61 67 65 20 22 32 30 32 30 2d 31 30 2d 31 33 22    29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 | age."2020-10-13").(define-obsole | 
| 18ee0 | 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61    73 20 27 74 73 2d 74 72 65 65 2d 70 20 27 74 73 | te-function-alias.'ts-tree-p.'ts | 
| 18f00 | 63 2d 74 72 65 65 2d 70 20 22 32 30 32 30 2d 31    30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f | c-tree-p."2020-10-13").(define-o | 
| 18f20 | 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e    2d 61 6c 69 61 73 20 27 74 73 2d 74 72 65 65 2d | bsolete-function-alias.'ts-tree- | 
| 18f40 | 74 6f 2d 73 65 78 70 20 27 74 73 63 2d 74 72 65    65 2d 74 6f 2d 73 65 78 70 20 22 32 30 32 30 2d | to-sexp.'tsc-tree-to-sexp."2020- | 
| 18f60 | 31 30 2d 31 33 22 29 0a 0a 3b 3b 3b 20 53 65 6d    69 2d 70 75 62 6c 69 63 2e 0a 28 64 65 66 69 6e | 10-13")..;;;.Semi-public..(defin | 
| 18f80 | 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74    69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d 6c | e-obsolete-function-alias.'ts--l | 
| 18fa0 | 61 6e 67 2d 73 79 6d 62 6f 6c 20 27 74 73 63 2d    2d 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 22 32 30 | ang-symbol.'tsc--lang-symbol."20 | 
| 18fc0 | 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69    6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 | 20-10-13").(define-obsolete-func | 
| 18fe0 | 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d    62 75 66 66 65 72 2d 69 6e 70 75 74 20 27 74 73 | tion-alias.'ts--buffer-input.'ts | 
| 19000 | 63 2d 2d 62 75 66 66 65 72 2d 69 6e 70 75 74 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | c--buffer-input."2020-10-13").(d | 
| 19020 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 19040 | 73 2d 2d 62 75 66 66 65 72 2d 73 75 62 73 74 72    69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 | s--buffer-substring-no-propertie | 
| 19060 | 73 20 27 74 73 63 2d 2d 62 75 66 66 65 72 2d 73    75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 | s.'tsc--buffer-substring-no-prop | 
| 19080 | 65 72 74 69 65 73 20 22 32 30 32 30 2d 31 30 2d    31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 | erties."2020-10-13").(define-obs | 
| 190a0 | 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61    6c 69 61 73 20 27 74 73 2d 2d 63 6c 6f 6e 65 2d | olete-function-alias.'ts--clone- | 
| 190c0 | 74 72 65 65 20 27 74 73 63 2d 2d 63 6c 6f 6e 65    2d 74 72 65 65 20 22 32 30 32 30 2d 31 30 2d 31 | tree.'tsc--clone-tree."2020-10-1 | 
| 190e0 | 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f    6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c | 3").(define-obsolete-function-al | 
| 19100 | 69 61 73 20 27 74 73 2d 2d 64 69 73 61 62 6c 65    2d 63 61 70 74 75 72 65 20 27 74 73 63 2d 2d 64 | ias.'ts--disable-capture.'tsc--d | 
| 19120 | 69 73 61 62 6c 65 2d 63 61 70 74 75 72 65 20 22    32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 | isable-capture."2020-10-13").(de | 
| 19140 | 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75    6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 | fine-obsolete-function-alias.'ts | 
| 19160 | 2d 2d 64 79 6e 2d 76 65 72 73 69 6f 6e 20 27 74    73 63 2d 2d 64 79 6e 2d 76 65 72 73 69 6f 6e 20 | --dyn-version.'tsc--dyn-version. | 
| 19180 | 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64    65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 | "2020-10-13").(define-obsolete-f | 
| 191a0 | 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74    73 2d 2d 67 65 74 2d 63 68 69 6c 64 2d 62 79 2d | unction-alias.'ts--get-child-by- | 
| 191c0 | 66 69 65 6c 64 2d 6e 61 6d 65 20 27 74 73 63 2d    2d 67 65 74 2d 63 68 69 6c 64 2d 62 79 2d 66 69 | field-name.'tsc--get-child-by-fi | 
| 191e0 | 65 6c 64 2d 6e 61 6d 65 20 22 32 30 32 30 2d 31    30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f | eld-name."2020-10-13").(define-o | 
| 19200 | 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e    2d 61 6c 69 61 73 20 27 74 73 2d 2d 69 6e 76 61 | bsolete-function-alias.'ts--inva | 
| 19220 | 6c 69 64 2d 6e 6f 64 65 2d 73 74 65 70 20 27 74    73 63 2d 2d 69 6e 76 61 6c 69 64 2d 6e 6f 64 65 | lid-node-step.'tsc--invalid-node | 
| 19240 | 2d 73 74 65 70 20 22 32 30 32 30 2d 31 30 2d 31    33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f | -step."2020-10-13").(define-obso | 
| 19260 | 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c    69 61 73 20 27 74 73 2d 2d 6c 61 6e 67 2d 66 69 | lete-function-alias.'ts--lang-fi | 
| 19280 | 65 6c 64 2d 69 64 2d 66 6f 72 2d 6e 61 6d 65 20    27 74 73 63 2d 2d 6c 61 6e 67 2d 66 69 65 6c 64 | eld-id-for-name.'tsc--lang-field | 
| 192a0 | 2d 69 64 2d 66 6f 72 2d 6e 61 6d 65 20 22 32 30    32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 | -id-for-name."2020-10-13").(defi | 
| 192c0 | 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63    74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d | ne-obsolete-function-alias.'ts-- | 
| 192e0 | 6c 61 6e 67 2d 6c 6f 61 64 2d 66 69 6c 65 20 27    74 73 63 2d 2d 6c 61 6e 67 2d 6c 6f 61 64 2d 66 | lang-load-file.'tsc--lang-load-f | 
| 19300 | 69 6c 65 20 22 32 30 32 30 2d 31 30 2d 31 33 22    29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 | ile."2020-10-13").(define-obsole | 
| 19320 | 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61    73 20 27 74 73 2d 2d 6c 61 6e 67 2d 73 79 6d 62 | te-function-alias.'ts--lang-symb | 
| 19340 | 6f 6c 20 27 74 73 63 2d 2d 6c 61 6e 67 2d 73 79    6d 62 6f 6c 20 22 32 30 32 30 2d 31 30 2d 31 33 | ol.'tsc--lang-symbol."2020-10-13 | 
| 19360 | 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c    65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 | ").(define-obsolete-function-ali | 
| 19380 | 61 73 20 27 74 73 2d 2d 6c 61 6e 67 2d 74 79 70    65 2d 69 64 2d 66 6f 72 2d 6e 61 6d 65 20 27 74 | as.'ts--lang-type-id-for-name.'t | 
| 193a0 | 73 63 2d 2d 6c 61 6e 67 2d 74 79 70 65 2d 69 64    2d 66 6f 72 2d 6e 61 6d 65 20 22 32 30 32 30 2d | sc--lang-type-id-for-name."2020- | 
| 193c0 | 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d    6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f | 10-13").(define-obsolete-functio | 
| 193e0 | 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d 6c 6f 61    64 2d 6c 61 6e 67 75 61 67 65 20 27 74 73 63 2d | n-alias.'ts--load-language.'tsc- | 
| 19400 | 2d 6c 6f 61 64 2d 6c 61 6e 67 75 61 67 65 20 22    32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 | -load-language."2020-10-13").(de | 
| 19420 | 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75    6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 | fine-obsolete-function-alias.'ts | 
| 19440 | 2d 2d 6d 61 6b 65 2d 71 75 65 72 79 20 27 74 73    63 2d 2d 6d 61 6b 65 2d 71 75 65 72 79 20 22 32 | --make-query.'tsc--make-query."2 | 
| 19460 | 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66    69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e | 020-10-13").(define-obsolete-fun | 
| 19480 | 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d    2d 6e 6f 64 65 2d 66 72 6f 6d 2d 73 74 65 70 73 | ction-alias.'ts--node-from-steps | 
| 194a0 | 20 27 74 73 63 2d 2d 6e 6f 64 65 2d 66 72 6f 6d    2d 73 74 65 70 73 20 22 32 30 32 30 2d 31 30 2d | .'tsc--node-from-steps."2020-10- | 
| 194c0 | 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73    6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 | 13").(define-obsolete-function-a | 
| 194e0 | 6c 69 61 73 20 27 74 73 2d 2d 6e 6f 64 65 2d 73    74 65 70 73 20 27 74 73 63 2d 2d 6e 6f 64 65 2d | lias.'ts--node-steps.'tsc--node- | 
| 19500 | 73 74 65 70 73 20 22 32 30 32 30 2d 31 30 2d 31    33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f | steps."2020-10-13").(define-obso | 
| 19520 | 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c    69 61 73 20 27 74 73 2d 2d 6e 6f 64 65 2d 74 65 | lete-function-alias.'ts--node-te | 
| 19540 | 78 74 20 27 74 73 63 2d 2d 6e 6f 64 65 2d 74 65    78 74 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 | xt.'tsc--node-text."2020-10-13") | 
| 19560 | 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74    65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 | .(define-obsolete-function-alias | 
| 19580 | 20 27 74 73 2d 2d 70 6f 69 6e 74 2d 66 72 6f 6d    2d 70 6f 73 69 74 69 6f 6e 20 27 74 73 63 2d 2d | .'ts--point-from-position.'tsc-- | 
| 195a0 | 70 6f 69 6e 74 2d 66 72 6f 6d 2d 70 6f 73 69 74    69 6f 6e 20 22 32 30 32 30 2d 31 30 2d 31 33 22 | point-from-position."2020-10-13" | 
| 195c0 | 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65    74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 | ).(define-obsolete-function-alia | 
| 195e0 | 73 20 27 74 73 2d 2d 71 75 65 72 79 2d 63 61 70    74 75 72 65 2d 6e 61 6d 65 73 20 27 74 73 63 2d | s.'ts--query-capture-names.'tsc- | 
| 19600 | 2d 71 75 65 72 79 2d 63 61 70 74 75 72 65 2d 6e    61 6d 65 73 20 22 32 30 32 30 2d 31 30 2d 31 33 | -query-capture-names."2020-10-13 | 
| 19620 | 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c    65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 | ").(define-obsolete-function-ali | 
| 19640 | 61 73 20 27 74 73 2d 2d 71 75 65 72 79 2d 63 75    72 73 6f 72 2d 63 61 70 74 75 72 65 73 20 27 74 | as.'ts--query-cursor-captures.'t | 
| 19660 | 73 63 2d 2d 71 75 65 72 79 2d 63 75 72 73 6f 72    2d 63 61 70 74 75 72 65 73 20 22 32 30 32 30 2d | sc--query-cursor-captures."2020- | 
| 19680 | 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d    6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f | 10-13").(define-obsolete-functio | 
| 196a0 | 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d 71 75 65    72 79 2d 63 75 72 73 6f 72 2d 63 61 70 74 75 72 | n-alias.'ts--query-cursor-captur | 
| 196c0 | 65 73 2d 31 20 27 74 73 63 2d 2d 71 75 65 72 79    2d 63 75 72 73 6f 72 2d 63 61 70 74 75 72 65 73 | es-1.'tsc--query-cursor-captures | 
| 196e0 | 2d 31 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29    0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 | -1."2020-10-13").(define-obsolet | 
| 19700 | 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73    20 27 74 73 2d 2d 71 75 65 72 79 2d 63 75 72 73 | e-function-alias.'ts--query-curs | 
| 19720 | 6f 72 2d 6d 61 74 63 68 65 73 20 27 74 73 63 2d    2d 71 75 65 72 79 2d 63 75 72 73 6f 72 2d 6d 61 | or-matches.'tsc--query-cursor-ma | 
| 19740 | 74 63 68 65 73 20 22 32 30 32 30 2d 31 30 2d 31    33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f | tches."2020-10-13").(define-obso | 
| 19760 | 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c    69 61 73 20 27 74 73 2d 2d 71 75 65 72 79 2d 63 | lete-function-alias.'ts--query-c | 
| 19780 | 75 72 73 6f 72 2d 73 65 74 2d 62 79 74 65 2d 72    61 6e 67 65 20 27 74 73 63 2d 2d 71 75 65 72 79 | ursor-set-byte-range.'tsc--query | 
| 197a0 | 2d 63 75 72 73 6f 72 2d 73 65 74 2d 62 79 74 65    2d 72 61 6e 67 65 20 22 32 30 32 30 2d 31 30 2d | -cursor-set-byte-range."2020-10- | 
| 197c0 | 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62 73    6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 | 13").(define-obsolete-function-a | 
| 197e0 | 6c 69 61 73 20 27 74 73 2d 2d 71 75 65 72 79 2d    63 75 72 73 6f 72 2d 73 65 74 2d 70 6f 69 6e 74 | lias.'ts--query-cursor-set-point | 
| 19800 | 2d 72 61 6e 67 65 20 27 74 73 63 2d 2d 71 75 65    72 79 2d 63 75 72 73 6f 72 2d 73 65 74 2d 70 6f | -range.'tsc--query-cursor-set-po | 
| 19820 | 69 6e 74 2d 72 61 6e 67 65 20 22 32 30 32 30 2d    31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d | int-range."2020-10-13").(define- | 
| 19840 | 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f    6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d 71 75 65 | obsolete-function-alias.'ts--que | 
| 19860 | 72 79 2d 73 74 61 72 74 2d 62 79 74 65 2d 66 6f    72 2d 70 61 74 74 65 72 6e 20 27 74 73 63 2d 2d | ry-start-byte-for-pattern.'tsc-- | 
| 19880 | 71 75 65 72 79 2d 73 74 61 72 74 2d 62 79 74 65    2d 66 6f 72 2d 70 61 74 74 65 72 6e 20 22 32 30 | query-start-byte-for-pattern."20 | 
| 198a0 | 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69    6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 | 20-10-13").(define-obsolete-func | 
| 198c0 | 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d    72 65 73 65 74 2d 70 61 72 73 65 72 20 27 74 73 | tion-alias.'ts--reset-parser.'ts | 
| 198e0 | 63 2d 2d 72 65 73 65 74 2d 70 61 72 73 65 72 20    22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28 64 | c--reset-parser."2020-10-13").(d | 
| 19900 | 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66    75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 | efine-obsolete-function-alias.'t | 
| 19920 | 73 2d 2d 73 61 76 65 2d 63 6f 6e 74 65 78 74 20    27 74 73 63 2d 2d 73 61 76 65 2d 63 6f 6e 74 65 | s--save-context.'tsc--save-conte | 
| 19940 | 78 74 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29    0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 | xt."2020-10-13").(define-obsolet | 
| 19960 | 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73    20 27 74 73 2d 2d 73 65 74 2d 74 69 6d 65 6f 75 | e-function-alias.'ts--set-timeou | 
| 19980 | 74 2d 6d 69 63 72 6f 73 20 27 74 73 63 2d 2d 73    65 74 2d 74 69 6d 65 6f 75 74 2d 6d 69 63 72 6f | t-micros.'tsc--set-timeout-micro | 
| 199a0 | 73 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a    28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 | s."2020-10-13").(define-obsolete | 
| 199c0 | 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20    27 74 73 2d 2d 73 74 72 69 6e 67 69 66 79 2d 70 | -function-alias.'ts--stringify-p | 
| 199e0 | 61 74 74 65 72 6e 73 20 27 74 73 63 2d 2d 73 74    72 69 6e 67 69 66 79 2d 70 61 74 74 65 72 6e 73 | atterns.'tsc--stringify-patterns | 
| 19a00 | 20 22 32 30 32 30 2d 31 30 2d 31 33 22 29 0a 28    64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d | ."2020-10-13").(define-obsolete- | 
| 19a20 | 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27    74 73 2d 2d 74 69 6d 65 6f 75 74 2d 6d 69 63 72 | function-alias.'ts--timeout-micr | 
| 19a40 | 6f 73 20 27 74 73 63 2d 2d 74 69 6d 65 6f 75 74    2d 6d 69 63 72 6f 73 20 22 32 30 32 30 2d 31 30 | os.'tsc--timeout-micros."2020-10 | 
| 19a60 | 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 2d 6f 62    73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d | -13").(define-obsolete-function- | 
| 19a80 | 61 6c 69 61 73 20 27 74 73 2d 2d 74 72 79 2d 6c    6f 61 64 2d 64 79 6e 20 27 74 73 63 2d 2d 74 72 | alias.'ts--try-load-dyn.'tsc--tr | 
| 19aa0 | 79 2d 6c 6f 61 64 2d 64 79 6e 20 22 32 30 32 30    2d 31 30 2d 31 33 22 29 0a 28 64 65 66 69 6e 65 | y-load-dyn."2020-10-13").(define | 
| 19ac0 | 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69    6f 6e 2d 61 6c 69 61 73 20 27 74 73 2d 2d 77 69 | -obsolete-function-alias.'ts--wi | 
| 19ae0 | 74 68 6f 75 74 2d 72 65 73 74 72 69 63 74 69 6f    6e 20 27 74 73 63 2d 2d 77 69 74 68 6f 75 74 2d | thout-restriction.'tsc--without- | 
| 19b00 | 72 65 73 74 72 69 63 74 69 6f 6e 20 22 32 30 32    30 2d 31 30 2d 31 33 22 29 0a 0a 28 70 72 6f 76 | restriction."2020-10-13")..(prov | 
| 19b20 | 69 64 65 20 27 74 73 63 2d 6f 62 73 6f 6c 65 74    65 29 0a 3b 3b 3b 20 74 73 63 2d 6f 62 73 6f 6c | ide.'tsc-obsolete).;;;.tsc-obsol | 
| 19b40 | 65 74 65 2e 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 | ete.el.ends.here................ | 
| 19b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19c00 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 74 73 63 2d 70 6b 67 2e 65 6c 00 00 00 00 | tsc-20220212.1632/tsc-pkg.el.... | 
| 19c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19c60 | 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 | 
| 19c80 | 30 30 30 31 32 30 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 34 35 33 00 20 30 00 00 00 | 0001200.00000000000.013453..0... | 
| 19ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19d00 | 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................... | 
| 19d20 | 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................... | 
| 19d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 19e00 | 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 | 
| 19e20 | 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 | 
| 19e40 | 61 67 65 20 22 74 73 63 22 20 22 32 30 32 32 30    32 31 32 2e 31 36 33 32 22 0a 20 20 22 43 6f 72 | age."tsc"."20220212.1632"..."Cor | 
| 19e60 | 65 20 54 72 65 65 2d 73 69 74 74 65 72 20 41 50    49 73 2e 22 0a 20 20 27 28 28 65 6d 61 63 73 20 | e.Tree-sitter.APIs."...'((emacs. | 
| 19e80 | 22 32 35 2e 31 22 29 29 0a 20 20 3a 75 72 6c 20    22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e | "25.1"))...:url."https://github. | 
| 19ea0 | 63 6f 6d 2f 65 6d 61 63 73 2d 74 72 65 65 2d 73    69 74 74 65 72 2f 65 6c 69 73 70 2d 74 72 65 65 | com/emacs-tree-sitter/elisp-tree | 
| 19ec0 | 2d 73 69 74 74 65 72 22 0a 20 20 3a 63 6f 6d 6d    69 74 20 22 39 30 39 37 31 37 63 36 38 35 66 66 | -sitter"...:commit."909717c685ff | 
| 19ee0 | 35 61 32 33 32 37 66 61 32 63 61 38 66 62 38 61    32 35 32 31 36 31 32 39 33 36 31 63 22 0a 20 20 | 5a2327fa2ca8fb8a25216129361c"... | 
| 19f00 | 3a 72 65 76 64 65 73 63 20 22 39 30 39 37 31 37    63 36 38 35 66 66 22 0a 20 20 3a 6b 65 79 77 6f | :revdesc."909717c685ff"...:keywo | 
| 19f20 | 72 64 73 20 27 28 22 6c 61 6e 67 75 61 67 65 73    22 20 22 74 6f 6f 6c 73 22 20 22 70 61 72 73 65 | rds.'("languages"."tools"."parse | 
| 19f40 | 72 73 22 20 22 64 79 6e 61 6d 69 63 2d 6d 6f 64    75 6c 65 73 22 20 22 74 72 65 65 2d 73 69 74 74 | rs"."dynamic-modules"."tree-sitt | 
| 19f60 | 65 72 22 29 0a 20 20 3a 61 75 74 68 6f 72 73 20    27 28 28 22 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e | er")...:authors.'(("Tu...n-Anh.N | 
| 19f80 | 67 75 79 e1 bb 85 6e 22 20 2e 20 22 75 62 6f 6c    6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 22 | guy...n"..."ubolonton@gmail.com" | 
| 19fa0 | 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28    22 4a 6f 72 67 65 20 4a 61 76 69 65 72 20 41 72 | )..............("Jorge.Javier.Ar | 
| 19fc0 | 61 79 61 20 4e 61 76 61 72 72 6f 22 20 2e 20 22    6a 6f 72 67 65 6a 61 76 69 65 72 61 6e 40 79 61 | aya.Navarro"..."jorgejavieran@ya | 
| 19fe0 | 68 6f 6f 2e 63 6f 6d 2e 6d 78 22 29 29 0a 20 20    3a 6d 61 69 6e 74 61 69 6e 65 72 73 20 27 28 28 | hoo.com.mx"))...:maintainers.'(( | 
| 1a000 | 22 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79    e1 bb 85 6e 22 20 2e 20 22 75 62 6f 6c 6f 6e 74 | "Tu...n-Anh.Nguy...n"..."ubolont | 
| 1a020 | 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | on@gmail.com").................. | 
| 1a040 | 28 22 4a 6f 72 67 65 20 4a 61 76 69 65 72 20 41    72 61 79 61 20 4e 61 76 61 72 72 6f 22 20 2e 20 | ("Jorge.Javier.Araya.Navarro"... | 
| 1a060 | 22 6a 6f 72 67 65 6a 61 76 69 65 72 61 6e 40 79    61 68 6f 6f 2e 63 6f 6d 2e 6d 78 22 29 29 29 0a | "jorgejavieran@yahoo.com.mx"))). | 
| 1a080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a0a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a0c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a0e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a1a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a1c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a1e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a200 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 74 73 63 2e 65 6c 00 00 00 00 00 00 00 00 | tsc-20220212.1632/tsc.el........ | 
| 1a220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a260 | 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 | 
| 1a280 | 30 30 34 32 37 37 36 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 32 37 32 33 00 20 30 00 00 00 | 0042776.00000000000.012723..0... | 
| 1a2a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a2c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a2e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a300 | 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................... | 
| 1a320 | 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................... | 
| 1a340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a3a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a3c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a3e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1a400 | 3b 3b 3b 20 74 73 63 2e 65 6c 20 2d 2d 2d 20 43    6f 72 65 20 54 72 65 65 2d 73 69 74 74 65 72 20 | ;;;.tsc.el.---.Core.Tree-sitter. | 
| 1a420 | 41 50 49 73 20 2d 2a 2d 20 6c 65 78 69 63 61 6c    2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 | APIs.-*-.lexical-binding:.t;.cod | 
| 1a440 | 69 6e 67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 0a    3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 | ing:.utf-8.-*-..;;.Copyright.(C) | 
| 1a460 | 20 32 30 32 31 20 20 54 75 e1 ba a5 6e 2d 41 6e    68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b | .2021..Tu...n-Anh.Nguy...n.;;.;; | 
| 1a480 | 20 41 75 74 68 6f 72 3a 20 54 75 e1 ba a5 6e 2d    41 6e 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 | .Author:.Tu...n-Anh.Nguy...n.<ub | 
| 1a4a0 | 6f 6c 6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f    6d 3e 0a 3b 3b 20 20 20 20 20 20 20 20 20 4a 6f | olonton@gmail.com>.;;.........Jo | 
| 1a4c0 | 72 67 65 20 4a 61 76 69 65 72 20 41 72 61 79 61    20 4e 61 76 61 72 72 6f 20 3c 6a 6f 72 67 65 6a | rge.Javier.Araya.Navarro.<jorgej | 
| 1a4e0 | 61 76 69 65 72 61 6e 40 79 61 68 6f 6f 2e 63 6f    6d 2e 6d 78 3e 0a 3b 3b 20 4b 65 79 77 6f 72 64 | avieran@yahoo.com.mx>.;;.Keyword | 
| 1a500 | 73 3a 20 6c 61 6e 67 75 61 67 65 73 20 74 6f 6f    6c 73 20 70 61 72 73 65 72 73 20 64 79 6e 61 6d | s:.languages.tools.parsers.dynam | 
| 1a520 | 69 63 2d 6d 6f 64 75 6c 65 73 20 74 72 65 65 2d    73 69 74 74 65 72 0a 3b 3b 20 48 6f 6d 65 70 61 | ic-modules.tree-sitter.;;.Homepa | 
| 1a540 | 67 65 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68    75 62 2e 63 6f 6d 2f 65 6d 61 63 73 2d 74 72 65 | ge:.https://github.com/emacs-tre | 
| 1a560 | 65 2d 73 69 74 74 65 72 2f 65 6c 69 73 70 2d 74    72 65 65 2d 73 69 74 74 65 72 0a 3b 3b 20 50 61 | e-sitter/elisp-tree-sitter.;;.Pa | 
| 1a580 | 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32    30 32 32 30 32 31 32 2e 31 36 33 32 0a 3b 3b 20 | ckage-Version:.20220212.1632.;;. | 
| 1a5a0 | 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e    3a 20 39 30 39 37 31 37 63 36 38 35 66 66 0a 3b | Package-Revision:.909717c685ff.; | 
| 1a5c0 | 3b 20 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72    65 73 3a 20 28 28 65 6d 61 63 73 20 22 32 35 2e | ;.Package-Requires:.((emacs."25. | 
| 1a5e0 | 31 22 29 29 0a 3b 3b 20 53 50 44 58 2d 4c 69 63    65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 3a | 1")).;;.SPDX-License-Identifier: | 
| 1a600 | 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e    74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 69 | .MIT..;;;.Commentary:..;;.This.i | 
| 1a620 | 73 20 74 68 65 20 63 6f 72 65 20 41 50 49 73 20    6f 66 20 74 68 65 20 45 6d 61 63 73 20 62 69 6e | s.the.core.APIs.of.the.Emacs.bin | 
| 1a640 | 64 69 6e 67 20 66 6f 72 20 54 72 65 65 2d 73 69    74 74 65 72 2c 20 61 6e 20 69 6e 63 72 65 6d 65 | ding.for.Tree-sitter,.an.increme | 
| 1a660 | 6e 74 61 6c 0a 3b 3b 20 70 61 72 73 69 6e 67 20    73 79 73 74 65 6d 2e 0a 0a 3b 3b 3b 20 43 6f 64 | ntal.;;.parsing.system...;;;.Cod | 
| 1a680 | 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 74 73    63 2d 6f 62 73 6f 6c 65 74 65 29 0a 0a 28 75 6e | e:..(require.'tsc-obsolete)..(un | 
| 1a6a0 | 6c 65 73 73 20 28 66 75 6e 63 74 69 6f 6e 70 20    27 6d 6f 64 75 6c 65 2d 6c 6f 61 64 29 0a 20 20 | less.(functionp.'module-load)... | 
| 1a6c0 | 28 65 72 72 6f 72 20 22 44 79 6e 61 6d 69 63 20    6d 6f 64 75 6c 65 20 66 65 61 74 75 72 65 20 6e | (error."Dynamic.module.feature.n | 
| 1a6e0 | 6f 74 20 61 76 61 69 6c 61 62 6c 65 2c 20 70 6c    65 61 73 65 20 63 6f 6d 70 69 6c 65 20 45 6d 61 | ot.available,.please.compile.Ema | 
| 1a700 | 63 73 20 2d 2d 77 69 74 68 2d 6d 6f 64 75 6c 65    73 20 6f 70 74 69 6f 6e 20 74 75 72 6e 65 64 20 | cs.--with-modules.option.turned. | 
| 1a720 | 6f 6e 22 29 29 0a 0a 3b 3b 20 4c 6f 61 64 20 74    68 65 20 64 79 6e 61 6d 69 63 20 6d 6f 64 75 6c | on"))..;;.Load.the.dynamic.modul | 
| 1a740 | 65 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d    65 20 61 73 20 77 65 6c 6c 2c 20 74 6f 20 73 61 | e.at.compile.time.as.well,.to.sa | 
| 1a760 | 74 69 73 66 79 20 74 68 65 20 62 79 74 65 20 63    6f 6d 70 69 6c 65 72 2e 0a 28 65 76 61 6c 2d 61 | tisfy.the.byte.compiler..(eval-a | 
| 1a780 | 6e 64 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 64 65    66 63 6f 6e 73 74 20 74 73 63 2d 2d 64 79 6e 2d | nd-compile...(defconst.tsc--dyn- | 
| 1a7a0 | 76 65 72 73 69 6f 6e 20 22 30 2e 31 38 2e 30 22    0a 20 20 20 20 22 52 65 71 75 69 72 65 64 20 76 | version."0.18.0"....."Required.v | 
| 1a7c0 | 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 64 79    6e 61 6d 69 63 20 6d 6f 64 75 6c 65 20 60 74 73 | ersion.of.the.dynamic.module.`ts | 
| 1a7e0 | 63 2d 64 79 6e 27 2e 22 29 0a 20 20 28 72 65 71    75 69 72 65 20 27 74 73 63 2d 64 79 6e 2d 67 65 | c-dyn'.")...(require.'tsc-dyn-ge | 
| 1a800 | 74 29 0a 20 20 28 74 73 63 2d 64 79 6e 2d 67 65    74 2d 65 6e 73 75 72 65 20 74 73 63 2d 2d 64 79 | t)...(tsc-dyn-get-ensure.tsc--dy | 
| 1a820 | 6e 2d 76 65 72 73 69 6f 6e 29 29 0a 0a 28 72 65    71 75 69 72 65 20 27 74 73 63 2d 64 79 6e 29 0a | n-version))..(require.'tsc-dyn). | 
| 1a840 | 0a 28 72 65 71 75 69 72 65 20 27 73 65 71 29 0a    0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 | .(require.'seq)..(eval-when-comp | 
| 1a860 | 69 6c 65 0a 20 20 28 72 65 71 75 69 72 65 20 27    70 63 61 73 65 29 0a 20 20 28 72 65 71 75 69 72 | ile...(require.'pcase)...(requir | 
| 1a880 | 65 20 27 73 75 62 72 2d 78 29 0a 20 20 28 72 65    71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 29 0a | e.'subr-x)...(require.'cl-lib)). | 
| 1a8a0 | 0a 28 64 65 66 6d 61 63 72 6f 20 74 73 63 2d 2d    77 69 74 68 6f 75 74 2d 72 65 73 74 72 69 63 74 | .(defmacro.tsc--without-restrict | 
| 1a8c0 | 69 6f 6e 20 28 26 72 65 73 74 20 62 6f 64 79 29    0a 20 20 22 45 78 65 63 75 74 65 20 42 4f 44 59 | ion.(&rest.body)..."Execute.BODY | 
| 1a8e0 | 20 77 69 74 68 20 6e 61 72 72 6f 77 69 6e 67 20    64 69 73 61 62 6c 65 64 2e 22 0a 20 20 28 64 65 | .with.narrowing.disabled."...(de | 
| 1a900 | 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 30 29    29 0a 20 20 60 28 73 61 76 65 2d 72 65 73 74 72 | clare.(indent.0))...`(save-restr | 
| 1a920 | 69 63 74 69 6f 6e 0a 20 20 20 20 20 28 77 69 64    65 6e 29 0a 20 20 20 20 20 2c 40 62 6f 64 79 29 | iction......(widen)......,@body) | 
| 1a940 | 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 74 73 63    2d 2d 73 61 76 65 2d 63 6f 6e 74 65 78 74 20 28 | )..(defmacro.tsc--save-context.( | 
| 1a960 | 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 45    78 65 63 75 74 65 20 42 4f 44 59 20 77 72 61 70 | &rest.body)..."Execute.BODY.wrap | 
| 1a980 | 70 65 64 20 69 6e 20 61 20 60 73 61 76 65 2d 65    78 63 75 72 73 69 6f 6e 27 2c 20 77 69 74 68 20 | ped.in.a.`save-excursion',.with. | 
| 1a9a0 | 6e 61 72 72 6f 77 69 6e 67 20 64 69 73 61 62 6c    65 64 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 | narrowing.disabled."...(declare. | 
| 1a9c0 | 28 69 6e 64 65 6e 74 20 30 29 29 0a 20 20 60 28    73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 | (indent.0))...`(save-excursion.. | 
| 1a9e0 | 20 20 20 20 28 74 73 63 2d 2d 77 69 74 68 6f 75    74 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 | ....(tsc--without-restriction... | 
| 1aa00 | 20 20 20 20 20 2c 40 62 6f 64 79 29 29 29 0a 0a    0c 0a 3b 3b 3b 20 54 79 70 65 20 63 6f 6e 76 65 | .....,@body)))....;;;.Type.conve | 
| 1aa20 | 72 73 69 6f 6e 2e 0a 0a 28 64 65 66 75 6e 20 74    73 63 2d 70 6f 69 6e 74 2d 66 72 6f 6d 2d 70 6f | rsion...(defun.tsc-point-from-po | 
| 1aa40 | 73 69 74 69 6f 6e 20 28 70 6f 73 69 74 69 6f 6e    29 0a 20 20 22 43 6f 6e 76 65 72 74 20 50 4f 53 | sition.(position)..."Convert.POS | 
| 1aa60 | 49 54 49 4f 4e 20 74 6f 20 61 20 76 61 6c 69 64    20 74 72 65 65 2d 73 69 74 74 65 72 20 70 6f 69 | ITION.to.a.valid.tree-sitter.poi | 
| 1aa80 | 6e 74 2e 0a 0a 41 20 5c 22 70 6f 69 6e 74 5c 22    20 69 6e 20 74 68 69 73 20 63 6f 6e 74 65 78 74 | nt...A.\"point\".in.this.context | 
| 1aaa0 | 20 69 73 20 61 20 28 4c 49 4e 45 2d 4e 55 4d 42    45 52 20 2e 20 42 59 54 45 2d 43 4f 4c 55 4d 4e | .is.a.(LINE-NUMBER...BYTE-COLUMN | 
| 1aac0 | 29 20 70 61 69 72 2e 20 53 65 65 0a 60 74 73 63    2d 70 61 72 73 65 2d 63 68 75 6e 6b 73 27 20 66 | ).pair..See.`tsc-parse-chunks'.f | 
| 1aae0 | 6f 72 20 61 20 6d 6f 72 65 20 64 65 74 61 69 6c    65 64 20 65 78 70 6c 61 6e 61 74 69 6f 6e 2e 22 | or.a.more.detailed.explanation." | 
| 1ab00 | 0a 20 20 28 74 73 63 2d 2d 73 61 76 65 2d 63 6f    6e 74 65 78 74 0a 20 20 20 20 28 74 73 63 2d 2d | ...(tsc--save-context.....(tsc-- | 
| 1ab20 | 70 6f 69 6e 74 2d 66 72 6f 6d 2d 70 6f 73 69 74    69 6f 6e 20 70 6f 73 69 74 69 6f 6e 29 29 29 0a | point-from-position.position))). | 
| 1ab40 | 0a 28 64 65 66 75 6e 20 74 73 63 2d 2d 70 6f 69    6e 74 2d 66 72 6f 6d 2d 70 6f 73 69 74 69 6f 6e | .(defun.tsc--point-from-position | 
| 1ab60 | 20 28 70 6f 73 69 74 69 6f 6e 29 0a 20 20 22 43    6f 6e 76 65 72 74 20 50 4f 53 49 54 49 4f 4e 20 | .(position)..."Convert.POSITION. | 
| 1ab80 | 74 6f 20 61 20 76 61 6c 69 64 20 74 72 65 65 2d    73 69 74 74 65 72 20 70 6f 69 6e 74 2e 0a 50 72 | to.a.valid.tree-sitter.point..Pr | 
| 1aba0 | 65 66 65 72 20 60 74 73 63 2d 70 6f 69 6e 74 2d    66 72 6f 6d 2d 70 6f 73 69 74 69 6f 6e 27 2c 20 | efer.`tsc-point-from-position',. | 
| 1abc0 | 75 6e 6c 65 73 73 20 74 68 65 72 65 27 73 20 61    20 72 65 61 6c 20 70 65 72 66 6f 72 6d 61 6e 63 | unless.there's.a.real.performanc | 
| 1abe0 | 65 20 62 6f 74 74 6c 65 6e 65 63 6b 2e 0a 0a 54    68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 | e.bottleneck...This.function.mus | 
| 1ac00 | 74 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68    69 6e 20 61 20 60 74 73 63 2d 2d 73 61 76 65 2d | t.be.called.within.a.`tsc--save- | 
| 1ac20 | 63 6f 6e 74 65 78 74 27 20 62 6c 6f 63 6b 2e 22    0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6f | context'.block."...(goto-char.po | 
| 1ac40 | 73 69 74 69 6f 6e 29 0a 20 20 28 6c 65 74 20 28    28 6c 69 6e 65 2d 6e 75 6d 62 65 72 20 28 6c 69 | sition)...(let.((line-number.(li | 
| 1ac60 | 6e 65 2d 6e 75 6d 62 65 72 2d 61 74 2d 70 6f 73    20 70 6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20 | ne-number-at-pos.position))..... | 
| 1ac80 | 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 41 64 64    20 74 65 73 74 73 20 74 68 61 74 20 66 61 69 6c | ....;;.TODO:.Add.tests.that.fail | 
| 1aca0 | 20 69 66 20 60 63 75 72 72 65 6e 74 2d 63 6f 6c    75 6d 6e 27 20 69 73 20 75 73 65 64 20 69 6e 73 | .if.`current-column'.is.used.ins | 
| 1acc0 | 74 65 61 64 2e 0a 20 20 20 20 20 20 20 20 28 62    79 74 65 2d 63 6f 6c 75 6d 6e 20 28 2d 20 28 70 | tead..........(byte-column.(-.(p | 
| 1ace0 | 6f 73 69 74 69 6f 6e 2d 62 79 74 65 73 20 70 6f    73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 | osition-bytes.position)......... | 
| 1ad00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 70 6f 73 69 74 69 6f 6e 2d 62 79 74 65 73 20 | ................(position-bytes. | 
| 1ad20 | 28 6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d    70 6f 73 69 74 69 6f 6e 29 29 29 29 29 0a 20 20 | (line-beginning-position)))))... | 
| 1ad40 | 20 20 28 63 6f 6e 73 20 6c 69 6e 65 2d 6e 75 6d    62 65 72 20 62 79 74 65 2d 63 6f 6c 75 6d 6e 29 | ..(cons.line-number.byte-column) | 
| 1ad60 | 29 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 70    6f 69 6e 74 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e | ))..(defun.tsc-point-to-position | 
| 1ad80 | 20 28 70 6f 69 6e 74 29 0a 20 20 22 43 6f 6e 76    65 72 74 20 74 72 65 65 2d 73 69 74 74 65 72 20 | .(point)..."Convert.tree-sitter. | 
| 1ada0 | 50 4f 49 4e 54 20 74 6f 20 62 75 66 66 65 72 20    70 6f 73 69 74 69 6f 6e 2e 0a 0a 41 20 5c 22 70 | POINT.to.buffer.position...A.\"p | 
| 1adc0 | 6f 69 6e 74 5c 22 20 69 6e 20 74 68 69 73 20 63    6f 6e 74 65 78 74 20 69 73 20 61 20 28 4c 49 4e | oint\".in.this.context.is.a.(LIN | 
| 1ade0 | 45 2d 4e 55 4d 42 45 52 20 2e 20 42 59 54 45 2d    43 4f 4c 55 4d 4e 29 20 70 61 69 72 2e 20 53 65 | E-NUMBER...BYTE-COLUMN).pair..Se | 
| 1ae00 | 65 0a 60 74 73 63 2d 70 61 72 73 65 2d 63 68 75    6e 6b 73 27 20 66 6f 72 20 61 20 6d 6f 72 65 20 | e.`tsc-parse-chunks'.for.a.more. | 
| 1ae20 | 64 65 74 61 69 6c 65 64 20 65 78 70 6c 61 6e 61    74 69 6f 6e 2e 22 0a 20 20 28 74 73 63 2d 2d 73 | detailed.explanation."...(tsc--s | 
| 1ae40 | 61 76 65 2d 63 6f 6e 74 65 78 74 0a 20 20 20 20    28 6c 65 74 20 28 28 6c 69 6e 65 2d 6e 75 6d 62 | ave-context.....(let.((line-numb | 
| 1ae60 | 65 72 20 28 63 61 72 20 70 6f 69 6e 74 29 29 0a    20 20 20 20 20 20 20 20 20 20 28 62 79 74 65 2d | er.(car.point))...........(byte- | 
| 1ae80 | 63 6f 6c 75 6d 6e 20 28 63 64 72 20 70 6f 69 6e    74 29 29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f | column.(cdr.point))).......(goto | 
| 1aea0 | 2d 63 68 61 72 20 31 29 0a 20 20 20 20 20 20 28    66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 28 2d 20 | -char.1).......(forward-line.(-. | 
| 1aec0 | 6c 69 6e 65 2d 6e 75 6d 62 65 72 20 31 29 29 0a    20 20 20 20 20 20 28 62 79 74 65 2d 74 6f 2d 70 | line-number.1)).......(byte-to-p | 
| 1aee0 | 6f 73 69 74 69 6f 6e 20 28 2b 20 62 79 74 65 2d    63 6f 6c 75 6d 6e 20 28 70 6f 73 69 74 69 6f 6e | osition.(+.byte-column.(position | 
| 1af00 | 2d 62 79 74 65 73 20 28 6c 69 6e 65 2d 62 65 67    69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 | -bytes.(line-beginning-position) | 
| 1af20 | 29 29 29 29 29 29 0a 0a 0c 0a 3b 3b 3b 20 45 78    74 72 61 63 74 69 6e 67 20 62 75 66 66 65 72 27 | ))))))....;;;.Extracting.buffer' | 
| 1af40 | 73 20 74 65 78 74 2e 0a 0a 28 64 65 66 76 61 72    20 74 73 63 2d 2d 62 75 66 66 65 72 2d 69 6e 70 | s.text...(defvar.tsc--buffer-inp | 
| 1af60 | 75 74 2d 63 68 75 6e 6b 2d 73 69 7a 65 20 34 30    39 36 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d | ut-chunk-size.4096)..(defun.tsc- | 
| 1af80 | 2d 62 75 66 66 65 72 2d 69 6e 70 75 74 20 28 62    79 74 65 70 6f 73 20 5f 6c 69 6e 65 2d 6e 75 6d | -buffer-input.(bytepos._line-num | 
| 1afa0 | 62 65 72 20 5f 62 79 74 65 2d 63 6f 6c 75 6d 6e    29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 70 6f | ber._byte-column)..."Return.a.po | 
| 1afc0 | 72 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 75 72    72 65 6e 74 20 62 75 66 66 65 72 27 73 20 74 65 | rtion.of.the.current.buffer's.te | 
| 1afe0 | 78 74 2c 20 73 74 61 72 74 69 6e 67 20 66 72 6f    6d 20 42 59 54 45 50 4f 53 2e 0a 42 59 54 45 50 | xt,.starting.from.BYTEPOS..BYTEP | 
| 1b000 | 4f 53 20 69 73 20 61 75 74 6f 6d 61 74 69 63 61    6c 6c 79 20 63 6c 61 6d 70 65 64 20 74 6f 20 74 | OS.is.automatically.clamped.to.t | 
| 1b020 | 68 65 20 72 61 6e 67 65 20 76 61 6c 69 64 20 66    6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 | he.range.valid.for.the.current.b | 
| 1b040 | 75 66 66 65 72 2e 0a 0a 54 68 69 73 20 66 75 6e    63 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 63 61 | uffer...This.function.must.be.ca | 
| 1b060 | 6c 6c 65 64 20 77 69 74 68 20 6e 61 72 72 6f 77    69 6e 67 20 64 69 73 61 62 6c 65 64 2c 20 65 2e | lled.with.narrowing.disabled,.e. | 
| 1b080 | 67 2e 20 77 69 74 68 69 6e 20 61 0a 60 74 73 63    2d 2d 77 69 74 68 6f 75 74 2d 72 65 73 74 72 69 | g..within.a.`tsc--without-restri | 
| 1b0a0 | 63 74 69 6f 6e 27 20 62 6c 6f 63 6b 2e 22 0a 20    20 28 6c 65 74 2a 20 28 28 6d 61 78 2d 70 6f 73 | ction'.block."...(let*.((max-pos | 
| 1b0c0 | 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20    20 20 20 20 20 20 20 28 62 65 67 2d 62 79 74 65 | .(point-max))..........(beg-byte | 
| 1b0e0 | 20 28 6d 61 78 20 31 20 62 79 74 65 70 6f 73 29    29 0a 20 20 20 20 20 20 20 20 20 28 65 6e 64 2d | .(max.1.bytepos))..........(end- | 
| 1b100 | 62 79 74 65 20 28 2b 20 74 73 63 2d 2d 62 75 66    66 65 72 2d 69 6e 70 75 74 2d 63 68 75 6e 6b 2d | byte.(+.tsc--buffer-input-chunk- | 
| 1b120 | 73 69 7a 65 20 62 65 67 2d 62 79 74 65 29 29 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 6e 69 6c 20 | size.beg-byte))..........;;.nil. | 
| 1b140 | 6d 65 61 6e 73 20 3e 20 6d 61 78 2d 70 6f 73 2c    20 73 69 6e 63 65 20 77 65 20 61 6c 72 65 61 64 | means.>.max-pos,.since.we.alread | 
| 1b160 | 79 20 6d 61 64 65 20 73 75 72 65 20 74 68 65 79    20 61 72 65 20 6e 6f 6e 2d 6e 65 67 61 74 69 76 | y.made.sure.they.are.non-negativ | 
| 1b180 | 65 2e 0a 20 20 20 20 20 20 20 20 20 28 62 65 67    2d 70 6f 73 20 28 6f 72 20 28 62 79 74 65 2d 74 | e...........(beg-pos.(or.(byte-t | 
| 1b1a0 | 6f 2d 70 6f 73 69 74 69 6f 6e 20 62 65 67 2d 62    79 74 65 29 20 6d 61 78 2d 70 6f 73 29 29 0a 20 | o-position.beg-byte).max-pos)).. | 
| 1b1c0 | 20 20 20 20 20 20 20 20 28 65 6e 64 2d 70 6f 73    20 28 6f 72 20 28 62 79 74 65 2d 74 6f 2d 70 6f | ........(end-pos.(or.(byte-to-po | 
| 1b1e0 | 73 69 74 69 6f 6e 20 65 6e 64 2d 62 79 74 65 29    20 6d 61 78 2d 70 6f 73 29 29 29 0a 20 20 20 20 | sition.end-byte).max-pos)))..... | 
| 1b200 | 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e    67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 | (buffer-substring-no-properties. | 
| 1b220 | 62 65 67 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29    29 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 2d | beg-pos.end-pos)))..(defun.tsc-- | 
| 1b240 | 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67    2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 28 | buffer-substring-no-properties.( | 
| 1b260 | 62 65 67 2d 62 79 74 65 20 65 6e 64 2d 62 79 74    65 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 | beg-byte.end-byte)..."Return.the | 
| 1b280 | 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 27    73 20 74 65 78 74 20 66 72 6f 6d 20 42 45 47 2d | .current.buffer's.text.from.BEG- | 
| 1b2a0 | 42 59 54 45 20 74 6f 20 45 4e 44 2d 42 59 54 45    2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 | BYTE.to.END-BYTE..This.function. | 
| 1b2c0 | 6d 75 73 74 20 62 65 20 63 61 6c 6c 65 64 20 77    69 74 68 20 6e 61 72 72 6f 77 69 6e 67 20 64 69 | must.be.called.with.narrowing.di | 
| 1b2e0 | 73 61 62 6c 65 64 2c 20 65 2e 67 2e 20 77 69 74    68 69 6e 20 61 0a 60 74 73 63 2d 2d 77 69 74 68 | sabled,.e.g..within.a.`tsc--with | 
| 1b300 | 6f 75 74 2d 72 65 73 74 72 69 63 74 69 6f 6e 27    20 62 6c 6f 63 6b 2e 22 0a 20 20 28 62 75 66 66 | out-restriction'.block."...(buff | 
| 1b320 | 65 72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d    70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 28 62 | er-substring-no-properties....(b | 
| 1b340 | 79 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20    62 65 67 2d 62 79 74 65 29 0a 20 20 20 28 62 79 | yte-to-position.beg-byte)....(by | 
| 1b360 | 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20 65    6e 64 2d 62 79 74 65 29 29 29 0a 0a 28 64 65 66 | te-to-position.end-byte)))..(def | 
| 1b380 | 75 6e 20 74 73 63 2d 2d 6e 6f 64 65 2d 74 65 78    74 20 28 6e 6f 64 65 29 0a 20 20 22 52 65 74 75 | un.tsc--node-text.(node)..."Retu | 
| 1b3a0 | 72 6e 20 4e 4f 44 45 27 73 20 74 65 78 74 2c 20    61 73 73 75 6d 69 6e 67 20 69 74 27 73 20 66 72 | rn.NODE's.text,.assuming.it's.fr | 
| 1b3c0 | 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 62    75 66 66 65 72 27 73 20 73 79 6e 74 61 78 20 74 | om.the.current.buffer's.syntax.t | 
| 1b3e0 | 72 65 65 2e 0a 50 72 65 66 65 72 20 60 74 73 63    2d 6e 6f 64 65 2d 74 65 78 74 27 2c 20 75 6e 6c | ree..Prefer.`tsc-node-text',.unl | 
| 1b400 | 65 73 73 20 74 68 65 72 65 27 73 20 61 20 72 65    61 6c 20 62 6f 74 74 6c 65 6e 65 63 6b 2e 0a 0a | ess.there's.a.real.bottleneck... | 
| 1b420 | 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 75    73 74 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 | This.function.must.be.called.wit | 
| 1b440 | 68 20 6e 61 72 72 6f 77 69 6e 67 20 64 69 73 61    62 6c 65 64 2c 20 65 2e 67 2e 20 77 69 74 68 69 | h.narrowing.disabled,.e.g..withi | 
| 1b460 | 6e 20 61 0a 60 74 73 63 2d 2d 77 69 74 68 6f 75    74 2d 72 65 73 74 72 69 63 74 69 6f 6e 27 20 62 | n.a.`tsc--without-restriction'.b | 
| 1b480 | 6c 6f 63 6b 2e 22 0a 20 20 28 70 63 61 73 65 2d    6c 65 74 20 28 28 60 28 2c 62 65 67 20 2e 20 2c | lock."...(pcase-let.((`(,beg..., | 
| 1b4a0 | 65 6e 64 29 20 28 74 73 63 2d 6e 6f 64 65 2d 70    6f 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 6e 6f | end).(tsc-node-position-range.no | 
| 1b4c0 | 64 65 29 29 29 0a 20 20 20 20 28 62 75 66 66 65    72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 | de))).....(buffer-substring-no-p | 
| 1b4e0 | 72 6f 70 65 72 74 69 65 73 20 62 65 67 20 65 6e    64 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 | roperties.beg.end)))..(defun.tsc | 
| 1b500 | 2d 6e 6f 64 65 2d 74 65 78 74 20 28 6e 6f 64 65    29 0a 20 20 22 52 65 74 75 72 6e 20 4e 4f 44 45 | -node-text.(node)..."Return.NODE | 
| 1b520 | 27 73 20 74 65 78 74 2c 20 61 73 73 75 6d 69 6e    67 20 69 74 27 73 20 66 72 6f 6d 20 74 68 65 20 | 's.text,.assuming.it's.from.the. | 
| 1b540 | 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 27 73    20 73 79 6e 74 61 78 20 74 72 65 65 2e 22 0a 20 | current.buffer's.syntax.tree.".. | 
| 1b560 | 20 28 74 73 63 2d 2d 77 69 74 68 6f 75 74 2d 72    65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 28 | .(tsc--without-restriction.....( | 
| 1b580 | 74 73 63 2d 2d 6e 6f 64 65 2d 74 65 78 74 20 6e    6f 64 65 29 29 29 0a 0a 0c 0a 3b 3b 3b 20 43 6f | tsc--node-text.node)))....;;;.Co | 
| 1b5a0 | 6e 76 65 6e 69 65 6e 74 20 76 65 72 73 69 6f 6e    73 20 6f 66 20 73 6f 6d 65 20 66 75 6e 63 74 69 | nvenient.versions.of.some.functi | 
| 1b5c0 | 6f 6e 73 2e 0a 0a 28 64 65 66 75 6e 20 74 73 63    2d 67 65 74 2d 64 65 73 63 65 6e 64 61 6e 74 2d | ons...(defun.tsc-get-descendant- | 
| 1b5e0 | 66 6f 72 2d 70 6f 73 69 74 69 6f 6e 2d 72 61 6e    67 65 20 28 6e 6f 64 65 20 62 65 67 20 65 6e 64 | for-position-range.(node.beg.end | 
| 1b600 | 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20    73 6d 61 6c 6c 65 73 74 20 6e 6f 64 65 20 77 69 | )..."Return.the.smallest.node.wi | 
| 1b620 | 74 68 69 6e 20 4e 4f 44 45 20 74 68 61 74 20 73    70 61 6e 73 20 74 68 65 20 72 61 6e 67 65 20 28 | thin.NODE.that.spans.the.range.( | 
| 1b640 | 42 45 47 20 2e 20 45 4e 44 29 2e 0a 54 68 69 73    20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 20 62 | BEG...END)..This.function.must.b | 
| 1b660 | 65 20 63 61 6c 6c 65 64 20 69 6e 20 4e 4f 44 45    27 73 20 73 6f 75 72 63 65 20 62 75 66 66 65 72 | e.called.in.NODE's.source.buffer | 
| 1b680 | 2e 22 0a 20 20 28 74 73 63 2d 67 65 74 2d 64 65    73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d 62 79 74 | ."...(tsc-get-descendant-for-byt | 
| 1b6a0 | 65 2d 72 61 6e 67 65 0a 20 20 20 6e 6f 64 65 0a    20 20 20 28 70 6f 73 69 74 69 6f 6e 2d 62 79 74 | e-range....node....(position-byt | 
| 1b6c0 | 65 73 20 62 65 67 29 0a 20 20 20 28 70 6f 73 69    74 69 6f 6e 2d 62 79 74 65 73 20 65 6e 64 29 29 | es.beg)....(position-bytes.end)) | 
| 1b6e0 | 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 67 65    74 2d 6e 61 6d 65 64 2d 64 65 73 63 65 6e 64 61 | )..(defun.tsc-get-named-descenda | 
| 1b700 | 6e 74 2d 66 6f 72 2d 70 6f 73 69 74 69 6f 6e 2d    72 61 6e 67 65 20 28 6e 6f 64 65 20 62 65 67 20 | nt-for-position-range.(node.beg. | 
| 1b720 | 65 6e 64 29 0a 20 20 22 52 65 74 75 72 6e 20 74    68 65 20 73 6d 61 6c 6c 65 73 74 20 6e 61 6d 65 | end)..."Return.the.smallest.name | 
| 1b740 | 64 20 6e 6f 64 65 20 77 69 74 68 69 6e 20 4e 4f    44 45 20 74 68 61 74 20 73 70 61 6e 73 20 74 68 | d.node.within.NODE.that.spans.th | 
| 1b760 | 65 20 72 61 6e 67 65 20 28 42 45 47 20 2e 20 45    4e 44 29 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 | e.range.(BEG...END)..This.functi | 
| 1b780 | 6f 6e 20 6d 75 73 74 20 62 65 20 63 61 6c 6c 65    64 20 69 6e 20 4e 4f 44 45 27 73 20 73 6f 75 72 | on.must.be.called.in.NODE's.sour | 
| 1b7a0 | 63 65 20 62 75 66 66 65 72 2e 22 0a 20 20 28 74    73 63 2d 67 65 74 2d 6e 61 6d 65 64 2d 64 65 73 | ce.buffer."...(tsc-get-named-des | 
| 1b7c0 | 63 65 6e 64 61 6e 74 2d 66 6f 72 2d 62 79 74 65    2d 72 61 6e 67 65 0a 20 20 20 6e 6f 64 65 0a 20 | cendant-for-byte-range....node.. | 
| 1b7e0 | 20 20 28 70 6f 73 69 74 69 6f 6e 2d 62 79 74 65    73 20 62 65 67 29 0a 20 20 20 28 70 6f 73 69 74 | ..(position-bytes.beg)....(posit | 
| 1b800 | 69 6f 6e 2d 62 79 74 65 73 20 65 6e 64 29 29 29    0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 67 65 74 | ion-bytes.end)))..(defun.tsc-get | 
| 1b820 | 2d 63 68 69 6c 64 2d 62 79 2d 66 69 65 6c 64 20    28 6e 6f 64 65 20 66 69 65 6c 64 29 0a 20 20 22 | -child-by-field.(node.field)..." | 
| 1b840 | 52 65 74 75 72 6e 20 4e 4f 44 45 27 73 20 63 68    69 6c 64 20 61 73 73 6f 63 69 61 74 65 64 20 77 | Return.NODE's.child.associated.w | 
| 1b860 | 69 74 68 20 46 49 45 4c 44 2c 20 77 68 69 63 68    20 73 68 6f 75 6c 64 20 62 65 20 61 20 6b 65 79 | ith.FIELD,.which.should.be.a.key | 
| 1b880 | 77 6f 72 64 2e 22 0a 20 20 28 75 6e 6c 65 73 73    20 28 6b 65 79 77 6f 72 64 70 20 66 69 65 6c 64 | word."...(unless.(keywordp.field | 
| 1b8a0 | 29 0a 20 20 20 20 28 73 69 67 6e 61 6c 20 27 77    72 6f 6e 67 2d 74 79 70 65 2d 61 72 67 75 6d 65 | ).....(signal.'wrong-type-argume | 
| 1b8c0 | 6e 74 20 28 6c 69 73 74 20 27 6b 65 79 77 6f 72    64 70 20 66 69 65 6c 64 29 29 29 0a 20 20 28 74 | nt.(list.'keywordp.field)))...(t | 
| 1b8e0 | 73 63 2d 2d 67 65 74 2d 63 68 69 6c 64 2d 62 79    2d 66 69 65 6c 64 2d 6e 61 6d 65 20 6e 6f 64 65 | sc--get-child-by-field-name.node | 
| 1b900 | 20 28 73 75 62 73 74 72 69 6e 67 20 28 73 79 6d    62 6f 6c 2d 6e 61 6d 65 20 66 69 65 6c 64 29 20 | .(substring.(symbol-name.field). | 
| 1b920 | 31 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 73 63    2d 6e 6f 64 65 2d 73 74 61 72 74 2d 70 6f 73 69 | 1)))..(defun.tsc-node-start-posi | 
| 1b940 | 74 69 6f 6e 20 28 6e 6f 64 65 29 0a 20 20 22 52    65 74 75 72 6e 20 4e 4f 44 45 27 73 20 73 74 61 | tion.(node)..."Return.NODE's.sta | 
| 1b960 | 72 74 20 70 6f 73 69 74 69 6f 6e 2e 0a 54 68 69    73 20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 20 | rt.position..This.function.must. | 
| 1b980 | 62 65 20 63 61 6c 6c 65 64 20 69 6e 20 4e 4f 44    45 27 73 20 73 6f 75 72 63 65 20 62 75 66 66 65 | be.called.in.NODE's.source.buffe | 
| 1b9a0 | 72 2e 22 0a 20 20 28 62 79 74 65 2d 74 6f 2d 70    6f 73 69 74 69 6f 6e 20 28 74 73 63 2d 6e 6f 64 | r."...(byte-to-position.(tsc-nod | 
| 1b9c0 | 65 2d 73 74 61 72 74 2d 62 79 74 65 20 6e 6f 64    65 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 | e-start-byte.node)))..(defun.tsc | 
| 1b9e0 | 2d 6e 6f 64 65 2d 65 6e 64 2d 70 6f 73 69 74 69    6f 6e 20 28 6e 6f 64 65 29 0a 20 20 22 52 65 74 | -node-end-position.(node)..."Ret | 
| 1ba00 | 75 72 6e 20 4e 4f 44 45 27 73 20 65 6e 64 20 70    6f 73 69 74 69 6f 6e 2e 0a 54 68 69 73 20 66 75 | urn.NODE's.end.position..This.fu | 
| 1ba20 | 6e 63 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 63    61 6c 6c 65 64 20 69 6e 20 4e 4f 44 45 27 73 20 | nction.must.be.called.in.NODE's. | 
| 1ba40 | 73 6f 75 72 63 65 20 62 75 66 66 65 72 2e 22 0a    20 20 28 62 79 74 65 2d 74 6f 2d 70 6f 73 69 74 | source.buffer."...(byte-to-posit | 
| 1ba60 | 69 6f 6e 20 28 74 73 63 2d 6e 6f 64 65 2d 65 6e    64 2d 62 79 74 65 20 6e 6f 64 65 29 29 29 0a 0a | ion.(tsc-node-end-byte.node))).. | 
| 1ba80 | 28 64 65 66 75 6e 20 74 73 63 2d 6e 6f 64 65 2d    70 6f 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 28 | (defun.tsc-node-position-range.( | 
| 1baa0 | 6e 6f 64 65 29 0a 20 20 22 52 65 74 75 72 6e 20    4e 4f 44 45 27 73 20 28 53 54 41 52 54 2d 50 4f | node)..."Return.NODE's.(START-PO | 
| 1bac0 | 53 49 54 49 4f 4e 20 2e 20 45 4e 44 2d 50 4f 53    49 54 49 4f 4e 29 2e 0a 54 68 69 73 20 66 75 6e | SITION...END-POSITION)..This.fun | 
| 1bae0 | 63 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 63 61    6c 6c 65 64 20 69 6e 20 4e 4f 44 45 27 73 20 73 | ction.must.be.called.in.NODE's.s | 
| 1bb00 | 6f 75 72 63 65 20 62 75 66 66 65 72 2e 22 0a 20    20 28 6c 65 74 20 28 28 72 61 6e 67 65 20 28 74 | ource.buffer."...(let.((range.(t | 
| 1bb20 | 73 63 2d 6e 6f 64 65 2d 62 79 74 65 2d 72 61 6e    67 65 20 6e 6f 64 65 29 29 29 0a 20 20 20 20 28 | sc-node-byte-range.node))).....( | 
| 1bb40 | 63 6c 2d 63 61 6c 6c 66 20 62 79 74 65 2d 74 6f    2d 70 6f 73 69 74 69 6f 6e 20 28 63 61 72 20 72 | cl-callf.byte-to-position.(car.r | 
| 1bb60 | 61 6e 67 65 29 29 0a 20 20 20 20 28 63 6c 2d 63    61 6c 6c 66 20 62 79 74 65 2d 74 6f 2d 70 6f 73 | ange)).....(cl-callf.byte-to-pos | 
| 1bb80 | 69 74 69 6f 6e 20 28 63 64 72 20 72 61 6e 67 65    29 29 0a 20 20 20 20 72 61 6e 67 65 29 29 0a 0a | ition.(cdr.range)).....range)).. | 
| 1bba0 | 28 64 65 66 75 6e 20 74 73 63 2d 67 6f 74 6f 2d    66 69 72 73 74 2d 63 68 69 6c 64 2d 66 6f 72 2d | (defun.tsc-goto-first-child-for- | 
| 1bbc0 | 70 6f 73 69 74 69 6f 6e 20 28 63 75 72 73 6f 72    20 70 6f 73 69 74 69 6f 6e 29 0a 20 20 22 4d 6f | position.(cursor.position)..."Mo | 
| 1bbe0 | 76 65 20 43 55 52 53 4f 52 20 74 6f 20 74 68 65    20 66 69 72 73 74 20 63 68 69 6c 64 20 74 68 61 | ve.CURSOR.to.the.first.child.tha | 
| 1bc00 | 74 20 65 78 74 65 6e 64 73 20 62 65 79 6f 6e 64    20 74 68 65 20 67 69 76 65 6e 20 50 4f 53 49 54 | t.extends.beyond.the.given.POSIT | 
| 1bc20 | 49 4f 4e 2e 0a 52 65 74 75 72 6e 20 74 68 65 20    69 6e 64 65 78 20 6f 66 20 74 68 65 20 63 68 69 | ION..Return.the.index.of.the.chi | 
| 1bc40 | 6c 64 20 6e 6f 64 65 20 69 66 20 6f 6e 65 20 77    61 73 20 66 6f 75 6e 64 2c 20 6e 69 6c 20 6f 74 | ld.node.if.one.was.found,.nil.ot | 
| 1bc60 | 68 65 72 77 69 73 65 2e 22 0a 20 20 28 74 73 63    2d 67 6f 74 6f 2d 66 69 72 73 74 2d 63 68 69 6c | herwise."...(tsc-goto-first-chil | 
| 1bc80 | 64 2d 66 6f 72 2d 62 79 74 65 20 63 75 72 73 6f    72 20 28 70 6f 73 69 74 69 6f 6e 2d 62 79 74 65 | d-for-byte.cursor.(position-byte | 
| 1bca0 | 73 20 70 6f 73 69 74 69 6f 6e 29 29 29 0a 0a 28    64 65 66 75 6e 20 74 73 63 2d 63 75 72 72 65 6e | s.position)))..(defun.tsc-curren | 
| 1bcc0 | 74 2d 6e 6f 64 65 20 28 63 75 72 73 6f 72 20 26    6f 70 74 69 6f 6e 61 6c 20 70 72 6f 70 73 20 6f | t-node.(cursor.&optional.props.o | 
| 1bce0 | 75 74 70 75 74 29 0a 20 20 22 52 65 74 75 72 6e    20 43 55 52 53 4f 52 27 73 20 63 75 72 72 65 6e | utput)..."Return.CURSOR's.curren | 
| 1bd00 | 74 20 6e 6f 64 65 2e 0a 0a 49 66 20 74 68 65 20    6f 70 74 69 6f 6e 61 6c 20 61 72 67 20 50 52 4f | t.node...If.the.optional.arg.PRO | 
| 1bd20 | 50 53 20 69 73 20 61 20 76 65 63 74 6f 72 20 6f    66 20 70 72 6f 70 65 72 74 79 20 6e 61 6d 65 73 | PS.is.a.vector.of.property.names | 
| 1bd40 | 2c 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20    72 65 74 75 72 6e 73 20 61 0a 76 65 63 74 6f 72 | ,.this.function.returns.a.vector | 
| 1bd60 | 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20    6e 6f 64 65 27 73 20 63 6f 72 72 65 73 70 6f 6e | .containing.the.node's.correspon | 
| 1bd80 | 64 69 6e 67 20 70 72 6f 70 65 72 74 69 65 73 2e    20 49 66 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c | ding.properties..If.the.optional | 
| 1bda0 | 20 61 72 67 0a 4f 55 54 50 55 54 20 69 73 20 61    6c 73 6f 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 | .arg.OUTPUT.is.also.non-nil,.it. | 
| 1bdc0 | 6d 75 73 74 20 62 65 20 61 20 76 65 63 74 6f 72    20 6f 66 20 74 68 65 20 73 61 6d 65 20 6c 65 6e | must.be.a.vector.of.the.same.len | 
| 1bde0 | 67 74 68 2c 20 77 68 65 72 65 20 74 68 65 0a 70    72 6f 70 65 72 74 69 65 73 20 77 69 6c 6c 20 62 | gth,.where.the.properties.will.b | 
| 1be00 | 65 20 77 72 69 74 74 65 6e 20 69 6e 74 6f 2e 0a    0a 50 52 4f 50 53 20 63 61 6e 20 61 6c 73 6f 20 | e.written.into...PROPS.can.also. | 
| 1be20 | 62 65 20 61 20 73 69 6e 67 6c 65 20 70 72 6f 70    65 72 74 79 20 6e 61 6d 65 2c 20 69 6e 20 77 68 | be.a.single.property.name,.in.wh | 
| 1be40 | 69 63 68 20 63 61 73 65 20 74 68 69 73 20 66 75    6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 0a 6f | ich.case.this.function.returns.o | 
| 1be60 | 6e 6c 79 20 74 68 61 74 20 70 72 6f 70 65 72 74    79 2c 20 61 6e 64 20 4f 55 54 50 55 54 20 69 73 | nly.that.property,.and.OUTPUT.is | 
| 1be80 | 20 69 67 6e 6f 72 65 64 2e 0a 0a 53 65 65 20 60    74 73 63 2d 76 61 6c 69 64 2d 6e 6f 64 65 2d 70 | .ignored...See.`tsc-valid-node-p | 
| 1bea0 | 72 6f 70 73 27 20 66 6f 72 20 74 68 65 20 6c 69    73 74 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 | rops'.for.the.list.of.available. | 
| 1bec0 | 70 72 6f 70 65 72 74 69 65 73 2e 22 0a 20 20 28    74 73 63 2d 2d 63 68 65 63 6b 2d 6e 6f 64 65 2d | properties."...(tsc--check-node- | 
| 1bee0 | 70 72 6f 70 73 20 70 72 6f 70 73 29 0a 20 20 3b    3b 20 54 4f 44 4f 3a 20 46 69 78 20 74 68 69 73 | props.props)...;;.TODO:.Fix.this | 
| 1bf00 | 2e 0a 20 20 28 77 68 65 6e 20 28 6f 72 20 28 65    71 20 70 72 6f 70 73 20 3a 64 65 70 74 68 29 0a | ....(when.(or.(eq.props.:depth). | 
| 1bf20 | 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64    20 28 73 65 71 70 20 70 72 6f 70 73 29 20 28 63 | ............(and.(seqp.props).(c | 
| 1bf40 | 6c 2d 66 69 6e 64 20 3a 64 65 70 74 68 20 70 72    6f 70 73 29 29 29 0a 20 20 20 20 28 65 72 72 6f | l-find.:depth.props))).....(erro | 
| 1bf60 | 72 20 22 43 75 72 73 6f 72 20 64 6f 65 73 6e 27    74 20 63 75 72 72 65 6e 74 6c 79 20 73 75 70 70 | r."Cursor.doesn't.currently.supp | 
| 1bf80 | 6f 72 74 20 3a 64 65 70 74 68 20 70 72 6f 70 65    72 74 79 22 29 29 0a 20 20 28 74 73 63 2d 2d 63 | ort.:depth.property"))...(tsc--c | 
| 1bfa0 | 75 72 72 65 6e 74 2d 6e 6f 64 65 20 63 75 72 73    6f 72 20 70 72 6f 70 73 20 6f 75 74 70 75 74 29 | urrent-node.cursor.props.output) | 
| 1bfc0 | 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 6c 61    6e 67 2d 66 69 65 6c 64 2d 69 64 20 28 6c 61 6e | )..(defun.tsc-lang-field-id.(lan | 
| 1bfe0 | 67 75 61 67 65 20 66 69 65 6c 64 29 0a 20 20 22    52 65 74 75 72 6e 20 74 68 65 20 6e 75 6d 65 72 | guage.field)..."Return.the.numer | 
| 1c000 | 69 63 20 69 64 20 6f 66 20 46 49 45 4c 44 20 69    6e 20 4c 41 4e 47 55 41 47 45 2e 20 46 49 45 4c | ic.id.of.FIELD.in.LANGUAGE..FIEL | 
| 1c020 | 44 20 73 68 6f 75 6c 64 20 62 65 20 61 20 6b 65    79 77 6f 72 64 2e 22 0a 20 20 28 75 6e 6c 65 73 | D.should.be.a.keyword."...(unles | 
| 1c040 | 73 20 28 6b 65 79 77 6f 72 64 70 20 66 69 65 6c    64 29 0a 20 20 20 20 28 73 69 67 6e 61 6c 20 27 | s.(keywordp.field).....(signal.' | 
| 1c060 | 77 72 6f 6e 67 2d 74 79 70 65 2d 61 72 67 75 6d    65 6e 74 20 28 6c 69 73 74 20 27 6b 65 79 77 6f | wrong-type-argument.(list.'keywo | 
| 1c080 | 72 64 70 20 66 69 65 6c 64 29 29 29 0a 20 20 28    74 73 63 2d 2d 6c 61 6e 67 2d 66 69 65 6c 64 2d | rdp.field)))...(tsc--lang-field- | 
| 1c0a0 | 69 64 2d 66 6f 72 2d 6e 61 6d 65 20 6c 61 6e 67    75 61 67 65 20 28 73 75 62 73 74 72 69 6e 67 20 | id-for-name.language.(substring. | 
| 1c0c0 | 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 66 69 65    6c 64 29 20 31 29 29 29 0a 0a 28 64 65 66 75 6e | (symbol-name.field).1)))..(defun | 
| 1c0e0 | 20 74 73 63 2d 6c 61 6e 67 2d 6e 6f 64 65 2d 74    79 70 65 2d 69 64 20 28 6c 61 6e 67 75 61 67 65 | .tsc-lang-node-type-id.(language | 
| 1c100 | 20 6e 6f 64 65 2d 74 79 70 65 29 0a 20 20 22 52    65 74 75 72 6e 20 74 68 65 20 6e 75 6d 65 72 69 | .node-type)..."Return.the.numeri | 
| 1c120 | 63 20 69 64 20 6f 66 20 4e 4f 44 45 2d 54 59 50    45 20 69 6e 20 4c 41 4e 47 55 41 47 45 2e 0a 4e | c.id.of.NODE-TYPE.in.LANGUAGE..N | 
| 1c140 | 4f 44 45 2d 54 59 50 45 20 73 68 6f 75 6c 64 20    62 65 20 61 20 73 79 6d 62 6f 6c 20 28 6e 61 6d | ODE-TYPE.should.be.a.symbol.(nam | 
| 1c160 | 65 64 20 6e 6f 64 65 73 29 20 6f 72 20 61 20 73    74 72 69 6e 67 20 28 61 6e 6f 6e 79 6d 6f 75 73 | ed.nodes).or.a.string.(anonymous | 
| 1c180 | 20 6e 6f 64 65 73 29 2e 22 0a 20 20 28 63 6f 6e    64 0a 20 20 20 28 28 73 79 6d 62 6f 6c 70 20 6e | .nodes)."...(cond....((symbolp.n | 
| 1c1a0 | 6f 64 65 2d 74 79 70 65 29 0a 20 20 20 20 28 74    73 63 2d 2d 6c 61 6e 67 2d 74 79 70 65 2d 69 64 | ode-type).....(tsc--lang-type-id | 
| 1c1c0 | 2d 66 6f 72 2d 6e 61 6d 65 20 6c 61 6e 67 75 61    67 65 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 | -for-name.language.(symbol-name. | 
| 1c1e0 | 6e 6f 64 65 2d 74 79 70 65 29 20 3a 6e 61 6d 65    64 29 29 0a 20 20 20 28 74 0a 20 20 20 20 28 74 | node-type).:named))....(t.....(t | 
| 1c200 | 73 63 2d 2d 6c 61 6e 67 2d 74 79 70 65 2d 69 64    2d 66 6f 72 2d 6e 61 6d 65 20 6c 61 6e 67 75 61 | sc--lang-type-id-for-name.langua | 
| 1c220 | 67 65 20 6e 6f 64 65 2d 74 79 70 65 20 6e 69 6c    29 29 29 29 0a 0a 0c 0a 3b 3b 3b 20 51 75 65 72 | ge.node-type.nil))))....;;;.Quer | 
| 1c240 | 79 69 6e 67 2e 0a 0a 28 64 65 66 75 6e 20 74 73    63 2d 2d 73 74 72 69 6e 67 69 66 79 2d 70 61 74 | ying...(defun.tsc--stringify-pat | 
| 1c260 | 74 65 72 6e 73 20 28 70 61 74 74 65 72 6e 73 29    0a 20 20 22 43 6f 6e 76 65 72 74 20 50 41 54 54 | terns.(patterns)..."Convert.PATT | 
| 1c280 | 45 52 4e 53 20 69 6e 74 6f 20 61 20 71 75 65 72    79 20 73 74 72 69 6e 67 20 74 68 61 74 20 63 61 | ERNS.into.a.query.string.that.ca | 
| 1c2a0 | 6e 20 62 65 20 70 61 73 73 65 64 20 74 6f 20 60    74 73 63 2d 2d 6d 61 6b 65 2d 71 75 65 72 79 27 | n.be.passed.to.`tsc--make-query' | 
| 1c2c0 | 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28    73 74 72 69 6e 67 70 20 70 61 74 74 65 72 6e 73 | ."...(cond....((stringp.patterns | 
| 1c2e0 | 29 20 70 61 74 74 65 72 6e 73 29 0a 20 20 20 28    28 73 65 71 75 65 6e 63 65 70 20 70 61 74 74 65 | ).patterns)....((sequencep.patte | 
| 1c300 | 72 6e 73 29 0a 20 20 20 20 3b 3b 20 58 58 58 3a    20 54 68 69 73 20 69 73 20 68 61 63 6b 79 2e 0a | rns).....;;.XXX:.This.is.hacky.. | 
| 1c320 | 20 20 20 20 28 74 68 72 65 61 64 2d 6c 61 73 74    20 28 6d 61 70 63 6f 6e 63 61 74 20 28 6c 61 6d | ....(thread-last.(mapconcat.(lam | 
| 1c340 | 62 64 61 20 28 70 29 20 28 66 6f 72 6d 61 74 20    22 25 53 22 20 70 29 29 20 70 61 74 74 65 72 6e | bda.(p).(format."%S".p)).pattern | 
| 1c360 | 73 20 22 5c 6e 22 29 0a 20 20 20 20 20 20 28 72    65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e | s."\n").......(replace-regexp-in | 
| 1c380 | 2d 73 74 72 69 6e 67 20 28 72 65 67 65 78 70 2d    71 75 6f 74 65 20 22 5c 5c 3f 22 29 20 22 3f 22 | -string.(regexp-quote."\\?")."?" | 
| 1c3a0 | 29 0a 20 20 20 20 20 20 28 72 65 70 6c 61 63 65    2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e | ).......(replace-regexp-in-strin | 
| 1c3c0 | 67 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20    22 5c 5c 2e 22 29 20 22 2e 22 29 29 29 0a 20 20 | g.(regexp-quote."\\.").".")))... | 
| 1c3e0 | 20 28 74 20 28 65 72 72 6f 72 20 22 49 6e 76 61    6c 69 64 20 70 61 74 74 65 72 6e 73 22 29 29 29 | .(t.(error."Invalid.patterns"))) | 
| 1c400 | 29 0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 6d 61    6b 65 2d 71 75 65 72 79 20 28 6c 61 6e 67 75 61 | )..(defun.tsc-make-query.(langua | 
| 1c420 | 67 65 20 70 61 74 74 65 72 6e 73 20 26 6f 70 74    69 6f 6e 61 6c 20 74 61 67 2d 61 73 73 69 67 6e | ge.patterns.&optional.tag-assign | 
| 1c440 | 65 72 29 0a 20 20 22 43 72 65 61 74 65 20 61 20    6e 65 77 20 71 75 65 72 79 20 66 6f 72 20 4c 41 | er)..."Create.a.new.query.for.LA | 
| 1c460 | 4e 47 55 41 47 45 20 66 72 6f 6d 20 61 20 73 65    71 75 65 6e 63 65 20 6f 66 20 53 2d 65 78 70 72 | NGUAGE.from.a.sequence.of.S-expr | 
| 1c480 | 65 73 73 69 6f 6e 20 50 41 54 54 45 52 4e 53 2e    0a 54 68 65 20 71 75 65 72 79 20 69 73 20 61 73 | ession.PATTERNS..The.query.is.as | 
| 1c4a0 | 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 4c 41    4e 47 55 41 47 45 2c 20 61 6e 64 20 63 61 6e 20 | sociated.with.LANGUAGE,.and.can. | 
| 1c4c0 | 6f 6e 6c 79 20 62 65 20 72 75 6e 20 6f 6e 20 73    79 6e 74 61 78 20 6e 6f 64 65 73 0a 70 61 72 73 | only.be.run.on.syntax.nodes.pars | 
| 1c4e0 | 65 64 20 77 69 74 68 20 4c 41 4e 47 55 41 47 45    2e 0a 0a 57 68 65 6e 20 74 68 65 20 71 75 65 72 | ed.with.LANGUAGE...When.the.quer | 
| 1c500 | 79 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 65    61 63 68 20 63 61 70 74 75 72 65 64 20 6e 6f 64 | y.is.executed,.each.captured.nod | 
| 1c520 | 65 20 69 73 20 74 61 67 67 65 64 20 77 69 74 68    20 61 20 73 79 6d 62 6f 6c 2c 20 77 68 6f 73 65 | e.is.tagged.with.a.symbol,.whose | 
| 1c540 | 0a 6e 61 6d 65 20 69 73 20 74 68 65 20 63 6f 72    72 65 73 70 6f 6e 64 69 6e 67 20 63 61 70 74 75 | .name.is.the.corresponding.captu | 
| 1c560 | 72 65 20 6e 61 6d 65 20 64 65 66 69 6e 65 64 20    69 6e 20 50 41 54 54 45 52 4e 53 2e 20 46 6f 72 | re.name.defined.in.PATTERNS..For | 
| 1c580 | 20 65 78 61 6d 70 6c 65 2c 20 6e 6f 64 65 73 0a    74 68 61 74 20 61 72 65 20 63 61 70 74 75 72 65 | .example,.nodes.that.are.capture | 
| 1c5a0 | 64 20 61 73 20 5c 22 40 66 75 6e 63 74 69 6f 6e    2e 62 75 69 6c 74 69 6e 5c 22 20 77 69 6c 6c 20 | d.as.\"@function.builtin\".will. | 
| 1c5c0 | 62 65 20 74 61 67 67 65 64 20 77 69 74 68 20 74    68 65 20 73 79 6d 62 6f 6c 0a 60 66 75 6e 63 74 | be.tagged.with.the.symbol.`funct | 
| 1c5e0 | 69 6f 6e 2e 62 75 69 6c 74 69 6e 27 2e 20 54 68    69 73 20 62 65 68 61 76 69 6f 72 20 63 61 6e 20 | ion.builtin'..This.behavior.can. | 
| 1c600 | 62 65 20 63 75 73 74 6f 6d 69 7a 65 64 20 62 79    20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 66 75 | be.customized.by.the.optional.fu | 
| 1c620 | 6e 63 74 69 6f 6e 0a 54 41 47 2d 41 53 53 49 47    4e 45 52 2c 20 77 68 69 63 68 20 73 68 6f 75 6c | nction.TAG-ASSIGNER,.which.shoul | 
| 1c640 | 64 20 72 65 74 75 72 6e 20 61 20 74 61 67 20 76    61 6c 75 65 20 77 68 65 6e 20 67 69 76 65 6e 20 | d.return.a.tag.value.when.given. | 
| 1c660 | 61 20 63 61 70 74 75 72 65 20 6e 61 6d 65 20 28    77 69 74 68 6f 75 74 0a 74 68 65 20 70 72 65 66 | a.capture.name.(without.the.pref | 
| 1c680 | 69 78 20 5c 22 40 5c 22 29 2e 20 49 66 20 69 74    20 72 65 74 75 72 6e 73 20 6e 69 6c 2c 20 74 68 | ix.\"@\")..If.it.returns.nil,.th | 
| 1c6a0 | 65 20 61 73 73 6f 63 69 61 74 65 64 20 63 61 70    74 75 72 65 20 6e 61 6d 65 20 69 73 20 64 69 73 | e.associated.capture.name.is.dis | 
| 1c6c0 | 61 62 6c 65 64 2e 0a 0a 53 65 65 20 61 6c 73 6f    3a 20 60 74 73 63 2d 71 75 65 72 79 2d 63 61 70 | abled...See.also:.`tsc-query-cap | 
| 1c6e0 | 74 75 72 65 73 27 20 61 6e 64 20 60 74 73 63 2d    71 75 65 72 79 2d 6d 61 74 63 68 65 73 27 2e 22 | tures'.and.`tsc-query-matches'." | 
| 1c700 | 0a 20 20 28 74 73 63 2d 2d 6d 61 6b 65 2d 71 75    65 72 79 20 6c 61 6e 67 75 61 67 65 20 28 74 73 | ...(tsc--make-query.language.(ts | 
| 1c720 | 63 2d 2d 73 74 72 69 6e 67 69 66 79 2d 70 61 74    74 65 72 6e 73 20 70 61 74 74 65 72 6e 73 29 0a | c--stringify-patterns.patterns). | 
| 1c740 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6f 72 20 74 61 67 2d 61 73 73 69 67 | ...................(or.tag-assig | 
| 1c760 | 6e 65 72 20 23 27 69 6e 74 65 72 6e 29 29 29 0a    0a 28 64 65 66 75 6e 20 74 73 63 2d 71 75 65 72 | ner.#'intern)))..(defun.tsc-quer | 
| 1c780 | 79 2d 6d 61 74 63 68 65 73 20 28 71 75 65 72 79    20 6e 6f 64 65 20 74 65 78 74 2d 66 75 6e 63 74 | y-matches.(query.node.text-funct | 
| 1c7a0 | 69 6f 6e 20 26 6f 70 74 69 6f 6e 61 6c 20 63 75    72 73 6f 72 29 0a 20 20 22 45 78 65 63 75 74 65 | ion.&optional.cursor)..."Execute | 
| 1c7c0 | 20 51 55 45 52 59 20 6f 6e 20 4e 4f 44 45 20 61    6e 64 20 72 65 74 75 72 6e 20 61 20 73 65 71 75 | .QUERY.on.NODE.and.return.a.sequ | 
| 1c7e0 | 65 6e 63 65 20 6f 66 20 6d 61 74 63 68 65 73 2e    0a 4d 61 74 63 68 65 73 20 61 72 65 20 73 6f 72 | ence.of.matches..Matches.are.sor | 
| 1c800 | 74 65 64 20 69 6e 20 74 68 65 20 6f 72 64 65 72    20 74 68 65 79 20 77 65 72 65 20 66 6f 75 6e 64 | ted.in.the.order.they.were.found | 
| 1c820 | 2e 0a 0a 45 61 63 68 20 6d 61 74 63 68 20 68 61    73 20 74 68 65 20 66 6f 72 6d 20 28 50 41 54 54 | ...Each.match.has.the.form.(PATT | 
| 1c840 | 45 52 4e 2d 49 4e 44 45 58 20 2e 20 4d 41 54 43    48 2d 43 41 50 54 55 52 45 53 29 2c 20 77 68 65 | ERN-INDEX...MATCH-CAPTURES),.whe | 
| 1c860 | 72 65 20 50 41 54 54 45 52 4e 2d 49 4e 44 45 58    20 69 73 0a 74 68 65 20 30 2d 62 61 73 65 64 20 | re.PATTERN-INDEX.is.the.0-based. | 
| 1c880 | 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20    6d 61 74 63 68 65 64 20 70 61 74 74 65 72 6e 20 | position.of.the.matched.pattern. | 
| 1c8a0 | 77 69 74 68 69 6e 20 51 55 45 52 59 2c 20 61 6e    64 20 4d 41 54 43 48 2d 43 41 50 54 55 52 45 53 | within.QUERY,.and.MATCH-CAPTURES | 
| 1c8c0 | 20 69 73 0a 61 20 73 65 71 75 65 6e 63 65 20 6f    66 20 63 61 70 74 75 72 65 73 20 61 73 73 6f 63 | .is.a.sequence.of.captures.assoc | 
| 1c8e0 | 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 6d    61 74 63 68 2c 20 73 69 6d 69 6c 61 72 20 74 6f | iated.with.the.match,.similar.to | 
| 1c900 | 20 74 68 61 74 20 72 65 74 75 72 6e 65 64 20 62    79 0a 60 74 73 63 2d 71 75 65 72 79 2d 63 61 70 | .that.returned.by.`tsc-query-cap | 
| 1c920 | 74 75 72 65 73 27 2e 0a 0a 54 45 58 54 2d 46 55    4e 43 54 49 4f 4e 20 69 73 20 63 61 6c 6c 65 64 | tures'...TEXT-FUNCTION.is.called | 
| 1c940 | 20 74 6f 20 67 65 74 20 6e 6f 64 65 73 27 20 74    65 78 74 73 20 28 66 6f 72 20 74 65 78 74 2d 62 | .to.get.nodes'.texts.(for.text-b | 
| 1c960 | 61 73 65 64 20 70 72 65 64 69 63 61 74 65 73 29    2e 20 49 74 0a 73 68 6f 75 6c 64 20 74 61 6b 65 | ased.predicates)..It.should.take | 
| 1c980 | 20 32 20 70 61 72 61 6d 65 74 65 72 73 3a 20 28    42 45 47 2d 42 59 54 45 20 45 4e 44 2d 42 59 54 | .2.parameters:.(BEG-BYTE.END-BYT | 
| 1c9a0 | 45 29 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 74    68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 | E),.and.return.the.corresponding | 
| 1c9c0 | 0a 63 68 75 6e 6b 20 6f 66 20 74 65 78 74 20 69    6e 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 | .chunk.of.text.in.the.source.cod | 
| 1c9e0 | 65 2e 0a 0a 49 66 20 74 68 65 20 6f 70 74 69 6f    6e 61 6c 20 61 72 67 20 43 55 52 53 4f 52 20 69 | e...If.the.optional.arg.CURSOR.i | 
| 1ca00 | 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 69 73    20 75 73 65 64 20 61 73 20 74 68 65 20 71 75 65 | s.non-nil,.it.is.used.as.the.que | 
| 1ca20 | 72 79 2d 63 75 72 73 6f 72 20 74 6f 20 65 78 65    63 75 74 65 0a 51 55 45 52 59 2e 20 4f 74 68 65 | ry-cursor.to.execute.QUERY..Othe | 
| 1ca40 | 72 77 69 73 65 2c 20 61 20 6e 65 77 6c 79 20 63    72 65 61 74 65 64 20 71 75 65 72 79 2d 63 75 72 | rwise,.a.newly.created.query-cur | 
| 1ca60 | 73 6f 72 20 69 73 20 75 73 65 64 2e 22 0a 20 20    28 74 73 63 2d 2d 71 75 65 72 79 2d 63 75 72 73 | sor.is.used."...(tsc--query-curs | 
| 1ca80 | 6f 72 2d 6d 61 74 63 68 65 73 0a 20 20 20 28 6f    72 20 63 75 72 73 6f 72 20 28 74 73 63 2d 6d 61 | or-matches....(or.cursor.(tsc-ma | 
| 1caa0 | 6b 65 2d 71 75 65 72 79 2d 63 75 72 73 6f 72 29    29 20 71 75 65 72 79 20 6e 6f 64 65 20 74 65 78 | ke-query-cursor)).query.node.tex | 
| 1cac0 | 74 2d 66 75 6e 63 74 69 6f 6e 29 29 0a 0a 28 64    65 66 75 6e 20 74 73 63 2d 71 75 65 72 79 2d 63 | t-function))..(defun.tsc-query-c | 
| 1cae0 | 61 70 74 75 72 65 73 20 28 71 75 65 72 79 20 6e    6f 64 65 20 74 65 78 74 2d 66 75 6e 63 74 69 6f | aptures.(query.node.text-functio | 
| 1cb00 | 6e 20 26 6f 70 74 69 6f 6e 61 6c 20 63 75 72 73    6f 72 29 0a 20 20 22 45 78 65 63 75 74 65 20 51 | n.&optional.cursor)..."Execute.Q | 
| 1cb20 | 55 45 52 59 20 6f 6e 20 4e 4f 44 45 20 61 6e 64    20 72 65 74 75 72 6e 20 61 20 73 65 71 75 65 6e | UERY.on.NODE.and.return.a.sequen | 
| 1cb40 | 63 65 20 6f 66 20 63 61 70 74 75 72 65 73 2e 0a    43 61 70 74 75 72 65 73 20 61 72 65 20 73 6f 72 | ce.of.captures..Captures.are.sor | 
| 1cb60 | 74 65 64 20 69 6e 20 74 68 65 20 6f 72 64 65 72    20 74 68 65 79 20 61 70 70 65 61 72 2e 0a 0a 45 | ted.in.the.order.they.appear...E | 
| 1cb80 | 61 63 68 20 63 61 70 74 75 72 65 20 68 61 73 20    74 68 65 20 66 6f 72 6d 20 28 43 41 50 54 55 52 | ach.capture.has.the.form.(CAPTUR | 
| 1cba0 | 45 2d 54 41 47 20 2e 20 43 41 50 54 55 52 45 44    2d 4e 4f 44 45 29 2c 20 77 68 65 72 65 20 43 41 | E-TAG...CAPTURED-NODE),.where.CA | 
| 1cbc0 | 50 54 55 52 45 2d 54 41 47 20 69 73 20 61 0a 73    79 6d 62 6f 6c 2c 20 77 68 6f 73 65 20 6e 61 6d | PTURE-TAG.is.a.symbol,.whose.nam | 
| 1cbe0 | 65 20 69 73 20 74 68 65 20 63 6f 72 72 65 73 70    6f 6e 64 69 6e 67 20 63 61 70 74 75 72 65 20 6e | e.is.the.corresponding.capture.n | 
| 1cc00 | 61 6d 65 20 64 65 66 69 6e 65 64 20 69 6e 20 51    55 45 52 59 20 28 77 69 74 68 6f 75 74 0a 74 68 | ame.defined.in.QUERY.(without.th | 
| 1cc20 | 65 20 70 72 65 66 69 78 20 5c 22 40 5c 22 29 2e    20 49 66 20 51 55 45 52 59 20 77 61 73 20 63 72 | e.prefix.\"@\")..If.QUERY.was.cr | 
| 1cc40 | 65 61 74 65 64 20 77 69 74 68 20 61 20 63 75 73    74 6f 6d 20 74 61 67 20 61 73 73 69 67 6e 65 72 | eated.with.a.custom.tag.assigner | 
| 1cc60 | 2c 20 43 41 50 54 55 52 45 2d 54 41 47 0a 69 73    20 74 68 65 20 76 61 6c 75 65 20 72 65 74 75 72 | ,.CAPTURE-TAG.is.the.value.retur | 
| 1cc80 | 6e 65 64 20 62 79 20 74 68 61 74 20 66 75 6e 63    74 69 6f 6e 20 69 6e 73 74 65 61 64 2e 20 53 65 | ned.by.that.function.instead..Se | 
| 1cca0 | 65 20 61 6c 73 6f 3a 20 60 74 73 63 2d 6d 61 6b    65 2d 71 75 65 72 79 27 2e 0a 0a 54 45 58 54 2d | e.also:.`tsc-make-query'...TEXT- | 
| 1ccc0 | 46 55 4e 43 54 49 4f 4e 20 69 73 20 63 61 6c 6c    65 64 20 74 6f 20 67 65 74 20 6e 6f 64 65 73 27 | FUNCTION.is.called.to.get.nodes' | 
| 1cce0 | 20 74 65 78 74 73 20 28 66 6f 72 20 74 65 78 74    2d 62 61 73 65 64 20 70 72 65 64 69 63 61 74 65 | .texts.(for.text-based.predicate | 
| 1cd00 | 73 29 2e 20 49 74 0a 73 68 6f 75 6c 64 20 74 61    6b 65 20 32 20 70 61 72 61 6d 65 74 65 72 73 3a | s)..It.should.take.2.parameters: | 
| 1cd20 | 20 28 42 45 47 2d 42 59 54 45 20 45 4e 44 2d 42    59 54 45 29 2c 20 61 6e 64 20 72 65 74 75 72 6e | .(BEG-BYTE.END-BYTE),.and.return | 
| 1cd40 | 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69    6e 67 0a 63 68 75 6e 6b 20 6f 66 20 74 65 78 74 | .the.corresponding.chunk.of.text | 
| 1cd60 | 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 63    6f 64 65 2e 0a 0a 49 66 20 74 68 65 20 6f 70 74 | .in.the.source.code...If.the.opt | 
| 1cd80 | 69 6f 6e 61 6c 20 61 72 67 20 43 55 52 53 4f 52    20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 | ional.arg.CURSOR.is.non-nil,.it. | 
| 1cda0 | 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 71    75 65 72 79 2d 63 75 72 73 6f 72 20 74 6f 20 65 | is.used.as.the.query-cursor.to.e | 
| 1cdc0 | 78 65 63 75 74 65 0a 51 55 45 52 59 2e 20 4f 74    68 65 72 77 69 73 65 2c 20 61 20 6e 65 77 6c 79 | xecute.QUERY..Otherwise,.a.newly | 
| 1cde0 | 20 63 72 65 61 74 65 64 20 71 75 65 72 79 2d 63    75 72 73 6f 72 20 69 73 20 75 73 65 64 2e 22 0a | .created.query-cursor.is.used.". | 
| 1ce00 | 20 20 28 74 73 63 2d 2d 71 75 65 72 79 2d 63 75    72 73 6f 72 2d 63 61 70 74 75 72 65 73 0a 20 20 | ..(tsc--query-cursor-captures... | 
| 1ce20 | 20 28 6f 72 20 63 75 72 73 6f 72 20 28 74 73 63    2d 6d 61 6b 65 2d 71 75 65 72 79 2d 63 75 72 73 | .(or.cursor.(tsc-make-query-curs | 
| 1ce40 | 6f 72 29 29 20 71 75 65 72 79 20 6e 6f 64 65 20    74 65 78 74 2d 66 75 6e 63 74 69 6f 6e 29 29 0a | or)).query.node.text-function)). | 
| 1ce60 | 0a 0c 0a 3b 3b 3b 20 54 72 61 76 65 72 73 61 6c    2e 0a 0a 28 64 65 66 63 6f 6e 73 74 20 74 73 63 | ...;;;.Traversal...(defconst.tsc | 
| 1ce80 | 2d 76 61 6c 69 64 2d 6e 6f 64 65 2d 70 72 6f 70    73 0a 20 20 27 28 3a 74 79 70 65 0a 20 20 20 20 | -valid-node-props...'(:type..... | 
| 1cea0 | 3a 66 69 65 6c 64 20 3b 6e 6f 64 65 27 73 20 66    69 65 6c 64 20 6e 61 6d 65 20 77 69 74 68 69 6e | :field.;node's.field.name.within | 
| 1cec0 | 20 74 68 65 20 70 61 72 65 6e 74 20 6e 6f 64 65    0a 20 20 20 20 3a 64 65 70 74 68 20 3b 6e 6f 64 | .the.parent.node.....:depth.;nod | 
| 1cee0 | 65 27 73 20 64 65 70 74 68 2c 20 72 65 6c 61 74    69 76 65 20 74 6f 20 74 68 65 20 69 74 65 72 61 | e's.depth,.relative.to.the.itera | 
| 1cf00 | 74 6f 72 27 73 20 73 74 61 72 74 0a 20 20 20 20    3a 6e 61 6d 65 64 2d 70 20 3a 65 78 74 72 61 2d | tor's.start.....:named-p.:extra- | 
| 1cf20 | 70 20 3a 65 72 72 6f 72 2d 70 20 3a 6d 69 73 73    69 6e 67 2d 70 20 3a 68 61 73 2d 65 72 72 6f 72 | p.:error-p.:missing-p.:has-error | 
| 1cf40 | 2d 70 0a 20 20 20 20 3a 73 74 61 72 74 2d 62 79    74 65 20 3a 65 6e 64 2d 62 79 74 65 0a 20 20 20 | -p.....:start-byte.:end-byte.... | 
| 1cf60 | 20 3a 73 74 61 72 74 2d 70 6f 69 6e 74 20 3a 65    6e 64 2d 70 6f 69 6e 74 0a 20 20 20 20 3a 72 61 | .:start-point.:end-point.....:ra | 
| 1cf80 | 6e 67 65 20 3a 62 79 74 65 2d 72 61 6e 67 65 29    0a 20 20 22 4e 6f 64 65 20 70 72 6f 70 65 72 74 | nge.:byte-range)..."Node.propert | 
| 1cfa0 | 69 65 73 20 74 68 61 74 20 74 68 65 20 74 72 61    76 65 72 73 61 6c 20 66 75 6e 63 74 69 6f 6e 73 | ies.that.the.traversal.functions | 
| 1cfc0 | 20 63 61 6e 20 72 65 74 75 72 6e 2e 0a 0a 57 68    65 6e 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 | .can.return...When.dealing.with. | 
| 1cfe0 | 61 20 6c 61 72 67 65 20 6e 75 6d 62 65 72 20 6f    66 20 6e 6f 64 65 73 2c 20 77 6f 72 6b 69 6e 67 | a.large.number.of.nodes,.working | 
| 1d000 | 20 77 69 74 68 20 6e 6f 64 65 20 6f 62 6a 65 63    74 73 20 63 72 65 61 74 65 73 20 61 0a 68 75 67 | .with.node.objects.creates.a.hug | 
| 1d020 | 65 20 70 72 65 73 73 75 72 65 20 6f 6e 20 74 68    65 20 67 61 72 62 61 67 65 20 63 6f 6c 6c 65 63 | e.pressure.on.the.garbage.collec | 
| 1d040 | 74 6f 72 2e 20 54 6f 20 69 6e 63 72 65 61 73 65    20 70 65 72 66 6f 72 6d 61 6e 63 65 2c 20 69 74 | tor..To.increase.performance,.it | 
| 1d060 | 27 73 20 62 65 74 74 65 72 20 74 6f 0a 69 6e 73    74 65 61 64 20 65 78 74 72 61 63 74 20 61 6e 64 | 's.better.to.instead.extract.and | 
| 1d080 | 20 77 6f 72 6b 20 77 69 74 68 20 69 6e 64 69 76    69 64 75 61 6c 20 6e 6f 64 65 20 70 72 6f 70 65 | .work.with.individual.node.prope | 
| 1d0a0 | 72 74 69 65 73 2e 20 53 65 76 65 72 61 6c 20 66    75 6e 63 74 69 6f 6e 73 20 63 61 6e 0a 6f 70 74 | rties..Several.functions.can.opt | 
| 1d0c0 | 69 6f 6e 61 6c 6c 79 20 74 61 6b 65 20 61 20 76    65 63 74 6f 72 20 6f 66 20 70 72 6f 70 65 72 74 | ionally.take.a.vector.of.propert | 
| 1d0e0 | 79 20 6e 61 6d 65 73 2c 20 61 6e 64 20 72 65 74    75 72 6e 20 61 20 76 65 63 74 6f 72 20 6f 66 20 | y.names,.and.return.a.vector.of. | 
| 1d100 | 70 72 6f 70 65 72 74 79 0a 76 61 6c 75 65 73 2e    0a 0a 54 68 69 73 20 77 6f 75 6c 64 6e 27 74 20 | property.values...This.wouldn't. | 
| 1d120 | 62 65 20 6e 65 63 65 73 73 61 72 79 20 69 66 20    74 68 65 20 72 75 6e 74 69 6d 65 20 73 75 70 70 | be.necessary.if.the.runtime.supp | 
| 1d140 | 6f 72 74 65 64 20 73 74 61 63 6b 2d 61 6c 6c 6f    63 61 74 65 64 20 6f 62 6a 65 63 74 73 2e 0a 65 | orted.stack-allocated.objects..e | 
| 1d160 | 2e 67 2e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c    79 20 74 68 72 6f 75 67 68 20 65 73 63 61 70 65 | .g..automatically.through.escape | 
| 1d180 | 20 61 6e 61 6c 79 73 69 73 2e 20 48 6f 77 20 61    62 6f 75 74 20 70 6f 72 74 69 6e 67 20 45 4c 69 | .analysis..How.about.porting.ELi | 
| 1d1a0 | 73 70 20 74 6f 20 47 72 61 61 6c 56 4d 3f 22 29    0a 0a 28 64 65 66 75 6e 20 74 73 63 2d 2d 63 68 | sp.to.GraalVM?")..(defun.tsc--ch | 
| 1d1c0 | 65 63 6b 2d 6e 6f 64 65 2d 70 72 6f 70 73 20 28    70 72 6f 70 73 29 0a 20 20 22 56 61 6c 69 64 61 | eck-node-props.(props)..."Valida | 
| 1d1e0 | 74 65 20 74 68 61 74 20 50 52 4f 50 53 20 61 72    65 20 76 61 6c 69 64 20 6e 6f 64 65 20 70 72 6f | te.that.PROPS.are.valid.node.pro | 
| 1d200 | 70 65 72 74 69 65 73 2e 22 0a 20 20 28 63 6f 6e    64 0a 20 20 20 28 28 6b 65 79 77 6f 72 64 70 20 | perties."...(cond....((keywordp. | 
| 1d220 | 70 72 6f 70 73 29 0a 20 20 20 20 28 75 6e 6c 65    73 73 20 28 6d 65 6d 71 20 70 72 6f 70 73 20 74 | props).....(unless.(memq.props.t | 
| 1d240 | 73 63 2d 76 61 6c 69 64 2d 6e 6f 64 65 2d 70 72    6f 70 73 29 0a 20 20 20 20 20 20 28 65 72 72 6f | sc-valid-node-props).......(erro | 
| 1d260 | 72 20 22 49 6e 76 61 6c 69 64 20 6e 6f 64 65 20    70 72 6f 70 65 72 74 79 20 25 73 22 20 70 72 6f | r."Invalid.node.property.%s".pro | 
| 1d280 | 70 73 29 29 29 0a 20 20 20 28 28 76 65 63 74 6f    72 70 20 70 72 6f 70 73 29 0a 20 20 20 20 28 77 | ps)))....((vectorp.props).....(w | 
| 1d2a0 | 68 65 6e 2d 6c 65 74 20 28 28 69 6e 76 61 6c 69    64 2d 70 72 6f 70 73 20 28 73 65 71 2d 66 69 6c | hen-let.((invalid-props.(seq-fil | 
| 1d2c0 | 74 65 72 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 20 20 | ter............................. | 
| 1d2e0 | 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 77 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...(lambda.(kw)................. | 
| 1d300 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6e 6f 74 20 28 6d 65 6d 71 20 6b 77 20 74 | .................(not.(memq.kw.t | 
| 1d320 | 73 63 2d 76 61 6c 69 64 2d 6e 6f 64 65 2d 70 72    6f 70 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 | sc-valid-node-props))).......... | 
| 1d340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 70 72 6f 70 73 29 29 29 0a 20 | ......................props))).. | 
| 1d360 | 20 20 20 20 20 28 65 72 72 6f 72 20 22 49 6e 76    61 6c 69 64 20 6e 6f 64 65 20 70 72 6f 70 65 72 | .....(error."Invalid.node.proper | 
| 1d380 | 74 69 65 73 20 25 73 22 20 69 6e 76 61 6c 69 64    2d 70 72 6f 70 73 29 29 29 0a 20 20 20 28 28 6e | ties.%s".invalid-props)))....((n | 
| 1d3a0 | 75 6c 6c 20 70 72 6f 70 73 29 20 6e 69 6c 29 0a    20 20 20 28 74 20 28 65 72 72 6f 72 20 22 45 78 | ull.props).nil)....(t.(error."Ex | 
| 1d3c0 | 70 65 63 74 65 64 20 76 65 63 74 6f 72 73 2c 20    6b 65 79 77 6f 72 64 2c 20 6f 72 20 6e 69 6c 20 | pected.vectors,.keyword,.or.nil. | 
| 1d3e0 | 25 73 22 20 70 72 6f 70 73 29 29 29 29 0a 0a 28    64 65 66 75 6e 20 74 73 63 2d 74 72 61 76 65 72 | %s".props))))..(defun.tsc-traver | 
| 1d400 | 73 65 2d 6d 61 70 63 20 28 66 75 6e 63 20 74 72    65 65 2d 6f 72 2d 6e 6f 64 65 20 26 6f 70 74 69 | se-mapc.(func.tree-or-node.&opti | 
| 1d420 | 6f 6e 61 6c 20 70 72 6f 70 73 29 0a 20 20 22 43    61 6c 6c 20 46 55 4e 43 20 66 6f 72 20 65 61 63 | onal.props)..."Call.FUNC.for.eac | 
| 1d440 | 68 20 6e 6f 64 65 20 6f 66 20 54 52 45 45 2d 4f    52 2d 4e 4f 44 45 2e 0a 54 68 65 20 74 72 61 76 | h.node.of.TREE-OR-NODE..The.trav | 
| 1d460 | 65 72 73 61 6c 20 69 73 20 64 65 70 74 68 2d 66    69 72 73 74 20 70 72 65 2d 6f 72 64 65 72 2e 0a | ersal.is.depth-first.pre-order.. | 
| 1d480 | 0a 49 66 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c    20 61 72 67 20 50 52 4f 50 53 20 69 73 20 61 20 | .If.the.optional.arg.PROPS.is.a. | 
| 1d4a0 | 76 65 63 74 6f 72 20 6f 66 20 70 72 6f 70 65 72    74 79 20 6e 61 6d 65 73 2c 20 46 55 4e 43 20 69 | vector.of.property.names,.FUNC.i | 
| 1d4c0 | 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 61 0a    76 65 63 74 6f 72 20 63 6f 6e 74 61 69 6e 69 6e | s.called.with.a.vector.containin | 
| 1d4e0 | 67 20 74 68 65 20 6e 6f 64 65 27 73 20 63 6f 72    72 65 73 70 6f 6e 64 69 6e 67 20 70 72 6f 70 65 | g.the.node's.corresponding.prope | 
| 1d500 | 72 74 69 65 73 2c 20 69 6e 73 74 65 61 64 20 6f    66 20 74 68 65 20 6e 6f 64 65 0a 69 74 73 65 6c | rties,.instead.of.the.node.itsel | 
| 1d520 | 66 2e 20 46 6f 72 20 65 66 66 69 63 69 65 6e 63    79 2c 20 74 68 69 73 20 76 65 63 74 6f 72 20 69 | f..For.efficiency,.this.vector.i | 
| 1d540 | 73 20 72 65 75 73 65 64 20 61 63 72 6f 73 73 20    69 6e 76 6f 63 61 74 69 6f 6e 73 20 6f 66 20 46 | s.reused.across.invocations.of.F | 
| 1d560 | 55 4e 43 2e 20 2a 44 4f 0a 4e 4f 54 20 4b 45 45    50 2a 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 | UNC..*DO.NOT.KEEP*.a.reference.t | 
| 1d580 | 6f 20 69 74 2e 20 49 74 27 73 20 72 65 63 6f 6d    6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 60 70 | o.it..It's.recommended.to.use.`p | 
| 1d5a0 | 63 61 73 65 2d 6c 65 74 27 20 74 6f 20 65 78 74    72 61 63 74 20 74 68 65 0a 70 72 6f 70 65 72 74 | case-let'.to.extract.the.propert | 
| 1d5c0 | 69 65 73 2e 20 53 65 65 20 60 74 73 63 2d 76 61    6c 69 64 2d 6e 6f 64 65 2d 70 72 6f 70 73 27 20 | ies..See.`tsc-valid-node-props'. | 
| 1d5e0 | 66 6f 72 20 74 68 65 20 6c 69 73 74 20 6f 66 20    61 76 61 69 6c 61 62 6c 65 20 70 72 6f 70 65 72 | for.the.list.of.available.proper | 
| 1d600 | 74 69 65 73 2e 0a 0a 50 52 4f 50 53 20 63 61 6e    20 61 6c 73 6f 20 62 65 20 61 20 73 69 6e 67 6c | ties...PROPS.can.also.be.a.singl | 
| 1d620 | 65 20 70 72 6f 70 65 72 74 79 20 6e 61 6d 65 2c    20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 46 | e.property.name,.in.which.case.F | 
| 1d640 | 55 4e 43 20 72 65 63 65 69 76 65 73 20 6f 6e 6c    79 20 74 68 61 74 0a 70 72 6f 70 65 72 74 79 20 | UNC.receives.only.that.property. | 
| 1d660 | 65 61 63 68 20 69 6e 76 6f 63 61 74 69 6f 6e 2e    0a 0a 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 | each.invocation...For.example,.t | 
| 1d680 | 6f 20 63 72 75 64 65 6c 79 20 72 65 6e 64 65 72    20 61 20 73 79 6e 74 61 78 20 74 72 65 65 3a 0a | o.crudely.render.a.syntax.tree:. | 
| 1d6a0 | 0a 20 20 20 20 28 74 73 63 2d 74 72 61 76 65 72    73 65 2d 6d 61 70 63 0a 20 20 20 20 20 28 6c 61 | .....(tsc-traverse-mapc......(la | 
| 1d6c0 | 6d 62 64 61 20 28 70 72 6f 70 73 29 0a 20 20 20    20 20 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 | mbda.(props)........(pcase-let.( | 
| 1d6e0 | 28 60 5b 2c 74 79 70 65 20 2c 64 65 70 74 68 20    2c 6e 61 6d 65 64 2d 70 5d 20 70 72 6f 70 73 29 | (`[,type.,depth.,named-p].props) | 
| 1d700 | 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e    20 6e 61 6d 65 64 2d 70 20 20 20 20 20 20 20 20 | )..........(when.named-p........ | 
| 1d720 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 41 53    54 0a 20 20 20 20 20 20 20 20 20 20 20 28 69 6e | .............;AST............(in | 
| 1d740 | 73 65 72 74 20 28 6d 61 6b 65 2d 73 74 72 69 6e    67 20 64 65 70 74 68 20 5c 5c 3f 20 29 20 3b 69 | sert.(make-string.depth.\\?.).;i | 
| 1d760 | 6e 64 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 | ndentation....................(f | 
| 1d780 | 6f 72 6d 61 74 20 5c 22 25 53 5c 22 20 74 79 70    65 29 20 5c 22 5c 5c 6e 5c 22 29 29 29 29 0a 20 | ormat.\"%S\".type).\"\\n\")))).. | 
| 1d7a0 | 20 20 20 20 74 72 65 65 0a 20 20 20 20 20 5b 3a    74 79 70 65 20 3a 64 65 70 74 68 20 3a 6e 61 6d | ....tree......[:type.:depth.:nam | 
| 1d7c0 | 65 64 2d 70 5d 29 0a 22 0a 20 20 28 74 73 63 2d    2d 63 68 65 63 6b 2d 6e 6f 64 65 2d 70 72 6f 70 | ed-p])."...(tsc--check-node-prop | 
| 1d7e0 | 73 20 70 72 6f 70 73 29 0a 20 20 28 74 73 63 2d    2d 74 72 61 76 65 72 73 65 2d 6d 61 70 63 20 66 | s.props)...(tsc--traverse-mapc.f | 
| 1d800 | 75 6e 63 20 74 72 65 65 2d 6f 72 2d 6e 6f 64 65    20 70 72 6f 70 73 29 29 0a 0a 28 64 65 66 75 6e | unc.tree-or-node.props))..(defun | 
| 1d820 | 20 74 73 63 2d 74 72 61 76 65 72 73 65 2d 69 74    65 72 20 28 74 72 65 65 2d 6f 72 2d 6e 6f 64 65 | .tsc-traverse-iter.(tree-or-node | 
| 1d840 | 20 26 6f 70 74 69 6f 6e 61 6c 20 70 72 6f 70 73    29 0a 20 20 22 52 65 74 75 72 6e 20 61 6e 20 69 | .&optional.props)..."Return.an.i | 
| 1d860 | 74 65 72 61 74 6f 72 20 74 68 61 74 20 74 72 61    76 65 72 73 65 20 54 52 45 45 2d 4f 52 2d 4e 4f | terator.that.traverse.TREE-OR-NO | 
| 1d880 | 44 45 2e 0a 54 68 65 20 74 72 61 76 65 72 73 61    6c 20 69 73 20 64 65 70 74 68 2d 66 69 72 73 74 | DE..The.traversal.is.depth-first | 
| 1d8a0 | 20 70 72 65 2d 6f 72 64 65 72 2e 0a 0a 49 66 20    74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 | .pre-order...If.the.optional.arg | 
| 1d8c0 | 20 50 52 4f 50 53 20 69 73 20 61 20 76 65 63 74    6f 72 20 6f 66 20 70 72 6f 70 65 72 74 79 20 6e | .PROPS.is.a.vector.of.property.n | 
| 1d8e0 | 61 6d 65 73 2c 20 74 68 65 20 69 74 65 72 61 74    6f 72 20 79 69 65 6c 64 73 20 61 0a 76 65 63 74 | ames,.the.iterator.yields.a.vect | 
| 1d900 | 6f 72 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68    65 20 6e 6f 64 65 27 73 20 63 6f 72 72 65 73 70 | or.containing.the.node's.corresp | 
| 1d920 | 6f 6e 64 69 6e 67 20 70 72 6f 70 65 72 74 69 65    73 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 | onding.properties,.instead.of.th | 
| 1d940 | 65 20 6e 6f 64 65 0a 69 74 73 65 6c 66 2e 20 46    6f 72 20 65 66 66 69 63 69 65 6e 63 79 2c 20 74 | e.node.itself..For.efficiency,.t | 
| 1d960 | 68 69 73 20 76 65 63 74 6f 72 20 69 73 20 72 65    75 73 65 64 20 61 63 72 6f 73 73 20 69 74 65 72 | his.vector.is.reused.across.iter | 
| 1d980 | 61 74 69 6f 6e 73 2e 20 2a 44 4f 20 4e 4f 54 20    4b 45 45 50 2a 20 61 0a 72 65 66 65 72 65 6e 63 | ations..*DO.NOT.KEEP*.a.referenc | 
| 1d9a0 | 65 20 74 6f 20 69 74 2e 20 49 74 27 73 20 72 65    63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 | e.to.it..It's.recommended.to.use | 
| 1d9c0 | 20 60 70 63 61 73 65 2d 6c 65 74 27 20 74 6f 20    65 78 74 72 61 63 74 20 74 68 65 20 70 72 6f 70 | .`pcase-let'.to.extract.the.prop | 
| 1d9e0 | 65 72 74 69 65 73 2e 0a 53 65 65 20 60 74 73 63    2d 76 61 6c 69 64 2d 6e 6f 64 65 2d 70 72 6f 70 | erties..See.`tsc-valid-node-prop | 
| 1da00 | 73 27 20 66 6f 72 20 74 68 65 20 6c 69 73 74 20    6f 66 20 61 76 61 69 6c 61 62 6c 65 20 70 72 6f | s'.for.the.list.of.available.pro | 
| 1da20 | 70 65 72 74 69 65 73 2e 0a 0a 50 52 4f 50 53 20    63 61 6e 20 61 6c 73 6f 20 62 65 20 61 20 73 69 | perties...PROPS.can.also.be.a.si | 
| 1da40 | 6e 67 6c 65 20 70 72 6f 70 65 72 74 79 20 6e 61    6d 65 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 | ngle.property.name,.in.which.cas | 
| 1da60 | 65 20 74 68 65 20 69 74 65 72 61 74 6f 72 20 79    69 65 6c 64 73 20 6f 6e 6c 79 0a 74 68 61 74 20 | e.the.iterator.yields.only.that. | 
| 1da80 | 70 72 6f 70 65 72 74 79 20 65 61 63 68 20 69 74    65 72 61 74 69 6f 6e 2e 0a 0a 46 6f 72 20 65 78 | property.each.iteration...For.ex | 
| 1daa0 | 61 6d 70 6c 65 2c 20 74 6f 20 63 72 75 64 65 6c    79 20 72 65 6e 64 65 72 20 61 20 73 79 6e 74 61 | ample,.to.crudely.render.a.synta | 
| 1dac0 | 78 20 74 72 65 65 3a 0a 0a 20 20 20 20 28 69 74    65 72 2d 64 6f 20 28 70 72 6f 70 73 20 28 74 73 | x.tree:......(iter-do.(props.(ts | 
| 1dae0 | 63 2d 74 72 61 76 65 72 73 65 2d 69 74 65 72 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | c-traverse-iter................. | 
| 1db00 | 20 20 20 20 20 74 72 65 65 20 5b 3a 74 79 70 65    20 3a 64 65 70 74 68 20 3a 6e 61 6d 65 64 2d 70 | .....tree.[:type.:depth.:named-p | 
| 1db20 | 5d 29 29 0a 20 20 20 20 20 20 28 70 63 61 73 65    2d 6c 65 74 20 28 28 60 5b 2c 74 79 70 65 20 2c | ])).......(pcase-let.((`[,type., | 
| 1db40 | 64 65 70 74 68 20 2c 6e 61 6d 65 64 2d 70 5d 20    70 72 6f 70 73 29 29 0a 20 20 20 20 20 20 20 20 | depth.,named-p].props))......... | 
| 1db60 | 28 77 68 65 6e 20 6e 61 6d 65 64 2d 70 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (when.named-p................... | 
| 1db80 | 20 20 20 20 3b 41 53 54 0a 20 20 20 20 20 20 20    20 20 20 28 69 6e 73 65 72 74 20 28 6d 61 6b 65 | ....;AST...........(insert.(make | 
| 1dba0 | 2d 73 74 72 69 6e 67 20 64 65 70 74 68 20 5c 5c    3f 20 29 20 20 20 3b 69 6e 64 65 6e 74 61 74 69 | -string.depth.\\?.)...;indentati | 
| 1dbc0 | 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 66 6f 72 6d 61 74 20 5c 22 25 | on...................(format.\"% | 
| 1dbe0 | 53 5c 22 20 74 79 70 65 29 20 5c 22 5c 5c 6e 5c    22 29 29 29 29 0a 22 0a 20 20 28 74 73 63 2d 2d | S\".type).\"\\n\"))))."...(tsc-- | 
| 1dc00 | 63 68 65 63 6b 2d 6e 6f 64 65 2d 70 72 6f 70 73    20 70 72 6f 70 73 29 0a 20 20 28 6c 65 74 20 28 | check-node-props.props)...(let.( | 
| 1dc20 | 28 69 74 65 72 20 28 74 73 63 2d 2d 69 74 65 72    20 74 72 65 65 2d 6f 72 2d 6e 6f 64 65 29 29 0a | (iter.(tsc--iter.tree-or-node)). | 
| 1dc40 | 20 20 20 20 20 20 20 20 28 6f 75 74 70 75 74 20    28 77 68 65 6e 20 28 76 65 63 74 6f 72 70 20 70 | ........(output.(when.(vectorp.p | 
| 1dc60 | 72 6f 70 73 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 76 65 | rops)...................(make-ve | 
| 1dc80 | 63 74 6f 72 20 28 6c 65 6e 67 74 68 20 70 72 6f    70 73 29 20 6e 69 6c 29 29 29 29 0a 20 20 20 20 | ctor.(length.props).nil))))..... | 
| 1dca0 | 28 6c 61 6d 62 64 61 20 28 63 6f 6e 74 72 6f 6c    20 5f 79 69 65 6c 64 2d 72 65 73 75 6c 74 29 0a | (lambda.(control._yield-result). | 
| 1dcc0 | 20 20 20 20 20 20 28 70 63 61 73 65 20 63 6f 6e    74 72 6f 6c 0a 20 20 20 20 20 20 20 20 28 3a 6e | ......(pcase.control.........(:n | 
| 1dce0 | 65 78 74 20 28 6f 72 20 28 74 73 63 2d 2d 69 74    65 72 2d 6e 65 78 74 2d 6e 6f 64 65 20 69 74 65 | ext.(or.(tsc--iter-next-node.ite | 
| 1dd00 | 72 20 70 72 6f 70 73 20 6f 75 74 70 75 74 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | r.props.output)................. | 
| 1dd20 | 20 20 20 28 73 69 67 6e 61 6c 20 27 69 74 65 72    2d 65 6e 64 2d 6f 66 2d 73 65 71 75 65 6e 63 65 | ...(signal.'iter-end-of-sequence | 
| 1dd40 | 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20    28 3a 63 6c 6f 73 65 20 28 73 65 74 71 20 69 74 | .nil))).........(:close.(setq.it | 
| 1dd60 | 65 72 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20    20 28 5f 20 28 65 72 72 6f 72 20 22 3f 3f 3f 22 | er.nil)).........(_.(error."???" | 
| 1dd80 | 29 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d    61 63 72 6f 20 74 73 63 2d 74 72 61 76 65 72 73 | ))))))..(cl-defmacro.tsc-travers | 
| 1dda0 | 65 2d 64 6f 20 28 28 76 61 72 73 20 74 72 65 65    2d 6f 72 2d 6e 6f 64 65 29 20 26 72 65 73 74 20 | e-do.((vars.tree-or-node).&rest. | 
| 1ddc0 | 62 6f 64 79 29 0a 20 20 22 45 76 61 6c 75 61 74    65 20 42 4f 44 59 20 77 69 74 68 20 56 41 52 53 | body)..."Evaluate.BODY.with.VARS | 
| 1dde0 | 20 62 6f 75 6e 64 20 74 6f 20 70 72 6f 70 65 72    74 69 65 73 20 6f 66 20 65 61 63 68 20 6e 6f 64 | .bound.to.properties.of.each.nod | 
| 1de00 | 65 20 69 6e 20 54 52 45 45 2d 4f 52 2d 4e 4f 44    45 2e 0a 54 68 65 20 74 72 61 76 65 72 73 61 6c | e.in.TREE-OR-NODE..The.traversal | 
| 1de20 | 20 69 73 20 64 65 70 74 68 2d 66 69 72 73 74 20    70 72 65 2d 6f 72 64 65 72 2e 0a 0a 56 41 52 53 | .is.depth-first.pre-order...VARS | 
| 1de40 | 20 6d 75 73 74 20 62 65 20 61 20 76 65 63 74 6f    72 20 6f 66 20 73 79 6d 62 6f 6c 73 2e 20 53 65 | .must.be.a.vector.of.symbols..Se | 
| 1de60 | 65 20 60 74 73 63 2d 76 61 6c 69 64 2d 6e 6f 64    65 2d 70 72 6f 70 73 27 20 66 6f 72 20 74 68 65 | e.`tsc-valid-node-props'.for.the | 
| 1de80 | 20 6c 69 73 74 20 6f 66 0a 61 76 61 69 6c 61 62    6c 65 20 70 72 6f 70 65 72 74 69 65 73 2e 20 28 | .list.of.available.properties..( | 
| 1dea0 | 49 6e 20 56 41 52 53 2c 20 74 68 65 79 20 6d 75    73 74 20 62 65 20 73 79 6d 62 6f 6c 73 2c 20 6e | In.VARS,.they.must.be.symbols,.n | 
| 1dec0 | 6f 74 20 6b 65 79 77 6f 72 64 73 2e 29 0a 0a 46    6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 6f 20 63 | ot.keywords.)..For.example,.to.c | 
| 1dee0 | 72 75 64 65 6c 79 20 72 65 6e 64 65 72 20 61 20    73 79 6e 74 61 78 20 74 72 65 65 3a 0a 0a 20 20 | rudely.render.a.syntax.tree:.... | 
| 1df00 | 20 20 28 74 73 63 2d 74 72 61 76 65 72 73 65 2d    64 6f 20 28 5b 74 79 70 65 20 64 65 70 74 68 20 | ..(tsc-traverse-do.([type.depth. | 
| 1df20 | 6e 61 6d 65 64 2d 70 5d 20 74 72 65 65 29 0a 20    20 20 20 20 20 28 77 68 65 6e 20 6e 61 6d 65 64 | named-p].tree).......(when.named | 
| 1df40 | 2d 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 3b 41 53 54 0a 20 20 20 20 | -p.....................;AST..... | 
| 1df60 | 20 20 20 20 28 69 6e 73 65 72 74 20 28 6d 61 6b    65 2d 73 74 72 69 6e 67 20 64 65 70 74 68 20 5c | ....(insert.(make-string.depth.\ | 
| 1df80 | 5c 3f 20 29 20 3b 69 64 65 6e 74 61 74 69 6f 6e    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | \?.).;identation................ | 
| 1dfa0 | 20 28 66 6f 72 6d 61 74 20 5c 22 25 53 5c 22 20    74 79 70 65 29 20 5c 22 5c 5c 6e 5c 22 29 29 29 | .(format.\"%S\".type).\"\\n\"))) | 
| 1dfc0 | 0a 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69    6e 64 65 6e 74 20 31 29 0a 20 20 20 20 20 20 20 | ."...(declare.(indent.1)........ | 
| 1dfe0 | 20 20 20 20 28 64 65 62 75 67 20 28 28 76 65 63    74 6f 72 70 20 66 6f 72 6d 29 20 62 6f 64 79 29 | ....(debug.((vectorp.form).body) | 
| 1e000 | 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 28 76 65    63 74 6f 72 70 20 76 61 72 73 29 0a 20 20 20 20 | ))...(unless.(vectorp.vars)..... | 
| 1e020 | 28 65 72 72 6f 72 20 22 56 61 72 20 62 69 6e 64    69 6e 67 73 20 6d 75 73 74 20 62 65 20 61 20 76 | (error."Var.bindings.must.be.a.v | 
| 1e040 | 65 63 74 6f 72 22 29 29 0a 20 20 28 6c 65 74 20    28 28 70 72 6f 70 73 20 28 63 6c 2d 6d 61 70 20 | ector"))...(let.((props.(cl-map. | 
| 1e060 | 27 76 65 63 74 6f 72 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | 'vector........................( | 
| 1e080 | 6c 61 6d 62 64 61 20 28 73 79 6d 62 6f 6c 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lambda.(symbol)................. | 
| 1e0a0 | 20 20 20 20 20 20 20 20 20 28 69 6e 74 65 72 6e    20 28 66 6f 72 6d 61 74 20 22 3a 25 73 22 20 73 | .........(intern.(format.":%s".s | 
| 1e0c0 | 79 6d 62 6f 6c 29 29 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 | ymbol)))........................ | 
| 1e0e0 | 76 61 72 73 29 29 0a 20 20 20 20 20 20 20 20 28    69 74 65 72 20 28 6d 61 6b 65 2d 73 79 6d 62 6f | vars)).........(iter.(make-symbo | 
| 1e100 | 6c 20 22 69 74 65 72 22 29 29 0a 20 20 20 20 20    20 20 20 28 6f 75 74 70 75 74 20 28 6d 61 6b 65 | l."iter")).........(output.(make | 
| 1e120 | 2d 73 79 6d 62 6f 6c 20 22 6f 75 74 70 75 74 22    29 29 29 0a 20 20 20 20 28 74 73 63 2d 2d 63 68 | -symbol."output"))).....(tsc--ch | 
| 1e140 | 65 63 6b 2d 6e 6f 64 65 2d 70 72 6f 70 73 20 70    72 6f 70 73 29 0a 20 20 20 20 60 28 6c 65 74 20 | eck-node-props.props).....`(let. | 
| 1e160 | 28 28 2c 69 74 65 72 20 28 74 73 63 2d 2d 69 74    65 72 20 2c 74 72 65 65 2d 6f 72 2d 6e 6f 64 65 | ((,iter.(tsc--iter.,tree-or-node | 
| 1e180 | 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 2c    6f 75 74 70 75 74 20 2c 28 6d 61 6b 65 2d 76 65 | ))............(,output.,(make-ve | 
| 1e1a0 | 63 74 6f 72 20 28 6c 65 6e 67 74 68 20 70 72 6f    70 73 29 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 | ctor.(length.props).nil)))...... | 
| 1e1c0 | 20 20 28 77 68 69 6c 65 20 28 74 73 63 2d 2d 69    74 65 72 2d 6e 65 78 74 2d 6e 6f 64 65 20 2c 69 | ..(while.(tsc--iter-next-node.,i | 
| 1e1e0 | 74 65 72 20 2c 70 72 6f 70 73 20 2c 6f 75 74 70    75 74 29 0a 20 20 20 20 20 20 20 20 20 28 6c 65 | ter.,props.,output)..........(le | 
| 1e200 | 74 2a 20 28 2c 40 28 63 6c 2d 6c 6f 6f 70 20 66    6f 72 20 69 20 62 65 6c 6f 77 20 28 6c 65 6e 67 | t*.(,@(cl-loop.for.i.below.(leng | 
| 1e220 | 74 68 20 76 61 72 73 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 | th.vars)........................ | 
| 1e240 | 20 20 20 20 63 6f 6c 6c 65 63 74 20 60 28 2c 28    61 72 65 66 20 76 61 72 73 20 69 29 0a 20 20 20 | ....collect.`(,(aref.vars.i).... | 
| 1e260 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ | 
| 1e280 | 20 20 28 61 72 65 66 20 2c 6f 75 74 70 75 74 20    2c 69 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 | ..(aref.,output.,i)))).......... | 
| 1e2a0 | 20 20 2c 40 62 6f 64 79 29 29 29 29 29 0a 0a 0c    0a 3b 3b 3b 20 55 74 69 6c 69 74 69 65 73 2e 0a | ..,@body)))))....;;;.Utilities.. | 
| 1e2c0 | 0a 28 64 65 66 75 6e 20 74 73 63 2d 70 70 2d 74    6f 2d 73 74 72 69 6e 67 20 28 74 72 65 65 29 0a | .(defun.tsc-pp-to-string.(tree). | 
| 1e2e0 | 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 70 72    65 74 74 79 2d 70 72 69 6e 74 65 64 20 73 74 72 | .."Return.the.pretty-printed.str | 
| 1e300 | 69 6e 67 20 6f 66 20 54 52 45 45 27 73 20 73 65    78 70 2e 22 0a 20 20 28 70 70 2d 74 6f 2d 73 74 | ing.of.TREE's.sexp."...(pp-to-st | 
| 1e320 | 72 69 6e 67 20 28 72 65 61 64 20 28 74 73 63 2d    74 72 65 65 2d 74 6f 2d 73 65 78 70 20 74 72 65 | ring.(read.(tsc-tree-to-sexp.tre | 
| 1e340 | 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 73    63 2d 2d 6e 6f 64 65 2d 73 74 65 70 73 20 28 6e | e))))..(defun.tsc--node-steps.(n | 
| 1e360 | 6f 64 65 29 0a 20 20 22 52 65 74 75 72 6e 20 74    68 65 20 73 65 71 75 65 6e 63 65 20 6f 66 20 73 | ode)..."Return.the.sequence.of.s | 
| 1e380 | 74 65 70 73 20 66 72 6f 6d 20 74 68 65 20 72 6f    6f 74 20 6e 6f 64 65 20 74 6f 20 4e 4f 44 45 2e | teps.from.the.root.node.to.NODE. | 
| 1e3a0 | 0a 0a 45 61 63 68 20 73 74 65 70 20 68 61 73 20    74 68 65 20 66 6f 72 6d 20 28 43 48 49 4c 44 2d | ..Each.step.has.the.form.(CHILD- | 
| 1e3c0 | 4e 4f 44 45 20 2e 20 4e 54 48 29 2c 20 77 68 65    72 65 20 43 48 49 4c 44 2d 4e 4f 44 45 20 69 73 | NODE...NTH),.where.CHILD-NODE.is | 
| 1e3e0 | 20 74 68 65 20 6e 6f 64 65 20 74 6f 0a 64 65 73    63 65 6e 64 20 69 6e 74 6f 2c 20 61 6e 64 20 4e | .the.node.to.descend.into,.and.N | 
| 1e400 | 54 48 20 69 73 20 69 74 73 20 30 2d 62 61 73 65    64 20 6f 72 64 69 6e 61 6c 20 70 6f 73 69 74 69 | TH.is.its.0-based.ordinal.positi | 
| 1e420 | 6f 6e 20 77 69 74 68 69 6e 20 74 68 65 20 70 61    72 65 6e 74 20 6e 6f 64 65 2e 0a 0a 49 66 20 4e | on.within.the.parent.node...If.N | 
| 1e440 | 4f 44 45 20 69 73 20 74 68 65 20 72 6f 6f 74 20    6e 6f 64 65 2c 20 74 68 65 20 73 65 71 75 65 6e | ODE.is.the.root.node,.the.sequen | 
| 1e460 | 63 65 20 69 73 20 65 6d 70 74 79 2e 22 0a 20 20    28 6c 65 74 20 28 28 73 74 65 70 73 29 0a 20 20 | ce.is.empty."...(let.((steps)... | 
| 1e480 | 20 20 20 20 20 20 28 70 61 72 65 6e 74 29 0a 20    20 20 20 20 20 20 20 28 74 68 69 73 20 6e 6f 64 | ......(parent).........(this.nod | 
| 1e4a0 | 65 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28    73 65 74 71 20 70 61 72 65 6e 74 20 28 74 73 63 | e)).....(while.(setq.parent.(tsc | 
| 1e4c0 | 2d 67 65 74 2d 70 61 72 65 6e 74 20 74 68 69 73    29 29 0a 20 20 20 20 20 20 28 70 75 73 68 20 28 | -get-parent.this)).......(push.( | 
| 1e4e0 | 63 61 74 63 68 20 3a 74 73 63 2d 73 74 65 70 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c | catch.:tsc-step...............(l | 
| 1e500 | 65 74 20 28 28 69 20 30 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d | et.((i.0)).................(tsc- | 
| 1e520 | 6d 61 70 63 2d 63 68 69 6c 64 72 65 6e 20 28 6c    61 6d 62 64 61 20 28 63 68 69 6c 64 29 0a 20 20 | mapc-children.(lambda.(child)... | 
| 1e540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ | 
| 1e560 | 20 20 20 28 69 66 20 28 74 73 63 2d 6e 6f 64 65    2d 65 71 20 63 68 69 6c 64 20 74 68 69 73 29 0a | ...(if.(tsc-node-eq.child.this). | 
| 1e580 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ | 
| 1e5a0 | 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20    3a 74 73 63 2d 73 74 65 70 20 28 63 6f 6e 73 20 | .........(throw.:tsc-step.(cons. | 
| 1e5c0 | 74 68 69 73 20 69 29 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 | this.i))........................ | 
| 1e5e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 73 65 74 71 20 69 20 28 31 2b 20 69 29 29 29 | ................(setq.i.(1+.i))) | 
| 1e600 | 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 20 20 20 20 | )............................... | 
| 1e620 | 20 20 20 20 20 70 61 72 65 6e 74 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 74 68 72 | .....parent))...............(thr | 
| 1e640 | 6f 77 20 3a 74 73 63 2d 69 73 2d 6e 6f 74 2d 70    61 72 65 6e 74 73 2d 63 68 69 6c 64 20 28 63 6f | ow.:tsc-is-not-parents-child.(co | 
| 1e660 | 6e 73 20 74 68 69 73 20 70 61 72 65 6e 74 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 | ns.this.parent))).............st | 
| 1e680 | 65 70 73 29 0a 20 20 20 20 20 20 28 73 65 74 71    20 74 68 69 73 20 70 61 72 65 6e 74 29 29 0a 20 | eps).......(setq.this.parent)).. | 
| 1e6a0 | 20 20 20 73 74 65 70 73 29 29 0a 0a 28 64 65 66    69 6e 65 2d 65 72 72 6f 72 20 27 74 73 63 2d 2d | ...steps))..(define-error.'tsc-- | 
| 1e6c0 | 69 6e 76 61 6c 69 64 2d 6e 6f 64 65 2d 73 74 65    70 20 22 43 61 6e 6e 6f 74 20 66 6f 6c 6c 6f 77 | invalid-node-step."Cannot.follow | 
| 1e6e0 | 20 6e 6f 64 65 20 73 74 65 70 22 29 0a 0a 28 64    65 66 75 6e 20 74 73 63 2d 2d 6e 6f 64 65 2d 66 | .node.step")..(defun.tsc--node-f | 
| 1e700 | 72 6f 6d 2d 73 74 65 70 73 20 28 74 72 65 65 20    73 74 65 70 73 29 0a 20 20 22 46 6f 6c 6c 6f 77 | rom-steps.(tree.steps)..."Follow | 
| 1e720 | 20 53 54 45 50 53 20 66 72 6f 6d 20 54 52 45 45    27 73 20 72 6f 6f 74 20 6e 6f 64 65 3b 20 72 65 | .STEPS.from.TREE's.root.node;.re | 
| 1e740 | 74 75 72 6e 20 74 68 65 20 66 69 6e 61 6c 20 6e    6f 64 65 2e 0a 53 54 45 50 53 20 73 68 6f 75 6c | turn.the.final.node..STEPS.shoul | 
| 1e760 | 64 20 62 65 20 61 20 73 65 71 75 65 6e 63 65 20    6f 66 20 73 74 65 70 73 2c 20 61 73 20 64 65 73 | d.be.a.sequence.of.steps,.as.des | 
| 1e780 | 63 72 69 62 65 64 20 62 79 20 60 74 73 63 2d 2d    6e 6f 64 65 2d 73 74 65 70 73 27 2e 0a 0a 49 66 | cribed.by.`tsc--node-steps'...If | 
| 1e7a0 | 20 61 20 73 74 65 70 20 63 61 6e 6e 6f 74 20 62    65 20 66 6f 6c 6c 6f 77 65 64 2c 20 73 69 67 6e | .a.step.cannot.be.followed,.sign | 
| 1e7c0 | 61 6c 20 61 20 60 74 73 63 2d 2d 69 6e 76 61 6c    69 64 2d 6e 6f 64 65 2d 73 74 65 70 27 20 65 72 | al.a.`tsc--invalid-node-step'.er | 
| 1e7e0 | 72 6f 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 74    68 69 73 20 28 74 73 63 2d 72 6f 6f 74 2d 6e 6f | ror."...(let.((this.(tsc-root-no | 
| 1e800 | 64 65 20 74 72 65 65 29 29 29 0a 20 20 20 20 28    70 63 61 73 65 2d 64 6f 6c 69 73 74 20 28 60 28 | de.tree))).....(pcase-dolist.(`( | 
| 1e820 | 2c 6f 6c 64 2d 6e 6f 64 65 20 2e 20 2c 69 29 20    73 74 65 70 73 29 0a 20 20 20 20 20 20 28 6c 65 | ,old-node...,i).steps).......(le | 
| 1e840 | 74 20 28 28 6e 65 77 2d 6e 6f 64 65 20 28 74 73    63 2d 67 65 74 2d 6e 74 68 2d 63 68 69 6c 64 20 | t.((new-node.(tsc-get-nth-child. | 
| 1e860 | 74 68 69 73 20 69 29 29 29 0a 20 20 20 20 20 20    20 20 28 75 6e 6c 65 73 73 20 6e 65 77 2d 6e 6f | this.i))).........(unless.new-no | 
| 1e880 | 64 65 0a 20 20 20 20 20 20 20 20 20 20 28 73 69    67 6e 61 6c 20 27 74 73 63 2d 2d 69 6e 76 61 6c | de...........(signal.'tsc--inval | 
| 1e8a0 | 69 64 2d 6e 6f 64 65 2d 73 74 65 70 20 28 6c 69    73 74 20 74 68 69 73 20 6f 6c 64 2d 6e 6f 64 65 | id-node-step.(list.this.old-node | 
| 1e8c0 | 20 69 20 6e 65 77 2d 6e 6f 64 65 29 29 29 0a 20    20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 65 | .i.new-node))).........(let.((ne | 
| 1e8e0 | 77 2d 74 79 70 65 20 28 74 73 63 2d 6e 6f 64 65    2d 74 79 70 65 20 6e 65 77 2d 6e 6f 64 65 29 29 | w-type.(tsc-node-type.new-node)) | 
| 1e900 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6f 6c 64 2d 74 79 70 65 20 28 74 73 63 2d 6e 6f | ...............(old-type.(tsc-no | 
| 1e920 | 64 65 2d 74 79 70 65 20 6f 6c 64 2d 6e 6f 64 65    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 | de-type.old-node)))...........(u | 
| 1e940 | 6e 6c 65 73 73 20 28 65 71 75 61 6c 20 6f 6c 64    2d 74 79 70 65 20 6e 65 77 2d 74 79 70 65 29 0a | nless.(equal.old-type.new-type). | 
| 1e960 | 20 20 20 20 20 20 20 20 20 20 20 20 28 73 69 67    6e 61 6c 20 27 74 73 63 2d 2d 69 6e 76 61 6c 69 | ............(signal.'tsc--invali | 
| 1e980 | 64 2d 6e 6f 64 65 2d 73 74 65 70 20 28 6c 69 73    74 20 74 68 69 73 20 6f 6c 64 2d 6e 6f 64 65 20 | d-node-step.(list.this.old-node. | 
| 1e9a0 | 69 20 6e 65 77 2d 6e 6f 64 65 29 29 29 29 0a 20    20 20 20 20 20 20 20 28 73 65 74 71 20 74 68 69 | i.new-node)))).........(setq.thi | 
| 1e9c0 | 73 20 6e 65 77 2d 6e 6f 64 65 29 29 29 0a 20 20    20 20 74 68 69 73 29 29 0a 0a 28 70 72 6f 76 69 | s.new-node))).....this))..(provi | 
| 1e9e0 | 64 65 20 27 74 73 63 29 0a 3b 3b 3b 20 74 73 63    2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 | de.'tsc).;;;.tsc.el.ends.here... | 
| 1ea00 | 74 73 63 2d 32 30 32 32 30 32 31 32 2e 31 36 33    32 2f 44 59 4e 2d 56 45 52 53 49 4f 4e 00 00 00 | tsc-20220212.1632/DYN-VERSION... | 
| 1ea20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ea40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ea60 | 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 | 
| 1ea80 | 30 30 30 30 30 30 36 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 32 36 34 00 20 30 00 00 00 | 0000006.00000000000.013264..0... | 
| 1eaa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eb00 | 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................... | 
| 1eb20 | 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................... | 
| 1eb40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eb60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eb80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ebc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ebe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ec00 | 30 2e 31 38 2e 30 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | 0.18.0.......................... | 
| 1ec20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ec40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ec60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ec80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ecc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ece0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ed00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ed20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ed40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ed60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ed80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eda0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1edc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ede0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ee00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ee20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ee40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ee60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ee80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1eee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ef00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ef20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ef40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ef60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ef80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1efa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1efc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1efe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f0a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f0c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f0e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f1a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f1c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f1e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f260 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f2a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f2c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f2e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f300 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f3a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f3c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f3e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f4a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f4c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f4e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f5a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f5c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f5e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f6a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f6c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f6e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f7a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f7c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f7e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f800 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f860 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f8a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f8c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f8e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f9a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f9c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1f9e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fa00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fa20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fa40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fa60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fa80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1faa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fb00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fb20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fb40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fb60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fb80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fbc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fbe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fc00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fc20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fc40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fc60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fc80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fcc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fd00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fd20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fd40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fd60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fd80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fda0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fdc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fde0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fe00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fe20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fe40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fe60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fe80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1fee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ff00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ff20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ff40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ff60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ff80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ffa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ffc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 1ffe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 200a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 200c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 200e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 201a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 201c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 201e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20260 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 202a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 202c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 202e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20300 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 203a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 203c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 203e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 204a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 204c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 204e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 205a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 205c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 205e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 206a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 206c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 206e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 20780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 207a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 207c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ | 
| 207e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |