| 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  | ................................ |