summaryrefslogtreecommitdiff
path: root/.localrepo/iter2-20250209.1516.tar
blob: 384e0fbbe7e2c7aaed50c9f956bf0b9cdd80fdc5 (plain)
ofshex dumpascii
0000 69 74 65 72 32 2d 32 30 32 35 30 32 30 39 2e 31 35 31 36 2f 00 00 00 00 00 00 00 00 00 00 00 00 iter2-20250209.1516/............
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 32 30 33 36 00 20 35 00 00 00 0000000.00000000000.012036..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 69 74 65 72 32 2d 32 30 32 35 30 32 30 39 2e 31 35 31 36 2f 69 74 65 72 32 2d 70 6b 67 2e 65 6c iter2-20250209.1516/iter2-pkg.el
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 30 30 30 36 36 32 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 31 37 30 00 20 30 00 00 00 0000662.00000000000.014170..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 3b 3b 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 3b 20 6c 65 78 69 63 ;;.-*-.no-byte-compile:.t;.lexic
0420 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 6e 69 6c 20 2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b al-binding:.nil.-*-.(define-pack
0440 61 67 65 20 22 69 74 65 72 32 22 20 22 32 30 32 35 30 32 30 39 2e 31 35 31 36 22 0a 20 20 22 52 age."iter2"."20250209.1516"..."R
0460 65 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 45 6c 69 73 70 20 67 65 6e 65 72 61 74 eimplementation.of.Elisp.generat
0480 6f 72 73 2e 22 0a 20 20 27 28 28 65 6d 61 63 73 20 22 32 35 2e 31 22 29 29 0a 20 20 3a 75 72 6c ors."...'((emacs."25.1"))...:url
04a0 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 64 6f 75 62 6c 65 70 2f 69 74 65 ."https://github.com/doublep/ite
04c0 72 32 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 36 33 32 32 33 32 62 35 65 65 36 32 37 62 66 35 64 r2"...:commit."632232b5ee627bf5d
04e0 32 39 39 64 62 30 62 37 37 31 34 62 33 62 36 38 37 61 30 31 32 34 63 22 0a 20 20 3a 72 65 76 64 299db0b7714b3b687a0124c"...:revd
0500 65 73 63 20 22 36 33 32 32 33 32 62 35 65 65 36 32 22 0a 20 20 3a 6b 65 79 77 6f 72 64 73 20 27 esc."632232b5ee62"...:keywords.'
0520 28 22 65 6c 69 73 70 22 20 22 65 78 74 65 6e 73 69 6f 6e 73 22 29 0a 20 20 3a 61 75 74 68 6f 72 ("elisp"."extensions")...:author
0540 73 20 27 28 28 22 50 61 75 6c 20 50 6f 67 6f 6e 79 73 68 65 76 22 20 2e 20 22 70 6f 67 6f 6e 79 s.'(("Paul.Pogonyshev"..."pogony
0560 73 68 65 76 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 shev@gmail.com"))...:maintainers
0580 20 27 28 28 22 50 61 75 6c 20 50 6f 67 6f 6e 79 73 68 65 76 22 20 2e 20 22 70 6f 67 6f 6e 79 73 .'(("Paul.Pogonyshev"..."pogonys
05a0 68 65 76 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 hev@gmail.com")))...............
05c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0600 69 74 65 72 32 2d 32 30 32 35 30 32 30 39 2e 31 35 31 36 2f 69 74 65 72 32 2e 65 6c 00 00 00 00 iter2-20250209.1516/iter2.el....
0620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0680 30 31 37 34 33 36 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 34 32 31 00 20 30 00 00 00 0174361.00000000000.013421..0...
06a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0700 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 3b 3b 3b 20 69 74 65 72 32 2e 65 6c 20 2d 2d 2d 20 52 65 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f ;;;.iter2.el.---.Reimplementatio
0820 6e 20 6f 66 20 45 6c 69 73 70 20 67 65 6e 65 72 61 74 6f 72 73 20 20 2d 2a 2d 20 6c 65 78 69 63 n.of.Elisp.generators..-*-.lexic
0840 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 20 2d 2a 2d 0a 0a 3b 3b 3b 20 43 6f 70 79 72 69 67 68 74 al-binding:.t.-*-..;;;.Copyright
0860 20 28 43 29 20 32 30 31 37 2d 32 30 32 35 20 50 61 75 6c 20 50 6f 67 6f 6e 79 73 68 65 76 0a 0a .(C).2017-2025.Paul.Pogonyshev..
0880 3b 3b 20 41 75 74 68 6f 72 3a 20 20 20 20 20 50 61 75 6c 20 50 6f 67 6f 6e 79 73 68 65 76 20 3c ;;.Author:.....Paul.Pogonyshev.<
08a0 70 6f 67 6f 6e 79 73 68 65 76 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 4d 61 69 6e 74 61 69 pogonyshev@gmail.com>.;;.Maintai
08c0 6e 65 72 3a 20 50 61 75 6c 20 50 6f 67 6f 6e 79 73 68 65 76 20 3c 70 6f 67 6f 6e 79 73 68 65 76 ner:.Paul.Pogonyshev.<pogonyshev
08e0 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 @gmail.com>.;;.Package-Version:.
0900 32 30 32 35 30 32 30 39 2e 31 35 31 36 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 20250209.1516.;;.Package-Revisio
0920 6e 3a 20 36 33 32 32 33 32 62 35 65 65 36 32 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 20 20 65 n:.632232b5ee62.;;.Keywords:...e
0940 6c 69 73 70 2c 20 65 78 74 65 6e 73 69 6f 6e 73 0a 3b 3b 20 48 6f 6d 65 70 61 67 65 3a 20 20 20 lisp,.extensions.;;.Homepage:...
0960 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 64 6f 75 62 6c 65 70 2f 69 74 65 72 32 https://github.com/doublep/iter2
0980 0a 3b 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 .;;.Package-Requires:.((emacs."2
09a0 35 2e 31 22 29 29 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 5.1"))..;;.This.program.is.free.
09c0 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 software;.you.can.redistribute.i
09e0 74 20 61 6e 64 2f 6f 72 0a 3b 3b 20 6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 t.and/or.;;.modify.it.under.the.
0a00 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 terms.of.the.GNU.General.Public.
0a20 4c 69 63 65 6e 73 65 20 61 73 0a 3b 3b 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 License.as.;;.published.by.the.F
0a40 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 ree.Software.Foundation,.either.
0a60 76 65 72 73 69 6f 6e 20 33 20 6f 66 0a 3b 3b 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 20 version.3.of.;;.the.License,.or.
0a80 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 (at.your.option).any.later.versi
0aa0 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 on...;;.This.program.is.distribu
0ac0 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 ted.in.the.hope.that.it.will.be.
0ae0 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 useful,.;;.but.WITHOUT.ANY.WARRA
0b00 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 NTY;.without.even.the.implied.wa
0b20 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 rranty.of.;;.MERCHANTABILITY.or.
0b40 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 FITNESS.FOR.A.PARTICULAR.PURPOSE
0b60 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 ...See.the.;;.GNU.General.Public
0b80 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b .License.for.more.details..;;.;;
0ba0 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 .You.should.have.received.a.copy
0bc0 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e .of.the.GNU.General.Public.Licen
0be0 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 se.;;.along.with.this.program...
0c00 49 66 20 6e 6f 74 2c 20 73 65 65 20 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c If.not,.see.http://www.gnu.org/l
0c20 69 63 65 6e 73 65 73 2e 0a 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 46 icenses....;;;.Commentary:..;;.F
0c40 75 6c 6c 79 20 63 6f 6d 70 61 74 69 62 6c 65 20 66 61 73 74 20 72 65 69 6d 70 6c 65 6d 65 6e 74 ully.compatible.fast.reimplement
0c60 61 74 69 6f 6e 20 6f 66 20 60 67 65 6e 65 72 61 74 6f 72 27 20 62 75 69 6c 74 2d 69 6e 0a 3b 3b ation.of.`generator'.built-in.;;
0c80 20 45 6d 61 63 73 20 70 61 63 6b 61 67 65 2e 20 20 54 68 69 73 20 6c 69 62 72 61 72 79 20 70 72 .Emacs.package...This.library.pr
0ca0 6f 76 69 64 65 73 20 60 69 74 65 72 32 2d 64 65 66 75 6e 60 20 61 6e 64 0a 3b 3b 20 60 69 74 65 ovides.`iter2-defun`.and.;;.`ite
0cc0 72 32 2d 6c 61 6d 62 64 61 60 20 66 6f 72 6d 73 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 r2-lambda`.forms.that.can.be.use
0ce0 64 20 69 6e 20 70 6c 61 63 65 20 6f 66 20 60 69 74 65 72 2d 64 65 66 75 6e 60 20 61 6e 64 0a 3b d.in.place.of.`iter-defun`.and.;
0d00 3b 20 60 69 74 65 72 2d 6c 61 6d 62 64 61 60 2e 20 20 46 6f 72 6d 20 60 69 74 65 72 32 2d 6e 65 ;.`iter-lambda`...Form.`iter2-ne
0d20 78 74 60 20 69 73 20 61 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 66 6f 72 20 60 69 74 65 72 2d 6e xt`.is.a.replacement.for.`iter-n
0d40 65 78 74 60 0a 3b 3b 20 28 73 65 65 20 69 74 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 ext`.;;.(see.its.documentation.f
0d60 6f 72 20 74 68 65 20 72 65 61 73 6f 6e 73 29 2c 20 74 68 6f 75 67 68 20 60 69 74 65 72 2d 6e 65 or.the.reasons),.though.`iter-ne
0d80 78 74 60 20 77 69 6c 6c 0a 3b 3b 20 77 6f 72 6b 20 74 6f 6f 2e 0a 3b 3b 0a 3b 3b 20 4f 74 68 65 xt`.will.;;.work.too..;;.;;.Othe
0da0 72 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 6d 61 63 72 6f 73 20 28 60 69 74 65 72 2d 79 69 r.functions.and.macros.(`iter-yi
0dc0 65 6c 64 60 2c 20 60 69 74 65 72 2d 79 69 65 6c 64 2d 66 72 6f 6d 60 2c 0a 3b 3b 20 60 69 74 65 eld`,.`iter-yield-from`,.;;.`ite
0de0 72 2d 64 6f 60 20 61 6e 64 20 60 69 74 65 72 2d 63 6c 6f 73 65 60 29 20 61 72 65 20 69 6e 74 65 r-do`.and.`iter-close`).are.inte
0e00 6e 74 69 6f 6e 61 6c 6c 79 20 6e 6f 74 20 64 75 70 6c 69 63 61 74 65 64 3a 20 6a 75 73 74 0a 3b ntionally.not.duplicated:.just.;
0e20 3b 20 75 73 65 20 74 68 65 20 6f 6e 65 73 20 66 72 6f 6d 20 74 68 65 20 6f 72 69 67 69 6e 61 6c ;.use.the.ones.from.the.original
0e40 20 70 61 63 6b 61 67 65 2e 0a 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 3b 3b 20 46 6f 72 20 60 69 .package....;;;.Code:..;;.For.`i
0e60 74 65 72 2d 79 69 65 6c 64 27 20 65 74 63 2e 20 66 72 6f 6d 20 74 68 65 20 6f 72 69 67 69 6e 61 ter-yield'.etc..from.the.origina
0e80 6c 20 60 67 65 6e 65 72 61 74 6f 72 27 20 70 61 63 6b 61 67 65 2e 0a 28 72 65 71 75 69 72 65 20 l.`generator'.package..(require.
0ea0 27 67 65 6e 65 72 61 74 6f 72 29 0a 28 72 65 71 75 69 72 65 20 27 6d 61 63 72 6f 65 78 70 29 0a 'generator).(require.'macroexp).
0ec0 28 72 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 29 0a 0a 28 72 65 71 75 69 72 65 20 27 62 79 74 (require.'subr-x)..(require.'byt
0ee0 65 63 6f 6d 70 29 0a 3b 3b 20 53 65 65 20 74 68 65 20 75 73 61 67 65 20 62 65 6c 6f 77 2e 0a 28 ecomp).;;.See.the.usage.below..(
0f00 64 65 66 76 61 72 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 2d 62 6f 75 6e 64 2d 76 61 72 69 61 62 defvar.byte-compile-bound-variab
0f20 6c 65 73 29 0a 0a 0a 28 64 65 66 67 72 6f 75 70 20 69 74 65 72 32 20 6e 69 6c 0a 20 20 22 52 65 les)...(defgroup.iter2.nil..."Re
0f40 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 45 6c 69 73 70 20 67 65 6e 65 72 61 74 6f implementation.of.Elisp.generato
0f60 72 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 69 73 70 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 rs"...:group.'lisp)..(defcustom.
0f80 69 74 65 72 32 2d 64 65 74 65 63 74 2d 6e 65 73 74 65 64 2d 6c 61 6d 62 64 61 2d 79 69 65 6c 64 iter2-detect-nested-lambda-yield
0fa0 73 20 6e 69 6c 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 64 65 74 65 63 74 20 6e 6f 6e 2d s.nil..."If.non-nil,.detect.non-
0fc0 77 6f 72 6b 69 6e 67 20 79 69 65 6c 64 73 20 69 6e 20 6e 65 73 74 65 64 20 6c 61 6d 62 64 61 73 working.yields.in.nested.lambdas
0fe0 2e 0a 44 75 65 20 74 6f 20 74 68 65 20 77 61 79 20 60 69 74 65 72 32 27 20 28 6f 72 20 6f 72 69 ..Due.to.the.way.`iter2'.(or.ori
1000 67 69 6e 61 6c 20 60 67 65 6e 65 72 61 74 6f 72 27 2c 20 66 6f 72 20 74 68 61 74 20 6d 61 74 74 ginal.`generator',.for.that.matt
1020 65 72 29 0a 77 6f 72 6b 73 2c 20 69 74 20 69 73 20 69 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20 79 er).works,.it.is.impossible.to.y
1040 69 65 6c 64 20 66 72 6f 6d 20 6e 65 73 74 65 64 20 6c 61 6d 62 64 61 73 3a 20 6f 6e 6c 79 20 66 ield.from.nested.lambdas:.only.f
1060 72 6f 6d 0a 74 68 65 20 6d 61 69 6e 20 66 75 6e 63 74 69 6f 6e 2e 20 20 53 75 63 68 20 60 69 74 rom.the.main.function...Such.`it
1080 65 72 2d 79 69 65 6c 64 27 20 69 6e 76 6f 63 61 74 69 6f 6e 73 20 77 69 6c 6c 20 66 61 69 6c 20 er-yield'.invocations.will.fail.
10a0 61 74 0a 72 75 6e 74 69 6d 65 2e 0a 0a 57 68 65 6e 20 74 68 69 73 20 76 61 72 69 61 62 6c 65 20 at.runtime...When.this.variable.
10c0 69 73 20 73 65 74 2c 20 60 69 74 65 72 32 27 20 74 72 69 65 73 20 74 6f 20 64 65 74 65 63 74 20 is.set,.`iter2'.tries.to.detect.
10e0 73 75 63 68 20 70 72 6f 62 6c 65 6d 73 0a 64 75 72 69 6e 67 20 63 6f 6e 76 65 72 73 69 6f 6e 2e such.problems.during.conversion.
1100 20 20 48 6f 77 65 76 65 72 2c 20 74 68 69 73 20 74 65 73 74 20 69 73 20 6e 6f 74 20 65 6e 61 62 ..However,.this.test.is.not.enab
1120 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 0a 62 65 63 61 75 73 65 20 69 74 20 6d 69 67 68 74 2c led.by.default.because.it.might,
1140 20 69 6e 20 70 72 69 6e 63 69 70 6c 65 2c 20 67 69 76 65 20 66 61 6c 73 65 20 70 6f 73 69 74 69 .in.principle,.give.false.positi
1160 76 65 73 20 69 66 20 79 6f 75 20 6e 65 76 65 72 0a 63 61 6c 6c 20 73 61 69 64 20 6c 61 6d 62 64 ves.if.you.never.call.said.lambd
1180 61 2e 20 20 49 74 20 61 6c 73 6f 20 6e 65 67 61 74 69 76 65 6c 79 20 61 66 66 65 63 74 73 20 70 a...It.also.negatively.affects.p
11a0 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 0a 4f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 erformance...On.the.other.hand,.
11c0 74 68 69 73 20 6d 69 67 68 74 20 62 65 20 75 73 65 66 75 6c 2c 20 61 73 20 69 74 20 69 73 20 76 this.might.be.useful,.as.it.is.v
11e0 65 72 79 20 65 61 73 79 20 74 6f 0a 61 63 63 69 64 65 6e 74 61 6c 6c 79 20 74 72 79 20 74 6f 20 ery.easy.to.accidentally.try.to.
1200 79 69 65 6c 64 20 66 72 6f 6d 20 61 20 6d 61 63 72 6f 2d 67 65 6e 65 72 61 74 65 64 20 6c 61 6d yield.from.a.macro-generated.lam
1220 62 64 61 2c 20 65 2e 67 2e 3a 0a 0a 20 20 20 20 23 20 52 65 70 6c 61 63 65 20 65 61 63 68 20 65 bda,.e.g.:......#.Replace.each.e
1240 6c 65 6d 65 6e 74 20 77 69 74 68 20 77 68 61 74 20 60 69 74 65 72 2d 79 69 65 6c 64 27 20 72 65 lement.with.what.`iter-yield'.re
1260 74 75 72 6e 73 2e 20 20 4e 6f 74 0a 20 20 20 20 23 20 6f 62 76 69 6f 75 73 20 74 68 61 74 20 74 turns...Not.....#.obvious.that.t
1280 68 69 73 20 66 6f 72 6d 20 77 69 6c 6c 20 6e 6f 74 20 77 6f 72 6b 2e 0a 20 20 20 20 28 73 65 74 his.form.will.not.work......(set
12a0 66 20 6c 69 73 74 20 28 2d 2d 6d 61 70 20 28 69 74 65 72 2d 79 69 65 6c 64 20 69 74 29 20 6c 69 f.list.(--map.(iter-yield.it).li
12c0 73 74 29 29 22 0a 20 20 3a 74 79 70 65 20 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70 st))"...:type..'boolean...:group
12e0 20 27 69 74 65 72 32 29 0a 0a 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 67 65 6e 65 72 61 74 .'iter2)...(defvar.iter2-generat
1300 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 22 53 65 74 20 74 e-tracing-functions.nil..."Set.t
1320 6f 20 6e 6f 6e 2d 6e 69 6c 20 74 6f 20 61 6c 77 61 79 73 20 67 65 6e 65 72 61 74 65 20 74 72 61 o.non-nil.to.always.generate.tra
1340 63 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 4e 6f 72 6d 61 6c 6c 79 2c 20 6f 6e 6c 79 20 60 cing.functions..Normally,.only.`
1360 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 64 65 66 75 6e 27 20 61 6e 64 20 60 69 74 65 72 32 2d iter2-tracing-defun'.and.`iter2-
1380 74 72 61 63 69 6e 67 2d 6c 61 6d 62 64 61 27 0a 77 69 6c 6c 20 64 6f 20 74 68 69 73 2e 20 20 42 tracing-lambda'.will.do.this...B
13a0 75 74 20 69 66 20 74 68 69 73 20 66 6c 61 67 20 69 73 20 73 65 74 2c 20 60 69 74 65 72 32 2d 64 ut.if.this.flag.is.set,.`iter2-d
13c0 65 66 75 6e 27 20 61 6e 64 0a 60 69 74 65 72 32 2d 6c 61 6d 62 64 61 27 20 77 69 6c 6c 20 62 65 efun'.and.`iter2-lambda'.will.be
13e0 68 61 76 65 20 73 69 6d 69 6c 61 72 6c 79 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 have.similarly.")..(defvar.iter2
1400 2d 74 72 61 63 69 6e 67 2d 70 72 69 6e 74 2d 6c 65 76 65 6c 20 74 0a 20 20 22 56 61 6c 75 65 20 -tracing-print-level.t..."Value.
1420 75 73 65 64 20 66 6f 72 20 60 70 72 69 6e 74 2d 6c 65 76 65 6c 27 20 77 68 65 6e 20 74 72 61 63 used.for.`print-level'.when.trac
1440 69 6e 67 20 67 65 6e 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 49 66 20 73 65 74 20 ing.generator.functions..If.set.
1460 74 6f 20 74 2c 20 76 61 6c 75 65 20 6f 66 20 60 70 72 69 6e 74 2d 6c 65 76 65 6c 27 20 61 74 20 to.t,.value.of.`print-level'.at.
1480 74 68 65 20 74 69 6d 65 20 6f 66 20 74 72 61 63 69 6e 67 20 69 73 0a 70 72 65 73 65 72 76 65 64 the.time.of.tracing.is.preserved
14a0 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 69 74 20 69 73 20 6f 76 65 72 77 72 69 74 74 65 6e 20 ...Otherwise,.it.is.overwritten.
14c0 77 69 74 68 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 69 73 0a 76 61 72 69 61 62 6c 65 2e with.the.value.of.this.variable.
14e0 22 29 0a 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 70 72 69 6e 74 2d ")..(defvar.iter2-tracing-print-
1500 6c 65 6e 67 74 68 20 74 0a 20 20 22 56 61 6c 75 65 20 75 73 65 64 20 66 6f 72 20 60 70 72 69 6e length.t..."Value.used.for.`prin
1520 74 2d 6c 65 6e 67 74 68 27 20 77 68 65 6e 20 74 72 61 63 69 6e 67 20 67 65 6e 65 72 61 74 6f 72 t-length'.when.tracing.generator
1540 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 49 66 20 73 65 74 20 74 6f 20 74 2c 20 76 61 6c 75 65 20 6f .functions..If.set.to.t,.value.o
1560 66 20 60 70 72 69 6e 74 2d 6c 65 6e 67 74 68 27 20 61 74 20 74 68 65 20 74 69 6d 65 20 6f 66 20 f.`print-length'.at.the.time.of.
1580 74 72 61 63 69 6e 67 20 69 73 0a 70 72 65 73 65 72 76 65 64 2e 20 20 4f 74 68 65 72 77 69 73 65 tracing.is.preserved...Otherwise
15a0 2c 20 69 74 20 69 73 20 6f 76 65 72 77 72 69 74 74 65 6e 20 77 69 74 68 20 74 68 65 20 76 61 6c ,.it.is.overwritten.with.the.val
15c0 75 65 20 6f 66 20 74 68 69 73 0a 76 61 72 69 61 62 6c 65 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 ue.of.this.variable.")..(defvar.
15e0 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 20 23 27 69 74 65 72 32 2d 6c iter2-tracing-function.#'iter2-l
1600 6f 67 2d 6d 65 73 73 61 67 65 0a 20 20 22 46 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 65 64 20 74 6f og-message..."Function.called.to
1620 20 74 72 61 63 65 20 69 74 65 72 61 74 6f 72 20 65 78 65 63 75 74 69 6f 6e 2e 0a 54 68 65 20 66 .trace.iterator.execution..The.f
1640 75 6e 63 74 69 6f 6e 20 6d 75 73 74 20 61 63 63 65 70 74 20 74 68 65 20 73 61 6d 65 20 61 72 67 unction.must.accept.the.same.arg
1660 75 6d 65 6e 74 73 20 61 73 20 62 75 69 6c 74 2d 69 6e 0a 60 6d 65 73 73 61 67 65 27 2c 20 62 75 uments.as.built-in.`message',.bu
1680 74 20 69 73 20 6e 6f 74 20 72 65 73 74 72 69 63 74 65 64 20 69 6e 20 77 68 61 74 20 69 74 20 64 t.is.not.restricted.in.what.it.d
16a0 6f 65 73 20 77 69 74 68 20 74 68 65 0a 6d 65 73 73 61 67 65 73 2e 20 20 49 66 20 74 68 65 20 76 oes.with.the.messages...If.the.v
16c0 61 6c 75 65 20 69 73 20 6e 69 6c 2c 20 74 72 61 63 69 6e 67 20 69 73 20 64 69 73 61 62 6c 65 64 alue.is.nil,.tracing.is.disabled
16e0 20 65 76 65 6e 20 66 6f 72 0a 67 65 6e 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 .even.for.generator.functions.th
1700 61 74 20 61 72 65 20 73 75 70 70 6f 73 65 64 20 74 6f 20 74 72 61 63 65 2e 22 29 0a 0a 0a 28 64 at.are.supposed.to.trace.")...(d
1720 65 66 76 61 72 20 69 74 65 72 32 2d 2d 74 72 61 63 69 6e 67 2d 64 65 70 74 68 20 30 29 0a 0a 28 efvar.iter2--tracing-depth.0)..(
1740 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 76 61 6c 75 65 20 20 20 20 20 20 20 20 20 20 20 6e 69 defvar.iter2--value...........ni
1760 6c 29 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 l).(defvar.iter2--continuations.
1780 20 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 20 20 ..nil).(defvar.iter2--cleanups..
17a0 20 20 20 20 20 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 ......nil).(defvar.iter2--stack.
17c0 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 79 69 ..........nil).(defvar.iter2--yi
17e0 65 6c 64 69 6e 67 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 elding........nil).(defvar.iter2
1800 2d 2d 64 6f 6e 65 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 69 --done............nil).(defvar.i
1820 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 20 20 20 20 20 6e 69 6c 29 0a 28 64 65 66 76 ter2--stack-state.....nil).(defv
1840 61 72 20 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 28 ar.iter2--catcher.........nil).(
1860 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 2d 75 73 65 64 20 20 20 6e 69 defvar.iter2--cleanups-used...ni
1880 6c 29 0a 28 64 65 66 76 61 72 20 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 65 72 2d 64 65 70 74 l).(defvar.iter2--converter-dept
18a0 68 20 30 29 0a 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 2d 64 65 66 75 6e 20 28 6e 61 h.0)...(defmacro.iter2-defun.(na
18c0 6d 65 20 61 72 67 6c 69 73 74 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 43 72 65 61 74 65 me.arglist.&rest.body)..."Create
18e0 20 61 20 67 65 6e 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e 20 4e 41 4d 45 2e 0a 57 68 65 6e .a.generator.function.NAME..When
1900 20 63 61 6c 6c 65 64 2c 20 67 65 6e 65 72 61 74 6f 72 20 72 65 74 75 72 6e 73 20 61 6e 20 69 74 .called,.generator.returns.an.it
1920 65 72 61 74 6f 72 20 6f 62 6a 65 63 74 2e 20 20 53 75 63 63 65 73 73 69 76 65 0a 76 61 6c 75 65 erator.object...Successive.value
1940 73 20 63 61 6e 20 62 65 20 72 65 74 72 69 65 76 65 64 20 66 72 6f 6d 20 61 6e 20 69 74 65 72 61 s.can.be.retrieved.from.an.itera
1960 74 6f 72 20 75 73 69 6e 67 20 60 69 74 65 72 2d 6e 65 78 74 27 2e 0a 0a 46 72 6f 6d 20 67 65 6e tor.using.`iter-next'...From.gen
1980 65 72 61 74 6f 72 20 70 65 72 73 70 65 63 74 69 76 65 2c 20 42 4f 44 59 20 69 73 20 65 78 65 63 erator.perspective,.BODY.is.exec
19a0 75 74 65 64 20 77 68 65 6e 65 76 65 72 20 61 20 6e 65 77 0a 69 74 65 72 61 74 6f 72 20 6f 62 6a uted.whenever.a.new.iterator.obj
19c0 65 63 74 20 69 73 20 63 72 65 61 74 65 64 2e 20 20 41 74 20 65 61 63 68 20 70 6f 69 6e 74 20 60 ect.is.created...At.each.point.`
19e0 69 74 65 72 2d 79 69 65 6c 64 27 20 69 73 20 63 61 6c 6c 65 64 0a 69 6e 20 74 68 65 20 62 6f 64 iter-yield'.is.called.in.the.bod
1a00 79 2c 20 65 76 61 6c 75 61 74 69 6f 6e 20 73 74 6f 70 73 2c 20 61 6e 64 20 69 73 20 72 65 73 75 y,.evaluation.stops,.and.is.resu
1a20 6d 65 64 20 61 74 20 65 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 0a 70 6f 69 6e 74 20 77 69 med.at.exactly.the.same.point.wi
1a40 74 68 20 74 68 65 20 73 61 6d 65 20 73 74 61 74 65 20 28 62 6f 74 68 20 6c 6f 63 61 6c 20 61 6e th.the.same.state.(both.local.an
1a60 64 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 29 20 69 66 0a 60 69 74 65 72 2d 6e 65 78 d.global.variables).if.`iter-nex
1a80 74 27 20 69 73 20 75 73 65 64 20 74 6f 20 71 75 65 72 79 20 61 6e 6f 74 68 65 72 20 76 61 6c 75 t'.is.used.to.query.another.valu
1aa0 65 2e 0a 0a 49 74 65 72 61 74 6f 72 20 6f 62 6a 65 63 74 73 20 6d 75 73 74 20 62 65 20 63 6c 6f e...Iterator.objects.must.be.clo
1ac0 73 65 64 20 77 69 74 68 20 60 69 74 65 72 2d 63 6c 6f 73 65 27 20 75 6e 6c 65 73 73 20 74 68 65 sed.with.`iter-close'.unless.the
1ae0 79 20 61 72 65 0a 66 75 6c 6c 79 20 65 78 68 61 75 73 74 65 64 2c 20 69 2e 65 2e 20 73 69 67 6e y.are.fully.exhausted,.i.e..sign
1b00 61 6c 20 60 69 74 65 72 2d 65 6e 64 2d 6f 66 2d 73 65 71 75 65 6e 63 65 27 2e 20 20 43 61 6c 6c al.`iter-end-of-sequence'...Call
1b20 69 6e 67 0a 60 69 74 65 72 2d 63 6c 6f 73 65 27 20 6f 6e 20 61 6e 20 65 78 68 61 75 73 74 65 64 ing.`iter-close'.on.an.exhausted
1b40 20 69 74 65 72 61 74 6f 72 20 6f 62 6a 65 63 74 20 6f 72 20 65 76 65 6e 20 73 65 76 65 72 61 6c .iterator.object.or.even.several
1b60 0a 74 69 6d 65 73 20 69 73 20 6e 6f 74 20 61 6e 20 65 72 72 6f 72 2e 22 0a 20 20 28 64 65 63 6c .times.is.not.an.error."...(decl
1b80 61 72 65 20 28 64 65 62 75 67 20 64 65 66 75 6e 29 20 28 69 6e 64 65 6e 74 20 32 29 20 28 64 6f are.(debug.defun).(indent.2).(do
1ba0 63 2d 73 74 72 69 6e 67 20 33 29 29 0a 20 20 28 6c 65 74 20 28 28 70 61 72 73 65 64 2d 62 6f 64 c-string.3))...(let.((parsed-bod
1bc0 79 20 28 6d 61 63 72 6f 65 78 70 2d 70 61 72 73 65 2d 62 6f 64 79 20 62 6f 64 79 29 29 29 0a 20 y.(macroexp-parse-body.body)))..
1be0 20 20 20 60 28 64 65 66 75 6e 20 2c 6e 61 6d 65 20 2c 61 72 67 6c 69 73 74 0a 20 20 20 20 20 20 ...`(defun.,name.,arglist.......
1c00 20 2c 40 28 63 61 72 20 70 61 72 73 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 2c 28 69 74 .,@(car.parsed-body)........,(it
1c20 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 75 6e 63 74 69 6f 6e 2d 62 6f 64 79 20 28 63 64 72 20 er2--convert-function-body.(cdr.
1c40 70 61 72 73 65 64 2d 62 6f 64 79 29 20 69 74 65 72 32 2d 67 65 6e 65 72 61 74 65 2d 74 72 61 63 parsed-body).iter2-generate-trac
1c60 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 ing-functions))))..(defmacro.ite
1c80 72 32 2d 6c 61 6d 62 64 61 20 28 61 72 67 6c 69 73 74 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 r2-lambda.(arglist.&rest.body)..
1ca0 20 22 43 72 65 61 74 65 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 67 65 6e 65 72 61 74 6f 72 20 ."Create.an.anonymous.generator.
1cc0 66 75 6e 63 74 69 6f 6e 2e 0a 53 65 65 20 60 69 74 65 72 32 2d 64 65 66 75 6e 27 20 66 6f 72 20 function..See.`iter2-defun'.for.
1ce0 64 65 74 61 69 6c 73 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 6c 61 6d 62 details."...(declare.(debug.lamb
1d00 64 61 29 20 28 69 6e 64 65 6e 74 20 31 29 20 28 64 6f 63 2d 73 74 72 69 6e 67 20 32 29 29 0a 20 da).(indent.1).(doc-string.2))..
1d20 20 28 6c 65 74 20 28 28 70 61 72 73 65 64 2d 62 6f 64 79 20 28 6d 61 63 72 6f 65 78 70 2d 70 61 .(let.((parsed-body.(macroexp-pa
1d40 72 73 65 2d 62 6f 64 79 20 62 6f 64 79 29 29 29 0a 20 20 20 20 60 28 6c 61 6d 62 64 61 20 2c 61 rse-body.body))).....`(lambda.,a
1d60 72 67 6c 69 73 74 0a 20 20 20 20 20 20 20 2c 40 28 63 61 72 20 70 61 72 73 65 64 2d 62 6f 64 79 rglist........,@(car.parsed-body
1d80 29 0a 20 20 20 20 20 20 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 75 6e 63 74 69 )........,(iter2--convert-functi
1da0 6f 6e 2d 62 6f 64 79 20 28 63 64 72 20 70 61 72 73 65 64 2d 62 6f 64 79 29 20 69 74 65 72 32 2d on-body.(cdr.parsed-body).iter2-
1dc0 67 65 6e 65 72 61 74 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 29 29 29 29 0a 0a generate-tracing-functions))))..
1de0 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 64 65 66 75 6e 20 28 6e (defmacro.iter2-tracing-defun.(n
1e00 61 6d 65 20 61 72 67 6c 69 73 74 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 43 72 65 61 74 ame.arglist.&rest.body)..."Creat
1e20 65 20 61 20 74 72 61 63 69 6e 67 20 67 65 6e 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e 20 4e e.a.tracing.generator.function.N
1e40 41 4d 45 2e 0a 53 65 65 20 60 69 74 65 72 32 2d 64 65 66 75 6e 27 20 66 6f 72 20 64 65 74 61 69 AME..See.`iter2-defun'.for.detai
1e60 6c 73 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 64 65 66 75 6e 29 20 28 69 ls."...(declare.(debug.defun).(i
1e80 6e 64 65 6e 74 20 32 29 20 28 64 6f 63 2d 73 74 72 69 6e 67 20 33 29 29 0a 20 20 28 6c 65 74 20 ndent.2).(doc-string.3))...(let.
1ea0 28 28 69 74 65 72 32 2d 67 65 6e 65 72 61 74 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f ((iter2-generate-tracing-functio
1ec0 6e 73 20 74 29 29 0a 20 20 20 20 28 6d 61 63 72 6f 65 78 70 61 6e 64 2d 31 20 60 28 69 74 65 72 ns.t)).....(macroexpand-1.`(iter
1ee0 32 2d 64 65 66 75 6e 20 2c 6e 61 6d 65 20 2c 61 72 67 6c 69 73 74 20 2c 40 62 6f 64 79 29 29 29 2-defun.,name.,arglist.,@body)))
1f00 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 6c 61 6d 62 64 )..(defmacro.iter2-tracing-lambd
1f20 61 20 28 61 72 67 6c 69 73 74 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 43 72 65 61 74 65 a.(arglist.&rest.body)..."Create
1f40 20 61 20 74 72 61 63 69 6e 67 20 61 6e 6f 6e 79 6d 6f 75 73 20 67 65 6e 65 72 61 74 6f 72 20 66 .a.tracing.anonymous.generator.f
1f60 75 6e 63 74 69 6f 6e 20 4e 41 4d 45 2e 0a 53 65 65 20 60 69 74 65 72 32 2d 64 65 66 75 6e 27 20 unction.NAME..See.`iter2-defun'.
1f80 66 6f 72 20 64 65 74 61 69 6c 73 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 for.details."...(declare.(debug.
1fa0 6c 61 6d 62 64 61 29 20 28 69 6e 64 65 6e 74 20 31 29 20 28 64 6f 63 2d 73 74 72 69 6e 67 20 32 lambda).(indent.1).(doc-string.2
1fc0 29 29 0a 20 20 28 6c 65 74 20 28 28 69 74 65 72 32 2d 67 65 6e 65 72 61 74 65 2d 74 72 61 63 69 ))...(let.((iter2-generate-traci
1fe0 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 20 74 29 29 0a 20 20 20 20 28 6d 61 63 72 6f 65 78 70 61 6e ng-functions.t)).....(macroexpan
2000 64 2d 31 20 60 28 69 74 65 72 32 2d 6c 61 6d 62 64 61 20 2c 61 72 67 6c 69 73 74 20 2c 40 62 6f d-1.`(iter2-lambda.,arglist.,@bo
2020 64 79 29 29 29 29 0a 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 2d 6e 65 78 74 20 28 69 dy))))...(defmacro.iter2-next.(i
2040 74 65 72 61 74 6f 72 20 26 6f 70 74 69 6f 6e 61 6c 20 79 69 65 6c 64 2d 72 65 73 75 6c 74 29 0a terator.&optional.yield-result).
2060 20 20 22 53 69 6d 69 6c 61 72 20 74 6f 20 60 69 74 65 72 2d 6e 65 78 74 27 2c 20 62 75 74 20 63 .."Similar.to.`iter-next',.but.c
2080 61 6e 20 69 6e 6a 65 63 74 20 65 72 72 6f 72 73 20 69 6e 74 6f 20 74 68 65 20 49 54 45 52 41 54 an.inject.errors.into.the.ITERAT
20a0 4f 52 2e 0a 43 61 6e 20 6f 6e 6c 79 20 62 65 20 75 73 65 64 20 77 69 74 68 20 60 69 74 65 72 32 OR..Can.only.be.used.with.`iter2
20c0 27 20 69 74 65 72 61 74 6f 72 73 2c 20 6e 6f 74 20 74 68 6f 73 65 20 6f 66 20 6f 72 69 67 69 6e '.iterators,.not.those.of.origin
20e0 61 6c 0a 60 67 65 6e 65 72 61 74 6f 72 27 20 70 61 63 6b 61 67 65 20 28 60 69 74 65 72 2d 6e 65 al.`generator'.package.(`iter-ne
2100 78 74 27 20 77 6f 72 6b 73 20 77 69 74 68 20 65 69 74 68 65 72 2c 20 62 75 74 20 68 61 73 20 6c xt'.works.with.either,.but.has.l
2120 65 73 73 0a 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 29 2e 0a 0a 49 66 20 66 6f 72 6d 20 59 49 45 ess.functionality)...If.form.YIE
2140 4c 44 2d 52 45 53 55 4c 54 20 65 78 69 74 73 20 6e 6f 6e 6c 6f 63 61 6c 6c 79 20 28 75 73 69 6e LD-RESULT.exits.nonlocally.(usin
2160 67 20 60 73 69 67 6e 61 6c 27 2c 20 60 74 68 72 6f 77 27 20 6f 72 0a 61 6e 79 20 64 65 72 69 76 g.`signal',.`throw'.or.any.deriv
2180 65 64 20 6d 65 63 68 61 6e 69 73 6d 29 2c 20 74 68 69 73 20 6e 6f 6e 6c 6f 63 61 6c 20 65 78 69 ed.mechanism),.this.nonlocal.exi
21a0 74 20 69 73 20 e2 80 9c 69 6e 6a 65 63 74 65 64 e2 80 9d 20 69 6e 74 6f 20 74 68 65 0a 67 65 6e t.is....injected....into.the.gen
21c0 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e 2e 20 20 49 74 20 74 68 65 6e 20 77 6f 72 6b 73 20 erator.function...It.then.works.
21e0 61 73 20 69 66 20 74 68 65 20 65 78 69 74 20 77 61 73 20 74 72 69 67 67 65 72 65 64 0a 62 79 20 as.if.the.exit.was.triggered.by.
2200 74 68 65 20 6c 61 73 74 20 69 73 73 75 65 64 20 60 28 69 74 65 72 2d 79 69 65 6c 64 20 2e 2e 2e the.last.issued.`(iter-yield....
2220 29 27 20 66 6f 72 6d 2e 20 20 49 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 0a 61 6e )'.form...If.the.function.has.an
2240 20 61 70 70 72 6f 70 72 69 61 74 65 20 60 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 27 20 6f 72 .appropriate.`condition-case'.or
2260 20 60 63 61 74 63 68 27 20 68 61 6e 64 6c 65 72 2c 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a 69 73 .`catch'.handler,.the.control.is
2280 20 73 75 62 73 65 71 75 65 6e 74 6c 79 20 74 72 61 6e 73 66 65 72 72 65 64 20 74 6f 20 69 74 2e .subsequently.transferred.to.it.
22a0 0a 0a 49 66 20 59 49 45 4c 44 2d 52 45 53 55 4c 54 20 6e 65 76 65 72 20 65 78 69 74 73 20 6e 6f ..If.YIELD-RESULT.never.exits.no
22c0 6e 6c 6f 63 61 6c 6c 79 2c 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 69 73 20 6d 61 63 72 6f nlocally,.behavior.of.this.macro
22e0 20 69 73 0a 69 64 65 6e 74 69 63 61 6c 20 74 6f 20 74 68 61 74 20 6f 66 20 60 69 74 65 72 2d 6e .is.identical.to.that.of.`iter-n
2300 65 78 74 27 20 28 77 69 74 68 20 74 68 65 20 65 78 63 65 70 74 69 6f 6e 20 74 68 61 74 20 74 68 ext'.(with.the.exception.that.th
2320 65 0a 69 74 65 72 61 74 6f 72 20 6d 75 73 74 20 62 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 e.iterator.must.be.created.with.
2340 60 69 74 65 72 32 27 29 2e 22 0a 20 20 60 28 66 75 6e 63 61 6c 6c 20 2c 69 74 65 72 61 74 6f 72 `iter2')."...`(funcall.,iterator
2360 20 3a 69 74 65 72 32 2d 6e 65 78 74 20 28 6c 61 6d 62 64 61 20 28 29 20 2c 40 28 6d 61 63 72 6f .:iter2-next.(lambda.().,@(macro
2380 65 78 70 2d 75 6e 70 72 6f 67 6e 20 79 69 65 6c 64 2d 72 65 73 75 6c 74 29 29 29 29 0a 0a 0a 28 exp-unprogn.yield-result))))...(
23a0 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 6c 69 74 65 72 61 6c 70 20 28 78 29 0a 20 20 22 44 65 74 defun.iter2--literalp.(x)..."Det
23c0 65 72 6d 69 6e 65 20 69 66 20 58 20 69 6e 76 6f 6c 76 65 73 20 6e 6f 20 65 76 61 6c 75 61 74 69 ermine.if.X.involves.no.evaluati
23e0 6f 6e 2e 22 0a 20 20 28 69 66 20 28 61 74 6f 6d 20 78 29 0a 20 20 20 20 20 20 28 6f 72 20 28 6e on."...(if.(atom.x).......(or.(n
2400 6f 74 20 28 73 79 6d 62 6f 6c 70 20 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71 20 ot.(symbolp.x))...........(memq.
2420 78 20 27 28 6e 69 6c 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 77 6f 72 64 70 20 x.'(nil.t))...........(keywordp.
2440 78 29 29 0a 20 20 20 20 3b 3b 20 44 6f 6e 27 74 20 63 68 65 63 6b 20 66 6f 72 20 77 72 6f 6e 67 x)).....;;.Don't.check.for.wrong
2460 20 66 6f 72 6d 73 20 68 65 72 65 3a 20 6a 75 73 74 20 6c 65 74 20 69 74 20 66 61 69 6c 20 6c 61 .forms.here:.just.let.it.fail.la
2480 74 65 72 20 69 6e 20 73 75 63 68 20 61 20 63 61 73 65 2e 0a 20 20 20 20 28 6d 65 6d 71 20 28 63 ter.in.such.a.case......(memq.(c
24a0 61 72 20 78 29 20 27 28 71 75 6f 74 65 20 66 75 6e 63 74 69 6f 6e 29 29 29 29 0a 0a 28 64 65 66 ar.x).'(quote.function))))..(def
24c0 75 6e 20 69 74 65 72 32 2d 2d 6c 69 74 65 72 61 6c 2d 6f 72 2d 76 61 72 69 61 62 6c 65 2d 70 20 un.iter2--literal-or-variable-p.
24e0 28 78 29 0a 20 20 28 6f 72 20 28 61 74 6f 6d 20 78 29 20 28 6d 65 6d 71 20 28 63 61 72 20 78 29 (x)...(or.(atom.x).(memq.(car.x)
2500 20 27 28 71 75 6f 74 65 20 66 75 6e 63 74 69 6f 6e 29 29 29 29 0a 0a 3b 3b 20 44 75 72 69 6e 67 .'(quote.function))))..;;.During
2520 20 62 79 74 65 2d 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 66 75 6e 63 74 69 6f 6e 20 60 73 70 65 .byte-compilation,.function.`spe
2540 63 69 61 6c 2d 76 61 72 69 61 62 6c 65 2d 70 27 20 77 6f 6e 27 74 20 67 69 76 65 20 69 6e 74 65 cial-variable-p'.won't.give.inte
2560 6e 64 65 64 20 72 65 73 75 6c 74 73 20 66 6f 72 0a 3b 3b 20 76 61 72 69 61 62 6c 65 73 20 64 65 nded.results.for.;;.variables.de
2580 63 6c 61 72 65 64 20 69 6e 20 74 68 65 20 66 69 6c 65 20 62 65 69 6e 67 20 63 6f 6d 70 69 6c 65 clared.in.the.file.being.compile
25a0 64 2e 20 20 45 2e 67 2e 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 72 20 69 74 73 65 6c 66 20 75 73 d...E.g..byte-compiler.itself.us
25c0 65 64 20 28 70 72 65 2d 32 39 29 0a 3b 3b 20 74 6f 20 75 73 65 20 60 62 79 74 65 2d 63 6f 6d 70 ed.(pre-29).;;.to.use.`byte-comp
25e0 69 6c 65 2d 6e 6f 74 2d 6c 65 78 69 63 61 6c 2d 76 61 72 2d 70 27 20 74 6f 20 64 65 63 69 64 65 ile-not-lexical-var-p'.to.decide
2600 20 68 6f 77 20 74 6f 20 63 6f 6d 70 69 6c 65 20 6c 65 74 2d 62 69 6e 64 69 6e 67 73 2e 20 20 4f .how.to.compile.let-bindings...O
2620 66 0a 3b 3b 20 63 6f 75 72 73 65 2c 20 74 68 65 79 20 68 61 64 20 74 6f 20 72 65 6d 6f 76 65 20 f.;;.course,.they.had.to.remove.
2640 74 68 65 20 66 75 6e 63 74 69 6f 6e 2c 20 65 76 65 6e 20 69 66 20 69 74 20 77 61 73 73 20 6e 6f the.function,.even.if.it.wass.no
2660 74 20 70 72 69 76 61 74 65 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 45 6c 69 73 70 0a 3b 3b 20 t.private.according.to.Elisp.;;.
2680 6e 61 6d 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 2e 20 20 49 74 20 73 65 65 6d 73 20 77 65 naming.conventions...It.seems.we
26a0 20 73 74 69 6c 6c 20 63 61 6e 20 75 73 65 20 76 61 72 69 61 62 6c 65 20 60 62 79 74 65 2d 63 6f .still.can.use.variable.`byte-co
26c0 6d 70 69 6c 65 2d 62 6f 75 6e 64 2d 76 61 72 69 61 62 6c 65 73 27 0a 3b 3b 20 61 74 20 6c 65 61 mpile-bound-variables'.;;.at.lea
26e0 73 74 2e 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 73 70 65 63 69 61 6c 2d 76 61 72 69 61 62 st..(defun.iter2--special-variab
2700 6c 65 2d 70 20 28 76 61 72 20 26 6f 70 74 69 6f 6e 61 6c 20 77 61 72 6e 29 0a 20 20 28 63 6f 6e le-p.(var.&optional.warn)...(con
2720 64 20 28 28 62 6f 75 6e 64 70 20 27 62 79 74 65 2d 63 6f 6d 70 69 6c 65 2d 62 6f 75 6e 64 2d 76 d.((boundp.'byte-compile-bound-v
2740 61 72 69 61 62 6c 65 73 29 0a 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 73 70 65 63 69 61 6c 2d ariables)..........(or.(special-
2760 76 61 72 69 61 62 6c 65 2d 70 20 76 61 72 29 20 28 6d 65 6d 71 20 76 61 72 20 62 79 74 65 2d 63 variable-p.var).(memq.var.byte-c
2780 6f 6d 70 69 6c 65 2d 62 6f 75 6e 64 2d 76 61 72 69 61 62 6c 65 73 29 29 29 0a 20 20 20 20 20 20 ompile-bound-variables))).......
27a0 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 77 61 72 6e 0a 20 20 20 20 20 20 20 ..(t..........(when.warn........
27c0 20 20 20 20 28 77 61 72 6e 20 22 56 61 72 69 61 62 6c 65 20 60 62 79 74 65 2d 63 6f 6d 70 69 6c ....(warn."Variable.`byte-compil
27e0 65 2d 62 6f 75 6e 64 2d 76 61 72 69 61 62 6c 65 73 27 20 69 73 20 6d 69 73 73 69 6e 67 2c 20 73 e-bound-variables'.is.missing,.s
2800 70 65 63 69 61 6c 20 76 61 72 69 61 62 6c 65 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 62 79 74 65 pecial.variable.bindings.in.byte
2820 2d 63 6f 6d 70 69 6c 65 64 20 60 69 74 65 72 32 2d 64 65 66 75 6e 27 20 6d 69 67 68 74 20 6d 69 -compiled.`iter2-defun'.might.mi
2840 73 62 65 68 61 76 65 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 70 65 63 69 61 6c 2d 76 61 72 sbehave"))..........(special-var
2860 69 61 62 6c 65 2d 70 20 76 61 72 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 iable-p.var))))..(defmacro.iter2
2880 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 28 66 6f 72 6d 73 29 0a 20 20 28 64 65 63 6c 61 --convert-progn.(forms)...(decla
28a0 72 65 20 28 64 65 62 75 67 20 28 66 6f 72 6d 29 29 29 0a 20 20 60 28 69 74 65 72 32 2d 2d 63 6f re.(debug.(form)))...`(iter2--co
28c0 6e 76 65 72 74 2d 66 6f 72 6d 20 28 6d 61 63 72 6f 65 78 70 2d 70 72 6f 67 6e 20 2c 66 6f 72 6d nvert-form.(macroexp-progn.,form
28e0 73 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 2d 2d 61 64 64 2d 63 6f 6e 76 65 s)))..(defmacro.iter2--add-conve
2900 72 74 65 64 2d 66 6f 72 6d 20 28 70 6c 61 63 65 20 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 29 rted-form.(place.converted-form)
2920 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 28 70 6c 61 63 65 20 66 6f 72 6d 29 29 ...(declare.(debug.(place.form))
2940 29 0a 20 20 60 28 73 65 74 66 20 2c 70 6c 61 63 65 20 28 6e 63 6f 6e 63 20 28 72 65 76 65 72 73 )...`(setf.,place.(nconc.(revers
2960 65 20 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 2c 63 6f 6e 76 65 72 74 65 64 2d 66 e.(macroexp-unprogn.,converted-f
2980 6f 72 6d 29 29 20 2c 70 6c 61 63 65 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 69 74 65 72 32 orm)).,place)))..(defmacro.iter2
29a0 2d 2d 66 69 6e 69 73 68 2d 63 68 75 6e 6b 20 28 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 --finish-chunk.(converted-chunks
29c0 20 63 6f 6e 76 65 72 74 65 64 20 26 72 65 73 74 20 6e 65 78 74 2d 63 68 75 6e 6b 2d 66 6f 72 6d .converted.&rest.next-chunk-form
29e0 73 29 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 28 70 6c 61 63 65 20 70 6c 61 63 s)...(declare.(debug.(place.plac
2a00 65 20 26 72 65 73 74 20 66 6f 72 6d 29 29 29 0a 20 20 60 28 73 65 74 66 20 2c 63 6f 6e 76 65 72 e.&rest.form)))...`(setf.,conver
2a20 74 65 64 2d 63 68 75 6e 6b 73 20 28 63 6f 6e 73 20 28 6d 61 63 72 6f 65 78 70 2d 70 72 6f 67 6e ted-chunks.(cons.(macroexp-progn
2a40 20 28 6e 72 65 76 65 72 73 65 20 2c 63 6f 6e 76 65 72 74 65 64 29 29 20 2c 63 6f 6e 76 65 72 74 .(nreverse.,converted)).,convert
2a60 65 64 2d 63 68 75 6e 6b 73 29 0a 20 20 20 20 20 20 20 20 20 2c 63 6f 6e 76 65 72 74 65 64 20 20 ed-chunks)..........,converted..
2a80 20 20 20 20 20 20 2c 28 77 68 65 6e 20 6e 65 78 74 2d 63 68 75 6e 6b 2d 66 6f 72 6d 73 20 60 28 ......,(when.next-chunk-forms.`(
2aa0 6c 69 73 74 20 2c 40 6e 65 78 74 2d 63 68 75 6e 6b 2d 66 6f 72 6d 73 29 29 29 29 0a 0a 28 64 65 list.,@next-chunk-forms))))..(de
2ac0 66 73 75 62 73 74 20 69 74 65 72 32 2d 2d 69 64 65 6e 74 69 74 79 2d 62 69 6e 64 20 28 76 61 6c fsubst.iter2--identity-bind.(val
2ae0 75 65 29 0a 20 20 22 43 72 65 61 74 65 20 61 6e 20 60 69 64 65 6e 74 69 74 79 27 2d 6c 69 6b 65 ue)..."Create.an.`identity'-like
2b00 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 62 69 6e 64 20 69 74 20 77 69 74 68 20 67 69 76 65 6e .function.and.bind.it.with.given
2b20 20 56 41 4c 55 45 2e 22 0a 20 20 28 6c 61 6d 62 64 61 20 28 29 20 76 61 6c 75 65 29 29 0a 0a 28 .VALUE."...(lambda.().value))..(
2b40 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 75 6e 63 74 69 6f 6e 2d 62 6f defun.iter2--convert-function-bo
2b60 64 79 20 28 62 6f 64 79 20 26 6f 70 74 69 6f 6e 61 6c 20 74 72 61 63 69 6e 67 29 0a 20 20 28 75 dy.(body.&optional.tracing)...(u
2b80 6e 6c 65 73 73 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 0a 20 20 20 20 28 65 72 72 6f 72 nless.lexical-binding.....(error
2ba0 20 22 47 65 6e 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 72 65 71 75 69 72 65 20 6c 65 ."Generator.functions.require.le
2bc0 78 69 63 61 6c 20 62 69 6e 64 69 6e 67 22 29 29 0a 20 20 28 6c 65 74 2a 20 28 28 69 74 65 72 32 xical.binding"))...(let*.((iter2
2be0 2d 67 65 6e 65 72 61 74 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 20 74 72 61 63 -generate-tracing-functions.trac
2c00 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 76 61 6c 75 65 20 20 20 20 20 ing)..........(iter2--value.....
2c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 76 ................(make-symbol."$v
2c40 61 6c 75 65 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 alue"))..........(iter2--continu
2c60 61 74 69 6f 6e 73 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 ations.............(make-symbol.
2c80 22 24 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 "$continuations"))..........(ite
2ca0 72 32 2d 2d 63 6c 65 61 6e 75 70 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d r2--cleanups..................(m
2cc0 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 63 6c 65 61 6e 75 70 73 22 29 29 0a 20 20 20 20 20 20 20 ake-symbol."$cleanups"))........
2ce0 20 20 28 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(iter2--stack.................
2d00 20 20 20 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 73 74 61 63 6b 22 29 29 0a 20 20 20 20 ....(make-symbol."$stack")).....
2d20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 79 69 65 6c 64 69 6e 67 20 20 20 20 20 20 20 20 20 20 20 .....(iter2--yielding...........
2d40 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 79 69 65 6c 64 69 6e 67 22 29 .......(make-symbol."$yielding")
2d60 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 6e 65 20 20 20 20 20 20 20 20 20 )..........(iter2--done.........
2d80 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 64 6f 6e 65 .............(make-symbol."$done
2da0 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 "))..........(iter2--stack-state
2dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 73 74 ...............(make-symbol."$st
2de0 61 63 6b 2d 73 74 61 74 65 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 61 ack-state"))..........(iter2--ca
2e00 74 63 68 65 72 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 79 tcher...................(make-sy
2e20 6d 62 6f 6c 20 22 24 63 61 74 63 68 65 72 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 mbol."$catcher"))..........(iter
2e40 32 2d 2d 63 6c 65 61 6e 75 70 73 2d 75 73 65 64 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 2--cleanups-used.............nil
2e60 29 0a 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 2d 64 65 62 75 67 67 65 72 20 20 20 20 20 20 )..........(apply-debugger......
2e80 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 26 72 65 73 74 20 66 6f 72 6d .............(lambda.(&rest.form
2ea0 73 29 20 66 6f 72 6d 73 29 29 29 0a 20 20 20 20 28 70 63 61 73 65 20 62 6f 64 79 0a 20 20 20 20 s).forms))).....(pcase.body.....
2ec0 20 20 28 60 28 28 65 64 65 62 75 67 2d 65 6e 74 65 72 20 2c 65 64 65 62 75 67 2d 6e 61 6d 65 20 ..(`((edebug-enter.,edebug-name.
2ee0 2c 65 64 65 62 75 67 2d 61 72 67 73 20 28 66 75 6e 63 74 69 6f 6e 20 28 6c 61 6d 62 64 61 20 28 ,edebug-args.(function.(lambda.(
2f00 29 20 2e 20 2c 72 65 61 6c 2d 62 6f 64 79 29 29 29 29 0a 20 20 20 20 20 20 20 3b 3b 20 54 68 69 )...,real-body))))........;;.Thi
2f20 73 20 69 73 20 61 20 68 61 63 6b 2c 20 62 75 74 20 73 69 6e 63 65 20 45 6d 61 63 73 20 63 6f 64 s.is.a.hack,.but.since.Emacs.cod
2f40 65 20 28 45 64 65 62 75 67 20 69 6e 20 74 68 69 73 20 63 61 73 65 29 20 69 73 20 70 72 65 74 74 e.(Edebug.in.this.case).is.prett
2f60 79 20 73 74 61 62 6c 65 2c 20 49 27 6d 0a 20 20 20 20 20 20 20 3b 3b 20 73 75 72 65 20 69 74 20 y.stable,.I'm........;;.sure.it.
2f80 77 69 6c 6c 20 6b 65 65 70 20 77 6f 72 6b 69 6e 67 2e 20 20 54 68 65 20 69 64 65 61 20 69 73 20 will.keep.working...The.idea.is.
2fa0 74 6f 20 69 6e 76 6f 6b 65 20 60 65 64 65 62 75 67 2d 65 6e 74 65 72 27 20 6e 6f 74 20 77 68 65 to.invoke.`edebug-enter'.not.whe
2fc0 6e 20 74 68 65 0a 20 20 20 20 20 20 20 3b 3b 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 66 69 72 73 n.the........;;.function.is.firs
2fe0 74 20 63 61 6c 6c 65 64 20 28 74 68 69 73 20 63 72 65 61 74 65 73 20 61 6e 64 20 72 65 74 75 72 t.called.(this.creates.and.retur
3000 6e 73 20 61 6e 20 69 74 65 72 61 74 6f 72 20 6f 62 6a 65 63 74 20 61 6e 64 0a 20 20 20 20 20 20 ns.an.iterator.object.and.......
3020 20 3b 3b 20 64 6f 65 73 6e 27 74 20 69 6e 76 6f 6c 76 65 20 75 73 65 72 20 63 6f 64 65 20 61 74 .;;.doesn't.involve.user.code.at
3040 20 61 6c 6c 29 2c 20 62 75 74 20 69 6e 73 74 65 61 64 20 77 68 65 6e 20 69 74 20 72 65 63 65 69 .all),.but.instead.when.it.recei
3060 76 65 73 20 63 6f 6e 74 72 6f 6c 20 61 66 74 65 72 0a 20 20 20 20 20 20 20 3b 3b 20 60 69 74 65 ves.control.after........;;.`ite
3080 72 2d 6e 65 78 74 27 20 6f 72 20 60 69 74 65 72 2d 79 69 65 6c 64 27 20 63 61 6c 6c 2e 20 20 54 r-next'.or.`iter-yield'.call...T
30a0 68 69 73 20 61 6c 73 6f 20 73 6f 6c 76 65 73 20 74 68 65 20 69 73 73 75 65 20 77 69 74 68 20 66 his.also.solves.the.issue.with.f
30c0 6f 72 6d 0a 20 20 20 20 20 20 20 3b 3b 20 63 6f 6e 76 65 72 73 69 6f 6e 3a 20 6e 6f 72 6d 61 6c orm........;;.conversion:.normal
30e0 6c 79 20 60 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 27 20 64 6f 65 73 6e 27 74 ly.`iter2--convert-form'.doesn't
3100 20 72 65 63 75 72 73 65 20 69 6e 74 6f 20 6e 65 73 74 65 64 20 6c 61 6d 62 64 61 73 2e 0a 20 20 .recurse.into.nested.lambdas....
3120 20 20 20 20 20 28 73 65 74 71 20 62 6f 64 79 20 20 20 20 20 20 20 20 20 20 20 72 65 61 6c 2d 62 .....(setq.body...........real-b
3140 6f 64 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70 6c 79 2d 64 65 62 75 67 67 65 72 20 ody..............apply-debugger.
3160 28 6c 61 6d 62 64 61 20 28 26 72 65 73 74 20 66 6f 72 6d 73 29 20 60 28 28 65 64 65 62 75 67 2d (lambda.(&rest.forms).`((edebug-
3180 65 6e 74 65 72 20 2c 65 64 65 62 75 67 2d 6e 61 6d 65 20 2c 65 64 65 62 75 67 2d 61 72 67 73 20 enter.,edebug-name.,edebug-args.
31a0 28 66 75 6e 63 74 69 6f 6e 20 28 6c 61 6d 62 64 61 20 28 29 20 2c 40 66 6f 72 6d 73 29 29 29 29 (function.(lambda.().,@forms))))
31c0 29 29 29 29 0a 20 20 20 20 3b 3b 20 4e 65 65 64 20 74 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 )))).....;;.Need.to.convert.the.
31e0 62 6f 64 79 20 6e 6f 77 2c 20 73 69 6e 63 65 20 74 68 69 73 20 61 66 66 65 63 74 73 20 61 74 20 body.now,.since.this.affects.at.
3200 6c 65 61 73 74 20 60 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 2d 75 73 65 64 27 2e 0a 20 20 least.`iter2--cleanups-used'....
3220 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 ..(let.((converted.(iter2--conve
3240 72 74 2d 70 72 6f 67 6e 20 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 60 28 6c 65 74 20 28 2c 69 rt-progn.body))).......`(let.(,i
3260 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 ter2--continuations.............
3280 20 2c 40 28 77 68 65 6e 20 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 2d 75 73 65 64 20 28 6c .,@(when.iter2--cleanups-used.(l
32a0 69 73 74 20 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 ist.iter2--cleanups))...........
32c0 20 20 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 ...,iter2--stack..............,i
32e0 74 65 72 32 2d 2d 79 69 65 6c 64 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 4d 75 73 74 ter2--yielding)..........;;.Must
3300 20 6e 6f 74 20 62 65 20 6d 6f 76 65 64 20 74 6f 20 60 6c 65 74 27 20 61 62 6f 76 65 2c 20 73 69 .not.be.moved.to.`let'.above,.si
3320 6e 63 65 20 74 68 65 20 6c 61 6d 62 64 61 20 61 63 63 65 73 73 65 73 20 74 68 65 20 6f 74 68 65 nce.the.lambda.accesses.the.othe
3340 72 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 76 61 72 69 61 62 6c 65 73 20 64 65 63 6c 61 72 65 64 r..........;;.variables.declared
3360 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 63 .there...........(setq.,iter2--c
3380 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 28 6c 69 73 74 20 28 6c 61 6d 62 64 61 20 28 2c 69 74 65 ontinuations.(list.(lambda.(,ite
33a0 72 32 2d 2d 76 61 6c 75 65 29 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 r2--value).,@(macroexp-unprogn.(
33c0 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 iter2--merge-continuation-form.c
33e0 6f 6e 76 65 72 74 65 64 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 onverted)))))..........(lambda.(
3400 6f 70 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e operation.value)............(con
3420 64 20 28 28 6f 72 20 28 65 71 20 6f 70 65 72 61 74 69 6f 6e 20 3a 69 74 65 72 32 2d 6e 65 78 74 d.((or.(eq.operation.:iter2-next
3440 29 20 20 20 20 20 3b 20 4d 61 6b 65 20 69 74 20 66 61 73 74 65 72 20 66 6f 72 20 6f 75 72 20 6f ).....;.Make.it.faster.for.our.o
3460 77 6e 20 65 78 74 65 6e 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 wn.extension....................
3480 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 6f 70 65 72 61 74 69 6f 6e 20 3a 6e 65 78 74 29 20 20 ....(when.(eq.operation.:next)..
34a0 20 20 20 3b 20 42 75 74 20 6b 65 65 70 20 69 74 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 ...;.But.keep.it.compatible.with
34c0 20 60 67 65 6e 65 72 61 74 6f 72 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .`generator'....................
34e0 20 20 20 20 20 20 28 73 65 74 71 20 76 61 6c 75 65 20 28 69 74 65 72 32 2d 2d 69 64 65 6e 74 69 ......(setq.value.(iter2--identi
3500 74 79 2d 62 69 6e 64 20 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ty-bind.value)).................
3520 20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 74 20 69 73 20 6f 6e 6c 79 20 74 6f 20 6d 61 6b ........;;.This.t.is.only.to.mak
3540 65 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 20 61 20 62 69 74 20 6d 6f 72 65 20 e.byte-compiled.code.a.bit.more.
3560 65 66 66 69 63 69 65 6e 74 2c 20 62 65 63 61 75 73 65 20 6f 74 68 65 72 77 69 73 65 0a 20 20 20 efficient,.because.otherwise....
3580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 28 61 73 20 6f 66 20 45 .....................;;.(as.of.E
35a0 6d 61 63 73 20 32 39 29 20 69 74 20 64 6f 65 73 6e 27 74 20 75 6e 64 65 72 73 74 61 6e 64 20 74 macs.29).it.doesn't.understand.t
35c0 68 61 74 20 74 68 69 73 20 62 72 61 6e 63 68 20 69 73 20 61 6c 77 61 79 73 20 74 72 75 74 68 79 hat.this.branch.is.always.truthy
35e0 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 74 29 29 0a 20 20 ..........................t))...
3600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 66 75 6e 63 61 6c 6c 20 61 70 70 6c 79 ................,@(funcall.apply
3620 2d 64 65 62 75 67 67 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 -debugger.......................
3640 20 20 20 20 20 20 20 3b 3b 20 52 65 77 72 69 74 74 65 6e 20 69 6e 20 61 20 73 6f 6d 65 77 68 61 .......;;.Rewritten.in.a.somewha
3660 74 20 77 65 69 72 64 20 66 6f 72 6d 20 74 6f 20 6d 61 78 69 6d 69 7a 65 20 70 65 72 66 6f 72 6d t.weird.form.to.maximize.perform
3680 61 6e 63 65 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 ance............................
36a0 20 20 20 60 28 77 68 69 6c 65 20 28 70 72 6f 67 6e 20 28 73 65 74 71 20 76 61 6c 75 65 20 2c 28 ...`(while.(progn.(setq.value.,(
36c0 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 iter2--continuation-invocation-f
36e0 6f 72 6d 20 27 76 61 6c 75 65 20 60 28 6f 72 20 28 70 6f 70 20 2c 69 74 65 72 32 2d 2d 63 6f 6e orm.'value.`(or.(pop.,iter2--con
3700 74 69 6e 75 61 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tinuations).....................
3720 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 ................................
3740 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 ................................
3760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 69 67 6e 61 6c 20 27 69 ......................(signal.'i
3780 74 65 72 2d 65 6e 64 2d 6f 66 2d 73 65 71 75 65 6e 63 65 20 28 66 75 6e 63 61 6c 6c 20 76 61 6c ter-end-of-sequence.(funcall.val
37a0 75 65 29 29 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 20 ue))))).........................
37c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 2c 69 74 65 72 32 2d ....................(not.,iter2-
37e0 2d 79 69 65 6c 64 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -yielding)).....................
3800 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 61 6c 75 65 20 28 69 74 65 72 32 2d 2d ............(setq.value.(iter2--
3820 69 64 65 6e 74 69 74 79 2d 62 69 6e 64 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 identity-bind.value)))..........
3840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 73 65 74 71 20 2c 69 74 65 72 ....................`(setq.,iter
3860 32 2d 2d 79 69 65 6c 64 69 6e 67 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2--yielding.nil)................
3880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 ..............`value))..........
38a0 20 20 20 20 20 20 20 20 28 28 65 71 20 6f 70 65 72 61 74 69 6f 6e 20 3a 63 6c 6f 73 65 29 0a 20 ........((eq.operation.:close)..
38c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 66 75 6e 63 61 6c 6c 20 61 70 70 6c .................,@(funcall.appl
38e0 79 2d 64 65 62 75 67 67 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 y-debugger......................
3900 20 20 20 20 20 20 20 20 28 69 66 20 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 2d 75 73 65 64 ........(if.iter2--cleanups-used
3920 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 20 ................................
3940 20 20 60 28 6c 65 74 20 28 28 63 6c 65 61 6e 75 70 73 20 2c 69 74 65 72 32 2d 2d 63 6c 65 61 6e ..`(let.((cleanups.,iter2--clean
3960 75 70 73 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 20 20 20 ups))...........................
3980 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 ..........(setq.,iter2--continua
39a0 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tions.nil.......................
39c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 63 6c 65 61 ....................,iter2--clea
39e0 6e 75 70 73 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nups......nil...................
3a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d ........................,iter2--
3a20 73 74 61 63 6b 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 stack.........nil)..............
3a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 63 6c 65 61 6e .......................(if.clean
3a60 75 70 73 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 ups.............................
3a80 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 2d 63 6c 65 61 6e 2d 75 70 20 ............(iter2--do-clean-up.
3aa0 63 6c 65 61 6e 75 70 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cleanups))).....................
3ac0 20 20 20 20 20 20 20 20 20 20 20 60 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e ...........`(setq.,iter2--contin
3ae0 75 61 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uations.nil.....................
3b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 ..................,iter2--stack.
3b20 20 20 20 20 20 20 20 20 6e 69 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........nil)))).................
3b40 20 28 74 20 28 65 72 72 6f 72 20 22 55 6e 6b 6e 6f 77 6e 20 69 74 65 72 61 74 6f 72 20 6f 70 65 .(t.(error."Unknown.iterator.ope
3b60 72 61 74 69 6f 6e 20 25 53 22 20 6f 70 65 72 61 74 69 6f 6e 29 29 29 29 29 29 29 29 0a 0a 28 64 ration.%S".operation))))))))..(d
3b80 65 66 73 75 62 73 74 20 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 61 6e 64 20 28 66 efsubst.iter2--do-macroexpand.(f
3ba0 6f 72 6d 29 0a 20 20 3b 3b 20 50 72 65 76 65 6e 74 20 60 6d 61 63 72 6f 65 78 70 61 6e 64 27 20 orm)...;;.Prevent.`macroexpand'.
3bc0 66 72 6f 6d 20 65 78 70 61 6e 64 69 6e 67 20 6d 61 63 72 6f 73 20 66 6f 72 20 77 68 69 63 68 20 from.expanding.macros.for.which.
3be0 77 65 20 68 61 76 65 20 73 70 65 63 69 61 6c 20 68 61 6e 64 6c 69 6e 67 2e 0a 20 20 28 6d 61 63 we.have.special.handling....(mac
3c00 72 6f 65 78 70 61 6e 64 20 66 6f 72 6d 20 27 28 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 roexpand.form.'((save-match-data
3c20 20 2e 20 6e 69 6c 29 29 29 29 0a 0a 3b 3b 20 52 65 74 75 72 6e 73 20 28 43 4f 4e 56 45 52 54 45 ...nil))))..;;.Returns.(CONVERTE
3c40 44 2d 46 4f 52 4d 20 2e 20 43 4f 4e 54 49 4e 55 41 54 49 4f 4e 2d 46 4f 52 4d 29 0a 3b 3b 0a 3b D-FORM...CONTINUATION-FORM).;;.;
3c60 3b 20 69 66 20 43 4f 4e 56 45 52 54 45 44 2d 46 4f 52 4d 20 6e 65 76 65 72 20 79 69 65 6c 64 73 ;.if.CONVERTED-FORM.never.yields
3c80 2c 20 43 4f 4e 54 49 4e 55 41 54 49 4f 4e 2d 46 4f 52 4d 20 69 73 20 6e 69 6c 2e 20 20 43 4f 4e ,.CONTINUATION-FORM.is.nil...CON
3ca0 54 49 4e 55 41 54 49 4f 4e 2d 46 4f 52 4d 20 69 74 73 65 6c 66 0a 3b 3b 20 6e 65 76 65 72 20 79 TINUATION-FORM.itself.;;.never.y
3cc0 69 65 6c 64 73 2e 0a 3b 3b 0a 3b 3b 20 53 69 6e 63 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e ields..;;.;;.Since.this.function
3ce0 20 69 73 20 72 65 63 75 72 73 69 76 65 2c 20 69 74 20 63 61 6e 20 63 65 72 74 61 69 6e 6c 79 20 .is.recursive,.it.can.certainly.
3d00 72 75 6e 20 6f 75 74 20 6f 66 20 73 74 61 63 6b 0a 3b 3b 20 6f 6e 20 63 6f 6d 70 6c 69 63 61 74 run.out.of.stack.;;.on.complicat
3d20 65 64 20 66 6f 72 6d 73 20 69 66 20 6e 6f 74 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64 2e 0a 28 ed.forms.if.not.byte-compiled..(
3d40 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 28 66 6f 72 6d 29 defun.iter2--convert-form.(form)
3d60 0a 20 20 28 69 66 20 28 61 74 6f 6d 20 66 6f 72 6d 29 0a 20 20 20 20 20 20 3b 3b 20 53 70 65 65 ...(if.(atom.form).......;;.Spee
3d80 64 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2c 20 61 6c 73 6f 20 73 69 6d 70 6c 69 66 69 65 73 d.optimizations,.also.simplifies
3da0 20 64 65 62 75 67 67 69 6e 67 20 61 20 62 69 74 2e 0a 20 20 20 20 20 20 28 63 6f 6e 73 20 66 6f .debugging.a.bit........(cons.fo
3dc0 72 6d 20 6e 69 6c 29 0a 20 20 20 20 28 6c 65 74 20 28 28 62 6f 64 79 20 28 6d 61 63 72 6f 65 78 rm.nil).....(let.((body.(macroex
3de0 70 2d 75 6e 70 72 6f 67 6e 20 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 63 61 6e 2d 79 p-unprogn.form))...........can-y
3e00 69 65 6c 64 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 0a 20 20 20 20 20 20 20 ield...........converted........
3e20 20 20 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 29 0a 20 20 20 20 20 20 28 77 68 69 6c ...converted-chunks).......(whil
3e40 65 20 62 6f 64 79 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 66 6f 72 6d 20 28 69 74 65 72 e.body.........(let.((form.(iter
3e60 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 61 6e 64 20 28 70 6f 70 20 62 6f 64 79 29 29 29 29 0a 2--do-macroexpand.(pop.body)))).
3e80 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 69 6d 70 6c 69 66 79 20 63 65 72 74 61 69 6e 20 66 6f ..........;;.Simplify.certain.fo
3ea0 72 6d 73 2c 20 72 65 77 72 69 74 65 20 63 65 72 74 61 69 6e 20 6f 74 68 65 72 73 20 75 73 69 6e rms,.rewrite.certain.others.usin
3ec0 67 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 73 20 74 68 61 g...........;;.special.forms.tha
3ee0 74 20 77 65 20 68 61 6e 64 6c 65 20 62 65 6c 6f 77 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 t.we.handle.below............(wh
3f00 69 6c 65 20 28 6c 65 74 20 28 28 72 65 77 72 69 74 74 65 6e 2d 66 6f 72 6d 0a 20 20 20 20 20 20 ile.(let.((rewritten-form.......
3f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 66 6f 72 6d 0a 20 20 ..................(pcase.form...
3f40 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 60 28 61 6e 64 29 20 ........................(`(and).
3f60 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 ................................
3f80 20 20 20 20 20 20 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......t).......................
3fa0 20 20 20 20 28 60 28 6f 72 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(`(or)......................
3fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 ...................nil).........
3fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 6f 72 20 27 61 6e 64 20 27 ..................(`(,(or.'and.'
4000 6f 72 29 20 2c 6f 6e 6c 79 2d 63 6f 6e 64 69 74 69 6f 6e 29 20 20 20 20 20 20 20 20 20 20 20 20 or).,only-condition)............
4020 20 28 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 61 6e 64 20 6f 6e 6c 79 2d 63 6f 6e .(iter2--do-macroexpand.only-con
4040 64 69 74 69 6f 6e 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 dition))........................
4060 20 20 20 28 60 28 63 6f 6e 64 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...(`(cond).....................
4080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 ..................nil)..........
40a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 63 6f 6e 64 20 28 2c 6f 6e 6c 79 2d .................(`(cond.(,only-
40c0 63 6f 6e 64 69 74 69 6f 6e 29 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 condition)).....................
40e0 28 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 61 6e 64 20 6f 6e 6c 79 2d 63 6f 6e 64 (iter2--do-macroexpand.only-cond
4100 69 74 69 6f 6e 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 20 ition)).........................
4120 20 20 28 60 28 63 6f 6e 64 20 28 2c 6f 6e 6c 79 2d 63 6f 6e 64 69 74 69 6f 6e 20 2e 20 2c 62 6f ..(`(cond.(,only-condition...,bo
4140 64 79 29 29 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 69 66 20 2c 6f 6e 6c 79 2d 63 6f 6e 64 dy)).............`(if.,only-cond
4160 69 74 69 6f 6e 20 2c 28 6d 61 63 72 6f 65 78 70 2d 70 72 6f 67 6e 20 62 6f 64 79 29 29 29 0a 20 ition.,(macroexp-progn.body)))..
4180 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 60 28 2c 28 6f 72 .........................(`(,(or
41a0 20 27 6c 65 74 20 27 6c 65 74 2a 29 20 28 29 20 2e 20 2c 6c 65 74 2d 62 6f 64 79 29 20 20 20 20 .'let.'let*).()...,let-body)....
41c0 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 6f 64 79 20 28 61 70 70 65 6e 64 20 28 63 64 72 20 ........(setq.body.(append.(cdr.
41e0 6c 65 74 2d 62 6f 64 79 29 20 62 6f 64 79 29 29 20 28 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 let-body).body)).(iter2--do-macr
4200 6f 65 78 70 61 6e 64 20 28 63 61 72 20 6c 65 74 2d 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 oexpand.(car.let-body)))........
4220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 6f 72 20 27 70 72 6f 67 ...................(`(,(or.'prog
4240 6e 20 27 69 6e 6c 69 6e 65 29 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n.'inline)).....................
4260 20 20 6e 69 6c 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 ..nil)..........................
4280 20 28 60 28 2c 28 6f 72 20 27 70 72 6f 67 6e 20 27 69 6e 6c 69 6e 65 20 27 70 72 6f 67 31 29 20 .(`(,(or.'progn.'inline.'prog1).
42a0 2c 6f 6e 6c 79 2d 66 6f 72 6d 29 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f ,only-form).....(iter2--do-macro
42c0 65 78 70 61 6e 64 20 6f 6e 6c 79 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 expand.only-form))..............
42e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 6f 72 20 27 70 72 6f 67 6e 20 27 69 6e 6c .............(`(,(or.'progn.'inl
4300 69 6e 65 29 20 2c 66 69 72 73 74 20 2e 20 2c 6f 74 68 65 72 73 29 20 20 20 20 20 20 28 73 65 74 ine).,first...,others)......(set
4320 71 20 62 6f 64 79 20 28 61 70 70 65 6e 64 20 6f 74 68 65 72 73 20 62 6f 64 79 29 29 20 28 69 74 q.body.(append.others.body)).(it
4340 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 61 6e 64 20 66 69 72 73 74 29 29 0a 20 20 20 20 er2--do-macroexpand.first)).....
4360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 70 72 6f 67 31 20 2c ......................(`(prog1.,
4380 76 61 6c 75 65 20 2e 20 2c 72 65 73 74 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 value...,rest)..................
43a0 20 20 20 20 20 28 69 66 20 62 6f 64 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(if.body...................
43c0 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 ................................
43e0 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 3b 3b 20 54 68 ...........................;;.Th
4400 69 73 20 76 61 6c 75 65 20 69 73 20 6e 6f 74 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 75 73 65 64 is.value.is.not.going.to.be.used
4420 20 61 6e 79 77 61 79 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .anyway,........................
4440 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 ................................
4460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 6f 20 6a 75 73 74 ......................;;.so.just
4480 20 69 6e 6c 69 6e 65 20 74 68 69 73 20 69 6e 74 6f 20 60 62 6f 64 79 27 2e 0a 20 20 20 20 20 20 .inline.this.into.`body'........
44a0 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 ................................
44c0 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 ................................
44e0 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 73 65 74 71 20 62 6f 64 79 20 28 61 70 70 65 6e 64 .......(progn.(setq.body.(append
4500 20 72 65 73 74 20 62 6f 64 79 29 29 20 28 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 .rest.body)).(iter2--do-macroexp
4520 61 6e 64 20 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 and.value)).....................
4540 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 ................................
4560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 44 6f 20 6e 6f 74 .......................;;.Do.not
4580 68 69 6e 67 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 hing............................
45a0 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 ................................
45c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 .................form)).........
45e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 70 72 6f 67 32 20 2c 66 69 72 73 ..................(`(prog2.,firs
4600 74 20 2c 73 65 63 6f 6e 64 20 2e 20 2c 6f 74 68 65 72 73 29 20 20 20 20 20 20 20 20 20 20 20 20 t.,second...,others)............
4620 20 60 28 70 72 6f 67 31 20 28 70 72 6f 67 6e 20 2c 66 69 72 73 74 20 2c 73 65 63 6f 6e 64 29 20 .`(prog1.(progn.,first.,second).
4640 2c 40 6f 74 68 65 72 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,@others))......................
4660 20 20 20 20 20 28 60 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 20 2c 62 6f 64 79 2d 66 6f 72 .....(`(unwind-protect.,body-for
4680 6d 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 2d 6d m)..................(iter2--do-m
46a0 61 63 72 6f 65 78 70 61 6e 64 20 62 6f 64 79 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 acroexpand.body-form))..........
46c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 .................(`(condition-ca
46e0 73 65 20 2c 5f 20 2c 62 6f 64 79 2d 66 6f 72 6d 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 se.,_.,body-form)...............
4700 28 69 74 65 72 32 2d 2d 64 6f 2d 6d 61 63 72 6f 65 78 70 61 6e 64 20 62 6f 64 79 2d 66 6f 72 6d (iter2--do-macroexpand.body-form
4720 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 20 20 20 28 5f 20 ))...........................(_.
4740 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 ................................
4760 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 6d 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ............form))))............
4780 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 20 66 6f 72 6d 20 72 65 77 72 69 74 74 65 6e 2d 66 ........(if.(eq.form.rewritten-f
47a0 6f 72 6d 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 6e 69 6c 0a orm)........................nil.
47c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 6f 72 6d 20 .....................(setq.form.
47e0 72 65 77 72 69 74 74 65 6e 2d 66 6f 72 6d 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 63 rewritten-form))))...........(pc
4800 61 73 65 20 66 6f 72 6d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 ase.form..............;;.Handle.
4820 6e 65 73 74 65 64 20 6c 61 6d 62 64 61 73 3b 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 68 65 63 6b nested.lambdas;.optionally.check
4840 20 74 68 65 6d 20 66 6f 72 20 79 69 65 6c 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 .them.for.yields..............(`
4860 28 66 75 6e 63 74 69 6f 6e 20 28 6c 61 6d 62 64 61 20 2c 5f 6c 61 6d 62 64 61 2d 61 72 67 73 20 (function.(lambda.,_lambda-args.
4880 2e 20 2c 6c 61 6d 62 64 61 2d 62 6f 64 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b ..,lambda-body))..............;;
48a0 20 43 6f 75 6c 64 20 77 72 69 74 65 20 61 20 66 61 73 74 65 72 20 66 75 6e 63 74 69 6f 6e 20 68 .Could.write.a.faster.function.h
48c0 65 72 65 2c 20 62 75 74 20 70 72 6f 62 61 62 6c 79 20 6e 6f 74 20 70 65 72 66 6f 72 6d 61 6e 63 ere,.but.probably.not.performanc
48e0 65 2d 63 72 69 74 69 63 61 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 e-critical...............(when.(
4900 61 6e 64 20 69 74 65 72 32 2d 64 65 74 65 63 74 2d 6e 65 73 74 65 64 2d 6c 61 6d 62 64 61 2d 79 and.iter2-detect-nested-lambda-y
4920 69 65 6c 64 73 20 28 63 64 72 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e ields.(cdr.(iter2--convert-progn
4940 20 6c 61 6d 62 64 61 2d 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .lambda-body)))................(
4960 65 72 72 6f 72 20 22 4e 65 73 74 65 64 20 61 6e 6f 6e 79 6d 6f 75 73 20 66 75 6e 63 74 69 6f 6e error."Nested.anonymous.function
4980 20 25 53 20 79 69 65 6c 64 73 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 66 61 69 6c 20 61 74 20 72 .%S.yields,.which.will.fail.at.r
49a0 75 6e 74 69 6d 65 22 20 28 63 61 64 72 20 66 6f 72 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 untime".(cadr.form)))...........
49c0 20 20 20 28 70 75 73 68 20 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 0a 20 20 20 20 20 ...(push.form.converted)).......
49e0 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 71 75 6f 74 69 6e 67 20 28 27 5f 20 61 6e 64 .......;;.Handle.quoting.('_.and
4a00 20 23 27 5f 29 3a 20 6a 75 73 74 20 70 61 73 73 20 69 74 20 74 68 72 6f 75 67 68 2e 0a 20 20 20 .#'_):.just.pass.it.through.....
4a20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 6f 72 20 27 71 75 6f 74 65 20 27 66 75 6e 63 74 69 6f .........(`(,(or.'quote.'functio
4a40 6e 29 20 2c 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 66 6f 72 6d 20 63 n).,_)..............(push.form.c
4a60 6f 6e 76 65 72 74 65 64 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c onverted))..............;;.Handl
4a80 65 20 28 61 6e 64 20 43 4f 4e 44 49 54 49 4f 4e 53 2e 2e 2e 29 20 61 6e 64 20 28 6f 72 20 43 4f e.(and.CONDITIONS...).and.(or.CO
4aa0 4e 44 49 54 49 4f 4e 53 2e 2e 2e 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 61 NDITIONS...)..............(`(,(a
4ac0 6e 64 20 28 6f 72 20 27 61 6e 64 20 27 6f 72 29 20 6f 70 65 72 61 74 6f 72 29 20 2e 20 2c 63 6f nd.(or.'and.'or).operator)...,co
4ae0 6e 64 69 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 70 6c 61 nditions)..............(let.(pla
4b00 69 6e 2d 63 6f 6e 64 69 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 in-conditions)................(w
4b20 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hile.conditions.................
4b40 20 28 6c 65 74 2a 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 20 20 20 20 .(let*.((converted-condition....
4b60 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 28 70 6f 70 20 63 6f 6e 64 ..(iter2--convert-form.(pop.cond
4b80 69 74 69 6f 6e 73 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 itions))).......................
4ba0 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 28 63 61 72 ..(converted-condition-form.(car
4bc0 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 .converted-condition))).........
4be0 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f ...........(if.(cdr.converted-co
4c00 6e 64 69 74 69 6f 6e 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 ndition)........................
4c20 28 70 72 6f 67 6e 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 (progn..........................
4c40 28 69 66 20 63 6f 6e 64 69 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (if.conditions..................
4c60 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e ............(let.((converted-con
4c80 74 69 6e 75 61 74 69 6f 6e 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 60 tinuation.(iter2--convert-form.`
4ca0 28 2c 6f 70 65 72 61 74 6f 72 20 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 (,operator.,(cdr.converted-condi
4cc0 74 69 6f 6e 29 20 2c 40 63 6f 6e 64 69 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 tion).,@conditions))))..........
4ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 ......................(setq.conv
4d00 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 60 28 70 72 6f 67 6e 20 2c 28 69 erted-condition-form.`(progn.,(i
4d20 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 ter2--continuation-adding-form.(
4d40 6c 69 73 74 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d list.(iter2--merge-continuation-
4d60 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 29 29 29 0a 20 form.converted-continuation)))..
4d80 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 ................................
4da0 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 ................................
4dc0 20 20 20 20 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 63 6f 6e 76 65 72 74 .....,@(macroexp-unprogn.convert
4de0 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 ed-condition-form))))...........
4e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 64 .................(setq.converted
4e20 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f -condition-form.(iter2--merge-co
4e40 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 ntinuation-form.converted-condit
4e60 69 6f 6e 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 20 20 ion)))..........................
4e80 28 77 68 65 6e 20 70 6c 61 69 6e 2d 63 6f 6e 64 69 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 (when.plain-conditions..........
4ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 ..................(setq.converte
4ec0 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 60 28 2c 6f 70 65 72 61 74 6f 72 20 2c 40 28 d-condition-form.`(,operator.,@(
4ee0 6e 72 65 76 65 72 73 65 20 70 6c 61 69 6e 2d 63 6f 6e 64 69 74 69 6f 6e 73 29 20 2c 63 6f 6e 76 nreverse.plain-conditions).,conv
4f00 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 29 29 29 0a 20 20 20 20 20 20 20 20 erted-condition-form))).........
4f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 2d 63 6f 6e .................(iter2--add-con
4f40 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 63 6f 6e 76 65 72 74 65 64 2d verted-form.converted.converted-
4f60 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 condition-form).................
4f80 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 20 74 0a 20 20 20 20 .........(setq.can-yield..t.....
4fa0 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 63 6f 6e 64 69 ...........................condi
4fc0 74 69 6f 6e 73 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tions.nil)).....................
4fe0 20 28 70 75 73 68 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 .(push.converted-condition-form.
5000 70 6c 61 69 6e 2d 63 6f 6e 64 69 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 plain-conditions))))............
5020 20 20 20 20 28 75 6e 6c 65 73 73 20 63 61 6e 2d 79 69 65 6c 64 0a 20 20 20 20 20 20 20 20 20 20 ....(unless.can-yield...........
5040 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 2c 6f 70 65 72 61 74 6f 72 20 2c 40 28 6e 72 65 76 .......(push.`(,operator.,@(nrev
5060 65 72 73 65 20 70 6c 61 69 6e 2d 63 6f 6e 64 69 74 69 6f 6e 73 29 29 20 63 6f 6e 76 65 72 74 65 erse.plain-conditions)).converte
5080 64 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 69 66 d))))..............;;.Handle.(if
50a0 20 43 4f 4e 44 49 54 49 4f 4e 20 54 48 45 4e 20 5b 45 4c 53 45 2e 2e 2e 5d 29 2e 0a 20 20 20 20 .CONDITION.THEN.[ELSE...])......
50c0 20 20 20 20 20 20 20 20 28 60 28 69 66 20 2c 63 6f 6e 64 69 74 69 6f 6e 20 2c 74 68 65 6e 20 2e ........(`(if.,condition.,then..
50e0 20 2c 65 6c 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 .,else)..............(let.((conv
5100 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d erted-condition.(iter2--convert-
5120 66 6f 72 6d 20 63 6f 6e 64 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 form.condition))................
5140 20 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 74 68 65 6e 20 20 20 20 20 20 28 69 74 65 72 32 2d ....(converted-then......(iter2-
5160 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 20 74 68 65 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 -convert-form..then))...........
5180 20 20 20 20 20 20 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 65 6c 73 65 20 20 20 20 20 20 28 69 .........(converted-else......(i
51a0 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 65 6c 73 65 29 29 29 0a 20 20 20 20 ter2--convert-progn.else))).....
51c0 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f ...........(if.(cdr.converted-co
51e0 6e 64 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f ndition)....................(pro
5200 67 6e 20 28 69 74 65 72 32 2d 2d 61 64 64 2d 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f gn.(iter2--add-converted-form.co
5220 6e 76 65 72 74 65 64 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e nverted.(car.converted-condition
5240 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 20 20 20 28 69 74 ))...........................(it
5260 65 72 32 2d 2d 66 69 6e 69 73 68 2d 63 68 75 6e 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e er2--finish-chunk.converted-chun
5280 6b 73 20 63 6f 6e 76 65 72 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ks.converted....................
52a0 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 60 28 69 66 ............................`(if
52c0 20 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 0a 20 20 20 20 .,(cdr.converted-condition).....
52e0 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 ................................
5300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 ................,(iter2--merge-c
5320 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 74 68 65 6e 29 ontinuation-form.converted-then)
5340 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 20 ................................
5360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 77 68 65 6e 20 65 6c 73 65 20 ...................,@(when.else.
5380 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d (macroexp-unprogn.(iter2--merge-
53a0 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 65 6c 73 65 continuation-form.converted-else
53c0 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 ))))))..................(push.`(
53e0 69 66 20 2c 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 0a 20 20 if.,(car.converted-condition)...
5400 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 2c 28 69 74 65 72 ..........................,(iter
5420 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 2--merge-continuation-form.conve
5440 72 74 65 64 2d 74 68 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rted-then)......................
5460 20 20 20 20 20 2c 40 28 77 68 65 6e 20 65 6c 73 65 20 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 .....,@(when.else.(macroexp-unpr
5480 6f 67 6e 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 ogn.(iter2--merge-continuation-f
54a0 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 65 6c 73 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 orm.converted-else))))..........
54c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 20 ..............converted)).......
54e0 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 28 6f 72 20 28 63 64 .........(setq.can-yield.(or.(cd
5500 72 20 63 6f 6e 76 65 72 74 65 64 2d 74 68 65 6e 29 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 r.converted-then).(cdr.converted
5520 2d 65 6c 73 65 29 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c -else)))))..............;;.Handl
5540 65 20 28 63 6f 6e 64 20 5b 43 4c 41 55 53 45 53 2e 2e 2e 5d 29 2e 0a 20 20 20 20 20 20 20 20 20 e.(cond.[CLAUSES...])...........
5560 20 20 20 28 60 28 63 6f 6e 64 20 2e 20 2c 63 6c 61 75 73 65 73 29 0a 20 20 20 20 20 20 20 20 20 ...(`(cond...,clauses)..........
5580 20 20 20 20 28 6c 65 74 20 28 63 6f 6e 76 65 72 74 65 64 2d 63 6c 61 75 73 65 73 0a 20 20 20 20 ....(let.(converted-clauses.....
55a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 73 2d 63 61 6e 2d 79 69 ...............conditions-can-yi
55c0 65 6c 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 63 6c 61 75 73 eld)................(while.claus
55e0 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 63 6c 61 75 es..................(let*.((clau
5600 73 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 70 20 63 6c 61 75 73 65 se...................(pop.clause
5620 73 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 20 28 63 6f 6e s)).........................(con
5640 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f verted-condition......(iter2--co
5660 6e 76 65 72 74 2d 66 6f 72 6d 20 28 63 61 72 20 63 6c 61 75 73 65 29 29 29 0a 20 20 20 20 20 20 nvert-form.(car.clause))).......
5680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e ..................(converted-con
56a0 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 dition-form.(car.converted-condi
56c0 74 69 6f 6e 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 20 28 tion)).........................(
56e0 63 6c 61 75 73 65 2d 62 6f 64 79 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 63 6c clause-body..............(cdr.cl
5700 61 75 73 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 ause)))....................(if.(
5720 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 cdr.converted-condition)........
5740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 ................(let.((converted
5760 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f -continuation.(iter2--convert-fo
5780 72 6d 20 60 28 63 6f 6e 64 20 28 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 rm.`(cond.(,(cdr.converted-condi
57a0 74 69 6f 6e 29 20 2c 40 63 6c 61 75 73 65 2d 62 6f 64 79 29 20 2c 40 63 6c 61 75 73 65 73 29 29 tion).,@clause-body).,@clauses))
57c0 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 20 20 28 73 65 74 ))..........................(set
57e0 71 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 60 28 70 72 6f q.converted-condition-form.`(pro
5800 67 6e 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d gn.,(iter2--continuation-adding-
5820 66 6f 72 6d 20 28 6c 69 73 74 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 form.(list.(iter2--merge-continu
5840 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 74 69 6e 75 61 74 69 6f ation-form.converted-continuatio
5860 6e 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 20 20 20 20 n)))............................
5880 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 ................................
58a0 20 20 20 20 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 63 6f 6e 76 65 72 74 .....,@(macroexp-unprogn.convert
58c0 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ed-condition-form)))............
58e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 63 6f 6e 76 65 72 74 65 64 2d 63 6c ..............(when.converted-cl
5900 61 75 73 65 73 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 auses...........................
5920 20 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 20 .(setq.converted-condition-form.
5940 60 28 63 6f 6e 64 20 2c 40 28 6e 72 65 76 65 72 73 65 20 63 6f 6e 76 65 72 74 65 64 2d 63 6c 61 `(cond.,@(nreverse.converted-cla
5960 75 73 65 73 29 20 28 74 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 63 6f 6e uses).(t.,@(macroexp-unprogn.con
5980 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 29 29 29 29 29 0a 20 20 20 20 20 verted-condition-form)))))......
59a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 2d ....................(iter2--add-
59c0 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 63 6f 6e 76 65 72 74 converted-form.converted.convert
59e0 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ed-condition-form)..............
5a00 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 64 69 74 69 6f 6e 73 2d 63 61 6e ............(setq.conditions-can
5a20 2d 79 69 65 6c 64 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -yield.t........................
5a40 20 20 20 20 20 20 20 20 63 6c 61 75 73 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c ........clauses..............nil
5a60 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 ))......................(let.((c
5a80 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 20 28 77 68 65 6e 20 63 6c 61 75 73 65 2d 62 6f 64 79 20 onverted-body.(when.clause-body.
5aa0 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 63 6c 61 75 73 65 2d 62 6f 64 (iter2--convert-progn.clause-bod
5ac0 79 29 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 28 70 75 y))))........................(pu
5ae0 73 68 20 60 28 2c 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 20 sh.`(,(car.converted-condition).
5b00 2c 40 28 77 68 65 6e 20 63 6c 61 75 73 65 2d 62 6f 64 79 20 28 6d 61 63 72 6f 65 78 70 2d 75 6e ,@(when.clause-body.(macroexp-un
5b20 70 72 6f 67 6e 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e progn.(iter2--merge-continuation
5b40 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 29 29 29 0a 20 20 20 20 20 20 20 -form.converted-body))))........
5b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 2d ......................converted-
5b80 63 6c 61 75 73 65 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 clauses)........................
5ba0 28 77 68 65 6e 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 (when.(cdr.converted-body)......
5bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 ....................(setq.can-yi
5be0 65 6c 64 20 74 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 63 eld.t))))))................(if.c
5c00 6f 6e 64 69 74 69 6f 6e 73 2d 63 61 6e 2d 79 69 65 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 onditions-can-yield.............
5c20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 0a 20 20 20 20 20 20 .......(setq.can-yield.t).......
5c40 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 63 6f 6e 64 20 2c 40 28 6e 72 65 76 65 ...........(push.`(cond.,@(nreve
5c60 72 73 65 20 63 6f 6e 76 65 72 74 65 64 2d 63 6c 61 75 73 65 73 29 29 20 63 6f 6e 76 65 72 74 65 rse.converted-clauses)).converte
5c80 64 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 77 68 d))))..............;;.Handle.(wh
5ca0 69 6c 65 20 43 4f 4e 44 49 54 49 4f 4e 20 5b 57 48 49 4c 45 2d 42 4f 44 59 2e 2e 2e 5d 29 2e 0a ile.CONDITION.[WHILE-BODY...])..
5cc0 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 77 68 69 6c 65 20 2c 63 6f 6e 64 69 74 69 6f 6e 20 ............(`(while.,condition.
5ce0 2e 20 2c 77 68 69 6c 65 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 ..,while-body)..............(let
5d00 2a 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 20 20 28 69 74 65 72 32 2d *.((converted-condition..(iter2-
5d20 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 63 6f 6e 64 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 -convert-form.condition)).......
5d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 77 68 69 6c 65 2d 62 ..............(converted-while-b
5d60 6f 64 79 20 28 77 68 65 6e 20 77 68 69 6c 65 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e ody.(when.while-body.(iter2--con
5d80 76 65 72 74 2d 70 72 6f 67 6e 20 77 68 69 6c 65 2d 62 6f 64 79 29 29 29 29 0a 20 20 20 20 20 20 vert-progn.while-body)))).......
5da0 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d .........(if.(or.(cdr.converted-
5dc0 63 6f 6e 64 69 74 69 6f 6e 29 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 77 68 69 6c 65 2d condition).(cdr.converted-while-
5de0 62 6f 64 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4f 6e 65 body))....................;;.One
5e00 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 69 73 20 6f 70 74 69 6d 69 7a 65 64 3a 20 69 66 20 74 .special.case.is.optimized:.if.t
5e20 68 65 72 65 20 69 73 20 6e 6f 20 60 77 68 69 6c 65 27 20 62 6f 64 79 20 61 6e 64 20 74 68 65 20 here.is.no.`while'.body.and.the.
5e40 63 6f 6e 64 69 74 69 6f 6e 20 79 69 65 6c 64 73 20 61 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 condition.yields.as.............
5e60 20 20 20 20 20 20 20 3b 3b 20 69 74 73 20 6c 61 73 74 20 6f 70 65 72 61 74 6f 72 2e 0a 20 20 20 .......;;.its.last.operator.....
5e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 73 70 65 63 69 61 6c 2d 65 ................(let.((special-e
5ea0 6d 70 74 79 2d 62 6f 64 79 20 28 61 6e 64 20 28 6e 75 6c 6c 20 77 68 69 6c 65 2d 62 6f 64 79 29 mpty-body.(and.(null.while-body)
5ec0 20 28 65 71 75 61 6c 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e .(equal.(cdr.converted-condition
5ee0 29 20 60 28 66 75 6e 63 61 6c 6c 20 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 29 29 29 29 0a 20 ).`(funcall.,iter2--value)))))..
5f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 77 68 69 6c 65 2d ....................(when.while-
5f20 62 6f 64 79 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 73 65 74 body........................(set
5f40 71 20 63 6f 6e 76 65 72 74 65 64 2d 77 68 69 6c 65 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 6d q.converted-while-body.(iter2--m
5f60 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 erge-continuation-form.converted
5f80 2d 77 68 69 6c 65 2d 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -while-body)))..................
5fa0 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e ....(if.(cdr.converted-condition
5fc0 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 3b 3b 20 43 6f )..........................;;.Co
5fe0 6e 64 69 74 69 6f 6e 20 79 69 65 6c 64 73 3b 20 77 68 65 74 68 65 72 20 62 6f 64 79 20 79 69 65 ndition.yields;.whether.body.yie
6000 6c 64 73 20 74 6f 6f 20 69 73 20 6e 6f 74 20 72 65 6c 65 76 61 6e 74 2e 0a 20 20 20 20 20 20 20 lds.too.is.not.relevant.........
6020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 6e 6e 65 72 2d 66 ..................(let.((inner-f
6040 6f 72 6d 20 60 28 69 66 20 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 orm.`(if.,(cdr.converted-conditi
6060 6f 6e 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 on).............................
6080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 73 65 74 71 ....................(progn.(setq
60a0 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 28 63 6f 6e 73 20 28 63 61 .,iter2--continuations.(cons.(ca
60c0 72 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 r.,iter2--stack).,iter2--continu
60e0 61 74 69 6f 6e 73 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 ations))........................
6100 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 ................................
6120 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 69 66 20 73 70 65 63 69 61 6c 2d ,@(macroexp-unprogn.(if.special-
6140 65 6d 70 74 79 2d 62 6f 64 79 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 empty-body.(car.converted-condit
6160 69 6f 6e 29 20 63 6f 6e 76 65 72 74 65 64 2d 77 68 69 6c 65 2d 62 6f 64 79 29 29 29 0a 20 20 20 ion).converted-while-body)))....
6180 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 ................................
61a0 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 28 ...........(setq.,iter2--stack.(
61c0 63 64 72 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 cdr.,iter2--stack)))))..........
61e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d ..................(push.(iter2--
6200 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6c 69 73 74 20 28 continuation-adding-form.(list.(
6220 69 66 20 73 70 65 63 69 61 6c 2d 65 6d 70 74 79 2d 62 6f 64 79 0a 20 20 20 20 20 20 20 20 20 20 if.special-empty-body...........
6240 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 ................................
6260 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 ................................
6280 20 20 69 6e 6e 65 72 2d 66 6f 72 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..inner-form....................
62a0 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 ................................
62c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 70 72 6f 67 6e 20 2c .......................`(progn.,
62e0 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d (iter2--continuation-adding-form
6300 20 28 6c 69 73 74 20 69 6e 6e 65 72 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .(list.inner-form)).............
6320 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 ................................
6340 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 ................................
6360 20 20 20 20 20 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 ......,@(macroexp-unprogn.(car.c
6380 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 onverted-condition))))).........
63a0 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 ................................
63c0 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 69 74 65 72 32 2d ..........................iter2-
63e0 2d 73 74 61 63 6b 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 -stack).........................
6400 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .........converted))............
6420 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4f 6e 6c 79 20 62 6f 64 79 20 79 69 65 6c 64 73 2e ............;;.Only.body.yields.
6440 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 75 73 68 20 28 69 ........................(push.(i
6460 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 ter2--continuation-adding-form.(
6480 6c 69 73 74 20 60 28 69 66 20 2c 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 list.`(if.,(car.converted-condit
64a0 69 6f 6e 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 ion)............................
64c0 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 ................................
64e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 73 65 74 71 20 2c 69 74 65 72 ..............(progn.(setq.,iter
6500 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 28 63 6f 6e 73 20 28 63 61 72 20 2c 69 74 65 2--continuations.(cons.(car.,ite
6520 72 32 2d 2d 73 74 61 63 6b 29 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 r2--stack).,iter2--continuations
6540 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 20 20 20 20 20 20 ))..............................
6560 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 ................................
6580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 ...................,@(macroexp-u
65a0 6e 70 72 6f 67 6e 20 63 6f 6e 76 65 72 74 65 64 2d 77 68 69 6c 65 2d 62 6f 64 79 29 29 0a 20 20 nprogn.converted-while-body))...
65c0 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 ................................
65e0 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 ................................
6600 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 28 63 64 72 20 2c 69 .....(setq.,iter2--stack.(cdr.,i
6620 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ter2--stack)))).................
6640 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 ................................
6660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 0a 20 20 20 20 ..............iter2--stack).....
6680 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 63 6f 6e 76 65 72 74 .........................convert
66a0 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 6e 69 ed))......................;;.Ini
66c0 74 69 61 6c 20 76 61 6c 75 65 20 69 73 20 69 6d 70 6f 72 74 61 6e 74 20 69 6e 20 73 6f 6d 65 20 tial.value.is.important.in.some.
66e0 63 61 73 65 73 2c 20 73 65 65 20 61 62 6f 76 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cases,.see.above................
6700 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f .......(push.(iter2--continuatio
6720 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 28 77 68 65 6e 20 73 70 65 63 69 61 6c 2d n-invocation-form.(when.special-
6740 65 6d 70 74 79 2d 62 6f 64 79 20 27 28 6c 61 6d 62 64 61 20 28 29 20 74 29 29 20 60 28 63 61 72 empty-body.'(lambda.().t)).`(car
6760 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 .,iter2--stack)).converted).....
6780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 .................(setq.can-yield
67a0 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4e 6f 74 68 69 6e 67 .t))..................;;.Nothing
67c0 20 79 69 65 6c 64 73 2c 20 74 68 65 20 73 69 6d 70 6c 65 73 74 20 63 61 73 65 2e 0a 20 20 20 20 .yields,.the.simplest.case......
67e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 77 68 69 6c 65 20 2c 28 63 61 72 .............(push.`(while.,(car
6800 20 63 6f 6e 76 65 72 74 65 64 2d 63 6f 6e 64 69 74 69 6f 6e 29 20 2c 40 28 77 68 65 6e 20 77 68 .converted-condition).,@(when.wh
6820 69 6c 65 2d 62 6f 64 79 20 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 ile-body.(macroexp-unprogn.(car.
6840 63 6f 6e 76 65 72 74 65 64 2d 77 68 69 6c 65 2d 62 6f 64 79 29 29 29 29 20 63 6f 6e 76 65 72 74 converted-while-body)))).convert
6860 65 64 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 6c ed))))..............;;.Handle.(l
6880 65 74 20 28 42 49 4e 44 49 4e 47 53 29 20 4c 45 54 2d 42 4f 44 59 29 20 61 6e 64 20 28 6c 65 74 et.(BINDINGS).LET-BODY).and.(let
68a0 2a 20 28 42 49 4e 44 49 4e 47 53 29 20 4c 45 54 2d 42 4f 44 59 29 2e 0a 20 20 20 20 20 20 20 20 *.(BINDINGS).LET-BODY)..........
68c0 20 20 20 20 28 60 28 2c 28 61 6e 64 20 28 6f 72 20 27 6c 65 74 20 27 6c 65 74 2a 29 20 6c 65 74 ....(`(,(and.(or.'let.'let*).let
68e0 2d 6b 69 6e 64 29 20 2c 62 69 6e 64 69 6e 67 73 20 2e 20 2c 6c 65 74 2d 62 6f 64 79 29 0a 20 20 -kind).,bindings...,let-body)...
6900 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 6c 61 69 6e 2d 6c 65 74 20 20 20 20 20 ...........(let.((plain-let.....
6920 20 20 20 28 65 71 20 6c 65 74 2d 6b 69 6e 64 20 27 6c 65 74 29 29 0a 20 20 20 20 20 20 20 20 20 ...(eq.let-kind.'let))..........
6940 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 0a 20 20 20 ..........converted-bindings....
6960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 ................catcher-outer-bi
6980 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 63 68 65 ndings....................catche
69a0 72 2d 69 6e 6e 65 72 2d 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r-inner-bindings................
69c0 20 20 20 20 63 61 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 6f 72 69 6e 67 2d 66 6f 72 6d 73 0a ....catcher-value-storing-forms.
69e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 72 65 73 74 20 61 ...................;;.The.rest.a
6a00 72 65 20 75 6e 75 73 65 64 20 66 6f 72 20 60 6c 65 74 2a 27 2e 0a 20 20 20 20 20 20 20 20 20 20 re.unused.for.`let*'............
6a20 20 20 20 20 20 20 20 20 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 62 69 6e 64 69 .........next-continuation-bindi
6a40 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 73 2d 74 6f ngs....................values-to
6a60 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -save-on-stack..................
6a80 20 20 28 6e 75 6d 2d 73 74 61 63 6b 2d 76 61 6c 75 65 73 20 30 29 29 0a 20 20 20 20 20 20 20 20 ..(num-stack-values.0)).........
6aa0 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 .......(while.bindings..........
6ac0 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 62 69 6e 64 69 6e 67 20 28 70 6f 70 20 62 69 6e ........(let*.((binding.(pop.bin
6ae0 64 69 6e 67 73 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 20 dings)).........................
6b00 76 61 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 76 61 6c 75 var.........................valu
6b20 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 62 69 6e e)....................(pcase.bin
6b40 64 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 70 72 65 64 ding......................((pred
6b60 20 73 79 6d 62 6f 6c 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .symbolp).......................
6b80 28 73 65 74 71 20 76 61 72 20 20 20 62 69 6e 64 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 (setq.var...binding))...........
6ba0 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 61 6e 64 20 28 70 72 65 64 20 73 79 6d 62 6f 6c ...........(`(,(and.(pred.symbol
6bc0 70 29 20 76 61 72 69 61 62 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 p).variable))...................
6be0 20 20 20 20 28 73 65 74 71 20 76 61 72 20 20 20 76 61 72 69 61 62 6c 65 29 29 0a 20 20 20 20 20 ....(setq.var...variable))......
6c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 28 61 6e 64 20 28 70 72 65 64 20 73 ................(`(,(and.(pred.s
6c20 79 6d 62 6f 6c 70 29 20 76 61 72 69 61 62 6c 65 29 20 2c 76 61 6c 75 65 2d 66 6f 72 6d 29 0a 20 ymbolp).variable).,value-form)..
6c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 61 72 20 20 .....................(setq.var..
6c60 20 76 61 72 69 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .variable.......................
6c80 20 20 20 20 20 20 76 61 6c 75 65 20 76 61 6c 75 65 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 ......value.value-form))........
6ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 5f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............(_................
6cc0 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 45 72 72 6f 6e 65 6f 75 73 20 62 69 6e 64 69 6e 67 .......(error."Erroneous.binding
6ce0 20 25 53 22 20 62 69 6e 64 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .%S".binding))).................
6d00 20 20 20 28 6c 65 74 20 28 28 73 70 65 63 69 61 6c 20 28 69 74 65 72 32 2d 2d 73 70 65 63 69 61 ...(let.((special.(iter2--specia
6d20 6c 2d 76 61 72 69 61 62 6c 65 2d 70 20 76 61 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 l-variable-p.var))..............
6d40 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 74 65 72 61 6c 20 28 69 74 65 72 32 2d 2d 6c 69 74 ............(literal.(iter2--lit
6d60 65 72 61 6c 70 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eralp.value)))..................
6d80 20 20 20 20 28 63 6f 6e 64 20 28 6c 69 74 65 72 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(cond.(literal..............
6da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 62 69 6e 64 69 6e 67 20 63 6f 6e ...............(push.binding.con
6dc0 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 verted-bindings)................
6de0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 70 6c 61 69 6e 2d 6c 65 74 0a 20 20 20 .............(when.plain-let....
6e00 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 70 75 73 68 ...........................(push
6e20 20 62 69 6e 64 69 6e 67 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 62 69 6e 64 69 .binding.next-continuation-bindi
6e40 6e 67 73 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 20 20 ngs)))..........................
6e60 20 20 28 28 65 71 20 76 61 6c 75 65 20 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 29 ..((eq.value.iter2--stack-state)
6e80 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 3b 3b 20 .............................;;.
6ea0 54 68 69 73 20 69 73 20 6f 75 72 20 70 72 69 76 61 74 65 20 69 6e 74 65 72 6e 61 6c 20 66 6c 61 This.is.our.private.internal.fla
6ec0 67 20 74 68 61 74 20 6d 65 61 6e 73 20 22 74 61 6b 65 20 61 0a 20 20 20 20 20 20 20 20 20 20 20 g.that.means."take.a............
6ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 72 65 76 69 6f 75 73 6c 79 20 63 .................;;.previously.c
6f00 6f 6d 70 75 74 65 64 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 73 74 61 63 6b 22 2e 20 20 omputed.value.from.the.stack"...
6f20 53 74 61 63 6b 20 69 73 20 6f 6e 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Stack.is.only...................
6f40 20 20 20 20 20 20 20 20 20 20 3b 3b 20 75 73 65 64 20 66 6f 72 20 70 6c 61 69 6e 20 60 6c 65 74 ..........;;.used.for.plain.`let
6f60 27 2c 20 6e 65 76 65 72 20 66 6f 72 20 60 6c 65 74 2a 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 ',.never.for.`let*'.............
6f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 2c 76 61 72 20 28 70 .................(push.`(,var.(p
6fa0 6f 70 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e op.,iter2--stack)).converted-bin
6fc0 64 69 6e 67 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 20 20 dings)..........................
6fe0 20 20 20 28 70 75 73 68 20 60 28 2c 76 61 72 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 ...(push.`(,var.,iter2--stack-st
7000 61 74 65 29 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 62 69 6e 64 69 6e 67 73 29 ate).next-continuation-bindings)
7020 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 28 73 65 .............................(se
7040 74 71 20 6e 75 6d 2d 73 74 61 63 6b 2d 76 61 6c 75 65 73 20 28 31 2b 20 6e 75 6d 2d 73 74 61 63 tq.num-stack-values.(1+.num-stac
7060 6b 2d 76 61 6c 75 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 k-values))).....................
7080 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......(t.......................
70a0 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 20 20 20 ......(let*.((converted-value...
70c0 20 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 76 61 6c 75 65 29 29 0a ...(iter2--convert-form.value)).
70e0 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 ................................
7100 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 20 28 63 61 72 20 63 6f ...(converted-value-form.(car.co
7120 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nverted-value)))................
7140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 ...............(if.(cdr.converte
7160 64 2d 76 61 6c 75 65 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 d-value)........................
7180 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 69 66 20 28 6f 72 20 70 6c 61 69 6e 2d ...........(progn.(if.(or.plain-
71a0 6c 65 74 20 28 6e 75 6c 6c 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 let.(null.converted-bindings))..
71c0 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 ................................
71e0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 59 69 65 6c 64 69 6e 67 20 62 65 66 6f 72 65 20 61 ............;;.Yielding.before.a
7200 6e 79 74 68 69 6e 67 20 69 73 20 62 6f 75 6e 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nything.is.bound................
7220 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 28 ...............................(
7240 70 72 6f 67 6e 20 28 77 68 65 6e 20 76 61 6c 75 65 73 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 progn.(when.values-to-save-on-st
7260 61 63 6b 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 ack.............................
7280 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 70 75 73 68 20 ..........................(push.
72a0 28 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6e 72 65 76 65 (iter2--stack-adding-form.(nreve
72c0 72 73 65 20 76 61 6c 75 65 73 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 29 29 20 63 6f rse.values-to-save-on-stack)).co
72e0 6e 76 65 72 74 65 64 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 nverted)).......................
7300 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 69 ..............................(i
7320 74 65 72 32 2d 2d 61 64 64 2d 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 ter2--add-converted-form.convert
7340 65 64 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 ed.converted-value-form)........
7360 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 ................................
7380 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 66 69 6e 69 73 68 2d 63 68 75 6e .............(iter2--finish-chun
73a0 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 20 63 6f 6e 76 65 72 74 65 64 0a 20 20 20 k.converted-chunks.converted....
73c0 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 ................................
73e0 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 ................................
7400 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e ......(iter2--merge-continuation
7420 2d 66 6f 72 6d 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 60 28 2c 6c 65 -form.(iter2--convert-form.`(,le
7440 74 2d 6b 69 6e 64 20 28 2c 40 28 6e 72 65 76 65 72 73 65 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 t-kind.(,@(nreverse.next-continu
7460 61 74 69 6f 6e 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ation-bindings).................
7480 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 ................................
74a0 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 ................................
74c0 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 ................................
74e0 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 ................................
7500 20 20 28 2c 76 61 72 20 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 29 0a ..(,var.,(cdr.converted-value)).
7520 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 ................................
7540 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 ................................
7560 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 ................................
7580 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 ................................
75a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 62 69 6e 64 69 6e 67 73 29 0a 20 20 ..................,@bindings)...
75c0 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 ................................
75e0 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 ................................
7600 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 ................................
7620 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 ................................
7640 20 20 20 20 20 20 20 2c 40 6c 65 74 2d 62 6f 64 79 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 .......,@let-body)))))..........
7660 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 ................................
7680 20 20 3b 3b 20 57 65 20 6e 65 65 64 20 74 6f 20 62 69 6e 64 20 61 6c 72 65 61 64 79 20 63 6f 6e ..;;.We.need.to.bind.already.con
76a0 76 65 72 74 65 64 20 76 61 6c 75 65 73 20 6e 6f 77 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 verted.values.now...............
76c0 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 70 ..............................(p
76e0 75 73 68 20 28 69 74 65 72 32 2d 2d 6c 65 74 2a 2d 79 69 65 6c 64 69 6e 67 2d 66 6f 72 6d 20 63 ush.(iter2--let*-yielding-form.c
7700 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 20 63 61 74 63 68 65 72 2d 69 6e atcher-outer-bindings.catcher-in
7720 6e 65 72 2d 62 69 6e 64 69 6e 67 73 20 63 61 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 6f 72 69 ner-bindings.catcher-value-stori
7740 6e 67 2d 66 6f 72 6d 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ng-forms........................
7760 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 ................................
7780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 .....................(iter2--mer
77a0 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 28 69 74 65 72 32 2d 2d 63 6f 6e ge-continuation-form.(iter2--con
77c0 76 65 72 74 2d 66 6f 72 6d 20 60 28 6c 65 74 2a 20 28 28 2c 76 61 72 20 28 66 75 6e 63 61 6c 6c vert-form.`(let*.((,var.(funcall
77e0 20 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 29 20 2c 40 62 69 6e 64 69 6e 67 73 29 20 2c 40 6c .,iter2--value)).,@bindings).,@l
7800 65 74 2d 62 6f 64 79 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 et-body)))......................
7820 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 ................................
7840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6d .......................(iter2--m
7860 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 erge-continuation-form.converted
7880 2d 76 61 6c 75 65 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 -value))........................
78a0 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 63 6f 6e 76 65 72 ..........................conver
78c0 74 65 64 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 20 20 20 ted))...........................
78e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 69 6e 64 69 6e 67 73 20 20 6e ...............(setq.bindings..n
7900 69 6c 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 il..............................
7920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 0a ..................can-yield.t)).
7940 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 ................................
7960 28 70 75 73 68 20 60 28 2c 76 61 72 20 2c 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f (push.`(,var.,converted-value-fo
7980 72 6d 29 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 rm).converted-bindings).........
79a0 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 77 68 65 6e 20 70 6c ........................(when.pl
79c0 61 69 6e 2d 6c 65 74 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 ain-let.........................
79e0 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 2c 76 61 72 20 2c 69 74 65 72 32 2d 2d 73 ..........(push.`(,var.,iter2--s
7a00 74 61 63 6b 2d 73 74 61 74 65 29 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 62 69 tack-state).next-continuation-bi
7a20 6e 64 69 6e 67 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 20 ndings).........................
7a40 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d ..........(push.converted-value-
7a60 66 6f 72 6d 20 76 61 6c 75 65 73 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 29 29 29 29 form.values-to-save-on-stack))))
7a80 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 73 70 65 63 ))......................(if.spec
7aa0 69 61 6c 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 28 6c 65 ial..........................(le
7ac0 74 20 28 28 70 72 69 76 61 74 65 2d 73 74 6f 72 61 67 65 2d 76 61 72 20 28 6d 61 6b 65 2d 73 79 t.((private-storage-var.(make-sy
7ae0 6d 62 6f 6c 20 28 66 6f 72 6d 61 74 20 22 24 25 73 22 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 mbol.(format."$%s".(symbol-name.
7b00 76 61 72 29 29 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 var)))))........................
7b20 20 20 20 20 28 70 75 73 68 20 60 28 2c 70 72 69 76 61 74 65 2d 73 74 6f 72 61 67 65 2d 76 61 72 ....(push.`(,private-storage-var
7b40 20 2c 28 6e 74 68 20 31 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 .,(nth.1.(car.converted-bindings
7b60 29 29 29 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 ))).catcher-outer-bindings).....
7b80 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 75 73 68 20 60 28 2c .......................(push.`(,
7ba0 76 61 72 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 70 72 69 76 61 74 65 2d 73 74 6f var.................,private-sto
7bc0 72 61 67 65 2d 76 61 72 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 63 68 65 72 2d 69 rage-var)..............catcher-i
7be0 6e 6e 65 72 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nner-bindings)..................
7c00 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 73 65 74 71 20 20 20 20 20 20 20 20 20 20 ..........(push.`(setq..........
7c20 20 20 20 20 20 20 20 2c 70 72 69 76 61 74 65 2d 73 74 6f 72 61 67 65 2d 76 61 72 20 2c 76 61 72 .......,private-storage-var.,var
7c40 29 20 20 20 20 20 20 20 20 20 63 61 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 6f 72 69 6e 67 2d ).........catcher-value-storing-
7c60 66 6f 72 6d 73 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 28 forms))........................(
7c80 70 75 73 68 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 29 20 63 61 push.(car.converted-bindings).ca
7ca0 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 20 tcher-outer-bindings))..........
7cc0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 69 73 20 61 20 6d 61 72 6b 65 72 20 ............;;.This.is.a.marker.
7ce0 77 65 20 75 73 65 20 74 6f 20 73 65 70 61 72 61 74 65 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 we.use.to.separate.bindings.for.
7d00 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b different......................;
7d20 3b 20 63 61 74 63 68 65 72 73 20 66 6f 72 20 60 6c 65 74 2a 27 2e 0a 20 20 20 20 20 20 20 20 20 ;.catchers.for.`let*'...........
7d40 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 73 70 65 63 69 61 6c 20 28 ............(when.(and.special.(
7d60 6e 6f 74 20 70 6c 61 69 6e 2d 6c 65 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 not.plain-let)).................
7d80 20 20 20 20 20 20 20 28 70 75 73 68 20 6e 69 6c 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 .......(push.nil.catcher-outer-b
7da0 69 6e 64 69 6e 67 73 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c indings)))))................(unl
7dc0 65 73 73 20 63 61 6e 2d 79 69 65 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ess.can-yield..................(
7de0 77 68 65 6e 20 28 3e 20 6e 75 6d 2d 73 74 61 63 6b 2d 76 61 6c 75 65 73 20 31 29 0a 20 20 20 20 when.(>.num-stack-values.1).....
7e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 73 74 61 ...............(push.(iter2--sta
7e20 63 6b 2d 68 65 61 64 2d 72 65 76 65 72 73 69 6e 67 2d 66 6f 72 6d 20 6e 75 6d 2d 73 74 61 63 6b ck-head-reversing-form.num-stack
7e40 2d 76 61 6c 75 65 73 29 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 -values).converted))............
7e60 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 6c 65 74 2d 62 6f 64 79 ......(let*.((converted-let-body
7e80 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 6c 65 74 2d ......(iter2--convert-progn.let-
7ea0 62 6f 64 79 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 20 28 body)).........................(
7ec0 63 6f 6e 76 65 72 74 65 64 2d 6c 65 74 2d 62 6f 64 79 2d 66 6f 72 6d 20 28 69 74 65 72 32 2d 2d converted-let-body-form.(iter2--
7ee0 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 merge-continuation-form.converte
7f00 64 2d 6c 65 74 2d 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d-let-body)))...................
7f20 20 28 69 66 20 28 6f 72 20 28 6e 75 6c 6c 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 6c 65 .(if.(or.(null.(cdr.converted-le
7f40 74 2d 62 6f 64 79 29 29 20 28 6e 75 6c 6c 20 63 61 74 63 68 65 72 2d 69 6e 6e 65 72 2d 62 69 6e t-body)).(null.catcher-inner-bin
7f60 64 69 6e 67 73 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 28 dings))........................(
7f80 70 72 6f 67 6e 20 28 70 75 73 68 20 60 28 2c 6c 65 74 2d 6b 69 6e 64 20 28 2c 40 28 6e 72 65 76 progn.(push.`(,let-kind.(,@(nrev
7fa0 65 72 73 65 20 63 6f 6e 76 65 72 74 65 64 2d 62 69 6e 64 69 6e 67 73 29 29 20 2c 40 28 6d 61 63 erse.converted-bindings)).,@(mac
7fc0 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 63 6f 6e 76 65 72 74 65 64 2d 6c 65 74 2d 62 6f 64 79 roexp-unprogn.converted-let-body
7fe0 2d 66 6f 72 6d 29 29 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -form)).converted)..............
8000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 .................(setq.can-yield
8020 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 6c 65 74 2d 62 6f 64 79 29 29 29 0a 20 20 20 20 .(cdr.converted-let-body))).....
8040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4c 65 74 20 62 6f 64 79 20 79 69 65 .................;;.Let.body.yie
8060 6c 64 73 20 61 6e 64 20 77 65 20 68 61 76 65 20 73 70 65 63 69 61 6c 20 28 64 79 6e 61 6d 69 63 lds.and.we.have.special.(dynamic
8080 29 20 62 69 6e 64 69 6e 67 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).bindings......................
80a0 20 28 70 75 73 68 20 28 69 66 20 70 6c 61 69 6e 2d 6c 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 .(push.(if.plain-let............
80c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 6c 65 74 20 28 2c 40 28 6e 72 ....................`(let.(,@(nr
80e0 65 76 65 72 73 65 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a everse.catcher-outer-bindings)).
8100 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 ................................
8120 20 20 2c 28 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d ..,(iter2--catcher-continuation-
8140 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 6c 65 74 20 28 2c 40 28 6e 72 65 76 65 72 73 65 20 63 adding-form.`(let.(,@(nreverse.c
8160 61 74 63 68 65 72 2d 69 6e 6e 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 atcher-inner-bindings)).........
8180 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 ................................
81a0 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 ................................
81c0 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 .......(prog1.(unwind-protect...
81e0 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 ................................
8200 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 ................................
8220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 28 69 74 65 72 32 2d ........................,(iter2-
8240 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 -continuation-invocation-form.it
8260 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er2--value).....................
8280 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 ................................
82a0 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 ................................
82c0 20 20 20 20 2c 40 28 6e 72 65 76 65 72 73 65 20 63 61 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 ....,@(nreverse.catcher-value-st
82e0 6f 72 69 6e 67 2d 66 6f 72 6d 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oring-forms))...................
8300 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 ................................
8320 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 28 ...............................(
8340 75 6e 6c 65 73 73 20 28 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 unless.(eq.,iter2--continuations
8360 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .,iter2--done)..................
8380 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 ................................
83a0 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 ................................
83c0 20 20 28 70 75 73 68 20 2c 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d ..(push.,iter2--catcher.,iter2--
83e0 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 continuations))))...............
8400 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 ................................
8420 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 63 6f ..............................co
8440 6e 76 65 72 74 65 64 2d 6c 65 74 2d 62 6f 64 79 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 nverted-let-body-form)).........
8460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6c 65 74 .....................(iter2--let
8480 2a 2d 79 69 65 6c 64 69 6e 67 2d 66 6f 72 6d 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 *-yielding-form.catcher-outer-bi
84a0 6e 64 69 6e 67 73 20 63 61 74 63 68 65 72 2d 69 6e 6e 65 72 2d 62 69 6e 64 69 6e 67 73 20 63 61 ndings.catcher-inner-bindings.ca
84c0 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 6f 72 69 6e 67 2d 66 6f 72 6d 73 20 63 6f 6e 76 65 72 tcher-value-storing-forms.conver
84e0 74 65 64 2d 6c 65 74 2d 62 6f 64 79 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ted-let-body-form)).............
8500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 ...............converted).......
8520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 ...............(setq.can-yield.t
8540 29 29 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 70 ))))))..............;;.Handle.(p
8560 72 6f 67 31 20 56 41 4c 55 45 20 5b 42 4f 44 59 2e 2e 2e 5d 29 2e 0a 20 20 20 20 20 20 20 20 20 rog1.VALUE.[BODY...])...........
8580 20 20 20 28 60 28 70 72 6f 67 31 20 2c 76 61 6c 75 65 20 2e 20 2c 72 65 73 74 29 0a 20 20 20 20 ...(`(prog1.,value...,rest).....
85a0 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 20 .........(let.((converted-value.
85c0 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 20 76 61 6c 75 65 29 29 0a 20 20 (iter2--convert-form..value))...
85e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 72 65 73 74 .................(converted-rest
8600 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 72 65 73 74 29 29 29 0a ..(iter2--convert-progn.rest))).
8620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28 63 64 72 20 63 6f 6e 76 ...............(if.(or.(cdr.conv
8640 65 72 74 65 64 2d 76 61 6c 75 65 29 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 72 65 73 74 erted-value).(cdr.converted-rest
8660 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 77 68 ))....................(progn.(wh
8680 65 6e 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 en.(cdr.converted-value)........
86a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 .....................(iter2--add
86c0 2d 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 28 63 61 72 20 63 -converted-form.converted.(car.c
86e0 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onverted-value))................
8700 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 66 69 6e 69 73 68 2d 63 68 75 6e .............(iter2--finish-chun
8720 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 k.converted-chunks.converted))..
8740 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 69 66 20 28 63 64 .........................(if.(cd
8760 72 20 63 6f 6e 76 65 72 74 65 64 2d 72 65 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.converted-rest)...............
8780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 70 75 73 68 20 60 28 70 ................(progn.(push.`(p
87a0 75 73 68 20 2c 28 6f 72 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 20 28 ush.,(or.(cdr.converted-value).(
87c0 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 29 20 2c 69 74 65 72 32 2d 2d 73 74 car.converted-value)).,iter2--st
87e0 61 63 6b 29 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ack).converted).................
8800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 .....................(iter2--add
8820 2d 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 28 63 61 72 20 63 -converted-form.converted.(car.c
8840 6f 6e 76 65 72 74 65 64 2d 72 65 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onverted-rest)).................
8860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 66 69 6e .....................(iter2--fin
8880 69 73 68 2d 63 68 75 6e 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 20 63 6f 6e 76 65 ish-chunk.converted-chunks.conve
88a0 72 74 65 64 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 rted............................
88c0 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 3b ...............................;
88e0 3b 20 53 65 65 20 63 6f 6d 6d 65 6e 74 73 20 61 62 6f 75 74 20 60 69 74 65 72 32 2d 6e 65 78 74 ;.See.comments.about.`iter2-next
8900 27 20 65 6c 73 65 77 68 65 72 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 '.elsewhere.....................
8920 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 ................................
8940 20 20 20 20 20 20 20 60 28 70 6f 70 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 20 60 28 66 75 .......`(pop.,iter2--stack).`(fu
8960 6e 63 61 6c 6c 20 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 ncall.,iter2--value)))..........
8980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 70 72 6f 67 31 ...................(push.`(prog1
89a0 20 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 20 2c 40 72 65 73 74 29 20 .,(cdr.converted-value).,@rest).
89c0 63 6f 6e 76 65 72 74 65 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 converted)))..................(p
89e0 75 73 68 20 60 28 70 72 6f 67 31 20 2c 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 ush.`(prog1.,(car.converted-valu
8a00 65 29 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 6f 6e 76 e).,@(macroexp-unprogn.(car.conv
8a20 65 72 74 65 64 2d 72 65 73 74 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 0a 0a 20 20 20 erted-rest))).converted)))).....
8a40 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 .........;;.Handle.(unwind-prote
8a60 63 74 20 42 4f 44 59 2d 46 4f 52 4d 20 43 4c 45 41 4e 55 50 2d 46 4f 52 4d 53 2e 2e 2e 29 2e 0a ct.BODY-FORM.CLEANUP-FORMS...)..
8a80 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 20 2c 62 ............(`(unwind-protect.,b
8aa0 6f 64 79 2d 66 6f 72 6d 20 2e 20 2c 63 6c 65 61 6e 75 70 2d 66 6f 72 6d 73 29 0a 20 20 20 20 20 ody-form...,cleanup-forms)......
8ac0 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 2d 66 6f ........(let.((converted-body-fo
8ae0 72 6d 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 62 6f 64 79 rm.....(iter2--convert-form.body
8b00 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 76 -form))....................(conv
8b20 65 72 74 65 64 2d 63 6c 65 61 6e 75 70 2d 66 6f 72 6d 73 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 erted-cleanup-forms.(iter2--conv
8b40 65 72 74 2d 70 72 6f 67 6e 20 63 6c 65 61 6e 75 70 2d 66 6f 72 6d 73 29 29 29 0a 20 20 20 20 20 ert-progn.cleanup-forms)))......
8b60 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 ..........(when.(cdr.converted-c
8b80 6c 65 61 6e 75 70 2d 66 6f 72 6d 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 leanup-forms)..................(
8ba0 65 72 72 6f 72 20 22 59 69 65 6c 64 69 6e 67 20 66 72 6f 6d 20 63 6c 65 61 6e 75 70 20 66 6f 72 error."Yielding.from.cleanup.for
8bc0 6d 73 20 69 6e 20 60 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 27 20 69 73 20 6e 6f 74 20 61 6c ms.in.`unwind-protect'.is.not.al
8be0 6c 6f 77 65 64 3a 20 25 53 22 20 63 6c 65 61 6e 75 70 2d 66 6f 72 6d 73 29 29 0a 20 20 20 20 20 lowed:.%S".cleanup-forms))......
8c00 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 ..........(if.(cdr.converted-bod
8c20 79 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 y-form)....................(prog
8c40 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 73 n......................(push.`(s
8c60 65 74 71 20 2c 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 73 20 28 63 6f 6e 73 20 28 6c 61 6d 62 etq.,iter2--cleanups.(cons.(lamb
8c80 64 61 20 28 29 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 da.().,@(macroexp-unprogn.(car.c
8ca0 6f 6e 76 65 72 74 65 64 2d 63 6c 65 61 6e 75 70 2d 66 6f 72 6d 73 29 29 29 20 2c 69 74 65 72 32 onverted-cleanup-forms))).,iter2
8cc0 2d 2d 63 6c 65 61 6e 75 70 73 29 29 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 --cleanups)).converted).........
8ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4e 6f 20 6e 65 65 64 20 74 6f 20 75 73 65 20 70 .............;;.No.need.to.use.p
8d00 72 69 76 61 74 65 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 73 20 61 73 20 77 65 20 64 6f 6e 27 rivate.variable.names.as.we.don'
8d20 74 20 69 6e 63 6c 75 64 65 20 61 6e 79 20 75 73 65 72 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 20 t.include.any.user.code.........
8d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 63 61 74 63 ..............(push.(iter2--catc
8d60 68 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 6c her-continuation-adding-form.`(l
8d80 65 74 20 28 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 et.(result).....................
8da0 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 ................................
8dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 ...................(unwind-prote
8de0 63 74 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 ct..............................
8e00 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 ................................
8e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f ..............(prog1.,(iter2--co
8e40 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 ntinuation-invocation-form.iter2
8e60 2d 2d 76 61 6c 75 65 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 --value)........................
8e80 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 ................................
8ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73 75 ......................(setq.resu
8ec0 6c 74 20 28 69 66 20 28 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 lt.(if.(eq.,iter2--continuations
8ee0 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 20 2c 69 74 65 72 32 2d 2d 79 69 65 6c 64 69 6e 67 20 .,iter2--done).,iter2--yielding.
8f00 27 63 6f 6e 74 69 6e 75 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 'continuing)))..................
8f20 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 ................................
8f40 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 69 66 20 72 65 73 75 ........................(if.resu
8f60 6c 74 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 lt..............................
8f80 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 ................................
8fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 66 20 28 65 71 20 72 65 ................(push.(if.(eq.re
8fc0 73 75 6c 74 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sult.t).........................
8fe0 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 ................................
9000 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 3b ...............................;
9020 3b 20 43 6f 6d 70 6c 65 74 65 64 20 62 6f 64 79 2c 20 62 75 74 20 79 69 65 6c 64 65 64 2e 20 20 ;.Completed.body,.but.yielded...
9040 43 6c 65 61 6e 20 75 70 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 69 73 20 72 65 67 61 69 6e 65 Clean.up.when.control.is.regaine
9060 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 20 d...............................
9080 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 ................................
90a0 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 6c 61 6d 62 64 ..........................(lambd
90c0 61 20 28 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 20 2c 28 69 74 65 72 32 2d 2d 63 6c 65 61 6e a.(,iter2--value).,(iter2--clean
90e0 75 70 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 62 6f 64 79 29 20 28 66 75 6e 63 61 6c 6c 20 2c 69 74 up-invocation-body).(funcall.,it
9100 65 72 32 2d 2d 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er2--value))....................
9120 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 ................................
9140 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 ................................
9160 20 20 3b 3b 20 43 6f 6e 74 69 6e 75 69 6e 67 2e 20 20 52 65 2d 61 64 64 20 73 65 6c 66 2e 0a 20 ..;;.Continuing...Re-add.self...
9180 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 ................................
91a0 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 ................................
91c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 63 61 74 63 ....................,iter2--catc
91e0 68 65 72 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 her)............................
9200 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 ................................
9220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d ........................,iter2--
9240 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 continuations)..................
9260 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 ................................
9280 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 3b 3b 20 45 69 74 ..........................;;.Eit
92a0 68 65 72 20 65 78 69 74 65 64 20 6e 6f 6e 2d 6c 6f 63 61 6c 6c 79 2c 20 6f 72 20 63 6f 6d 70 6c her.exited.non-locally,.or.compl
92c0 65 74 65 64 20 62 6f 64 79 20 61 6e 64 20 68 61 76 65 6e 27 74 20 79 69 65 6c 64 65 64 2e 0a 20 eted.body.and.haven't.yielded...
92e0 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 ................................
9300 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 ................................
9320 20 20 20 20 20 20 20 20 20 20 2c 28 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 2d 69 6e 76 6f 63 ..........,(iter2--cleanup-invoc
9340 61 74 69 6f 6e 2d 62 6f 64 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ation-body))))..................
9360 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 ................................
9380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 ...................(iter2--merge
93a0 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 -continuation-form.converted-bod
93c0 79 2d 66 6f 72 6d 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 y-form))........................
93e0 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....converted)..................
9400 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 20 20 20 20 20 20 20 20 20 20 20 74 ....(setq.can-yield............t
9420 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 69 74 65 72 ............................iter
9440 32 2d 2d 63 6c 65 61 6e 75 70 73 2d 75 73 65 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 2--cleanups-used.t))............
9460 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 20 2c ........(push.`(unwind-protect.,
9480 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 2d 66 6f 72 6d 29 20 2c 40 28 6d 61 63 (car.converted-body-form).,@(mac
94a0 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 6c 65 roexp-unprogn.(car.converted-cle
94c0 61 6e 75 70 2d 66 6f 72 6d 73 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 0a 0a 20 20 20 anup-forms))).converted)))).....
94e0 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 63 61 74 63 68 20 54 41 47 20 42 4f .........;;.Handle.(catch.TAG.BO
9500 44 59 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 63 61 74 63 68 20 2c 74 61 67 20 2e DY)..............(`(catch.,tag..
9520 20 2c 63 61 74 63 68 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a .,catch-body)..............(let*
9540 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f .((converted-tag......(iter2--co
9560 6e 76 65 72 74 2d 66 6f 72 6d 20 74 61 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nvert-form.tag))................
9580 20 20 20 20 20 28 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d 20 28 63 61 72 20 63 6f .....(converted-tag-form.(car.co
95a0 6e 76 65 72 74 65 64 2d 74 61 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 nverted-tag)))................(w
95c0 68 65 6e 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 29 0a 20 20 20 20 20 20 20 20 hen.(cdr.converted-tag).........
95e0 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 2d 63 6f 6e 76 65 72 74 65 64 2d 66 .........(iter2--add-converted-f
9600 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d orm.converted.converted-tag-form
9620 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 66 69 6e 69 73 )..................(iter2--finis
9640 68 2d 63 68 75 6e 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 20 63 6f 6e 76 65 72 74 h-chunk.converted-chunks.convert
9660 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 65 ed)..................(setq.conve
9680 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 rted-tag-form.(cdr.converted-tag
96a0 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 )))................(let.((conver
96c0 74 65 64 2d 63 61 74 63 68 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 ted-catch-body.(iter2--convert-p
96e0 72 6f 67 6e 20 63 61 74 63 68 2d 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 rogn.catch-body)))..............
9700 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 61 74 63 68 2d 62 6f 64 ....(if.(cdr.converted-catch-bod
9720 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6c y)......................(let.((l
9740 69 74 65 72 61 6c 2d 74 61 67 20 28 69 74 65 72 32 2d 2d 6c 69 74 65 72 61 6c 70 20 63 6f 6e 76 iteral-tag.(iter2--literalp.conv
9760 65 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erted-tag-form)))...............
9780 20 20 20 20 20 20 20 20 20 3b 3b 20 4e 6f 20 6e 65 65 64 20 74 6f 20 75 73 65 20 70 72 69 76 61 .........;;.No.need.to.use.priva
97a0 74 65 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 73 20 61 73 20 77 65 20 64 6f 6e 27 74 20 69 6e te.variable.names.as.we.don't.in
97c0 63 6c 75 64 65 20 61 6e 79 20 75 73 65 72 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 clude.any.user.code.............
97e0 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 63 61 74 63 68 65 ............(push.(iter2--catche
9800 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 6c 65 74 r-continuation-adding-form.`(let
9820 20 28 63 6f 6d 70 6c 65 74 65 64 2d 6e 6f 72 6d 61 6c 6c 79 29 0a 20 20 20 20 20 20 20 20 20 20 .(completed-normally)...........
9840 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 ................................
9860 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 28 ...............................(
9880 70 72 6f 67 31 20 28 63 61 74 63 68 20 2c 28 69 66 20 6c 69 74 65 72 61 6c 2d 74 61 67 20 63 6f prog1.(catch.,(if.literal-tag.co
98a0 6e 76 65 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d 20 27 74 61 67 29 0a 20 20 20 20 20 20 20 20 20 nverted-tag-form.'tag)..........
98c0 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 ................................
98e0 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 ................................
9900 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 .........(prog1.,(iter2--continu
9920 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 2d 2d 76 61 6c ation-invocation-form.iter2--val
9940 75 65 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 ue).............................
9960 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 ................................
9980 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 73 65 74 71 20 63 6f ........................(setq.co
99a0 6d 70 6c 65 74 65 64 2d 6e 6f 72 6d 61 6c 6c 79 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 mpleted-normally.t).............
99c0 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 ................................
99e0 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 ................................
9a00 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 ........(unless.(eq.,iter2--cont
9a20 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 inuations.,iter2--done).........
9a40 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 ................................
9a60 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 ................................
9a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 2c 69 74 65 72 32 2d 2d 63 61 74 63 ..............(push.,iter2--catc
9aa0 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 20 20 her.,iter2--continuations))))...
9ac0 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 ................................
9ae0 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 ................................
9b00 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 63 6f 6d 70 6c 65 74 65 64 2d 6e 6f 72 6d 61 .........(unless.completed-norma
9b20 6c 6c 79 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 lly.............................
9b40 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 ................................
9b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 63 .................(setq.,iter2--c
9b80 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 0a 20 20 20 20 20 20 ontinuations.,iter2--done.......
9ba0 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 ................................
9bc0 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 ................................
9be0 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 20 20 20 20 20 .............,iter2--stack......
9c00 20 20 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 29 29 29 29 0a 20 20 20 20 20 ...,iter2--stack-state))))......
9c20 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 ................................
9c40 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 ................................
9c60 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d .(iter2--merge-continuation-form
9c80 20 63 6f 6e 76 65 72 74 65 64 2d 63 61 74 63 68 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 .converted-catch-body)..........
9ca0 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 ................................
9cc0 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 60 28 2c .............................`(,
9ce0 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b iter2--stack-state.,iter2--stack
9d00 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 )...............................
9d20 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 ................................
9d40 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 6c 69 74 65 72 61 6c 2d 74 61 67 20 60 28 74 61 ........(unless.literal-tag.`(ta
9d60 67 20 2c 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d 29 29 29 0a 20 20 20 20 20 20 20 g.,converted-tag-form)))........
9d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 ......................converted)
9da0 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 73 65 74 71 20 63 61 ........................(setq.ca
9dc0 6e 2d 79 69 65 6c 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 n-yield.t))....................(
9de0 70 75 73 68 20 60 28 63 61 74 63 68 20 2c 63 6f 6e 76 65 72 74 65 64 2d 74 61 67 2d 66 6f 72 6d push.`(catch.,converted-tag-form
9e00 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 6f 6e 76 65 72 .,@(macroexp-unprogn.(car.conver
9e20 74 65 64 2d 63 61 74 63 68 2d 62 6f 64 79 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 29 ted-catch-body))).converted)))))
9e40 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 63 6f 6e 64 69 74 69 ..............;;.Handle.(conditi
9e60 6f 6e 2d 63 61 73 65 20 56 41 52 20 42 4f 44 59 2d 46 4f 52 4d 20 48 41 4e 44 4c 45 52 53 2e 2e on-case.VAR.BODY-FORM.HANDLERS..
9e80 2e 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 .)..............(`(condition-cas
9ea0 65 20 2c 76 61 72 20 2c 62 6f 64 79 2d 66 6f 72 6d 20 2e 20 2c 68 61 6e 64 6c 65 72 73 29 0a 20 e.,var.,body-form...,handlers)..
9ec0 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 ............(let.((converted-bod
9ee0 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 62 6f 64 79 2d 66 6f 72 6d y.(iter2--convert-form.body-form
9f00 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 2d ))....................converted-
9f20 68 61 6e 64 6c 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 63 handlers....................succ
9f40 65 73 73 2d 68 61 6e 64 6c 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c ess-handler)................(dol
9f60 69 73 74 20 28 68 61 6e 64 6c 65 72 20 68 61 6e 64 6c 65 72 73 29 0a 20 20 20 20 20 20 20 20 20 ist.(handler.handlers)..........
9f80 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 68 61 6e 64 6c 65 72 0a 20 20 20 20 20 20 20 20 20 ........(pcase.handler..........
9fa0 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 63 6f 6e 64 69 74 69 6f 6e 20 2e 20 2c 68 61 6e 64 6c ..........(`(,condition...,handl
9fc0 65 72 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 er-body).....................(le
9fe0 74 2a 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 72 20 20 20 20 20 20 28 69 74 65 t*.((converted-handler......(ite
a000 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 68 61 6e 64 6c 65 72 2d 62 6f 64 79 29 29 r2--convert-progn.handler-body))
a020 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 28 63 6f 6e ............................(con
a040 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 72 2d 66 6f 72 6d 20 60 28 2c 63 6f 6e 64 69 74 69 6f 6e verted-handler-form.`(,condition
a060 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 69 74 65 72 32 2d 2d 6d 65 72 .,@(macroexp-unprogn.(iter2--mer
a080 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 68 ge-continuation-form.converted-h
a0a0 61 6e 64 6c 65 72 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 andler))))).....................
a0c0 20 20 3b 3b 20 45 6d 61 63 73 20 32 38 20 61 64 64 73 20 73 70 65 63 69 61 6c 20 68 61 6e 64 6c ..;;.Emacs.28.adds.special.handl
a0e0 65 72 20 63 61 6c 6c 65 64 20 60 3a 73 75 63 63 65 73 73 27 20 69 6e 76 6f 6b 65 64 20 77 68 65 er.called.`:success'.invoked.whe
a100 6e 20 74 68 65 20 6d 61 69 6e 20 62 6f 64 79 20 64 6f 65 73 6e 27 74 0a 20 20 20 20 20 20 20 20 n.the.main.body.doesn't.........
a120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 69 67 6e 61 6c 2e 20 20 49 74 20 68 61 73 ..............;;.signal...It.has
a140 20 74 6f 20 62 65 20 68 61 6e 64 6c 65 64 20 73 70 65 63 69 61 6c 6c 79 2c 20 62 75 74 20 6f 6e .to.be.handled.specially,.but.on
a160 6c 79 20 69 66 20 74 68 65 20 62 6f 64 79 20 79 69 65 6c 64 73 2e 0a 20 20 20 20 20 20 20 20 20 ly.if.the.body.yields...........
a180 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 65 71 20 63 6f 6e 64 69 74 .............(if.(and.(eq.condit
a1a0 69 6f 6e 20 3a 73 75 63 63 65 73 73 29 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 ion.:success).(cdr.converted-bod
a1c0 79 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 20 20 20 28 70 y))...........................(p
a1e0 72 6f 67 6e 20 28 77 68 65 6e 20 73 75 63 63 65 73 73 2d 68 61 6e 64 6c 65 72 0a 20 20 20 20 20 rogn.(when.success-handler......
a200 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 65 ..............................(e
a220 72 72 6f 72 20 22 44 75 70 6c 69 63 61 74 65 20 73 70 65 63 69 61 6c 20 68 61 6e 64 6c 65 72 20 rror."Duplicate.special.handler.
a240 60 3a 73 75 63 63 65 73 73 27 20 69 6e 20 25 53 22 20 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 `:success'.in.%S".form))........
a260 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 73 65 74 66 20 ..........................(setf.
a280 73 75 63 63 65 73 73 2d 68 61 6e 64 6c 65 72 20 63 6f 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 success-handler.converted-handle
a2a0 72 2d 66 6f 72 6d 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 r-form))........................
a2c0 20 28 70 75 73 68 20 63 6f 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 72 2d 66 6f 72 6d 20 63 6f .(push.converted-handler-form.co
a2e0 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 72 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 nverted-handlers))..............
a300 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 68 61 .........(when.(cdr.converted-ha
a320 6e 64 6c 65 72 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 28 ndler).........................(
a340 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 setq.can-yield.t))))............
a360 20 20 20 20 20 20 20 20 28 5f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ........(_.....................(
a380 65 72 72 6f 72 20 22 49 6e 76 61 6c 69 64 20 60 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 27 20 error."Invalid.`condition-case'.
a3a0 65 72 72 6f 72 20 68 61 6e 64 6c 65 72 3a 20 25 53 22 20 68 61 6e 64 6c 65 72 29 29 29 29 0a 20 error.handler:.%S".handler))))..
a3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 64 2d 68 61 ..............(setq.converted-ha
a3e0 6e 64 6c 65 72 73 20 28 6e 72 65 76 65 72 73 65 20 63 6f 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c ndlers.(nreverse.converted-handl
a400 65 72 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f ers))................(if.(cdr.co
a420 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nverted-body)...................
a440 20 28 6c 65 74 20 28 73 75 63 63 65 73 73 2d 76 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .(let.(success-var..............
a460 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 2d 62 6f 64 79 29 ............condition-case-body)
a480 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 73 75 63 63 65 73 ......................(if.succes
a4a0 73 2d 68 61 6e 64 6c 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 s-handler.......................
a4c0 20 20 20 28 73 65 74 66 20 73 75 63 63 65 73 73 2d 76 61 72 20 20 20 20 20 20 20 20 20 28 6d 61 ...(setf.success-var.........(ma
a4e0 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 73 75 63 63 65 73 73 22 29 0a 20 20 20 20 20 20 20 20 20 20 ke-symbol."$success")...........
a500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 .....................condition-c
a520 61 73 65 2d 62 6f 64 79 20 60 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e ase-body.`(prog1.,(iter2--contin
a540 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 2d 2d 76 61 uation-invocation-form.iter2--va
a560 6c 75 65 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 lue)............................
a580 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 69 66 20 28 ...........................(if.(
a5a0 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d eq.,iter2--continuations.,iter2-
a5c0 2d 64 6f 6e 65 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 -done)..........................
a5e0 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 ................................
a600 20 3b 3b 20 54 68 65 20 72 65 61 73 6f 6e 20 66 6f 72 20 60 73 75 63 63 65 73 73 2d 76 61 72 27 .;;.The.reason.for.`success-var'
a620 20 61 6e 64 20 6e 6f 74 20 65 76 61 6c 75 61 74 69 6e 67 20 60 73 75 63 63 65 73 73 2d 68 61 6e .and.not.evaluating.`success-han
a640 64 6c 65 72 27 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 dler'...........................
a660 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 ................................
a680 3b 3b 20 69 73 20 6e 6f 74 20 64 69 72 65 63 74 6c 79 20 68 65 72 65 20 69 73 20 74 68 61 74 20 ;;.is.not.directly.here.is.that.
a6a0 69 74 20 6d 75 73 74 20 6e 6f 74 20 62 65 20 70 6c 61 63 65 64 20 69 6e 73 69 64 65 0a 20 20 20 it.must.not.be.placed.inside....
a6c0 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 ................................
a6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 63 6f 6e 64 69 .......................;;.`condi
a700 74 69 6f 6e 2d 63 61 73 65 27 20 73 6f 20 74 68 61 74 20 69 74 20 6e 65 76 65 72 20 74 72 69 67 tion-case'.so.that.it.never.trig
a720 67 65 72 73 20 6f 74 68 65 72 20 68 61 6e 64 6c 65 72 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 gers.other.handlers.............
a740 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 ................................
a760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 73 75 63 63 65 73 73 2d 76 61 ...............(setq.,success-va
a780 72 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.t)............................
a7a0 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 70 75 .............................(pu
a7c0 73 68 20 2c 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 sh.,iter2--catcher.,iter2--conti
a7e0 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nuations))))....................
a800 20 20 20 20 28 73 65 74 66 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 2d 62 6f 64 79 20 60 28 ....(setf.condition-case-body.`(
a820 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f prog1.,(iter2--continuation-invo
a840 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 cation-form.iter2--value).......
a860 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 ................................
a880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 2c 69 74 65 72 32 ..............(unless.(eq.,iter2
a8a0 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 --continuations.,iter2--done)...
a8c0 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 ................................
a8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 2c 69 74 65 72 32 ....................(push.,iter2
a900 2d 2d 63 61 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 --catcher.,iter2--continuations)
a920 29 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 28 6c 65 74 20 28 ))))......................(let.(
a940 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 2d 66 6f 72 6d 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 (condition-case-form.condition-c
a960 61 73 65 2d 62 6f 64 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ase-body))......................
a980 20 20 3b 3b 20 54 68 69 73 20 63 68 65 63 6b 20 6d 61 79 20 6c 6f 6f 6b 20 73 74 72 61 6e 67 65 ..;;.This.check.may.look.strange
a9a0 2c 20 62 75 74 20 69 66 20 74 68 65 20 6f 6e 6c 79 20 68 61 6e 64 6c 65 72 20 69 73 20 60 3a 73 ,.but.if.the.only.handler.is.`:s
a9c0 75 63 63 65 73 73 27 2c 20 60 63 6f 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 72 73 27 20 77 69 uccess',.`converted-handlers'.wi
a9e0 6c 6c 20 62 65 20 6e 69 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ll.be.nil.......................
aa00 20 20 28 77 68 65 6e 20 63 6f 6e 76 65 72 74 65 64 2d 68 61 6e 64 6c 65 72 73 0a 20 20 20 20 20 ..(when.converted-handlers......
aa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 63 6f 6e 64 69 74 ....................(setf.condit
aa40 69 6f 6e 2d 63 61 73 65 2d 66 6f 72 6d 20 60 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 2c ion-case-form.`(condition-case.,
aa60 76 61 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 var.............................
aa80 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 2c 63 6f 6e 64 ...........................,cond
aaa0 69 74 69 6f 6e 2d 63 61 73 65 2d 62 6f 64 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ition-case-body.................
aac0 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 ................................
aae0 20 20 20 20 20 2c 40 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 68 61 6e 64 6c 65 72 29 .....,@(mapcar.(lambda.(handler)
ab00 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 20 ................................
ab20 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 ................................
ab40 20 20 60 28 2c 28 63 61 72 20 68 61 6e 64 6c 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..`(,(car.handler)..............
ab60 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 ................................
ab80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 65 ......................(setq.,ite
aba0 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 20 2c r2--continuations.,iter2--done.,
abc0 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 iter2--stack.,iter2--stack-state
abe0 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 )...............................
ac00 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 ................................
ac20 20 20 20 20 20 2c 40 28 63 64 72 20 68 61 6e 64 6c 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 .....,@(cdr.handler)))..........
ac40 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 ................................
ac60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 2d ......................converted-
ac80 68 61 6e 64 6c 65 72 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 handlers))))....................
aca0 20 20 20 20 28 77 68 65 6e 20 73 75 63 63 65 73 73 2d 68 61 6e 64 6c 65 72 0a 20 20 20 20 20 20 ....(when.success-handler.......
acc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 62 6f 64 79 2d 76 ...................(let.((body-v
ace0 61 6c 75 65 2d 76 61 72 20 28 6d 61 6b 65 2d 73 79 6d 62 6f 6c 20 22 24 62 6f 64 79 2d 76 61 6c alue-var.(make-symbol."$body-val
ad00 75 65 22 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 20 20 ue")))..........................
ad20 20 20 28 73 65 74 66 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 2d 66 6f 72 6d 20 60 28 6c 65 ..(setf.condition-case-form.`(le
ad40 74 2a 20 28 2c 73 75 63 63 65 73 73 2d 76 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t*.(,success-var................
ad60 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 ................................
ad80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2c 62 6f 64 79 2d 76 61 6c 75 65 2d 76 61 72 20 2c ..............(,body-value-var.,
ada0 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 condition-case-form))...........
adc0 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 ................................
ade0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 2c 73 75 63 63 65 73 73 2d 76 61 72 0a 20 ..............(if.,success-var..
ae00 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 ................................
ae20 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 2c 28 69 74 65 ...........................,(ite
ae40 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 28 63 64 72 r2--merge-continuation-form.(cdr
ae60 20 73 75 63 63 65 73 73 2d 68 61 6e 64 6c 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .success-handler))..............
ae80 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 ................................
aea0 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 62 6f 64 79 2d 76 61 6c 75 65 2d 76 61 72 29 29 29 29 .............,body-value-var))))
aec0 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 70 75 73 68 20 28 )........................(push.(
aee0 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 iter2--catcher-continuation-addi
af00 6e 67 2d 66 6f 72 6d 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 2d 66 6f 72 6d 0a 20 20 20 20 ng-form.condition-case-form.....
af20 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 ................................
af40 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 ................................
af60 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 ..(iter2--merge-continuation-for
af80 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 m.converted-body)...............
afa0 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 ................................
afc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 2c 69 74 65 72 32 ........................`(,iter2
afe0 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 0a 20 20 --stack-state.,iter2--stack))...
b000 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 63 6f 6e 76 65 ...........................conve
b020 72 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 rted))......................(set
b040 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 q.can-yield.t)).................
b060 20 28 70 75 73 68 20 60 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 2c 76 61 72 20 2c 28 63 .(push.`(condition-case.,var.,(c
b080 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 20 2c 40 63 6f 6e 76 65 72 74 65 64 2d 68 ar.converted-body).,@converted-h
b0a0 61 6e 64 6c 65 72 73 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 andlers).converted))))..........
b0c0 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 28 69 74 65 72 2d 79 69 65 6c 64 20 56 41 4c 55 45 29 ....;;.Handle.(iter-yield.VALUE)
b0e0 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 69 74 65 72 2d 79 69 65 6c 64 20 2e 20 2c 72 ..............(`(iter-yield...,r
b100 65 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 20 28 est)..............(unless.(and.(
b120 63 6f 6e 73 70 20 72 65 73 74 29 20 28 6e 75 6c 6c 20 28 63 64 72 20 72 65 73 74 29 29 29 0a 20 consp.rest).(null.(cdr.rest)))..
b140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 46 6f 72 6d 20 60 69 74 65 72 ..............(error."Form.`iter
b160 2d 79 69 65 6c 64 27 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 77 69 74 68 20 65 78 61 63 74 6c -yield'.must.be.used.with.exactl
b180 79 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 3a 20 25 53 22 20 66 6f 72 6d 29 29 0a 20 20 20 20 20 y.one.argument:.%S".form))......
b1a0 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 20 ........(let*.((converted-value.
b1c0 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 28 63 61 72 20 72 .....(iter2--convert-form.(car.r
b1e0 65 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 76 est))).....................(conv
b200 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d erted-value-form.(car.converted-
b220 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 69 74 value)))................(when.it
b240 65 72 32 2d 67 65 6e 65 72 61 74 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 er2-generate-tracing-functions..
b260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 64 2d ................(setq.converted-
b280 76 61 6c 75 65 2d 66 6f 72 6d 20 60 28 6c 65 74 20 28 28 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 value-form.`(let.((,iter2--value
b2a0 20 2c 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 .,converted-value-form))........
b2c0 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 ................................
b2e0 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 2d 74 72 61 63 65 20 22 79 69 65 6c 64 69 ........(iter2--do-trace."yieldi
b300 6e 67 20 25 53 22 20 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 ng.%S".,iter2--value)...........
b320 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 ................................
b340 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 .....,iter2--value)))...........
b360 20 20 20 20 20 28 77 68 65 6e 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 .....(when.(cdr.converted-value)
b380 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 2d 63 6f ..................(iter2--add-co
b3a0 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 63 6f 6e 76 65 72 74 65 64 nverted-form.converted.converted
b3c0 2d 76 61 6c 75 65 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 -value-form)..................(i
b3e0 74 65 72 32 2d 2d 66 69 6e 69 73 68 2d 63 68 75 6e 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 ter2--finish-chunk.converted-chu
b400 6e 6b 73 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nks.converted)..................
b420 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 20 28 63 64 72 20 (setq.converted-value-form.(cdr.
b440 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 converted-value)))..............
b460 20 20 28 69 66 20 28 69 74 65 72 32 2d 2d 6c 69 74 65 72 61 6c 2d 6f 72 2d 76 61 72 69 61 62 6c ..(if.(iter2--literal-or-variabl
b480 65 2d 70 20 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 e-p.converted-value-form).......
b4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 70 75 73 68 20 60 28 73 65 74 71 .............(progn.(push.`(setq
b4c0 20 2c 69 74 65 72 32 2d 2d 79 69 65 6c 64 69 6e 67 20 74 29 20 63 6f 6e 76 65 72 74 65 64 29 0a .,iter2--yielding.t).converted).
b4e0 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 70 75 73 68 20 ..........................(push.
b500 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 29 29 converted-value-form.converted))
b520 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 74 20 6d 69 67 68 74 20 62 65 ..................;;.It.might.be
b540 20 75 6e 73 61 66 65 20 74 6f 20 73 65 74 20 79 69 65 6c 64 69 6e 67 20 66 6c 61 67 20 66 69 72 .unsafe.to.set.yielding.flag.fir
b560 73 74 3a 20 77 68 61 74 20 69 66 20 74 68 65 20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 20 20 st:.what.if.the.value...........
b580 20 20 20 20 20 20 20 3b 3b 20 66 6f 72 6d 20 65 78 69 74 73 20 6e 6f 6e 2d 6c 6f 63 61 6c 6c 79 .......;;.form.exits.non-locally
b5a0 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 70 72 6f 67 31 ?..................(push.`(prog1
b5c0 20 2c 63 6f 6e 76 65 72 74 65 64 2d 76 61 6c 75 65 2d 66 6f 72 6d 20 28 73 65 74 71 20 2c 69 74 .,converted-value-form.(setq.,it
b5e0 65 72 32 2d 2d 79 69 65 6c 64 69 6e 67 20 74 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 er2--yielding.t)).converted))...
b600 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 .............(setq.can-yield.t))
b620 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 60 73 61 76 65 2d 65 )..............;;.Handle.`save-e
b640 78 63 75 72 73 69 6f 6e 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 73 61 76 65 2d 65 xcursion'..............(`(save-e
b660 78 63 75 72 73 69 6f 6e 20 2e 20 2c 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 xcursion...,body)..............(
b680 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e let.((converted-body.(iter2--con
b6a0 76 65 72 74 2d 70 72 6f 67 6e 20 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 vert-progn.body)))..............
b6c0 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 ..(if.(cdr.converted-body)......
b6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 70 75 73 68 20 28 69 74 65 72 ..............(progn.(push.(iter
b700 32 2d 2d 63 61 74 63 68 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 2--catcher-continuation-adding-f
b720 6f 72 6d 20 60 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 orm.`(save-excursion............
b740 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 ................................
b760 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 ................................
b780 20 3b 3b 20 42 79 74 65 20 63 6f 6d 70 69 6c 65 72 20 67 69 76 65 73 20 61 20 64 75 6d 62 20 77 .;;.Byte.compiler.gives.a.dumb.w
b7a0 61 72 6e 69 6e 67 20 68 65 72 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 arning.here,....................
b7c0 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 ................................
b7e0 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 3b 3b 20 73 75 67 67 .........................;;.sugg
b800 65 73 74 69 6e 67 20 74 6f 20 75 73 65 20 60 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 esting.to.use.`with-current-buff
b820 65 72 27 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 er'.............................
b840 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 ................................
b860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e 69 6e .................(with-no-warnin
b880 67 73 20 28 73 65 74 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 gs.(set-buffer.buffer)).........
b8a0 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 ................................
b8c0 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 ................................
b8e0 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 20 70 6f 69 6e 74 29 0a 20 20 20 20 20 20 20 20 20 ....(goto-char..point)..........
b900 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 ................................
b920 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 ................................
b940 20 20 20 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d ...(prog1.,(iter2--continuation-
b960 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 invocation-form.iter2--value)...
b980 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 ................................
b9a0 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 ................................
b9c0 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 2c 69 74 65 72 32 2d 2d ............(unless.(eq.,iter2--
b9e0 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 20 20 continuations.,iter2--done).....
ba00 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 ................................
ba20 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 ................................
ba40 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 75 66 66 65 72 20 28 63 75 72 72 65 6e ............(setq.buffer.(curren
ba60 74 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-buffer).......................
ba80 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 ................................
baa0 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 ................................
bac0 70 6f 69 6e 74 20 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 point..(point)).................
bae0 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 ................................
bb00 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 ................................
bb20 28 70 75 73 68 20 2c 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f (push.,iter2--catcher.,iter2--co
bb40 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntinuations)))).................
bb60 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 ................................
bb80 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 69 74 65 72 32 2d .........................(iter2-
bba0 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 -merge-continuation-form.convert
bbc0 65 64 2d 62 6f 64 79 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 ed-body)........................
bbe0 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 ................................
bc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 62 75 66 66 65 72 20 28 63 75 72 72 ..................'(buffer.(curr
bc20 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ent-buffer))....................
bc40 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 ................................
bc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 70 6f 69 6e 74 20 20 28 ......................'(point..(
bc80 70 6f 69 6e 74 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 point)))........................
bca0 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .........converted).............
bcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 ..............(setq.can-yield.t)
bce0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 73 61 76 65 2d )..................(push.`(save-
bd00 65 78 63 75 72 73 69 6f 6e 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 excursion.,@(macroexp-unprogn.(c
bd20 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 ar.converted-body))).converted))
bd40 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 60 73 61 76 65 2d ))..............;;.Handle.`save-
bd60 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 current-buffer'..............(`(
bd80 73 61 76 65 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 2e 20 2c 62 6f 64 79 29 0a 20 20 20 save-current-buffer...,body)....
bda0 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 20 ..........(let.((converted-body.
bdc0 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f 67 6e 20 62 6f 64 79 29 29 29 0a 20 20 (iter2--convert-progn.body)))...
bde0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d .............(if.(cdr.converted-
be00 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 body)....................(progn.
be20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 (push.(iter2--catcher-continuati
be40 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 73 61 76 65 2d 63 75 72 72 65 6e 74 2d 62 75 on-adding-form.`(save-current-bu
be60 66 66 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 ffer............................
be80 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 ................................
bea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72 20 62 75 66 .................(set-buffer.buf
bec0 66 65 72 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 fer)............................
bee0 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 ................................
bf00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d .................(prog1.,(iter2-
bf20 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 -continuation-invocation-form.it
bf40 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er2--value).....................
bf60 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 ................................
bf80 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 75 6e 6c 65 73 ..........................(unles
bfa0 73 20 28 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 s.(eq.,iter2--continuations.,ite
bfc0 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r2--done).......................
bfe0 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 ................................
c000 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 73 65 74 71 20 ..........................(setq.
c020 62 75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 buffer.(current-buffer))........
c040 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 ................................
c060 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 ................................
c080 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 2c 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 20 2c .........(push.,iter2--catcher.,
c0a0 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 iter2--continuations))))........
c0c0 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 ................................
c0e0 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 ................................
c100 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 ..(iter2--merge-continuation-for
c120 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 m.converted-body)...............
c140 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 ................................
c160 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 27 28 62 75 66 ...........................'(buf
c180 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 fer.(current-buffer)))..........
c1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 .......................converted
c1c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 )...........................(set
c1e0 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 q.can-yield.t)).................
c200 20 28 70 75 73 68 20 60 28 73 61 76 65 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 2c 40 28 .(push.`(save-current-buffer.,@(
c220 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d macroexp-unprogn.(car.converted-
c240 62 6f 64 79 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 body))).converted))))...........
c260 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 60 73 61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e 27 2e ...;;.Handle.`save-restriction'.
c280 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 73 61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e .............(`(save-restriction
c2a0 20 2e 20 2c 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f ...,body)..............(let.((co
c2c0 6e 76 65 72 74 65 64 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 6f nverted-body.(iter2--convert-pro
c2e0 67 6e 20 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 gn.body)))................(if.(c
c300 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 dr.converted-body)..............
c320 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 63 61 74 63 68 ......(progn.(push.(iter2--catch
c340 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 73 61 er-continuation-adding-form.`(sa
c360 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ve-restriction..................
c380 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 ................................
c3a0 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 6e 61 72 72 ...........................(narr
c3c0 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 20 70 6f 69 6e 74 2d 6d 69 6e 20 70 6f 69 6e 74 2d 6d 61 78 ow-to-region.point-min.point-max
c3e0 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 )...............................
c400 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 ................................
c420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f ..............(prog1.,(iter2--co
c440 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 ntinuation-invocation-form.iter2
c460 2d 2d 76 61 6c 75 65 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 --value)........................
c480 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 ................................
c4a0 20 20 20 20 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 .......................(unless.(
c4c0 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d eq.,iter2--continuations.,iter2-
c4e0 2d 64 6f 6e 65 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 -done)..........................
c500 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 ................................
c520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 6f 69 .......................(setq.poi
c540 6e 74 2d 6d 69 6e 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 nt-min.(point-min)..............
c560 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 ................................
c580 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 ................................
c5a0 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 2d 6d 61 78 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a .........point-max.(point-max)).
c5c0 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 ................................
c5e0 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 ................................
c600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 2c 69 74 65 72 32 2d 2d 63 61 ................(push.,iter2--ca
c620 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a tcher.,iter2--continuations)))).
c640 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 ................................
c660 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 ................................
c680 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 74 .........(iter2--merge-continuat
c6a0 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 ion-form.converted-body)........
c6c0 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 ................................
c6e0 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 ................................
c700 20 20 27 28 70 6f 69 6e 74 2d 6d 69 6e 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 ..'(point-min.(point-min))......
c720 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 ................................
c740 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 ................................
c760 20 20 20 20 27 28 70 6f 69 6e 74 2d 6d 61 78 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 0a 20 20 ....'(point-max.(point-max)))...
c780 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 63 6f ..............................co
c7a0 6e 76 65 72 74 65 64 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 nverted)........................
c7c0 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 ...(setq.can-yield.t))..........
c7e0 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 73 61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e ........(push.`(save-restriction
c800 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 6f 6e 76 65 72 .,@(macroexp-unprogn.(car.conver
c820 74 65 64 2d 62 6f 64 79 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 0a 0a 20 20 20 20 20 ted-body))).converted)))).......
c840 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 60 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 .......;;.Handle.`save-match-dat
c860 61 27 20 6d 61 63 72 6f 3a 20 6e 6f 74 20 61 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 2c 20 62 75 a'.macro:.not.a.special.form,.bu
c880 74 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b t.without.special.............;;
c8a0 20 68 61 6e 64 6c 69 6e 67 20 64 6f 65 73 6e 27 74 20 70 72 6f 64 75 63 65 20 69 6e 74 65 6e 64 .handling.doesn't.produce.intend
c8c0 65 64 20 72 65 73 75 6c 74 73 20 69 6e 20 67 65 6e 65 72 61 74 6f 72 20 66 75 6e 63 74 69 6f 6e ed.results.in.generator.function
c8e0 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 s..............(`(save-match-dat
c900 61 20 2e 20 2c 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 a...,body)..............(let.((c
c920 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 70 72 onverted-body.(iter2--convert-pr
c940 6f 67 6e 20 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 ogn.body)))................(if.(
c960 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 cdr.converted-body).............
c980 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 63 61 74 63 .......(progn.(push.(iter2--catc
c9a0 68 65 72 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 73 her-continuation-adding-form.`(s
c9c0 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ave-match-data..................
c9e0 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 ................................
ca00 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 73 65 74 2d ...........................(set-
ca20 6d 61 74 63 68 2d 64 61 74 61 20 6d 61 74 63 68 2d 64 61 74 61 29 0a 20 20 20 20 20 20 20 20 20 match-data.match-data)..........
ca40 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 ................................
ca60 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 ................................
ca80 20 20 20 28 70 72 6f 67 31 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d ...(prog1.,(iter2--continuation-
caa0 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 invocation-form.iter2--value)...
cac0 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 ................................
cae0 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 ................................
cb00 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 2c 69 74 65 72 32 2d 2d ............(unless.(eq.,iter2--
cb20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 20 20 continuations.,iter2--done).....
cb40 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 ................................
cb60 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 ................................
cb80 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 74 63 68 2d 64 61 74 61 20 6e 69 6c 20 6d 61 74 63 ............(match-data.nil.matc
cba0 68 2d 64 61 74 61 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 h-data).........................
cbc0 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 ................................
cbe0 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 70 75 73 68 20 2c 69 ........................(push.,i
cc00 74 65 72 32 2d 2d 63 61 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 ter2--catcher.,iter2--continuati
cc20 6f 6e 73 29 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 20 ons)))).........................
cc40 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 ................................
cc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 .................(iter2--merge-c
cc80 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 ontinuation-form.converted-body)
cca0 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 20 ................................
ccc0 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 ................................
cce0 20 20 20 20 20 20 20 20 20 20 27 28 6d 61 74 63 68 2d 64 61 74 61 20 28 6d 61 74 63 68 2d 64 61 ..........'(match-data.(match-da
cd00 74 61 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 20 20 20 ta)))...........................
cd20 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......converted)................
cd40 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 0a 20 ...........(setq.can-yield.t))..
cd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 73 61 76 65 2d 6d 61 74 ................(push.`(save-mat
cd80 63 68 2d 64 61 74 61 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 ch-data.,@(macroexp-unprogn.(car
cda0 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 .converted-body))).converted))))
cdc0 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 60 77 69 74 68 2d 6e 6f ..............;;.Handle.`with-no
cde0 2d 77 61 72 6e 69 6e 67 73 27 3a 20 77 68 69 6c 65 20 6e 6f 74 20 61 20 73 70 65 63 69 61 6c 20 -warnings':.while.not.a.special.
ce00 66 6f 72 6d 2c 20 69 74 20 72 65 71 75 69 72 65 73 20 73 70 65 63 69 61 6c 20 68 61 6e 64 6c 69 form,.it.requires.special.handli
ce20 6e 67 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e 69 ng..............(`(with-no-warni
ce40 6e 67 73 20 2e 20 2c 62 6f 64 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 ngs...,body)..............(let.(
ce60 28 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d (converted-body.(iter2--convert-
ce80 70 72 6f 67 6e 20 62 6f 64 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 progn.body)))................(pu
cea0 73 68 20 60 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e 69 6e 67 73 20 2c 40 28 6d 61 63 72 6f 65 78 sh.`(with-no-warnings.,@(macroex
cec0 70 2d 75 6e 70 72 6f 67 6e 20 28 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f 6e 74 69 6e 75 61 p-unprogn.(iter2--merge-continua
cee0 74 69 6f 6e 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 29 29 20 63 6f 6e 76 tion-form.converted-body))).conv
cf00 65 72 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d erted)................(setq.can-
cf20 79 69 65 6c 64 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d 62 6f 64 79 29 29 29 29 0a 0a 20 yield.(cdr.converted-body))))...
cf40 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 61 6e 64 6c 65 20 61 6c 6c 20 6f 74 68 65 72 20 6e ...........;;.Handle.all.other.n
cf60 6f 6e 2d 61 74 6f 6d 69 63 20 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 on-atomic.forms..............(`(
cf80 2c 6e 61 6d 65 20 2e 20 2c 61 72 67 75 6d 65 6e 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ,name...,arguments).............
cfa0 20 3b 3b 20 53 65 76 65 72 61 6c 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 73 20 61 72 65 20 68 61 .;;.Several.special.forms.are.ha
cfc0 6e 64 6c 65 64 20 6d 6f 72 65 2d 6f 72 2d 6c 65 73 73 20 6c 69 6b 65 20 66 75 6e 63 74 69 6f 6e ndled.more-or-less.like.function
cfe0 20 63 61 6c 6c 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 .calls...............(when.(and.
d000 28 73 70 65 63 69 61 6c 2d 66 6f 72 6d 2d 70 20 6e 61 6d 65 29 20 28 6e 6f 74 20 28 6d 65 6d 71 (special-form-p.name).(not.(memq
d020 20 6e 61 6d 65 20 27 28 73 65 74 71 20 73 65 74 71 2d 64 65 66 61 75 6c 74 20 74 68 72 6f 77 29 .name.'(setq.setq-default.throw)
d040 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 53 70 65 63 69 )))................(error."Speci
d060 61 6c 20 66 6f 72 6d 20 25 53 20 69 6e 63 6f 72 72 65 63 74 20 6f 72 20 6e 6f 74 20 73 75 70 70 al.form.%S.incorrect.or.not.supp
d080 6f 72 74 65 64 22 20 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 orted".form))..............(let.
d0a0 28 63 6f 6e 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 (converted-arguments............
d0c0 20 20 20 20 20 20 20 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 72 67 75 6d 65 ........next-continuation-argume
d0e0 6e 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 67 75 6d 65 6e 74 73 nts....................arguments
d100 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -to-save-on-stack...............
d120 20 20 20 20 20 28 6e 75 6d 2d 73 74 61 63 6b 2d 61 72 67 75 6d 65 6e 74 73 20 30 29 29 0a 20 20 .....(num-stack-arguments.0))...
d140 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 61 72 67 75 6d 65 6e 74 73 0a 20 20 .............(while.arguments...
d160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 61 72 67 75 6d 65 6e 74 20 28 ...............(let.((argument.(
d180 70 6f 70 20 61 72 67 75 6d 65 6e 74 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pop.arguments)))................
d1a0 20 20 20 20 28 63 6f 6e 64 20 28 28 65 71 20 61 72 67 75 6d 65 6e 74 20 69 74 65 72 32 2d 2d 73 ....(cond.((eq.argument.iter2--s
d1c0 74 61 63 6b 2d 73 74 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tack-state).....................
d1e0 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 69 73 20 6f 75 72 20 70 72 69 76 61 74 65 20 69 6e 74 ......;;.This.is.our.private.int
d200 65 72 6e 61 6c 20 66 6c 61 67 20 74 68 61 74 20 6d 65 61 6e 73 20 22 74 61 6b 65 20 61 0a 20 20 ernal.flag.that.means."take.a...
d220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 72 65 76 69 ........................;;.previ
d240 6f 75 73 6c 79 20 63 6f 6d 70 75 74 65 64 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 73 74 ously.computed.value.from.the.st
d260 61 63 6b 22 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 ack"............................
d280 28 70 75 73 68 20 60 28 70 6f 70 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 20 63 6f 6e 76 65 (push.`(pop.,iter2--stack).conve
d2a0 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rted-arguments).................
d2c0 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 ..........(push.iter2--stack-sta
d2e0 74 65 20 20 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 72 67 75 6d 65 6e 74 73 te...next-continuation-arguments
d300 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 )...........................(set
d320 71 20 6e 75 6d 2d 73 74 61 63 6b 2d 61 72 67 75 6d 65 6e 74 73 20 28 31 2b 20 6e 75 6d 2d 73 74 q.num-stack-arguments.(1+.num-st
d340 61 63 6b 2d 61 72 67 75 6d 65 6e 74 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ack-arguments)))................
d360 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 28 69 74 65 72 32 2d 2d 6c 69 74 65 72 61 6c 70 20 ..........((or.(iter2--literalp.
d380 61 72 67 75 6d 65 6e 74 29 20 28 61 6e 64 20 28 6d 65 6d 71 20 6e 61 6d 65 20 27 28 73 65 74 71 argument).(and.(memq.name.'(setq
d3a0 20 73 65 74 71 2d 64 65 66 61 75 6c 74 29 29 20 28 3d 20 28 25 20 28 6c 65 6e 67 74 68 20 63 6f .setq-default)).(=.(%.(length.co
d3c0 6e 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 73 29 20 32 29 20 30 29 29 29 0a 20 20 20 20 20 nverted-arguments).2).0)))......
d3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 61 72 67 75 6d .....................(push.argum
d400 65 6e 74 20 63 6f 6e 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 73 29 0a 20 20 20 20 20 20 20 ent.converted-arguments)........
d420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 61 72 67 75 6d 65 6e ...................(push.argumen
d440 74 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 72 67 75 6d 65 6e 74 73 29 29 0a t.next-continuation-arguments)).
d460 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 0a 20 20 20 20 .........................(t.....
d480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e ......................(let.((con
d4a0 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d verted-argument.(iter2--convert-
d4c0 66 6f 72 6d 20 61 72 67 75 6d 65 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 form.argument)))................
d4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 2d .............(if.(cdr.converted-
d500 61 72 67 75 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 argument).......................
d520 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 77 68 65 6e 20 61 72 67 75 6d 65 6e 74 73 ..........(progn.(when.arguments
d540 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -to-save-on-stack...............
d560 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 70 75 73 68 ...........................(push
d580 20 28 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6e 72 65 76 .(iter2--stack-adding-form.(nrev
d5a0 65 72 73 65 20 61 72 67 75 6d 65 6e 74 73 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 29 erse.arguments-to-save-on-stack)
d5c0 29 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).converted))...................
d5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 61 64 64 .....................(iter2--add
d600 2d 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 20 28 63 61 72 20 63 -converted-form.converted.(car.c
d620 6f 6e 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 onverted-argument)).............
d640 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 70 75 73 68 ...........................(push
d660 20 60 28 2c 6e 61 6d 65 20 2c 40 28 6e 72 65 76 65 72 73 65 20 6e 65 78 74 2d 63 6f 6e 74 69 6e .`(,name.,@(nreverse.next-contin
d680 75 61 74 69 6f 6e 2d 61 72 67 75 6d 65 6e 74 73 29 20 2c 28 63 64 72 20 63 6f 6e 76 65 72 74 65 uation-arguments).,(cdr.converte
d6a0 64 2d 61 72 67 75 6d 65 6e 74 29 20 2c 40 61 72 67 75 6d 65 6e 74 73 29 20 62 6f 64 79 29 0a 20 d-argument).,@arguments).body)..
d6c0 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 ................................
d6e0 20 20 20 20 20 20 28 73 65 74 71 20 61 72 67 75 6d 65 6e 74 73 20 6e 69 6c 0a 20 20 20 20 20 20 ......(setq.arguments.nil.......
d700 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 ................................
d720 20 20 20 20 20 20 20 63 61 6e 2d 79 69 65 6c 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .......can-yield.t))............
d740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 63 61 72 20 63 6f ...................(push.(car.co
d760 6e 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 29 20 63 6f 6e 76 65 72 74 65 64 2d 61 72 67 75 nverted-argument).converted-argu
d780 6d 65 6e 74 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 20 20 ments)..........................
d7a0 20 20 20 20 20 28 70 75 73 68 20 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 73 74 61 74 65 20 20 20 .....(push.iter2--stack-state...
d7c0 20 20 20 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 72 67 75 6d 65 6e 74 73 29 ....next-continuation-arguments)
d7e0 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 28 ...............................(
d800 70 75 73 68 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 61 72 67 75 6d 65 6e 74 29 20 61 72 push.(car.converted-argument).ar
d820 67 75 6d 65 6e 74 73 2d 74 6f 2d 73 61 76 65 2d 6f 6e 2d 73 74 61 63 6b 29 29 29 29 29 29 29 0a guments-to-save-on-stack))))))).
d840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 63 61 6e 2d 79 69 65 6c 64 ...............(unless.can-yield
d860 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 3e 20 6e 75 6d 2d 73 ..................(when.(>.num-s
d880 74 61 63 6b 2d 61 72 67 75 6d 65 6e 74 73 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tack-arguments.1)...............
d8a0 20 20 20 20 20 28 70 75 73 68 20 28 69 74 65 72 32 2d 2d 73 74 61 63 6b 2d 68 65 61 64 2d 72 65 .....(push.(iter2--stack-head-re
d8c0 76 65 72 73 69 6e 67 2d 66 6f 72 6d 20 6e 75 6d 2d 73 74 61 63 6b 2d 61 72 67 75 6d 65 6e 74 73 versing-form.num-stack-arguments
d8e0 29 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ).converted))..................(
d900 70 75 73 68 20 28 63 6f 6e 73 20 6e 61 6d 65 20 28 6e 72 65 76 65 72 73 65 20 63 6f 6e 76 65 72 push.(cons.name.(nreverse.conver
d920 74 65 64 2d 61 72 67 75 6d 65 6e 74 73 29 29 20 63 6f 6e 76 65 72 74 65 64 29 29 29 29 0a 0a 20 ted-arguments)).converted))))...
d940 20 20 20 20 20 20 20 20 20 20 20 28 5f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 ...........(_..............(push
d960 20 66 6f 72 6d 20 63 6f 6e 76 65 72 74 65 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 .form.converted)))...........(wh
d980 65 6e 20 63 61 6e 2d 79 69 65 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d en.can-yield.............(iter2-
d9a0 2d 66 69 6e 69 73 68 2d 63 68 75 6e 6b 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 20 63 -finish-chunk.converted-chunks.c
d9c0 6f 6e 76 65 72 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onverted........................
d9e0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 69 74 68 20 74 68 65 20 61 64 64 69 74 69 6f 6e 20 6f ..........;;.With.the.addition.o
da00 66 20 60 69 74 65 72 32 2d 6e 65 78 74 27 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 72 65 73 6f 6c f.`iter2-next',.we.need.to.resol
da20 76 65 20 74 68 65 20 69 6e 63 6f 6d 69 6e 67 20 76 61 6c 75 65 73 0a 20 20 20 20 20 20 20 20 20 ve.the.incoming.values..........
da40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 28 77 72 61 70 ........................;;.(wrap
da60 70 65 64 20 69 6e 20 6c 61 6d 62 64 61 73 29 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 72 65 73 ped.in.lambdas),.even.if.the.res
da80 75 6c 74 20 69 73 20 75 6e 75 73 65 64 2e 20 20 54 68 65 20 72 65 61 73 6f 6e 20 69 73 20 74 68 ult.is.unused...The.reason.is.th
daa0 61 74 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 at..............................
dac0 20 20 20 20 3b 3b 20 74 68 65 20 6c 61 6d 62 64 61 73 20 63 61 6e 20 65 78 69 74 20 6e 6f 6e 6c ....;;.the.lambdas.can.exit.nonl
dae0 6f 63 61 6c 6c 79 20 6f 72 20 68 61 76 65 20 61 20 73 69 64 65 20 65 66 66 65 63 74 2e 20 20 54 ocally.or.have.a.side.effect...T
db00 68 69 73 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 his.is.not......................
db20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 6f 73 73 69 62 6c 65 20 77 69 74 68 20 60 69 74 ............;;.possible.with.`it
db40 65 72 2d 6e 65 78 74 27 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 6c 61 6d 62 64 61 73 20 69 6e er-next',.because.the.lambdas.in
db60 20 74 68 69 73 20 63 61 73 65 20 6a 75 73 74 20 72 65 74 75 72 6e 20 61 0a 20 20 20 20 20 20 20 .this.case.just.return.a........
db80 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 3b 3b 20 70 72 65 ..........................;;.pre
dba0 63 6f 6d 70 75 74 65 64 20 76 61 6c 75 65 2c 20 73 65 65 20 60 69 74 65 72 32 2d 2d 69 64 65 6e computed.value,.see.`iter2--iden
dbc0 74 69 74 79 2d 62 69 6e 64 27 2e 20 20 48 6f 77 65 76 65 72 2c 20 77 69 74 68 20 60 69 74 65 72 tity-bind'...However,.with.`iter
dbe0 32 2d 6e 65 78 74 27 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 2-next'.........................
dc00 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 79 20 63 61 6e 20 69 6e 63 6c 75 64 65 20 61 72 62 .........;;.they.can.include.arb
dc20 69 74 72 61 72 79 20 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 itrary.forms....................
dc40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 66 75 6e 63 61 6c 6c 20 2c 69 74 65 72 32 ................`(funcall.,iter2
dc60 2d 2d 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 61 6e 2d --value)).............(setq.can-
dc80 79 69 65 6c 64 20 6e 69 6c 29 29 29 29 0a 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 76 65 yield.nil))))........(setq.conve
dca0 72 74 65 64 20 28 6e 72 65 76 65 72 73 65 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 rted.(nreverse.converted))......
dcc0 20 28 69 66 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 0a 20 20 20 20 20 20 20 20 20 20 .(if.converted-chunks...........
dce0 28 70 72 6f 67 6e 20 28 73 65 74 71 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 20 28 6e (progn.(setq.converted-chunks.(n
dd00 72 65 76 65 72 73 65 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 29 29 0a 20 20 20 20 20 reverse.converted-chunks))......
dd20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 69 66 20 28 63 64 72 20 63 6f 6e 76 65 ............(cons.(if.(cdr.conve
dd40 72 74 65 64 2d 63 68 75 6e 6b 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rted-chunks)....................
dd60 20 20 20 20 20 20 20 20 60 28 70 72 6f 67 6e 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 ........`(progn.,(iter2--continu
dd80 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 72 65 76 65 72 73 65 20 28 63 64 72 20 ation-adding-form.(reverse.(cdr.
dda0 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 converted-chunks))).............
ddc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 6d 61 63 72 6f 65 .......................,@(macroe
dde0 78 70 2d 75 6e 70 72 6f 67 6e 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 xp-unprogn.(car.converted-chunks
de00 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 20 20 28 63 61 )))..........................(ca
de20 72 20 63 6f 6e 76 65 72 74 65 64 2d 63 68 75 6e 6b 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 r.converted-chunks))............
de40 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 63 6f 6e 76 65 72 74 65 64 20 28 6d 61 63 72 6f ............(if.converted.(macro
de60 65 78 70 2d 70 72 6f 67 6e 20 63 6f 6e 76 65 72 74 65 64 29 20 60 28 66 75 6e 63 61 6c 6c 20 2c exp-progn.converted).`(funcall.,
de80 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 iter2--value)))).........(cons.(
dea0 6d 61 63 72 6f 65 78 70 2d 70 72 6f 67 6e 20 63 6f 6e 76 65 72 74 65 64 29 20 6e 69 6c 29 29 29 macroexp-progn.converted).nil)))
dec0 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 2d 74 ))..(defun.iter2--convert-form-t
dee0 72 61 63 65 72 20 28 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 29 0a 20 20 28 6c 65 74 20 28 28 72 racer.(function.form)...(let.((r
df00 65 73 75 6c 74 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 29 29 29 0a esult.(funcall.function.form))).
df20 20 20 20 20 28 69 66 20 28 6f 72 20 28 61 74 6f 6d 20 66 6f 72 6d 29 20 28 6e 75 6c 6c 20 69 74 ....(if.(or.(atom.form).(null.it
df40 65 72 32 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 72 er2-tracing-function)).........r
df60 65 73 75 6c 74 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 6e 64 65 6e 74 61 74 69 6f 6e 20 20 esult.......(let.((indentation..
df80 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 28 2a 20 69 74 65 72 32 2d ..........(make-string.(*.iter2-
dfa0 2d 63 6f 6e 76 65 72 74 65 72 2d 64 65 70 74 68 20 34 29 20 3f 20 29 29 0a 20 20 20 20 20 20 20 -converter-depth.4).?.))........
dfc0 20 20 20 20 20 28 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 65 72 2d 64 65 70 74 68 20 28 31 2b .....(iter2--converter-depth.(1+
dfe0 20 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 65 72 2d 64 65 70 74 68 29 29 29 0a 20 20 20 20 20 .iter2--converter-depth)))......
e000 20 20 20 28 66 75 6e 63 61 6c 6c 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 ...(funcall.iter2-tracing-functi
e020 6f 6e 20 22 25 73 22 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 on."%s".(replace-regexp-in-strin
e040 67 20 22 5e 22 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 28 66 6f 72 6d 61 74 20 22 46 4f 52 4d 3a g."^".indentation.(format."FORM:
e060 20 25 73 22 20 28 69 74 65 72 32 2d 2d 70 70 2d 74 6f 2d 73 74 72 69 6e 67 20 66 6f 72 6d 20 36 .%s".(iter2--pp-to-string.form.6
e080 30 20 36 29 29 20 74 20 74 29 29 0a 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 69 74 65 0.6)).t.t)).........(funcall.ite
e0a0 72 32 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 20 22 25 73 22 20 28 72 65 70 6c 61 63 r2-tracing-function."%s".(replac
e0c0 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5e 22 20 69 6e 64 65 6e 74 61 74 69 e-regexp-in-string."^".indentati
e0e0 6f 6e 20 28 66 6f 72 6d 61 74 20 22 2d 2d 2d 3e 3a 20 25 73 5c 6e 2b 3a 20 20 20 20 25 73 22 0a on.(format."--->:.%s\n+:....%s".
e100 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 ................................
e120 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 ................................
e140 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 28 ...............................(
e160 69 74 65 72 32 2d 2d 70 70 2d 74 6f 2d 73 74 72 69 6e 67 20 28 63 61 72 20 72 65 73 75 6c 74 29 iter2--pp-to-string.(car.result)
e180 20 36 30 20 36 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 .60.6)..........................
e1a0 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 ................................
e1c0 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 ................................
e1e0 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 70 70 2d 74 6f 2d 73 74 72 69 6e 67 20 28 63 64 72 20 ......(iter2--pp-to-string.(cdr.
e200 72 65 73 75 6c 74 29 20 36 30 20 36 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 result).60.6))..................
e220 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 ................................
e240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 20 74 29 29 0a 20 20 20 20 ......................t.t)).....
e260 20 20 20 20 72 65 73 75 6c 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 70 70 ....result))))..(defun.iter2--pp
e280 2d 74 6f 2d 73 74 72 69 6e 67 20 28 6f 62 6a 65 63 74 20 26 6f 70 74 69 6f 6e 61 6c 20 6d 61 78 -to-string.(object.&optional.max
e2a0 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 6c 65 6e 67 74 68 20 69 6e 64 65 6e 74 2d 62 79 29 0a 20 -single-line-length.indent-by)..
e2c0 20 28 6c 65 74 2a 20 28 28 70 72 69 6e 74 2d 71 75 6f 74 65 64 20 74 29 0a 20 20 20 20 20 20 20 .(let*.((print-quoted.t)........
e2e0 20 20 28 73 74 72 69 6e 67 20 20 20 20 20 20 20 28 70 72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67 ..(string.......(prin1-to-string
e300 20 6f 62 6a 65 63 74 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 6d 61 78 2d 73 69 .object))).....(when.(and.max-si
e320 6e 67 6c 65 2d 6c 69 6e 65 2d 6c 65 6e 67 74 68 20 28 3e 20 28 6c 65 6e 67 74 68 20 73 74 72 69 ngle-line-length.(>.(length.stri
e340 6e 67 29 20 6d 61 78 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 6c 65 6e 67 74 68 29 29 0a 20 20 20 ng).max-single-line-length))....
e360 20 20 20 28 73 65 74 71 20 73 74 72 69 6e 67 20 28 73 74 72 69 6e 67 2d 74 72 69 6d 2d 72 69 67 ...(setq.string.(string-trim-rig
e380 68 74 20 28 70 70 2d 74 6f 2d 73 74 72 69 6e 67 20 6f 62 6a 65 63 74 29 29 29 29 0a 20 20 20 20 ht.(pp-to-string.object)))).....
e3a0 28 77 68 65 6e 20 28 61 6e 64 20 69 6e 64 65 6e 74 2d 62 79 20 28 3e 20 69 6e 64 65 6e 74 2d 62 (when.(and.indent-by.(>.indent-b
e3c0 79 20 30 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 73 74 72 69 6e 67 20 28 72 65 70 6c 61 63 y.0)).......(setq.string.(replac
e3e0 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 6e 22 20 28 63 6f 6e 63 61 74 20 e-regexp-in-string."\n".(concat.
e400 22 5c 6e 22 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 69 6e 64 65 6e 74 2d 62 79 20 3f 20 29 29 "\n".(make-string.indent-by.?.))
e420 20 73 74 72 69 6e 67 20 74 20 74 29 29 29 0a 20 20 20 20 73 74 72 69 6e 67 29 29 0a 0a 28 64 65 .string.t.t))).....string))..(de
e440 66 75 6e 20 69 74 65 72 32 2d 2d 64 65 62 75 67 2d 63 6f 6e 76 65 72 74 65 72 20 28 65 6e 61 62 fun.iter2--debug-converter.(enab
e460 6c 65 29 0a 20 20 28 69 66 20 65 6e 61 62 6c 65 0a 20 20 20 20 20 20 28 61 64 76 69 63 65 2d 61 le)...(if.enable.......(advice-a
e480 64 64 20 23 27 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 20 3a 61 72 6f 75 6e 64 dd.#'iter2--convert-form.:around
e4a0 20 23 27 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 2d 74 72 61 63 65 72 29 0a 20 .#'iter2--convert-form-tracer)..
e4c0 20 20 20 28 61 64 76 69 63 65 2d 72 65 6d 6f 76 65 20 23 27 69 74 65 72 32 2d 2d 63 6f 6e 76 65 ...(advice-remove.#'iter2--conve
e4e0 72 74 2d 66 6f 72 6d 20 23 27 69 74 65 72 32 2d 2d 63 6f 6e 76 65 72 74 2d 66 6f 72 6d 2d 74 72 rt-form.#'iter2--convert-form-tr
e500 61 63 65 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 acer)))..(defun.iter2--continuat
e520 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 6d 20 28 76 61 6c 75 65 20 26 6f 70 74 69 ion-invocation-form.(value.&opti
e540 6f 6e 61 6c 20 6c 61 6d 62 64 61 29 0a 20 20 28 69 66 20 69 74 65 72 32 2d 67 65 6e 65 72 61 74 onal.lambda)...(if.iter2-generat
e560 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 60 28 6c 65 74 20 e-tracing-functions.......`(let.
e580 28 28 66 75 6e 63 74 69 6f 6e 20 2c 28 6f 72 20 6c 61 6d 62 64 61 20 60 28 70 6f 70 20 2c 69 74 ((function.,(or.lambda.`(pop.,it
e5a0 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 er2--continuations))))..........
e5c0 28 69 74 65 72 32 2d 2d 64 6f 2d 74 72 61 63 65 20 22 69 6e 76 6f 6b 69 6e 67 20 25 53 20 77 69 (iter2--do-trace."invoking.%S.wi
e5e0 74 68 20 76 61 6c 75 65 20 25 53 22 20 66 75 6e 63 74 69 6f 6e 20 2c 76 61 6c 75 65 29 0a 20 20 th.value.%S".function.,value)...
e600 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 74 65 72 32 2d 2d 74 72 61 63 69 6e 67 2d 64 65 70 .......(let.((iter2--tracing-dep
e620 74 68 20 28 31 2b 20 69 74 65 72 32 2d 2d 74 72 61 63 69 6e 67 2d 64 65 70 74 68 29 29 29 0a 20 th.(1+.iter2--tracing-depth)))..
e640 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 2c 76 61 6c ..........(funcall.function.,val
e660 75 65 29 29 29 0a 20 20 20 20 60 28 66 75 6e 63 61 6c 6c 20 2c 28 6f 72 20 6c 61 6d 62 64 61 20 ue))).....`(funcall.,(or.lambda.
e680 60 28 70 6f 70 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 20 2c 76 `(pop.,iter2--continuations)).,v
e6a0 61 6c 75 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 6c 65 61 6e 75 70 2d 69 alue)))..(defun.iter2--cleanup-i
e6c0 6e 76 6f 63 61 74 69 6f 6e 2d 62 6f 64 79 20 28 29 0a 20 20 28 69 66 20 69 74 65 72 32 2d 67 65 nvocation-body.()...(if.iter2-ge
e6e0 6e 65 72 61 74 65 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 60 nerate-tracing-functions.......`
e700 28 6c 65 74 20 28 28 66 75 6e 63 74 69 6f 6e 20 28 70 6f 70 20 2c 69 74 65 72 32 2d 2d 63 6c 65 (let.((function.(pop.,iter2--cle
e720 61 6e 75 70 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 2d 74 72 61 anups)))..........(iter2--do-tra
e740 63 65 20 22 63 6c 65 61 6e 69 6e 67 20 75 70 20 75 73 69 6e 67 20 25 53 22 20 66 75 6e 63 74 69 ce."cleaning.up.using.%S".functi
e760 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 29 29 on)..........(funcall.function))
e780 0a 20 20 20 20 60 28 66 75 6e 63 61 6c 6c 20 28 70 6f 70 20 2c 69 74 65 72 32 2d 2d 63 6c 65 61 .....`(funcall.(pop.,iter2--clea
e7a0 6e 75 70 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 6d 65 72 67 65 2d 63 6f nups))))..(defun.iter2--merge-co
e7c0 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 28 63 6f 6e 76 65 72 74 65 64 20 26 6f 70 74 69 ntinuation-form.(converted.&opti
e7e0 6f 6e 61 6c 20 76 61 72 29 0a 20 20 28 6c 65 74 20 28 28 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 onal.var)...(let.((converted-for
e800 6d 20 20 20 20 28 63 61 72 20 63 6f 6e 76 65 72 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 28 63 m....(car.converted)).........(c
e820 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 20 28 63 64 72 20 63 6f 6e 76 65 72 74 65 64 29 ontinuation-form.(cdr.converted)
e840 29 29 0a 20 20 20 20 28 69 66 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 66 6f 72 6d 0a 20 20 20 )).....(if.continuation-form....
e860 20 20 20 20 20 60 28 70 72 6f 67 6e 20 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 .....`(progn.,(iter2--continuati
e880 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6c 69 73 74 20 63 6f 6e 74 69 6e 75 61 74 69 6f on-adding-form.(list.continuatio
e8a0 6e 2d 66 6f 72 6d 29 20 76 61 72 29 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e n-form).var).,@(macroexp-unprogn
e8c0 20 63 6f 6e 76 65 72 74 65 64 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 63 6f 6e 76 65 72 74 65 .converted-form)).......converte
e8e0 64 2d 66 6f 72 6d 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 d-form)))..(defun.iter2--continu
e900 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6e 65 77 2d 63 6f 6e 74 69 6e 75 61 74 ation-adding-form.(new-continuat
e920 69 6f 6e 73 20 26 6f 70 74 69 6f 6e 61 6c 20 76 61 72 29 0a 20 20 28 6c 65 74 20 28 28 76 61 6c ions.&optional.var)...(let.((val
e940 75 65 20 28 6f 72 20 76 61 72 20 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 ue.(or.var.iter2--continuations)
e960 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 6e 65 77 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 0a )).....(while.new-continuations.
e980 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 28 70 6f 70 20 6e ......(let.((continuation.(pop.n
e9a0 65 77 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 ew-continuations))).........(set
e9c0 71 20 76 61 6c 75 65 20 28 69 66 20 28 65 71 75 61 6c 20 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 q.value.(if.(equal.continuation.
e9e0 60 28 66 75 6e 63 61 6c 6c 20 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 `(funcall.,iter2--value)).......
ea00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 69 74 68 20 74 68 65 20 61 64 ..................;;.With.the.ad
ea20 64 69 74 69 6f 6e 20 6f 66 20 60 69 74 65 72 32 2d 6e 65 78 74 27 2c 20 77 65 20 6f 66 74 65 6e dition.of.`iter2-next',.we.often
ea40 20 75 73 65 20 61 20 60 28 6c 61 6d 62 64 61 20 28 78 29 20 28 66 75 6e 63 61 6c 6c 20 78 29 29 .use.a.`(lambda.(x).(funcall.x))
ea60 27 20 74 6f 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 3b 3b 20 '.to.........................;;.
ea80 72 65 73 6f 6c 76 65 20 69 6e 63 6f 6d 69 6e 67 20 6c 61 6d 62 64 61 73 20 69 6e 74 6f 20 76 61 resolve.incoming.lambdas.into.va
eaa0 6c 75 65 73 20 28 66 6f 72 20 6e 6f 6e 6c 6f 63 61 6c 20 65 78 69 74 73 20 61 6e 64 20 73 69 64 lues.(for.nonlocal.exits.and.sid
eac0 65 20 65 66 66 65 63 74 73 29 2c 20 6f 6e 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.effects),.only................
eae0 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 6e 20 74 6f 20 69 67 6e 6f 72 65 20 74 68 65 20 72 .........;;.then.to.ignore.the.r
eb00 65 73 75 6c 74 2e 20 20 54 68 69 73 20 69 73 20 72 65 61 6c 6c 79 20 6e 65 65 64 65 64 2c 20 62 esult...This.is.really.needed,.b
eb20 75 74 20 69 6e 73 74 65 61 64 20 6f 66 20 63 72 65 61 74 69 6e 67 20 74 6f 6e 73 20 6f 66 0a 20 ut.instead.of.creating.tons.of..
eb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 75 63 68 20 6c .......................;;.such.l
eb60 61 6d 62 64 61 73 2c 20 6a 75 73 74 20 75 73 65 20 60 66 75 6e 63 61 6c 6c 27 20 64 69 72 65 63 ambdas,.just.use.`funcall'.direc
eb80 74 6c 79 3a 20 69 74 20 69 73 20 65 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 20 68 65 72 65 tly:.it.is.exactly.the.same.here
eba0 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 60 28 63 6f 6e 73 ..........................`(cons
ebc0 20 27 66 75 6e 63 61 6c 6c 20 2c 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .'funcall.,value)...............
ebe0 20 20 20 20 20 20 20 20 60 28 63 6f 6e 73 20 28 6c 61 6d 62 64 61 20 28 2c 69 74 65 72 32 2d 2d ........`(cons.(lambda.(,iter2--
ec00 76 61 6c 75 65 29 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 63 6f 6e 74 69 value).,@(macroexp-unprogn.conti
ec20 6e 75 61 74 69 6f 6e 29 29 20 2c 76 61 6c 75 65 29 29 29 29 29 0a 20 20 20 20 60 28 73 65 74 71 nuation)).,value))))).....`(setq
ec40 20 2c 28 6f 72 20 76 61 72 20 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 20 .,(or.var.iter2--continuations).
ec60 2c 76 61 6c 75 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 ,value)))..(defun.iter2--catcher
ec80 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 63 61 74 63 68 -continuation-adding-form.(catch
eca0 65 72 2d 62 6f 64 79 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 26 72 65 73 74 20 er-body.next-continuation.&rest.
ecc0 61 64 64 69 74 69 6f 6e 61 6c 2d 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 additional-catcher-outer-binding
ece0 73 29 0a 20 20 60 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e s)...`(setq.,iter2--continuation
ed00 73 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 6c 65 74 20 28 28 2c 69 74 65 72 32 2d 2d s..........(cons.(let.((,iter2--
ed20 64 6f 6e 65 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 73 29 0a 20 20 20 20 done.,iter2--continuations).....
ed40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 64 65 6c 71 20 6e 69 6c 20 61 64 64 .................,@(delq.nil.add
ed60 69 74 69 6f 6e 61 6c 2d 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 0a itional-catcher-outer-bindings).
ed80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 63 61 74 .....................,iter2--cat
eda0 63 68 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 69 74 cher)..................(setq.,it
edc0 65 72 32 2d 2d 63 61 74 63 68 65 72 20 28 6c 61 6d 62 64 61 20 28 2c 69 74 65 72 32 2d 2d 76 61 er2--catcher.(lambda.(,iter2--va
ede0 6c 75 65 29 20 2c 40 28 6d 61 63 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 63 61 74 63 68 65 72 lue).,@(macroexp-unprogn.catcher
ee00 2d 62 6f 64 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 -body))))................(cons.(
ee20 6c 61 6d 62 64 61 20 28 2c 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 20 2c 40 28 6d 61 63 72 6f 65 lambda.(,iter2--value).,@(macroe
ee40 78 70 2d 75 6e 70 72 6f 67 6e 20 6e 65 78 74 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 29 29 0a 20 xp-unprogn.next-continuation))..
ee60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 ....................,iter2--cont
ee80 69 6e 75 61 74 69 6f 6e 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 6c 65 74 inuations))))..(defun.iter2--let
eea0 2a 2d 79 69 65 6c 64 69 6e 67 2d 66 6f 72 6d 20 28 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 *-yielding-form.(catcher-outer-b
eec0 69 6e 64 69 6e 67 73 20 63 61 74 63 68 65 72 2d 69 6e 6e 65 72 2d 62 69 6e 64 69 6e 67 73 20 63 indings.catcher-inner-bindings.c
eee0 61 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 6f 72 69 6e 67 2d 66 6f 72 6d 73 20 63 6f 6e 74 69 atcher-value-storing-forms.conti
ef00 6e 75 61 74 69 6f 6e 20 26 6f 70 74 69 6f 6e 61 6c 20 66 6f 72 6d 2d 62 65 66 6f 72 65 2d 63 6f nuation.&optional.form-before-co
ef20 6e 74 69 6e 75 61 74 69 6f 6e 29 0a 20 20 28 6c 65 74 20 28 6d 61 69 6e 2d 62 69 6e 64 69 6e 67 ntinuation)...(let.(main-binding
ef40 73 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 s).....(while.(and.catcher-outer
ef60 2d 62 69 6e 64 69 6e 67 73 20 28 63 61 72 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e -bindings.(car.catcher-outer-bin
ef80 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 28 70 75 73 68 20 28 70 6f 70 20 63 61 74 63 68 65 72 dings)).......(push.(pop.catcher
efa0 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 20 6d 61 69 6e 2d 62 69 6e 64 69 6e 67 73 29 29 -outer-bindings).main-bindings))
efc0 0a 20 20 20 20 28 73 65 74 71 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 .....(setq.catcher-outer-binding
efe0 73 20 28 63 64 72 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a s.(cdr.catcher-outer-bindings)).
f000 20 20 20 20 28 6c 65 74 20 28 28 66 6f 72 6d 20 60 28 2c 28 69 74 65 72 32 2d 2d 63 6f 6e 74 69 ....(let.((form.`(,(iter2--conti
f020 6e 75 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6c 69 73 74 20 63 6f 6e 74 69 6e nuation-adding-form.(list.contin
f040 75 61 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 77 68 uation))...................,@(wh
f060 65 6e 20 66 6f 72 6d 2d 62 65 66 6f 72 65 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 20 28 6d 61 63 en.form-before-continuation.(mac
f080 72 6f 65 78 70 2d 75 6e 70 72 6f 67 6e 20 66 6f 72 6d 2d 62 65 66 6f 72 65 2d 63 6f 6e 74 69 6e roexp-unprogn.form-before-contin
f0a0 75 61 74 69 6f 6e 29 29 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 66 6f 72 6d 20 28 69 66 uation))))).......(setq.form.(if
f0c0 20 6d 61 69 6e 2d 62 69 6e 64 69 6e 67 73 20 60 28 6c 65 74 2a 20 28 2c 40 6d 61 69 6e 2d 62 69 .main-bindings.`(let*.(,@main-bi
f0e0 6e 64 69 6e 67 73 29 20 2c 40 66 6f 72 6d 29 20 60 28 70 72 6f 67 6e 20 2c 40 66 6f 72 6d 29 29 ndings).,@form).`(progn.,@form))
f100 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 63 61 74 63 68 65 72 2d 69 6e 6e 65 72 2d 62 69 6e ).......(while.catcher-inner-bin
f120 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 6f 75 74 65 72 2d 62 69 6e 64 69 6e dings.........(let.(outer-bindin
f140 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 63 61 74 63 68 65 gs)...........(while.(and.catche
f160 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 20 28 63 61 72 20 63 61 74 63 68 65 72 2d 6f 75 r-outer-bindings.(car.catcher-ou
f180 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 ter-bindings)).............(push
f1a0 20 28 70 6f 70 20 63 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 20 6f 75 .(pop.catcher-outer-bindings).ou
f1c0 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 ter-bindings))...........(setq.c
f1e0 61 74 63 68 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 20 28 63 64 72 20 63 61 74 63 68 atcher-outer-bindings.(cdr.catch
f200 65 72 2d 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 er-outer-bindings))...........(s
f220 65 74 71 20 66 6f 72 6d 20 28 69 74 65 72 32 2d 2d 63 61 74 63 68 65 72 2d 63 6f 6e 74 69 6e 75 etq.form.(iter2--catcher-continu
f240 61 74 69 6f 6e 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 60 28 6c 65 74 20 28 2c 28 70 6f 70 20 63 ation-adding-form.`(let.(,(pop.c
f260 61 74 63 68 65 72 2d 69 6e 6e 65 72 2d 62 69 6e 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 atcher-inner-bindings)).........
f280 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 ................................
f2a0 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 70 72 6f 67 31 20 .........................(prog1.
f2c0 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (unwind-protect.................
f2e0 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 ................................
f300 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 2c 28 69 74 ............................,(it
f320 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e 2d 69 6e 76 6f 63 61 74 69 6f 6e 2d 66 6f 72 er2--continuation-invocation-for
f340 6d 20 69 74 65 72 32 2d 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 m.iter2--value).................
f360 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 ................................
f380 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 2c 28 70 6f 70 20 ..........................,(pop.
f3a0 63 61 74 63 68 65 72 2d 76 61 6c 75 65 2d 73 74 6f 72 69 6e 67 2d 66 6f 72 6d 73 29 29 0a 20 20 catcher-value-storing-forms))...
f3c0 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 ................................
f3e0 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 ................................
f400 20 28 75 6e 6c 65 73 73 20 28 65 71 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f .(unless.(eq.,iter2--continuatio
f420 6e 73 20 2c 69 74 65 72 32 2d 2d 64 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ns.,iter2--done)................
f440 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 ................................
f460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 2c 69 74 65 ......................(push.,ite
f480 72 32 2d 2d 63 61 74 63 68 65 72 20 2c 69 74 65 72 32 2d 2d 63 6f 6e 74 69 6e 75 61 74 69 6f 6e r2--catcher.,iter2--continuation
f4a0 73 29 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 20 20 20 s))))...........................
f4c0 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 ................................
f4e0 20 20 20 20 66 6f 72 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6f 75 74 65 72 ....form))...........(when.outer
f500 2d 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 6f 72 6d -bindings.............(setq.form
f520 20 60 28 6c 65 74 2a 20 28 2c 40 6f 75 74 65 72 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 .`(let*.(,@outer-bindings)......
f540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 66 6f 72 6d 29 29 29 29 29 0a .....................,form))))).
f560 20 20 20 20 20 20 66 6f 72 6d 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 73 74 61 ......form)))..(defun.iter2--sta
f580 63 6b 2d 61 64 64 69 6e 67 2d 66 6f 72 6d 20 28 6e 65 77 2d 65 6c 65 6d 65 6e 74 73 29 0a 20 20 ck-adding-form.(new-elements)...
f5a0 28 6c 65 74 20 28 28 76 61 6c 75 65 20 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 0a 20 20 20 20 (let.((value.iter2--stack)).....
f5c0 28 77 68 69 6c 65 20 6e 65 77 2d 65 6c 65 6d 65 6e 74 73 0a 20 20 20 20 20 20 28 73 65 74 71 20 (while.new-elements.......(setq.
f5e0 76 61 6c 75 65 20 60 28 63 6f 6e 73 20 2c 28 70 6f 70 20 6e 65 77 2d 65 6c 65 6d 65 6e 74 73 29 value.`(cons.,(pop.new-elements)
f600 20 2c 76 61 6c 75 65 29 29 29 0a 20 20 20 20 60 28 73 65 74 71 20 2c 69 74 65 72 32 2d 2d 73 74 .,value))).....`(setq.,iter2--st
f620 61 63 6b 20 2c 76 61 6c 75 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 73 74 61 ack.,value)))..(defun.iter2--sta
f640 63 6b 2d 68 65 61 64 2d 72 65 76 65 72 73 69 6e 67 2d 66 6f 72 6d 20 28 6e 29 0a 20 20 28 70 63 ck-head-reversing-form.(n)...(pc
f660 61 73 65 20 6e 0a 20 20 20 20 28 32 20 60 28 69 74 65 72 32 2d 2d 72 65 76 65 72 73 65 2d 73 74 ase.n.....(2.`(iter2--reverse-st
f680 61 63 6b 2d 68 65 61 64 2d 32 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 0a 20 20 20 20 28 ack-head-2.,iter2--stack)).....(
f6a0 33 20 60 28 69 74 65 72 32 2d 2d 72 65 76 65 72 73 65 2d 73 74 61 63 6b 2d 68 65 61 64 2d 33 20 3.`(iter2--reverse-stack-head-3.
f6c0 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 29 29 0a 20 20 20 20 28 5f 20 60 28 73 65 74 71 20 2c 69 ,iter2--stack)).....(_.`(setq.,i
f6e0 74 65 72 32 2d 2d 73 74 61 63 6b 20 28 69 74 65 72 32 2d 2d 72 65 76 65 72 73 65 2d 73 74 61 63 ter2--stack.(iter2--reverse-stac
f700 6b 2d 68 65 61 64 2d 6e 20 2c 69 74 65 72 32 2d 2d 73 74 61 63 6b 20 2c 28 31 2d 20 6e 29 29 29 k-head-n.,iter2--stack.,(1-.n)))
f720 29 29 29 0a 0a 0a 3b 3b 20 49 6e 74 65 72 6e 61 6c 20 68 65 6c 70 65 72 73 20 66 6f 72 20 67 65 )))...;;.Internal.helpers.for.ge
f740 6e 65 72 61 74 65 64 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 nerated.functions...(defun.iter2
f760 2d 2d 64 6f 2d 63 6c 65 61 6e 2d 75 70 20 28 63 6c 65 61 6e 75 70 73 29 0a 20 20 28 69 66 20 28 --do-clean-up.(cleanups)...(if.(
f780 63 64 72 20 63 6c 65 61 6e 75 70 73 29 0a 20 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 cdr.cleanups).......(unwind-prot
f7a0 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 28 63 61 72 20 63 6c 65 61 ect...........(funcall.(car.clea
f7c0 6e 75 70 73 29 29 0a 20 20 20 20 20 20 20 20 28 69 74 65 72 32 2d 2d 64 6f 2d 63 6c 65 61 6e 2d nups)).........(iter2--do-clean-
f7e0 75 70 20 28 63 64 72 20 63 6c 65 61 6e 75 70 73 29 29 29 0a 20 20 20 20 28 66 75 6e 63 61 6c 6c up.(cdr.cleanups))).....(funcall
f800 20 28 63 61 72 20 63 6c 65 61 6e 75 70 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 .(car.cleanups))))..(defun.iter2
f820 2d 2d 72 65 76 65 72 73 65 2d 73 74 61 63 6b 2d 68 65 61 64 2d 32 20 28 73 74 61 63 6b 29 0a 20 --reverse-stack-head-2.(stack)..
f840 20 28 6c 65 74 20 28 28 78 20 20 20 20 20 20 28 63 61 72 20 73 74 61 63 6b 29 29 0a 20 20 20 20 .(let.((x......(car.stack)).....
f860 20 20 20 20 28 6c 69 6e 6b 2d 32 20 28 63 64 72 20 73 74 61 63 6b 29 29 29 0a 20 20 20 20 28 73 ....(link-2.(cdr.stack))).....(s
f880 65 74 63 61 72 20 73 74 61 63 6b 20 20 28 63 61 72 20 6c 69 6e 6b 2d 32 29 29 0a 20 20 20 20 28 etcar.stack..(car.link-2)).....(
f8a0 73 65 74 63 61 72 20 6c 69 6e 6b 2d 32 20 78 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 setcar.link-2.x)))..(defun.iter2
f8c0 2d 2d 72 65 76 65 72 73 65 2d 73 74 61 63 6b 2d 68 65 61 64 2d 33 20 28 73 74 61 63 6b 29 0a 20 --reverse-stack-head-3.(stack)..
f8e0 20 28 6c 65 74 20 28 28 78 20 20 20 20 20 20 28 63 61 72 20 20 73 74 61 63 6b 29 29 0a 20 20 20 .(let.((x......(car..stack))....
f900 20 20 20 20 20 28 6c 69 6e 6b 2d 33 20 28 63 64 64 72 20 73 74 61 63 6b 29 29 29 0a 20 20 20 20 .....(link-3.(cddr.stack))).....
f920 28 73 65 74 63 61 72 20 73 74 61 63 6b 20 20 28 63 61 72 20 6c 69 6e 6b 2d 33 29 29 0a 20 20 20 (setcar.stack..(car.link-3))....
f940 20 28 73 65 74 63 61 72 20 6c 69 6e 6b 2d 33 20 78 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 .(setcar.link-3.x)))..(defun.ite
f960 72 32 2d 2d 72 65 76 65 72 73 65 2d 73 74 61 63 6b 2d 68 65 61 64 2d 6e 20 28 73 74 61 63 6b 20 r2--reverse-stack-head-n.(stack.
f980 6e 2d 31 29 0a 20 20 28 6c 65 74 2a 20 28 28 6c 61 73 74 2d 68 65 61 64 2d 63 6f 6e 73 20 28 6e n-1)...(let*.((last-head-cons.(n
f9a0 74 68 63 64 72 20 6e 2d 31 20 73 74 61 63 6b 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 74 61 63 thcdr.n-1.stack))..........(stac
f9c0 6b 2d 74 61 69 6c 20 20 20 20 20 28 63 64 72 20 6c 61 73 74 2d 68 65 61 64 2d 63 6f 6e 73 29 29 k-tail.....(cdr.last-head-cons))
f9e0 29 0a 20 20 20 20 28 73 65 74 63 64 72 20 6c 61 73 74 2d 68 65 61 64 2d 63 6f 6e 73 20 6e 69 6c ).....(setcdr.last-head-cons.nil
fa00 29 0a 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 72 65 76 65 72 73 65 20 73 74 61 63 6b 29 20 73 74 ).....(nconc.(nreverse.stack).st
fa20 61 63 6b 2d 74 61 69 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 74 65 72 32 2d 2d 64 6f 2d 74 72 ack-tail)))..(defun.iter2--do-tr
fa40 61 63 65 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 75 6d 65 6e ace.(format-string.&rest.argumen
fa60 74 73 29 0a 20 20 28 77 68 65 6e 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 ts)...(when.iter2-tracing-functi
fa80 6f 6e 0a 20 20 20 20 28 6c 65 74 20 28 28 70 72 69 6e 74 2d 6c 65 76 65 6c 20 20 28 69 66 20 28 on.....(let.((print-level..(if.(
faa0 65 71 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 70 72 69 6e 74 2d 6c 65 76 65 6c 20 20 74 29 eq.iter2-tracing-print-level..t)
fac0 20 70 72 69 6e 74 2d 6c 65 76 65 6c 20 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 70 72 69 6e .print-level..iter2-tracing-prin
fae0 74 2d 6c 65 76 65 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 69 6e 74 2d 6c 65 6e 67 74 t-level))...........(print-lengt
fb00 68 20 28 69 66 20 28 65 71 20 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 70 72 69 6e 74 2d 6c 65 h.(if.(eq.iter2-tracing-print-le
fb20 6e 67 74 68 20 74 29 20 70 72 69 6e 74 2d 6c 65 6e 67 74 68 20 69 74 65 72 32 2d 74 72 61 63 69 ngth.t).print-length.iter2-traci
fb40 6e 67 2d 70 72 69 6e 74 2d 6c 65 6e 67 74 68 29 29 29 0a 20 20 20 20 20 20 28 61 70 70 6c 79 20 ng-print-length))).......(apply.
fb60 69 74 65 72 32 2d 74 72 61 63 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 63 61 74 20 22 iter2-tracing-function.(concat."
fb80 25 73 69 74 65 72 32 3a 20 22 20 66 6f 72 6d 61 74 2d 73 74 72 69 6e 67 29 20 28 63 6f 6e 73 20 %siter2:.".format-string).(cons.
fba0 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 28 2a 20 69 74 65 72 32 2d 2d 74 72 61 63 69 6e 67 2d 64 (make-string.(*.iter2--tracing-d
fbc0 65 70 74 68 20 34 29 20 3f 20 29 20 61 72 67 75 6d 65 6e 74 73 29 29 29 29 29 0a 0a 0a 28 64 65 epth.4).?.).arguments)))))...(de
fbe0 66 75 6e 20 69 74 65 72 32 2d 6c 6f 67 2d 6d 65 73 73 61 67 65 20 28 66 6f 72 6d 61 74 2d 73 74 fun.iter2-log-message.(format-st
fc00 72 69 6e 67 20 26 72 65 73 74 20 61 72 67 75 6d 65 6e 74 73 29 0a 20 20 22 4c 69 6b 65 20 62 75 ring.&rest.arguments)..."Like.bu
fc20 69 6c 74 2d 69 6e 20 60 6d 65 73 73 61 67 65 27 2c 20 62 75 74 20 6f 6e 6c 79 20 77 72 69 74 65 ilt-in.`message',.but.only.write
fc40 20 74 6f 20 60 2a 4d 65 73 73 61 67 65 73 2a 27 20 62 75 66 66 65 72 2e 22 0a 20 20 28 6c 65 74 .to.`*Messages*'.buffer."...(let
fc60 20 28 28 69 6e 68 69 62 69 74 2d 6d 65 73 73 61 67 65 20 28 6f 72 20 69 6e 68 69 62 69 74 2d 6d .((inhibit-message.(or.inhibit-m
fc80 65 73 73 61 67 65 20 28 6e 6f 74 20 6e 6f 6e 69 6e 74 65 72 61 63 74 69 76 65 29 29 29 29 0a 20 essage.(not.noninteractive))))..
fca0 20 20 20 28 61 70 70 6c 79 20 23 27 6d 65 73 73 61 67 65 20 66 6f 72 6d 61 74 2d 73 74 72 69 6e ...(apply.#'message.format-strin
fcc0 67 20 61 72 67 75 6d 65 6e 74 73 29 29 29 0a 0a 0a 3b 3b 20 4d 61 6b 65 20 73 75 72 65 20 74 68 g.arguments)))...;;.Make.sure.th
fce0 61 74 20 77 65 20 61 72 65 20 73 74 69 6c 6c 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 at.we.are.still.compatible.with.
fd00 60 67 65 6e 65 72 61 74 6f 72 27 2e 20 20 49 20 63 6f 75 6c 64 6e 27 74 20 6d 61 6b 65 20 69 74 `generator'...I.couldn't.make.it
fd20 20 77 6f 72 6b 20 6c 69 6b 65 0a 3b 3b 20 49 20 77 61 6e 74 65 64 20 77 69 74 68 20 66 65 77 65 .work.like.;;.I.wanted.with.fewe
fd40 72 20 60 65 76 61 6c 27 73 2e 0a 28 65 76 61 6c 2d 61 66 74 65 72 2d 6c 6f 61 64 20 27 69 74 65 r.`eval's..(eval-after-load.'ite
fd60 72 32 0a 20 20 28 65 76 61 6c 20 60 28 75 6e 6c 65 73 73 20 28 6c 65 74 2a 20 28 28 69 74 20 28 r2...(eval.`(unless.(let*.((it.(
fd80 66 75 6e 63 61 6c 6c 20 28 69 74 65 72 32 2d 6c 61 6d 62 64 61 20 28 29 20 28 69 74 65 72 2d 79 funcall.(iter2-lambda.().(iter-y
fda0 69 65 6c 64 20 31 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ield.1)))))....................(
fdc0 61 6e 64 20 28 65 71 75 61 6c 20 28 69 74 65 72 2d 6e 65 78 74 20 69 74 29 20 31 29 20 28 63 6f and.(equal.(iter-next.it).1).(co
fde0 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 6f 72 20 28 70 72 6f 67 6e 20 28 69 74 65 72 2d ndition-case.error.(progn.(iter-
fe00 6e 65 78 74 20 69 74 20 32 29 20 6e 69 6c 29 20 28 69 74 65 72 2d 65 6e 64 2d 6f 66 2d 73 65 71 next.it.2).nil).(iter-end-of-seq
fe20 75 65 6e 63 65 20 28 65 71 75 61 6c 20 28 63 64 72 20 65 72 72 6f 72 29 20 32 29 29 29 29 29 0a uence.(equal.(cdr.error).2))))).
fe40 20 20 20 20 20 20 20 20 20 20 20 28 77 61 72 6e 20 22 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 ...........(warn."Compatibility.
fe60 6f 66 20 60 69 74 65 72 32 27 20 77 69 74 68 20 60 67 65 6e 65 72 61 74 6f 72 27 20 70 61 63 6b of.`iter2'.with.`generator'.pack
fe80 61 67 65 20 61 70 70 65 61 72 73 20 62 72 6f 6b 65 6e 3b 20 70 6c 65 61 73 65 20 72 65 70 6f 72 age.appears.broken;.please.repor
fea0 74 20 74 68 69 73 20 74 6f 20 6d 61 69 6e 74 61 69 6e 65 72 20 28 45 6d 61 63 73 20 76 65 72 73 t.this.to.maintainer.(Emacs.vers
fec0 69 6f 6e 3a 20 25 73 29 22 20 28 65 6d 61 63 73 2d 76 65 72 73 69 6f 6e 29 29 29 0a 20 20 20 20 ion:.%s)".(emacs-version))).....
fee0 20 20 20 20 74 29 29 0a 0a 3b 3b 20 49 73 73 75 65 20 61 20 77 61 72 6e 69 6e 67 20 69 66 20 63 ....t))..;;.Issue.a.warning.if.c
ff00 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 69 73 20 62 72 6f 6b 65 6e 20 79 65 74 20 61 67 61 69 6e ompatibility.is.broken.yet.again
ff20 2e 0a 28 69 74 65 72 32 2d 2d 73 70 65 63 69 61 6c 2d 76 61 72 69 61 62 6c 65 2d 70 20 6e 69 6c ..(iter2--special-variable-p.nil
ff40 20 74 29 0a 0a 0a 3b 3b 20 57 6f 72 6b 20 61 72 6f 75 6e 64 20 6d 69 73 73 69 6e 67 20 45 64 65 .t)...;;.Work.around.missing.Ede
ff60 62 75 67 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 60 69 74 65 72 2d 64 6f 27 20 bug.specification.for.`iter-do'.
ff80 6d 61 63 72 6f 20 6f 6e 20 6f 6c 64 65 72 20 45 6d 61 63 73 20 76 65 72 73 69 6f 6e 73 2e 0a 28 macro.on.older.Emacs.versions..(
ffa0 77 68 65 6e 20 28 61 6e 64 20 28 66 62 6f 75 6e 64 70 20 27 69 74 65 72 2d 64 6f 29 20 28 6e 75 when.(and.(fboundp.'iter-do).(nu
ffc0 6c 6c 20 28 67 65 74 20 27 69 74 65 72 2d 64 6f 20 27 65 64 65 62 75 67 2d 66 6f 72 6d 2d 73 70 ll.(get.'iter-do.'edebug-form-sp
ffe0 65 63 29 29 29 0a 20 20 28 70 75 74 20 27 69 74 65 72 2d 64 6f 20 27 65 64 65 62 75 67 2d 66 6f ec)))...(put.'iter-do.'edebug-fo
10000 72 6d 2d 73 70 65 63 20 27 28 28 73 79 6d 62 6f 6c 70 20 66 6f 72 6d 29 20 62 6f 64 79 29 29 29 rm-spec.'((symbolp.form).body)))
10020 0a 0a 3b 3b 20 49 6e 74 65 67 72 61 74 65 20 69 6e 74 6f 20 49 6d 65 6e 75 2e 0a 28 61 64 64 2d ..;;.Integrate.into.Imenu..(add-
10040 74 6f 2d 6c 69 73 74 20 27 6c 69 73 70 2d 69 6d 65 6e 75 2d 67 65 6e 65 72 69 63 2d 65 78 70 72 to-list.'lisp-imenu-generic-expr
10060 65 73 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 6e 69 6c 20 28 63 ession..............(list.nil.(c
10080 6f 6e 63 61 74 20 22 5e 5c 5c 73 2d 2a 28 69 74 65 72 32 2d 64 65 66 75 6e 5c 5c 73 2d 2b 5c 5c oncat."^\\s-*(iter2-defun\\s-+\\
100a0 28 22 20 6c 69 73 70 2d 6d 6f 64 65 2d 73 79 6d 62 6f 6c 2d 72 65 67 65 78 70 20 22 5c 5c 29 22 (".lisp-mode-symbol-regexp."\\)"
100c0 29 20 31 29 29 0a 0a 0a 28 70 72 6f 76 69 64 65 20 27 69 74 65 72 32 29 0a 0a 3b 3b 3b 20 69 74 ).1))...(provide.'iter2)..;;;.it
100e0 65 72 32 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 er2.el.ends.here................
10100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 ................................