summaryrefslogtreecommitdiff
path: root/.localrepo/deferred-20170901.1330.tar
blob: d7e95779d4c0b7b6dd4fb40d528c8e927020a153 (plain)
ofshex dumpascii
0000 64 65 66 65 72 72 65 64 2d 32 30 31 37 30 39 30 31 2e 31 33 33 30 2f 00 00 00 00 00 00 00 00 00 deferred-20170901.1330/.........
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 35 36 33 00 20 35 00 00 00 0000000.00000000000.012563..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 64 65 66 65 72 72 65 64 2d 32 30 31 37 30 39 30 31 2e 31 33 33 30 2f 64 65 66 65 72 72 65 64 2d deferred-20170901.1330/deferred-
0220 70 6b 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 pkg.el..........................
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 37 31 33 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 34 34 35 00 20 30 00 00 00 0000713.00000000000.015445..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 64 65 66 65 72 72 65 64 22 20 22 32 30 31 37 30 39 30 31 2e 31 33 33 30 22 0a 20 age."deferred"."20170901.1330"..
0460 20 22 53 69 6d 70 6c 65 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 66 75 6e 63 74 69 6f 6e 73 20 ."Simple.asynchronous.functions.
0480 66 6f 72 20 65 6d 61 63 73 20 6c 69 73 70 2e 22 0a 20 20 27 28 28 65 6d 61 63 73 20 22 32 34 2e for.emacs.lisp."...'((emacs."24.
04a0 34 22 29 29 0a 20 20 3a 75 72 6c 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 4"))...:url."https://github.com/
04c0 6b 69 77 61 6e 61 6d 69 2f 65 6d 61 63 73 2d 64 65 66 65 72 72 65 64 22 0a 20 20 3a 63 6f 6d 6d kiwanami/emacs-deferred"...:comm
04e0 69 74 20 22 32 32 33 39 36 37 31 64 39 34 62 33 38 64 39 32 65 39 62 32 38 64 34 65 31 32 66 64 it."2239671d94b38d92e9b28d4e12fd
0500 37 39 38 31 34 63 66 62 39 63 31 36 22 0a 20 20 3a 72 65 76 64 65 73 63 20 22 32 32 33 39 36 37 79814cfb9c16"...:revdesc."223967
0520 31 64 39 34 62 33 22 0a 20 20 3a 6b 65 79 77 6f 72 64 73 20 27 28 22 64 65 66 65 72 72 65 64 22 1d94b3"...:keywords.'("deferred"
0540 20 22 61 73 79 6e 63 22 29 0a 20 20 3a 61 75 74 68 6f 72 73 20 27 28 28 22 53 41 4b 55 52 41 49 ."async")...:authors.'(("SAKURAI
0560 20 4d 61 73 61 73 68 69 22 20 2e 20 22 6d 2e 73 61 6b 75 72 61 69 61 74 6b 69 77 61 6e 61 6d 69 .Masashi"..."m.sakuraiatkiwanami
0580 2e 6e 65 74 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 20 27 28 28 22 53 41 4b 55 52 .net"))...:maintainers.'(("SAKUR
05a0 41 49 20 4d 61 73 61 73 68 69 22 20 2e 20 22 6d 2e 73 61 6b 75 72 61 69 61 74 6b 69 77 61 6e 61 AI.Masashi"..."m.sakuraiatkiwana
05c0 6d 69 2e 6e 65 74 22 29 29 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 mi.net")))......................
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 64 65 66 65 72 72 65 64 2d 32 30 31 37 30 39 30 31 2e 31 33 33 30 2f 64 65 66 65 72 72 65 64 2e deferred-20170901.1330/deferred.
0620 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 el..............................
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 30 35 37 31 33 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 36 37 34 00 20 30 00 00 00 0105713.00000000000.014674..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 64 65 66 65 72 72 65 64 2e 65 6c 20 2d 2d 2d 20 53 69 6d 70 6c 65 20 61 73 79 6e 63 ;;;.deferred.el.---.Simple.async
0820 68 72 6f 6e 6f 75 73 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 20 65 6d 61 63 73 20 6c 69 73 70 hronous.functions.for.emacs.lisp
0840 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b ..-*-.lexical-binding:.t;.-*-..;
0860 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 30 2d 32 30 31 36 20 53 41 4b 55 52 41 ;.Copyright.(C).2010-2016.SAKURA
0880 49 20 4d 61 73 61 73 68 69 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 53 41 4b 55 52 41 49 20 4d 61 I.Masashi..;;.Author:.SAKURAI.Ma
08a0 73 61 73 68 69 20 3c 6d 2e 73 61 6b 75 72 61 69 20 61 74 20 6b 69 77 61 6e 61 6d 69 2e 6e 65 74 sashi.<m.sakurai.at.kiwanami.net
08c0 3e 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32 30 31 37 30 39 30 31 2e 31 >.;;.Package-Version:.20170901.1
08e0 33 33 30 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e 3a 20 32 32 33 39 36 37 31 330.;;.Package-Revision:.2239671
0900 64 39 34 62 33 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 64 65 66 65 72 72 65 64 2c 20 61 73 79 d94b3.;;.Keywords:.deferred,.asy
0920 6e 63 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 nc.;;.Package-Requires:.((emacs.
0940 22 32 34 2e 34 22 29 29 0a 3b 3b 20 55 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e "24.4")).;;.URL:.https://github.
0960 63 6f 6d 2f 6b 69 77 61 6e 61 6d 69 2f 65 6d 61 63 73 2d 64 65 66 65 72 72 65 64 0a 0a 3b 3b 20 com/kiwanami/emacs-deferred..;;.
0980 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 This.program.is.free.software;.y
09a0 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f ou.can.redistribute.it.and/or.mo
09c0 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 dify.;;.it.under.the.terms.of.th
09e0 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 e.GNU.General.Public.License.as.
0a00 70 75 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 published.by.;;.the.Free.Softwar
0a20 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f e.Foundation,.either.version.3.o
0a40 66 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 f.the.License,.or.;;.(at.your.op
0a60 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 tion).any.later.version...;;.Thi
0a80 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 s.program.is.distributed.in.the.
0aa0 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 hope.that.it.will.be.useful,.;;.
0ac0 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 but.WITHOUT.ANY.WARRANTY;.withou
0ae0 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b t.even.the.implied.warranty.of.;
0b00 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 ;.MERCHANTABILITY.or.FITNESS.FOR
0b20 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a .A.PARTICULAR.PURPOSE...See.the.
0b40 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f ;;.GNU.General.Public.License.fo
0b60 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 r.more.details...;;.You.should.h
0b80 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 ave.received.a.copy.of.the.GNU.G
0ba0 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 eneral.Public.License.;;.along.w
0bc0 69 74 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c ith.this.program...If.not,.see.<
0be0 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a http://www.gnu.org/licenses/>...
0c00 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 27 64 65 66 65 72 72 65 64 2e 65 6c ;;;.Commentary:..;;.'deferred.el
0c20 27 20 69 73 20 61 20 73 69 6d 70 6c 65 20 6c 69 62 72 61 72 79 20 66 6f 72 20 61 73 79 6e 63 68 '.is.a.simple.library.for.asynch
0c40 72 6f 6e 6f 75 73 20 74 61 73 6b 73 2e 0a 3b 3b 20 5b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 ronous.tasks..;;.[https://github
0c60 2e 63 6f 6d 2f 6b 69 77 61 6e 61 6d 69 2f 65 6d 61 63 73 2d 64 65 66 65 72 72 65 64 5d 0a 0a 3b .com/kiwanami/emacs-deferred]..;
0c80 3b 20 54 68 65 20 41 50 49 20 69 73 20 61 6c 6d 6f 73 74 20 74 68 65 20 73 61 6d 65 20 61 73 20 ;.The.API.is.almost.the.same.as.
0ca0 4a 53 44 65 66 65 72 72 65 64 20 77 72 69 74 74 65 6e 20 62 79 20 63 68 6f 34 35 2e 20 53 65 65 JSDeferred.written.by.cho45..See
0cc0 20 74 68 65 0a 3b 3b 20 4a 53 44 65 66 65 72 72 65 64 20 61 6e 64 20 4d 6f 63 68 69 6b 69 74 2e .the.;;.JSDeferred.and.Mochikit.
0ce0 41 73 79 6e 63 20 77 65 62 20 73 69 74 65 73 20 66 6f 72 20 66 75 72 74 68 65 72 20 64 6f 63 75 Async.web.sites.for.further.docu
0d00 6d 65 6e 74 61 74 69 6f 6e 73 2e 0a 3b 3b 20 5b 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 mentations..;;.[https://github.c
0d20 6f 6d 2f 63 68 6f 34 35 2f 6a 73 64 65 66 65 72 72 65 64 5d 0a 3b 3b 20 5b 68 74 74 70 3a 2f 2f om/cho45/jsdeferred].;;.[http://
0d40 6d 6f 63 68 69 6b 69 74 2e 63 6f 6d 2f 64 6f 63 2f 68 74 6d 6c 2f 4d 6f 63 68 69 4b 69 74 2f 41 mochikit.com/doc/html/MochiKit/A
0d60 73 79 6e 63 2e 68 74 6d 6c 5d 0a 0a 3b 3b 20 41 20 67 6f 6f 64 20 69 6e 74 72 6f 64 75 63 74 69 sync.html]..;;.A.good.introducti
0d80 6f 6e 20 64 6f 63 75 6d 65 6e 74 20 28 4a 61 76 61 53 63 72 69 70 74 29 0a 3b 3b 20 5b 68 74 74 on.document.(JavaScript).;;.[htt
0da0 70 3a 2f 2f 63 68 6f 34 35 2e 73 74 66 75 61 77 73 63 2e 63 6f 6d 2f 6a 73 64 65 66 65 72 72 65 p://cho45.stfuawsc.com/jsdeferre
0dc0 64 2f 64 6f 63 2f 69 6e 74 72 6f 2e 65 6e 2e 68 74 6d 6c 5d 0a 0a 3b 3b 3b 20 53 61 6d 70 6c 65 d/doc/intro.en.html]..;;;.Sample
0de0 73 3a 0a 0a 3b 3b 20 2a 2a 20 48 54 54 50 20 41 63 63 65 73 73 0a 0a 3b 3b 20 28 72 65 71 75 69 s:..;;.**.HTTP.Access..;;.(requi
0e00 72 65 20 27 75 72 6c 29 0a 3b 3b 20 28 64 65 66 65 72 72 65 64 3a 24 0a 3b 3b 20 20 20 28 64 65 re.'url).;;.(deferred:$.;;...(de
0e20 66 65 72 72 65 64 3a 75 72 6c 2d 72 65 74 72 69 65 76 65 20 22 68 74 74 70 3a 2f 2f 77 77 77 2e ferred:url-retrieve."http://www.
0e40 67 6e 75 2e 6f 72 67 22 29 0a 3b 3b 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 gnu.org").;;...(deferred:nextc.i
0e60 74 0a 3b 3b 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 29 0a 3b 3b 20 20 20 20 20 20 20 t.;;.....(lambda.(buf).;;.......
0e80 28 69 6e 73 65 72 74 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 (insert..(with-current-buffer.bu
0ea0 66 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 29 0a 3b 3b 20 20 20 20 20 20 20 28 6b 69 f.(buffer-string))).;;.......(ki
0ec0 6c 6c 2d 62 75 66 66 65 72 20 62 75 66 29 29 29 29 0a 0a 3b 3b 20 2a 2a 20 49 6e 76 6f 6b 69 6e ll-buffer.buf))))..;;.**.Invokin
0ee0 67 20 63 6f 6d 6d 61 6e 64 20 74 61 73 6b 73 0a 0a 3b 3b 20 28 64 65 66 65 72 72 65 64 3a 24 0a g.command.tasks..;;.(deferred:$.
0f00 3b 3b 20 20 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 20 22 77 67 65 74 22 20 22 2d ;;...(deferred:process."wget"."-
0f20 4f 22 20 22 61 2e 6a 70 67 22 20 22 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 73 O"."a.jpg"."http://www.gnu.org/s
0f40 6f 66 74 77 61 72 65 2f 65 6d 61 63 73 2f 74 6f 75 72 2f 69 6d 61 67 65 73 2f 73 70 6c 61 73 68 oftware/emacs/tour/images/splash
0f60 2e 70 6e 67 22 29 0a 3b 3b 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 3b .png").;;...(deferred:nextc.it.;
0f80 3b 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 ;.....(lambda.(x).(deferred:proc
0fa0 65 73 73 20 22 63 6f 6e 76 65 72 74 22 20 22 61 2e 6a 70 67 22 20 22 2d 72 65 73 69 7a 65 22 20 ess."convert"."a.jpg"."-resize".
0fc0 22 31 30 30 78 31 30 30 22 20 22 6a 70 67 3a 62 2e 6a 70 67 22 29 29 29 0a 3b 3b 20 20 20 28 64 "100x100"."jpg:b.jpg"))).;;...(d
0fe0 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 3b 3b 20 20 20 20 20 28 6c 61 6d 62 64 61 20 eferred:nextc.it.;;.....(lambda.
1000 28 78 29 0a 3b 3b 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 2d 69 6d 61 67 65 20 28 63 72 65 61 (x).;;.......(insert-image.(crea
1020 74 65 2d 69 6d 61 67 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 62 2e 6a 70 te-image.(expand-file-name."b.jp
1040 67 22 29 20 27 6a 70 65 67 20 6e 69 6c 29 29 29 29 29 0a 0a 3b 3b 20 53 65 65 20 74 68 65 20 72 g").'jpeg.nil)))))..;;.See.the.r
1060 65 61 64 6d 65 20 66 6f 72 20 66 75 72 74 68 65 72 20 41 50 49 20 64 6f 63 75 6d 65 6e 74 61 74 eadme.for.further.API.documentat
1080 69 6f 6e 2e 0a 0a 3b 3b 20 2a 2a 20 41 70 70 6c 69 63 61 74 69 6f 6e 73 0a 0a 3b 3b 20 2a 49 6e ion...;;.**.Applications..;;.*In
10a0 65 72 74 69 61 6c 20 73 63 72 6f 6c 6c 69 6e 67 20 66 6f 72 20 45 6d 61 63 73 0a 3b 3b 20 5b 68 ertial.scrolling.for.Emacs.;;.[h
10c0 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6b 69 77 61 6e 61 6d 69 2f 65 6d 61 63 73 ttps://github.com/kiwanami/emacs
10e0 2d 69 6e 65 72 74 69 61 6c 2d 73 63 72 6f 6c 6c 5d 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 -inertial-scroll]..;;.This.progr
1100 61 6d 20 6d 61 6b 65 73 20 73 69 6d 70 6c 65 20 6d 75 6c 74 69 2d 74 68 72 65 61 64 20 66 75 6e am.makes.simple.multi-thread.fun
1120 63 74 69 6f 6e 2c 20 75 73 69 6e 67 0a 3b 3b 20 64 65 66 65 72 72 65 64 2e 65 6c 2e 0a 0a 28 72 ction,.using.;;.deferred.el...(r
1140 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 0a 28 72 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 equire.'cl-lib).(require.'subr-x
1160 29 0a 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 70 70 2d 64 69 73 70 6c 61 79 2d )..(declare-function.pp-display-
1180 65 78 70 72 65 73 73 69 6f 6e 20 27 70 70 29 0a 0a 28 64 65 66 76 61 72 20 64 65 66 65 72 72 65 expression.'pp)..(defvar.deferre
11a0 64 3a 76 65 72 73 69 6f 6e 20 6e 69 6c 20 22 64 65 66 65 72 72 65 64 2e 65 6c 20 76 65 72 73 69 d:version.nil."deferred.el.versi
11c0 6f 6e 22 29 0a 28 73 65 74 71 20 64 65 66 65 72 72 65 64 3a 76 65 72 73 69 6f 6e 20 22 30 2e 35 on").(setq.deferred:version."0.5
11e0 2e 30 22 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 .0")..;;;.Code:..(defmacro.defer
1200 72 65 64 3a 61 61 6e 64 20 28 74 65 73 74 20 26 72 65 73 74 20 72 65 73 74 29 0a 20 20 22 5b 69 red:aand.(test.&rest.rest)..."[i
1220 6e 74 65 72 6e 61 6c 5d 20 41 6e 61 70 68 6f 72 69 63 20 41 4e 44 2e 22 0a 20 20 28 64 65 63 6c nternal].Anaphoric.AND."...(decl
1240 61 72 65 20 28 64 65 62 75 67 20 28 22 74 65 73 74 22 20 66 6f 72 6d 20 26 72 65 73 74 20 66 6f are.(debug.("test".form.&rest.fo
1260 72 6d 29 29 29 0a 20 20 60 28 6c 65 74 20 28 28 69 74 20 2c 74 65 73 74 29 29 0a 20 20 20 20 20 rm)))...`(let.((it.,test))......
1280 28 69 66 20 69 74 20 2c 28 69 66 20 72 65 73 74 20 60 28 64 65 66 65 72 72 65 64 3a 61 61 6e 64 (if.it.,(if.rest.`(deferred:aand
12a0 20 2c 40 72 65 73 74 29 20 27 69 74 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 .,@rest).'it))))..(defmacro.defe
12c0 72 72 65 64 3a 24 20 28 26 72 65 73 74 20 65 6c 65 6d 65 6e 74 73 29 0a 20 20 22 41 6e 61 70 68 rred:$.(&rest.elements)..."Anaph
12e0 6f 72 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 61 69 6e 20 6d 61 63 72 6f 20 66 6f 72 20 64 65 oric.function.chain.macro.for.de
1300 66 65 72 72 65 64 20 63 68 61 69 6e 73 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64 65 62 75 ferred.chains."...(declare.(debu
1320 67 20 28 26 72 65 73 74 20 66 6f 72 6d 29 29 29 0a 20 20 60 28 6c 65 74 20 28 69 74 29 0a 20 20 g.(&rest.form)))...`(let.(it)...
1340 20 20 20 2c 40 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 69 20 69 6e 20 65 6c 65 6d 65 6e 74 73 0a ...,@(cl-loop.for.i.in.elements.
1360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 0a 20 20 20 20 20 20 20 20 ................collect.........
1380 20 20 20 20 20 20 20 20 60 28 73 65 74 71 20 69 74 20 2c 69 29 29 0a 20 20 20 20 20 69 74 29 29 ........`(setq.it.,i))......it))
13a0 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a 6c 61 6d 62 64 61 20 28 61 72 67 ..(defmacro.deferred:lambda.(arg
13c0 73 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 41 6e 61 70 68 6f 72 69 63 20 6c 61 6d 62 64 s.&rest.body)..."Anaphoric.lambd
13e0 61 20 6d 61 63 72 6f 20 66 6f 72 20 73 65 6c 66 20 72 65 63 75 72 73 69 6f 6e 2e 22 0a 20 20 28 a.macro.for.self.recursion."...(
1400 64 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 28 22 61 72 67 73 22 20 66 6f 72 6d 20 26 72 65 73 declare.(debug.("args".form.&res
1420 74 20 66 6f 72 6d 29 29 29 0a 20 20 28 6c 65 74 20 28 28 61 72 67 73 79 6d 73 20 28 63 6c 2d 6c t.form)))...(let.((argsyms.(cl-l
1440 6f 6f 70 20 72 65 70 65 61 74 20 28 6c 65 6e 67 74 68 20 61 72 67 73 29 20 63 6f 6c 6c 65 63 74 oop.repeat.(length.args).collect
1460 20 28 63 6c 2d 67 65 6e 73 79 6d 29 29 29 29 0a 20 20 60 28 6c 61 6d 62 64 61 20 28 2c 40 61 72 .(cl-gensym))))...`(lambda.(,@ar
1480 67 73 79 6d 73 29 0a 20 20 20 20 20 28 6c 65 74 20 28 73 65 6c 66 29 0a 20 20 20 20 20 20 20 28 gsyms)......(let.(self)........(
14a0 73 65 74 71 20 73 65 6c 66 20 28 6c 61 6d 62 64 61 28 20 2c 40 61 72 67 73 20 29 20 2c 40 62 6f setq.self.(lambda(.,@args.).,@bo
14c0 64 79 29 29 0a 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 73 65 6c 66 20 2c 40 61 72 67 73 dy))........(funcall.self.,@args
14e0 79 6d 73 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a yms)))))..(cl-defmacro.deferred:
1500 74 72 79 20 28 64 20 26 6b 65 79 20 63 61 74 63 68 20 66 69 6e 61 6c 6c 79 29 0a 20 20 22 54 72 try.(d.&key.catch.finally)..."Tr
1520 79 2d 63 61 74 63 68 2d 66 69 6e 61 6c 6c 79 20 6d 61 63 72 6f 2e 20 54 68 69 73 20 6d 61 63 72 y-catch-finally.macro..This.macr
1540 6f 20 73 69 6d 75 6c 61 74 65 73 20 74 68 65 0a 74 72 79 2d 63 61 74 63 68 2d 66 69 6e 61 6c 6c o.simulates.the.try-catch-finall
1560 79 20 62 6c 6f 63 6b 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e 20 43 41 54 43 48 20 61 6e y.block.asynchronously..CATCH.an
1580 64 20 46 49 4e 41 4c 4c 59 20 63 61 6e 20 62 65 0a 6e 69 6c 2e 20 42 65 63 61 75 73 65 20 6f 66 d.FINALLY.can.be.nil..Because.of
15a0 20 61 73 79 6e 63 68 72 6f 6e 79 2c 20 74 68 69 73 20 6d 61 63 72 6f 20 64 6f 65 73 20 6e 6f 74 .asynchrony,.this.macro.does.not
15c0 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 0a 74 61 73 6b 20 46 49 4e 41 4c 4c 59 20 73 68 .ensure.that.the.task.FINALLY.sh
15e0 6f 75 6c 64 20 62 65 20 63 61 6c 6c 65 64 2e 22 0a 20 20 28 6c 65 74 20 28 28 63 68 61 69 6e 0a ould.be.called."...(let.((chain.
1600 20 20 20 20 20 20 20 20 20 28 69 66 20 63 61 74 63 68 20 60 28 28 64 65 66 65 72 72 65 64 3a 65 .........(if.catch.`((deferred:e
1620 72 72 6f 72 20 69 74 20 2c 63 61 74 63 68 29 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 66 69 rror.it.,catch))))).....(when.fi
1640 6e 61 6c 6c 79 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 68 61 69 6e 20 28 61 70 70 65 6e 64 20 nally.......(setq.chain.(append.
1660 63 68 61 69 6e 20 60 28 28 64 65 66 65 72 72 65 64 3a 77 61 74 63 68 20 69 74 20 2c 66 69 6e 61 chain.`((deferred:watch.it.,fina
1680 6c 6c 79 29 29 29 29 29 0a 20 20 20 20 60 28 64 65 66 65 72 72 65 64 3a 24 20 2c 64 20 2c 40 63 lly))))).....`(deferred:$.,d.,@c
16a0 68 61 69 6e 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 73 65 74 54 69 6d 65 hain)))..(defun.deferred:setTime
16c0 6f 75 74 20 28 66 20 6d 73 65 63 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 54 69 6d 65 72 out.(f.msec)..."[internal].Timer
16e0 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 65 6d 75 6c 61 74 65 73 20 74 68 65 20 60 73 65 74 .function.that.emulates.the.`set
1700 54 69 6d 65 6f 75 74 27 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 4a 53 2e 22 0a 20 20 28 72 75 6e Timeout'.function.in.JS."...(run
1720 2d 61 74 2d 74 69 6d 65 20 28 2f 20 6d 73 65 63 20 31 30 30 30 2e 30 29 20 6e 69 6c 20 66 29 29 -at-time.(/.msec.1000.0).nil.f))
1740 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 63 61 6e 63 65 6c 54 69 6d 65 6f 75 74 20 ..(defun.deferred:cancelTimeout.
1760 28 69 64 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 54 69 6d 65 72 20 63 61 6e 63 65 6c 6c (id)..."[internal].Timer.cancell
1780 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 65 6d 75 6c 61 74 65 73 20 74 68 65 ation.function.that.emulates.the
17a0 20 60 63 61 6e 63 65 6c 54 69 6d 65 6f 75 74 27 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 4a 53 2e .`cancelTimeout'.function.in.JS.
17c0 22 0a 20 20 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 20 69 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 "...(cancel-timer.id))..(defun.d
17e0 65 66 65 72 72 65 64 3a 72 75 6e 2d 77 69 74 68 2d 69 64 6c 65 2d 74 69 6d 65 72 20 28 73 65 63 eferred:run-with-idle-timer.(sec
1800 20 66 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 57 72 61 70 70 65 72 20 66 75 6e 63 74 69 .f)..."[internal].Wrapper.functi
1820 6f 6e 20 66 6f 72 20 72 75 6e 2d 77 69 74 68 2d 69 64 6c 65 2d 74 69 6d 65 72 2e 22 0a 20 20 28 on.for.run-with-idle-timer."...(
1840 72 75 6e 2d 77 69 74 68 2d 69 64 6c 65 2d 74 69 6d 65 72 20 73 65 63 20 6e 69 6c 20 66 29 29 0a run-with-idle-timer.sec.nil.f)).
1860 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 2d 6c 61 6d 62 64 61 20 28 66 20 .(defun.deferred:call-lambda.(f.
1880 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 43 61 6c &optional.arg)..."[internal].Cal
18a0 6c 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 6f 6e 65 20 6f 72 20 7a 65 72 6f 20 61 72 l.a.function.with.one.or.zero.ar
18c0 67 75 6d 65 6e 74 20 73 61 66 65 6c 79 2e 0a 54 68 65 20 6c 61 6d 62 64 61 20 66 75 6e 63 74 69 gument.safely..The.lambda.functi
18e0 6f 6e 20 63 61 6e 20 64 65 66 69 6e 65 20 77 69 74 68 20 7a 65 72 6f 20 61 6e 64 20 6f 6e 65 20 on.can.define.with.zero.and.one.
1900 61 72 67 75 6d 65 6e 74 2e 22 0a 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 argument."...(condition-case.err
1920 0a 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 20 61 72 67 29 0a 20 20 20 20 28 27 77 72 6f .......(funcall.f.arg).....('wro
1940 6e 67 2d 6e 75 6d 62 65 72 2d 6f 66 2d 61 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 28 64 69 73 ng-number-of-arguments......(dis
1960 70 6c 61 79 2d 77 61 72 6e 69 6e 67 20 27 64 65 66 65 72 72 65 64 20 22 5c 0a 43 61 6c 6c 62 61 play-warning.'deferred."\.Callba
1980 63 6b 20 74 68 61 74 20 74 61 6b 65 73 20 6e 6f 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 ck.that.takes.no.argument.may.be
19a0 20 73 70 65 63 69 66 69 65 64 2e 0a 50 61 73 73 69 6e 67 20 63 61 6c 6c 62 61 63 6b 20 77 69 74 .specified..Passing.callback.wit
19c0 68 20 6e 6f 20 61 72 67 75 6d 65 6e 74 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2e 0a 43 61 6c h.no.argument.is.deprecated..Cal
19e0 6c 62 61 63 6b 20 6d 75 73 74 20 74 61 6b 65 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 2e 0a 4f 72 lback.must.take.one.argument..Or
1a00 2c 20 74 68 69 73 20 65 72 72 6f 72 20 69 73 20 63 6f 6d 69 6e 67 20 66 72 6f 6d 20 73 6f 6d 65 ,.this.error.is.coming.from.some
1a20 77 68 65 72 65 20 69 6e 73 69 64 65 20 6f 66 20 74 68 65 20 63 61 6c 6c 62 61 63 6b 3a 20 25 53 where.inside.of.the.callback:.%S
1a40 22 20 65 72 72 29 0a 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 6e 69 6c 0a ".err)......(condition-case.nil.
1a60 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 29 0a 20 20 20 20 20 20 20 28 27 77 72 .........(funcall.f)........('wr
1a80 6f 6e 67 2d 6e 75 6d 62 65 72 2d 6f 66 2d 61 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 20 20 20 ong-number-of-arguments.........
1aa0 28 73 69 67 6e 61 6c 20 27 77 72 6f 6e 67 2d 6e 75 6d 62 65 72 2d 6f 66 2d 61 72 67 75 6d 65 6e (signal.'wrong-number-of-argumen
1ac0 74 73 20 28 63 64 72 20 65 72 72 29 29 29 29 29 29 29 20 3b 20 72 65 74 75 72 6e 20 74 68 65 20 ts.(cdr.err))))))).;.return.the.
1ae0 66 69 72 73 74 20 65 72 72 6f 72 0a 0a 3b 3b 20 64 65 62 75 67 0a 0a 28 65 76 61 6c 2d 61 6e 64 first.error..;;.debug..(eval-and
1b00 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 64 65 66 76 61 72 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 -compile...(defvar.deferred:debu
1b20 67 20 6e 69 6c 20 22 44 65 62 75 67 20 6f 75 74 70 75 74 20 73 77 69 74 63 68 2e 22 29 29 0a 28 g.nil."Debug.output.switch.")).(
1b40 64 65 66 76 61 72 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2d 63 6f 75 6e 74 20 30 20 22 5b defvar.deferred:debug-count.0."[
1b60 69 6e 74 65 72 6e 61 6c 5d 20 44 65 62 75 67 20 6f 75 74 70 75 74 20 63 6f 75 6e 74 65 72 2e 22 internal].Debug.output.counter."
1b80 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 28 26 )..(defmacro.deferred:message.(&
1ba0 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 44 65 62 75 67 20 6c rest.args)..."[internal].Debug.l
1bc0 6f 67 20 66 75 6e 63 74 69 6f 6e 2e 22 0a 20 20 28 77 68 65 6e 20 64 65 66 65 72 72 65 64 3a 64 og.function."...(when.deferred:d
1be0 65 62 75 67 0a 20 20 20 20 60 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 ebug.....`(progn........(with-cu
1c00 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 20 rrent-buffer.(get-buffer-create.
1c20 22 2a 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2a 22 29 0a 20 20 20 20 20 20 20 20 20 28 73 61 "*deferred:debug*")..........(sa
1c40 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 ve-excursion............(goto-ch
1c60 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 ar.(point-max))............(inse
1c80 72 74 20 28 66 6f 72 6d 61 74 20 22 25 35 69 20 25 73 5c 6e 22 20 64 65 66 65 72 72 65 64 3a 64 rt.(format."%5i.%s\n".deferred:d
1ca0 65 62 75 67 2d 63 6f 75 6e 74 20 28 66 6f 72 6d 61 74 20 2c 40 61 72 67 73 29 29 29 29 29 0a 20 ebug-count.(format.,@args)))))..
1cc0 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2d 63 6f ......(cl-incf.deferred:debug-co
1ce0 75 6e 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 unt))))..(defun.deferred:message
1d00 2d 6d 61 72 6b 20 28 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 44 65 62 75 67 20 6c 6f 67 -mark.()..."[internal].Debug.log
1d20 20 66 75 6e 63 74 69 6f 6e 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64 .function."...(interactive)...(d
1d40 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d eferred:message."===============
1d60 3d 3d 3d 3d 3d 20 6d 61 72 6b 20 3d 3d 3d 3d 20 25 73 22 0a 20 20 20 20 28 66 6f 72 6d 61 74 2d =====.mark.====.%s".....(format-
1d80 74 69 6d 65 2d 73 74 72 69 6e 67 20 22 25 48 3a 25 4d 3a 25 53 22 20 28 63 75 72 72 65 6e 74 2d time-string."%H:%M:%S".(current-
1da0 74 69 6d 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 70 20 28 64 29 time))))..(defun.deferred:pp.(d)
1dc0 0a 20 20 28 72 65 71 75 69 72 65 20 27 70 70 29 0a 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 ...(require.'pp)...(deferred:$..
1de0 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 64 0a 20 20 20 20 20 20 28 6c 61 6d 62 ...(deferred:nextc.d.......(lamb
1e00 64 61 20 28 78 29 0a 20 20 20 20 20 20 20 20 28 70 70 2d 64 69 73 70 6c 61 79 2d 65 78 70 72 65 da.(x).........(pp-display-expre
1e20 73 73 69 6f 6e 20 78 20 22 2a 64 65 66 65 72 72 65 64 3a 70 70 2a 22 29 29 29 0a 20 20 20 20 28 ssion.x."*deferred:pp*"))).....(
1e40 64 65 66 65 72 72 65 64 3a 65 72 72 6f 72 20 69 74 0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 deferred:error.it.......(lambda.
1e60 28 65 29 0a 20 20 20 20 20 20 20 20 28 70 70 2d 64 69 73 70 6c 61 79 2d 65 78 70 72 65 73 73 69 (e).........(pp-display-expressi
1e80 6f 6e 20 65 20 22 2a 64 65 66 65 72 72 65 64 3a 70 70 2a 22 29 29 29 0a 20 20 20 20 28 64 65 66 on.e."*deferred:pp*"))).....(def
1ea0 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 78 erred:nextc.it.......(lambda.(_x
1ec0 29 20 28 70 6f 70 2d 74 6f 2d 62 75 66 66 65 72 20 22 2a 64 65 66 65 72 72 65 64 3a 70 70 2a 22 ).(pop-to-buffer."*deferred:pp*"
1ee0 29 29 29 29 29 0a 0a 28 64 65 66 76 61 72 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2d 6f 6e )))))..(defvar.deferred:debug-on
1f00 2d 73 69 67 6e 61 6c 20 6e 69 6c 0a 22 49 66 20 6e 6f 6e 20 6e 69 6c 2c 20 74 68 65 20 76 61 6c -signal.nil."If.non.nil,.the.val
1f20 75 65 20 60 64 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 27 20 69 73 20 73 75 62 73 74 69 74 75 ue.`debug-on-signal'.is.substitu
1f40 74 65 64 20 74 68 69 73 0a 76 61 6c 75 65 20 69 6e 20 74 68 65 20 60 63 6f 6e 64 69 74 69 6f 6e ted.this.value.in.the.`condition
1f60 2d 63 61 73 65 27 20 66 6f 72 6d 20 69 6e 20 64 65 66 65 72 72 65 64 0a 69 6d 70 6c 65 6d 65 6e -case'.form.in.deferred.implemen
1f80 74 61 74 69 6f 6e 73 2e 20 54 68 65 6e 2c 20 45 6d 61 63 73 20 64 65 62 75 67 67 65 72 20 63 61 tations..Then,.Emacs.debugger.ca
1fa0 6e 20 63 61 74 63 68 20 61 6e 20 65 72 72 6f 72 20 6f 63 63 75 72 72 65 64 0a 69 6e 20 74 68 65 n.catch.an.error.occurred.in.the
1fc0 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 74 61 73 6b 73 2e 22 29 0a 0a 28 64 65 66 6d 61 63 72 .asynchronous.tasks.")..(defmacr
1fe0 6f 20 64 65 66 65 72 72 65 64 3a 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 28 76 61 72 20 70 o.deferred:condition-case.(var.p
2000 72 6f 74 65 63 74 65 64 2d 66 6f 72 6d 20 26 72 65 73 74 20 68 61 6e 64 6c 65 72 73 29 0a 20 20 rotected-form.&rest.handlers)...
2020 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 43 75 73 74 6f 6d 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 "[internal].Custom.condition-cas
2040 65 2e 20 53 65 65 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 66 6f 72 0a 60 64 65 66 65 72 72 65 64 e..See.the.comment.for.`deferred
2060 3a 64 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 27 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 :debug-on-signal'."...(declare.(
2080 64 65 62 75 67 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 debug.condition-case)...........
20a0 20 28 69 6e 64 65 6e 74 20 32 29 29 0a 20 20 60 28 6c 65 74 20 28 28 64 65 62 75 67 2d 6f 6e 2d .(indent.2))...`(let.((debug-on-
20c0 73 69 67 6e 61 6c 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 64 65 62 75 67 2d 6f 6e 2d 73 69 signal...........(or.debug-on-si
20e0 67 6e 61 6c 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 29 29 29 gnal.deferred:debug-on-signal)))
2100 0a 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 2c 76 61 72 0a 20 20 20 20 20 ......(condition-case.,var......
2120 20 20 20 20 2c 70 72 6f 74 65 63 74 65 64 2d 66 6f 72 6d 0a 20 20 20 20 20 20 20 2c 40 68 61 6e ....,protected-form........,@han
2140 64 6c 65 72 73 29 29 29 0a 0a 0c 0a 0a 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b dlers))).....;;;;;;;;;;;;;;;;;;;
2160 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2180 3b 0a 3b 3b 20 42 61 63 6b 20 65 6e 64 20 66 75 6e 63 74 69 6f 6e 73 20 6f 66 20 64 65 66 65 72 ;.;;.Back.end.functions.of.defer
21a0 72 65 64 20 74 61 73 6b 73 0a 0a 28 64 65 66 76 61 72 20 64 65 66 65 72 72 65 64 3a 74 69 63 6b red.tasks..(defvar.deferred:tick
21c0 2d 74 69 6d 65 20 30 2e 30 30 31 0a 20 20 22 57 61 69 74 69 6e 67 20 74 69 6d 65 20 62 65 74 77 -time.0.001..."Waiting.time.betw
21e0 65 65 6e 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 74 61 73 6b 73 20 28 73 65 63 6f 6e 64 29 2e een.asynchronous.tasks.(second).
2200 0a 54 68 65 20 73 68 6f 72 74 65 72 20 77 61 69 74 69 6e 67 20 74 69 6d 65 20 69 6e 63 72 65 61 .The.shorter.waiting.time.increa
2220 73 65 73 20 74 68 65 20 6c 6f 61 64 20 6f 66 20 45 6d 61 63 73 2e 20 54 68 65 20 65 6e 64 0a 75 ses.the.load.of.Emacs..The.end.u
2240 73 65 72 20 63 61 6e 20 74 75 6e 65 20 74 68 69 73 20 70 61 72 61 6d 65 74 65 72 2e 20 48 6f 77 ser.can.tune.this.parameter..How
2260 65 76 65 72 2c 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 73 68 6f 75 6c 64 20 6e 6f 74 0a 6d 6f ever,.applications.should.not.mo
2280 64 69 66 79 20 69 74 20 62 65 63 61 75 73 65 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 dify.it.because.the.applications
22a0 20 72 75 6e 20 6f 6e 20 76 61 72 69 6f 75 73 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 2e 22 29 0a .run.on.various.environments.").
22c0 0a 28 64 65 66 76 61 72 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 20 6e 69 6c 0a 20 20 22 5b .(defvar.deferred:queue.nil..."[
22e0 69 6e 74 65 72 6e 61 6c 5d 20 54 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 65 75 65 20 6f 66 internal].The.execution.queue.of
2300 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 73 2e 0a 53 65 65 20 74 68 65 20 66 75 6e 63 74 .deferred.objects..See.the.funct
2320 69 6f 6e 73 20 60 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 27 20 61 6e 64 20 60 64 ions.`deferred:post-task'.and.`d
2340 65 66 65 72 72 65 64 3a 77 6f 72 6b 65 72 27 2e 22 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 eferred:worker'.")..(defmacro.de
2360 66 65 72 72 65 64 3a 70 61 63 6b 20 28 61 20 62 20 63 29 0a 20 20 60 28 63 6f 6e 73 20 2c 61 20 ferred:pack.(a.b.c)...`(cons.,a.
2380 28 63 6f 6e 73 20 2c 62 20 2c 63 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a (cons.,b.,c)))..(defun.deferred:
23a0 73 63 68 65 64 75 6c 65 2d 77 6f 72 6b 65 72 20 28 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d schedule-worker.()..."[internal]
23c0 20 53 63 68 65 64 75 6c 65 20 63 6f 6e 73 75 6d 69 6e 67 20 61 20 64 65 66 65 72 72 65 64 20 74 .Schedule.consuming.a.deferred.t
23e0 61 73 6b 20 69 6e 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 65 75 65 2e 22 0a 20 20 28 ask.in.the.execution.queue."...(
2400 72 75 6e 2d 61 74 2d 74 69 6d 65 20 64 65 66 65 72 72 65 64 3a 74 69 63 6b 2d 74 69 6d 65 20 6e run-at-time.deferred:tick-time.n
2420 69 6c 20 27 64 65 66 65 72 72 65 64 3a 77 6f 72 6b 65 72 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 il.'deferred:worker))..(defun.de
2440 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 28 64 20 77 68 69 63 68 20 26 6f 70 74 69 6f ferred:post-task.(d.which.&optio
2460 6e 61 6c 20 61 72 67 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 41 64 64 20 61 20 64 65 66 nal.arg)..."[internal].Add.a.def
2480 65 72 72 65 64 20 6f 62 6a 65 63 74 20 74 6f 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 erred.object.to.the.execution.qu
24a0 65 75 65 0a 60 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 27 20 61 6e 64 20 73 63 68 65 64 75 6c eue.`deferred:queue'.and.schedul
24c0 65 20 74 6f 20 65 78 65 63 75 74 65 2e 0a 44 20 69 73 20 61 20 64 65 66 65 72 72 65 64 20 6f 62 e.to.execute..D.is.a.deferred.ob
24e0 6a 65 63 74 2e 20 57 48 49 43 48 20 69 73 20 61 20 73 79 6d 62 6f 6c 2c 20 60 6f 6b 27 20 6f 72 ject..WHICH.is.a.symbol,.`ok'.or
2500 20 60 6e 67 27 2e 20 41 52 47 20 69 73 0a 61 6e 20 61 72 67 75 6d 65 6e 74 20 76 61 6c 75 65 20 .`ng'..ARG.is.an.argument.value.
2520 66 6f 72 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 64 65 66 65 72 72 65 64 20 74 61 for.execution.of.the.deferred.ta
2540 73 6b 2e 22 0a 20 20 28 70 75 73 68 20 28 64 65 66 65 72 72 65 64 3a 70 61 63 6b 20 64 20 77 68 sk."...(push.(deferred:pack.d.wh
2560 69 63 68 20 61 72 67 29 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 29 0a 20 20 28 64 65 66 65 ich.arg).deferred:queue)...(defe
2580 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 51 55 45 55 45 2d 50 4f 53 54 20 5b 25 73 5d 3a 20 25 rred:message."QUEUE-POST.[%s]:.%
25a0 73 22 0a 20 20 20 20 28 6c 65 6e 67 74 68 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 29 20 28 s".....(length.deferred:queue).(
25c0 64 65 66 65 72 72 65 64 3a 70 61 63 6b 20 64 20 77 68 69 63 68 20 61 72 67 29 29 0a 20 20 28 64 deferred:pack.d.which.arg))...(d
25e0 65 66 65 72 72 65 64 3a 73 63 68 65 64 75 6c 65 2d 77 6f 72 6b 65 72 29 0a 20 20 64 29 0a 0a 28 eferred:schedule-worker)...d)..(
2600 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 63 6c 65 61 72 2d 71 75 65 75 65 20 28 29 0a 20 20 defun.deferred:clear-queue.()...
2620 22 43 6c 65 61 72 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 65 75 65 2e 20 46 6f 72 20 "Clear.the.execution.queue..For.
2640 74 65 73 74 20 61 6e 64 20 64 65 62 75 67 67 69 6e 67 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 test.and.debugging."...(interact
2660 69 76 65 29 0a 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 51 55 45 55 45 2d ive)...(deferred:message."QUEUE-
2680 43 4c 45 41 52 20 5b 25 73 20 2d 3e 20 30 5d 22 20 28 6c 65 6e 67 74 68 20 64 65 66 65 72 72 65 CLEAR.[%s.->.0]".(length.deferre
26a0 64 3a 71 75 65 75 65 29 29 0a 20 20 28 73 65 74 71 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 d:queue))...(setq.deferred:queue
26c0 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 77 6f 72 6b 65 72 20 28 .nil))..(defun.deferred:worker.(
26e0 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 43 6f 6e 73 75 6d 65 20 61 20 64 65 66 65 72 72 )..."[internal].Consume.a.deferr
2700 65 64 20 74 61 73 6b 2e 0a 4d 61 69 6e 6c 79 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 ed.task..Mainly.this.function.is
2720 20 63 61 6c 6c 65 64 20 62 79 20 74 69 6d 65 72 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e .called.by.timer.asynchronously.
2740 22 0a 20 20 28 77 68 65 6e 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 0a 20 20 20 20 28 6c 65 "...(when.deferred:queue.....(le
2760 74 2a 20 28 28 70 61 63 6b 20 28 63 61 72 20 28 6c 61 73 74 20 64 65 66 65 72 72 65 64 3a 71 75 t*.((pack.(car.(last.deferred:qu
2780 65 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 64 20 28 63 61 72 20 70 61 63 6b 29 29 eue)))............(d.(car.pack))
27a0 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 20 28 63 61 64 72 20 70 61 63 6b 29 29 0a ............(which.(cadr.pack)).
27c0 20 20 20 20 20 20 20 20 20 20 20 28 61 72 67 20 28 63 64 64 72 20 70 61 63 6b 29 29 20 76 61 6c ...........(arg.(cddr.pack)).val
27e0 75 65 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 20 28 ue).......(setq.deferred:queue.(
2800 6e 62 75 74 6c 61 73 74 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 29 29 0a 20 20 20 20 20 20 nbutlast.deferred:queue)).......
2820 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 28 73 (condition-case.err...........(s
2840 65 74 71 20 76 61 6c 75 65 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b 20 64 20 etq.value.(deferred:exec-task.d.
2860 77 68 69 63 68 20 61 72 67 29 29 0a 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 0a 20 20 20 20 20 which.arg)).........(error......
2880 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 52 52 4f 52 20 3a 20 25 ....(deferred:message."ERROR.:.%
28a0 73 22 20 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 64 65 66 65 72 s".err)..........(message."defer
28c0 72 65 64 20 65 72 72 6f 72 20 3a 20 25 73 22 20 65 72 72 29 29 29 0a 20 20 20 20 20 20 76 61 6c red.error.:.%s".err))).......val
28e0 75 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 66 6c 75 73 68 2d 71 75 65 ue)))..(defun.deferred:flush-que
2900 75 65 21 20 28 29 0a 20 20 22 43 61 6c 6c 20 61 6c 6c 20 64 65 66 65 72 72 65 64 20 74 61 73 6b ue!.()..."Call.all.deferred.task
2920 73 20 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e 20 46 6f 72 20 74 65 73 74 20 61 6e 64 20 64 65 s.synchronously..For.test.and.de
2940 62 75 67 67 69 6e 67 2e 22 0a 20 20 28 6c 65 74 20 28 76 61 6c 75 65 29 0a 20 20 20 20 28 77 68 bugging."...(let.(value).....(wh
2960 69 6c 65 20 64 65 66 65 72 72 65 64 3a 71 75 65 75 65 0a 20 20 20 20 20 20 28 73 65 74 71 20 76 ile.deferred:queue.......(setq.v
2980 61 6c 75 65 20 28 64 65 66 65 72 72 65 64 3a 77 6f 72 6b 65 72 29 29 29 0a 20 20 20 20 76 61 6c alue.(deferred:worker))).....val
29a0 75 65 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 73 79 6e 63 21 20 28 64 29 0a ue))..(defun.deferred:sync!.(d).
29c0 20 20 22 57 61 69 74 20 66 6f 72 20 74 68 65 20 67 69 76 65 6e 20 64 65 66 65 72 72 65 64 20 74 .."Wait.for.the.given.deferred.t
29e0 61 73 6b 2e 20 46 6f 72 20 74 65 73 74 20 61 6e 64 20 64 65 62 75 67 67 69 6e 67 2e 0a 45 72 72 ask..For.test.and.debugging..Err
2a00 6f 72 20 69 73 20 72 61 69 73 65 64 20 69 66 20 69 74 20 69 73 20 6e 6f 74 20 70 72 6f 63 65 73 or.is.raised.if.it.is.not.proces
2a20 73 65 64 20 77 69 74 68 69 6e 20 64 65 66 65 72 72 65 64 20 63 68 61 69 6e 20 44 2e 22 0a 20 20 sed.within.deferred.chain.D."...
2a40 28 70 72 6f 67 6e 0a 20 20 20 20 28 6c 65 74 20 28 28 6c 61 73 74 2d 76 61 6c 75 65 20 27 64 65 (progn.....(let.((last-value.'de
2a60 66 65 72 72 65 64 3a 75 6e 64 65 66 69 6e 65 64 2a 29 0a 20 20 20 20 20 20 20 20 20 20 75 6e 63 ferred:undefined*)...........unc
2a80 61 75 67 68 74 2d 65 72 72 6f 72 29 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 74 72 79 aught-error).......(deferred:try
2aa0 0a 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 64 0a 20 20 20 20 20 .........(deferred:nextc.d......
2ac0 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 73 65 74 71 20 6c 61 73 74 2d 76 61 6c 75 .....(lambda.(x).(setq.last-valu
2ae0 65 20 78 29 29 29 0a 20 20 20 20 20 20 20 20 3a 63 61 74 63 68 0a 20 20 20 20 20 20 20 20 28 6c e.x))).........:catch.........(l
2b00 61 6d 62 64 61 20 28 65 72 72 29 20 28 73 65 74 71 20 75 6e 63 61 75 67 68 74 2d 65 72 72 6f 72 ambda.(err).(setq.uncaught-error
2b20 20 65 72 72 29 29 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 65 71 20 27 64 .err))).......(while.(and.(eq.'d
2b40 65 66 65 72 72 65 64 3a 75 6e 64 65 66 69 6e 65 64 2a 20 6c 61 73 74 2d 76 61 6c 75 65 29 0a 20 eferred:undefined*.last-value)..
2b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 75 6e 63 61 75 67 68 74 2d 65 .................(not.uncaught-e
2b80 72 72 6f 72 29 29 0a 20 20 20 20 20 20 20 20 28 73 69 74 2d 66 6f 72 20 30 2e 30 35 29 0a 20 20 rror)).........(sit-for.0.05)...
2ba0 20 20 20 20 20 20 28 73 6c 65 65 70 2d 66 6f 72 20 30 2e 30 35 29 29 0a 20 20 20 20 20 20 28 77 ......(sleep-for.0.05)).......(w
2bc0 68 65 6e 20 75 6e 63 61 75 67 68 74 2d 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 28 64 65 66 65 hen.uncaught-error.........(defe
2be0 72 72 65 64 3a 72 65 73 69 67 6e 61 6c 20 75 6e 63 61 75 67 68 74 2d 65 72 72 6f 72 29 29 0a 20 rred:resignal.uncaught-error))..
2c00 20 20 20 20 20 6c 61 73 74 2d 76 61 6c 75 65 29 29 29 0a 0a 0c 0a 0a 3b 3b 20 53 74 72 75 63 74 .....last-value))).....;;.Struct
2c20 3a 20 64 65 66 65 72 72 65 64 0a 3b 3b 0a 3b 3b 20 63 61 6c 6c 62 61 63 6b 20 20 20 20 3a 20 61 :.deferred.;;.;;.callback....:.a
2c40 20 63 61 6c 6c 62 61 63 6b 20 66 75 6e 63 74 69 6f 6e 20 28 64 65 66 61 75 6c 74 20 60 64 65 66 .callback.function.(default.`def
2c60 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6c 6c 62 61 63 6b 27 29 0a 3b 3b 20 65 72 72 6f erred:default-callback').;;.erro
2c80 72 62 61 63 6b 20 20 20 3a 20 61 6e 20 65 72 72 6f 72 62 61 63 6b 20 66 75 6e 63 74 69 6f 6e 20 rback...:.an.errorback.function.
2ca0 28 64 65 66 61 75 6c 74 20 60 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 65 72 72 6f 72 (default.`deferred:default-error
2cc0 62 61 63 6b 27 29 0a 3b 3b 20 63 61 6e 63 65 6c 20 20 20 20 20 20 3a 20 61 20 63 61 6e 63 65 6c back').;;.cancel......:.a.cancel
2ce0 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 28 64 65 66 61 75 6c 74 20 60 64 65 66 65 72 72 65 64 3a ing.function.(default.`deferred:
2d00 64 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c 27 29 0a 3b 3b 20 6e 65 78 74 20 20 20 20 20 20 20 20 default-cancel').;;.next........
2d20 3a 20 61 20 6e 65 78 74 20 63 68 61 69 6e 65 64 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 :.a.next.chained.deferred.object
2d40 20 28 64 65 66 61 75 6c 74 20 6e 69 6c 29 0a 3b 3b 20 73 74 61 74 75 73 20 20 20 20 20 20 3a 20 .(default.nil).;;.status......:.
2d60 69 66 20 27 6f 6b 20 6f 72 20 27 6e 67 2c 20 74 68 69 73 20 64 65 66 65 72 72 65 64 20 68 61 73 if.'ok.or.'ng,.this.deferred.has
2d80 20 61 20 72 65 73 75 6c 74 20 28 65 72 72 6f 72 29 20 76 61 6c 75 65 2e 20 28 64 65 66 61 75 6c .a.result.(error).value..(defaul
2da0 74 20 6e 69 6c 29 0a 3b 3b 20 76 61 6c 75 65 20 20 20 20 20 20 20 3a 20 73 61 76 65 64 20 76 61 t.nil).;;.value.......:.saved.va
2dc0 6c 75 65 20 28 64 65 66 61 75 6c 74 20 6e 69 6c 29 0a 3b 3b 0a 28 63 6c 2d 64 65 66 73 74 72 75 lue.(default.nil).;;.(cl-defstru
2de0 63 74 20 64 65 66 65 72 72 65 64 0a 20 20 28 63 61 6c 6c 62 61 63 6b 20 27 64 65 66 65 72 72 65 ct.deferred...(callback.'deferre
2e00 64 3a 64 65 66 61 75 6c 74 2d 63 61 6c 6c 62 61 63 6b 29 0a 20 20 28 65 72 72 6f 72 62 61 63 6b d:default-callback)...(errorback
2e20 20 27 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 65 72 72 6f 72 62 61 63 6b 29 0a 20 20 .'deferred:default-errorback)...
2e40 28 63 61 6e 63 65 6c 20 27 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c (cancel.'deferred:default-cancel
2e60 29 0a 20 20 6e 65 78 74 20 73 74 61 74 75 73 20 76 61 6c 75 65 29 0a 0a 28 64 65 66 75 6e 20 64 )...next.status.value)..(defun.d
2e80 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6c 6c 62 61 63 6b 20 28 69 29 0a 20 20 22 eferred:default-callback.(i)..."
2ea0 5b 69 6e 74 65 72 6e 61 6c 5d 20 44 65 66 61 75 6c 74 20 63 61 6c 6c 62 61 63 6b 20 66 75 6e 63 [internal].Default.callback.func
2ec0 74 69 6f 6e 2e 22 0a 20 20 28 69 64 65 6e 74 69 74 79 20 69 29 29 0a 0a 28 64 65 66 75 6e 20 64 tion."...(identity.i))..(defun.d
2ee0 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 65 72 72 6f 72 62 61 63 6b 20 28 65 72 72 29 0a eferred:default-errorback.(err).
2f00 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 44 65 66 61 75 6c 74 20 65 72 72 6f 72 62 61 63 6b 20 .."[internal].Default.errorback.
2f20 66 75 6e 63 74 69 6f 6e 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 72 65 73 69 67 6e 61 6c 20 function."...(deferred:resignal.
2f40 65 72 72 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 72 65 73 69 67 6e 61 6c 20 err))..(defun.deferred:resignal.
2f60 28 65 72 72 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 53 61 66 65 6c 79 20 72 65 73 69 67 (err)..."[internal].Safely.resig
2f80 6e 61 6c 20 45 52 52 20 61 73 20 61 6e 20 45 6d 61 63 73 20 63 6f 6e 64 69 74 69 6f 6e 2e 0a 0a nal.ERR.as.an.Emacs.condition...
2fa0 49 66 20 45 52 52 20 69 73 20 61 20 63 6f 6e 73 20 28 45 52 52 4f 52 2d 53 59 4d 42 4f 4c 20 2e If.ERR.is.a.cons.(ERROR-SYMBOL..
2fc0 20 44 41 54 41 29 20 77 68 65 72 65 20 45 52 52 4f 52 2d 53 59 4d 42 4f 4c 20 68 61 73 20 61 6e .DATA).where.ERROR-SYMBOL.has.an
2fe0 0a 60 65 72 72 6f 72 2d 63 6f 6e 64 69 74 69 6f 6e 73 27 20 70 72 6f 70 65 72 74 79 2c 20 69 74 .`error-conditions'.property,.it
3000 20 69 73 20 72 65 2d 73 69 67 6e 61 6c 65 64 20 75 6e 63 68 61 6e 67 65 64 2e 20 49 66 20 45 52 .is.re-signaled.unchanged..If.ER
3020 52 0a 69 73 20 61 20 73 74 72 69 6e 67 2c 20 69 74 20 69 73 20 73 69 67 6e 61 6c 65 64 20 61 73 R.is.a.string,.it.is.signaled.as
3040 20 61 20 67 65 6e 65 72 69 63 20 65 72 72 6f 72 20 75 73 69 6e 67 20 60 65 72 72 6f 72 27 2e 0a .a.generic.error.using.`error'..
3060 4f 74 68 65 72 77 69 73 65 2c 20 45 52 52 20 69 73 20 66 6f 72 6d 61 74 74 65 64 20 69 6e 74 6f Otherwise,.ERR.is.formatted.into
3080 20 61 20 73 74 72 69 6e 67 20 61 73 20 69 66 20 62 79 20 60 70 72 69 6e 74 27 20 62 65 66 6f 72 .a.string.as.if.by.`print'.befor
30a0 65 0a 72 61 69 73 69 6e 67 20 77 69 74 68 20 60 65 72 72 6f 72 27 2e 22 0a 20 20 28 63 6f 6e 64 e.raising.with.`error'."...(cond
30c0 20 28 28 61 6e 64 20 28 6c 69 73 74 70 20 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .((and.(listp.err)..............
30e0 20 28 73 79 6d 62 6f 6c 70 20 28 63 61 72 20 65 72 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .(symbolp.(car.err))............
3100 20 20 20 28 67 65 74 20 28 63 61 72 20 65 72 72 29 20 27 65 72 72 6f 72 2d 63 6f 6e 64 69 74 69 ...(get.(car.err).'error-conditi
3120 6f 6e 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 69 67 6e 61 6c 20 28 63 61 72 20 65 72 72 29 ons))..........(signal.(car.err)
3140 20 28 63 64 72 20 65 72 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 70 20 65 .(cdr.err))).........((stringp.e
3160 72 72 29 0a 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 25 73 22 20 65 72 72 29 29 0a 20 rr)..........(error."%s".err))..
3180 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 25 53 22 20 65 .......(t..........(error."%S".e
31a0 72 72 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d rr))))..(defun.deferred:default-
31c0 63 61 6e 63 65 6c 20 28 64 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 44 65 66 61 75 6c 74 cancel.(d)..."[internal].Default
31e0 20 63 61 6e 63 65 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2e 22 0a 20 20 28 64 65 66 65 72 72 65 .canceling.function."...(deferre
3200 64 3a 6d 65 73 73 61 67 65 20 22 43 41 4e 43 45 4c 20 3a 20 25 73 22 20 64 29 0a 20 20 28 73 65 d:message."CANCEL.:.%s".d)...(se
3220 74 66 20 28 64 65 66 65 72 72 65 64 2d 63 61 6c 6c 62 61 63 6b 20 64 29 20 27 64 65 66 65 72 72 tf.(deferred-callback.d).'deferr
3240 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6c 6c 62 61 63 6b 29 0a 20 20 28 73 65 74 66 20 28 64 65 ed:default-callback)...(setf.(de
3260 66 65 72 72 65 64 2d 65 72 72 6f 72 62 61 63 6b 20 64 29 20 27 64 65 66 65 72 72 65 64 3a 64 65 ferred-errorback.d).'deferred:de
3280 66 61 75 6c 74 2d 65 72 72 6f 72 62 61 63 6b 29 0a 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 fault-errorback)...(setf.(deferr
32a0 65 64 2d 6e 65 78 74 20 64 29 20 6e 69 6c 29 0a 20 20 64 29 0a 0a 28 64 65 66 76 61 72 20 64 65 ed-next.d).nil)...d)..(defvar.de
32c0 66 65 72 72 65 64 3a 6f 6e 65 72 72 6f 72 20 6e 69 6c 0a 20 20 22 44 65 66 61 75 6c 74 20 65 72 ferred:onerror.nil..."Default.er
32e0 72 6f 72 20 68 61 6e 64 6c 65 72 2e 20 54 68 69 73 20 76 61 6c 75 65 20 69 73 20 6e 69 6c 20 6f ror.handler..This.value.is.nil.o
3300 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 0a 20 20 68 61 76 65 20 6f 6e 65 20 61 72 67 r.a.function.that...have.one.arg
3320 75 6d 65 6e 74 20 66 6f 72 20 74 68 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 2e 22 29 0a 0a ument.for.the.error.message.")..
3340 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b 20 28 64 20 77 68 69 (defun.deferred:exec-task.(d.whi
3360 63 68 20 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 ch.&optional.arg)..."[internal].
3380 45 78 65 63 75 74 69 6e 67 20 64 65 66 65 72 72 65 64 20 74 61 73 6b 2e 20 49 66 20 74 68 65 20 Executing.deferred.task..If.the.
33a0 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 68 61 73 0a 6e 65 78 74 20 64 65 66 65 72 72 65 deferred.object.has.next.deferre
33c0 64 20 74 61 73 6b 20 6f 72 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 61 20 d.task.or.the.return.value.is.a.
33e0 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 2c 20 74 68 69 73 0a 66 75 6e 63 74 69 6f 6e 20 61 deferred.object,.this.function.a
3400 64 64 73 20 74 68 65 20 74 61 73 6b 20 74 6f 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 dds.the.task.to.the.execution.qu
3420 65 75 65 2e 0a 44 20 69 73 20 61 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 2e 20 57 48 49 eue..D.is.a.deferred.object..WHI
3440 43 48 20 69 73 20 61 20 73 79 6d 62 6f 6c 2c 20 60 6f 6b 27 20 6f 72 20 60 6e 67 27 2e 20 41 52 CH.is.a.symbol,.`ok'.or.`ng'..AR
3460 47 20 69 73 0a 61 6e 20 61 72 67 75 6d 65 6e 74 20 76 61 6c 75 65 20 66 6f 72 20 65 78 65 63 75 G.is.an.argument.value.for.execu
3480 74 69 6f 6e 20 6f 66 20 74 68 65 20 64 65 66 65 72 72 65 64 20 74 61 73 6b 2e 22 0a 20 20 28 64 tion.of.the.deferred.task."...(d
34a0 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 58 45 43 20 3a 20 25 73 20 2f 20 25 73 20 eferred:message."EXEC.:.%s./.%s.
34c0 2f 20 25 73 22 20 64 20 77 68 69 63 68 20 61 72 67 29 0a 20 20 28 77 68 65 6e 20 28 6e 75 6c 6c /.%s".d.which.arg)...(when.(null
34e0 20 64 29 20 28 65 72 72 6f 72 20 22 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b 20 77 .d).(error."deferred:exec-task.w
3500 61 73 20 67 69 76 65 6e 20 61 20 6e 69 6c 2e 22 29 29 0a 20 20 28 6c 65 74 20 28 28 63 61 6c 6c as.given.a.nil."))...(let.((call
3520 62 61 63 6b 20 28 69 66 20 28 65 71 20 77 68 69 63 68 20 27 6f 6b 29 0a 20 20 20 20 20 20 20 20 back.(if.(eq.which.'ok).........
3540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 2d 63 61 6c 6c 62 61 63 6b ..............(deferred-callback
3560 20 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 .d).....................(deferre
3580 64 2d 65 72 72 6f 72 62 61 63 6b 20 64 29 29 29 0a 20 20 20 20 20 20 20 20 28 6e 65 78 74 2d 64 d-errorback.d))).........(next-d
35a0 65 66 65 72 72 65 64 20 28 64 65 66 65 72 72 65 64 2d 6e 65 78 74 20 64 29 29 29 0a 20 20 20 20 eferred.(deferred-next.d))).....
35c0 28 63 6f 6e 64 0a 20 20 20 20 20 28 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 28 64 65 66 65 (cond......(callback.......(defe
35e0 72 72 65 64 3a 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 rred:condition-case.err.........
3600 20 20 28 6c 65 74 20 28 28 76 61 6c 75 65 20 28 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 2d 6c 61 ..(let.((value.(deferred:call-la
3620 6d 62 64 61 20 63 61 6c 6c 62 61 63 6b 20 61 72 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 mbda.callback.arg)))............
3640 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 64 65 66 65 72 72 65 64 2d 70 .(cond..............((deferred-p
3660 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a .value)...............(deferred:
3680 6d 65 73 73 61 67 65 20 22 57 41 49 54 20 4e 45 53 54 20 3a 20 25 73 22 20 76 61 6c 75 65 29 0a message."WAIT.NEST.:.%s".value).
36a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 6e 65 78 74 2d 64 65 66 65 72 72 65 64 0a ..............(if.next-deferred.
36c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 65 74 2d ..................(deferred:set-
36e0 6e 65 78 74 20 76 61 6c 75 65 20 6e 65 78 74 2d 64 65 66 65 72 72 65 64 29 0a 20 20 20 20 20 20 next.value.next-deferred).......
3700 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ..........value))..............(
3720 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 6e 65 78 74 2d 64 65 66 65 72 72 65 t...............(if.next-deferre
3740 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 70 6f d...................(deferred:po
3760 73 74 2d 74 61 73 6b 20 6e 65 78 74 2d 64 65 66 65 72 72 65 64 20 27 6f 6b 20 76 61 6c 75 65 29 st-task.next-deferred.'ok.value)
3780 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 .................(setf.(deferred
37a0 2d 73 74 61 74 75 73 20 64 29 20 27 6f 6b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -status.d).'ok).................
37c0 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 76 61 6c 75 65 20 64 29 20 76 61 6c 75 65 29 0a (setf.(deferred-value.d).value).
37e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 29 29 29 29 0a 20 20 20 20 20 20 ................value)))).......
3800 20 20 28 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 ..(error..........(cond.........
3820 20 20 28 6e 65 78 74 2d 64 65 66 65 72 72 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 ..(next-deferred............(def
3840 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 6e 65 78 74 2d 64 65 66 65 72 72 65 64 20 27 6e erred:post-task.next-deferred.'n
3860 67 20 65 72 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6f 6e 65 72 g.err))...........(deferred:oner
3880 72 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 2d 6c ror.............(deferred:call-l
38a0 61 6d 62 64 61 20 64 65 66 65 72 72 65 64 3a 6f 6e 65 72 72 6f 72 20 65 72 72 29 29 0a 20 20 20 ambda.deferred:onerror.err))....
38c0 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d .......(t............(deferred:m
38e0 65 73 73 61 67 65 20 22 45 52 52 4f 52 20 3a 20 25 53 22 20 65 72 72 29 0a 20 20 20 20 20 20 20 essage."ERROR.:.%S".err)........
3900 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 64 65 66 65 72 72 65 64 20 65 72 72 6f 72 20 3a 20 25 ....(message."deferred.error.:.%
3920 53 22 20 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 S".err)............(setf.(deferr
3940 65 64 2d 73 74 61 74 75 73 20 64 29 20 27 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 ed-status.d).'ng)............(se
3960 74 66 20 28 64 65 66 65 72 72 65 64 2d 76 61 6c 75 65 20 64 29 20 65 72 72 29 0a 20 20 20 20 20 tf.(deferred-value.d).err)......
3980 20 20 20 20 20 20 65 72 72 29 29 29 29 29 0a 20 20 20 20 20 28 74 20 3b 20 3c 3d 20 28 6e 75 6c ......err)))))......(t.;.<=.(nul
39a0 6c 20 63 61 6c 6c 62 61 63 6b 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 28 l.callback).......(cond........(
39c0 6e 65 78 74 2d 64 65 66 65 72 72 65 64 0a 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a next-deferred.........(deferred:
39e0 65 78 65 63 2d 74 61 73 6b 20 6e 65 78 74 2d 64 65 66 65 72 72 65 64 20 77 68 69 63 68 20 61 72 exec-task.next-deferred.which.ar
3a00 67 29 29 0a 20 20 20 20 20 20 20 28 28 65 71 20 77 68 69 63 68 20 27 6f 6b 29 20 61 72 67 29 0a g))........((eq.which.'ok).arg).
3a20 20 20 20 20 20 20 20 28 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......(t.......................
3a40 20 20 20 20 20 20 3b 20 28 65 71 20 77 68 69 63 68 20 27 6e 67 29 0a 20 20 20 20 20 20 20 20 28 ......;.(eq.which.'ng).........(
3a60 64 65 66 65 72 72 65 64 3a 72 65 73 69 67 6e 61 6c 20 61 72 67 29 29 29 29 29 29 29 0a 0a 28 64 deferred:resignal.arg)))))))..(d
3a80 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 73 65 74 2d 6e 65 78 74 20 28 70 72 65 76 20 6e 65 78 efun.deferred:set-next.(prev.nex
3aa0 74 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 43 6f 6e 6e 65 63 74 20 64 65 66 65 72 72 65 t)..."[internal].Connect.deferre
3ac0 64 20 6f 62 6a 65 63 74 73 2e 22 0a 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 6e 65 d.objects."...(setf.(deferred-ne
3ae0 78 74 20 70 72 65 76 29 20 6e 65 78 74 29 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 65 71 20 27 xt.prev).next)...(cond....((eq.'
3b00 6f 6b 20 28 64 65 66 65 72 72 65 64 2d 73 74 61 74 75 73 20 70 72 65 76 29 29 0a 20 20 20 20 28 ok.(deferred-status.prev)).....(
3b20 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 73 74 61 74 75 73 20 70 72 65 76 29 20 6e 69 6c 29 setf.(deferred-status.prev).nil)
3b40 0a 20 20 20 20 28 6c 65 74 20 28 28 72 65 74 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 .....(let.((ret.(deferred:exec-t
3b60 61 73 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 20 27 6f 6b 20 28 64 ask..................next.'ok.(d
3b80 65 66 65 72 72 65 64 2d 76 61 6c 75 65 20 70 72 65 76 29 29 29 29 0a 20 20 20 20 20 20 28 69 66 eferred-value.prev)))).......(if
3ba0 20 28 64 65 66 65 72 72 65 64 2d 70 20 72 65 74 29 20 72 65 74 0a 20 20 20 20 20 20 20 20 6e 65 .(deferred-p.ret).ret.........ne
3bc0 78 74 29 29 29 0a 20 20 20 28 28 65 71 20 27 6e 67 20 28 64 65 66 65 72 72 65 64 2d 73 74 61 74 xt)))....((eq.'ng.(deferred-stat
3be0 75 73 20 70 72 65 76 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 73 74 us.prev)).....(setf.(deferred-st
3c00 61 74 75 73 20 70 72 65 76 29 20 6e 69 6c 29 0a 20 20 20 20 28 6c 65 74 20 28 28 72 65 74 20 28 atus.prev).nil).....(let.((ret.(
3c20 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b 20 6e 65 78 74 20 27 6e 67 20 28 64 65 66 deferred:exec-task.next.'ng.(def
3c40 65 72 72 65 64 2d 76 61 6c 75 65 20 70 72 65 76 29 29 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 erred-value.prev)))).......(if.(
3c60 64 65 66 65 72 72 65 64 2d 70 20 72 65 74 29 20 72 65 74 0a 20 20 20 20 20 20 20 20 6e 65 78 74 deferred-p.ret).ret.........next
3c80 29 29 29 0a 20 20 20 28 74 0a 20 20 20 20 6e 65 78 74 29 29 29 0a 0a 0c 0a 0a 3b 3b 3b 3b 3b 3b )))....(t.....next))).....;;;;;;
3ca0 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3cc0 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 0a 3b 3b 20 42 61 73 69 63 20 66 75 6e 63 74 69 6f 6e ;;;;;;;;;;;;;;.;;.Basic.function
3ce0 73 20 66 6f 72 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 73 0a 0a 28 64 65 66 75 6e 20 64 s.for.deferred.objects..(defun.d
3d00 65 66 65 72 72 65 64 3a 6e 65 77 20 28 26 6f 70 74 69 6f 6e 61 6c 20 63 61 6c 6c 62 61 63 6b 29 eferred:new.(&optional.callback)
3d20 0a 20 20 22 43 72 65 61 74 65 20 61 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 2e 22 0a 20 ..."Create.a.deferred.object."..
3d40 20 28 69 66 20 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 28 6d 61 6b 65 2d 64 65 66 65 72 72 .(if.callback.......(make-deferr
3d60 65 64 20 3a 63 61 6c 6c 62 61 63 6b 20 63 61 6c 6c 62 61 63 6b 29 0a 20 20 20 20 28 6d 61 6b 65 ed.:callback.callback).....(make
3d80 2d 64 65 66 65 72 72 65 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 63 61 -deferred)))..(defun.deferred:ca
3da0 6c 6c 62 61 63 6b 20 28 64 20 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 29 0a 20 20 22 53 74 61 72 llback.(d.&optional.arg)..."Star
3dc0 74 20 64 65 66 65 72 72 65 64 20 63 68 61 69 6e 20 77 69 74 68 20 61 20 63 61 6c 6c 62 61 63 6b t.deferred.chain.with.a.callback
3de0 20 6d 65 73 73 61 67 65 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b .message."...(deferred:exec-task
3e00 20 64 20 27 6f 6b 20 61 72 67 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 65 72 .d.'ok.arg))..(defun.deferred:er
3e20 72 6f 72 62 61 63 6b 20 28 64 20 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 29 0a 20 20 22 53 74 61 rorback.(d.&optional.arg)..."Sta
3e40 72 74 20 64 65 66 65 72 72 65 64 20 63 68 61 69 6e 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 62 rt.deferred.chain.with.an.errorb
3e60 61 63 6b 20 6d 65 73 73 61 67 65 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 ack.message."...(deferred:exec-t
3e80 61 73 6b 20 64 20 27 6e 67 20 61 72 67 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 ask.d.'ng.arg))..(defun.deferred
3ea0 3a 63 61 6c 6c 62 61 63 6b 2d 70 6f 73 74 20 28 64 20 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 29 :callback-post.(d.&optional.arg)
3ec0 0a 20 20 22 41 64 64 20 74 68 65 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 74 6f 20 74 ..."Add.the.deferred.object.to.t
3ee0 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 65 75 65 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 he.execution.queue."...(deferred
3f00 3a 70 6f 73 74 2d 74 61 73 6b 20 64 20 27 6f 6b 20 61 72 67 29 29 0a 0a 28 64 65 66 75 6e 20 64 :post-task.d.'ok.arg))..(defun.d
3f20 65 66 65 72 72 65 64 3a 65 72 72 6f 72 62 61 63 6b 2d 70 6f 73 74 20 28 64 20 26 6f 70 74 69 6f eferred:errorback-post.(d.&optio
3f40 6e 61 6c 20 61 72 67 29 0a 20 20 22 41 64 64 20 74 68 65 20 64 65 66 65 72 72 65 64 20 6f 62 6a nal.arg)..."Add.the.deferred.obj
3f60 65 63 74 20 74 6f 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 71 75 65 75 65 2e 22 0a 20 20 28 ect.to.the.execution.queue."...(
3f80 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 64 20 27 6e 67 20 61 72 67 29 29 0a 0a deferred:post-task.d.'ng.arg))..
3fa0 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 63 61 6e 63 65 6c 20 28 64 29 0a 20 20 22 43 61 (defun.deferred:cancel.(d)..."Ca
3fc0 6e 63 65 6c 20 61 6c 6c 20 63 61 6c 6c 62 61 63 6b 73 20 61 6e 64 20 64 65 66 65 72 72 65 64 20 ncel.all.callbacks.and.deferred.
3fe0 63 68 61 69 6e 20 69 6e 20 74 68 65 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 2e 22 0a 20 chain.in.the.deferred.object."..
4000 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 43 41 4e 43 45 4c 20 3a 20 25 73 22 .(deferred:message."CANCEL.:.%s"
4020 20 64 29 0a 20 20 28 66 75 6e 63 61 6c 6c 20 28 64 65 66 65 72 72 65 64 2d 63 61 6e 63 65 6c 20 .d)...(funcall.(deferred-cancel.
4040 64 29 20 64 29 0a 20 20 64 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 73 74 61 74 d).d)...d)..(defun.deferred:stat
4060 75 73 20 28 64 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 63 75 72 72 65 6e 74 20 73 74 61 74 75 us.(d)..."Return.a.current.statu
4080 73 20 6f 66 20 74 68 65 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 2e 20 54 68 65 20 72 65 s.of.the.deferred.object..The.re
40a0 74 75 72 6e 65 64 20 76 61 6c 75 65 20 6d 65 61 6e 73 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 60 6f turned.value.means.following:.`o
40c0 6b 27 3a 20 74 68 65 20 63 61 6c 6c 62 61 63 6b 20 77 61 73 20 63 61 6c 6c 65 64 20 61 6e 64 20 k':.the.callback.was.called.and.
40e0 77 61 69 74 69 6e 67 20 66 6f 72 20 6e 65 78 74 20 64 65 66 65 72 72 65 64 2e 0a 60 6e 67 27 3a waiting.for.next.deferred..`ng':
4100 20 74 68 65 20 65 72 72 6f 72 62 61 63 6b 20 77 61 73 20 63 61 6c 6c 65 64 20 61 6e 64 20 77 61 .the.errorback.was.called.and.wa
4120 69 74 69 6e 67 20 66 6f 72 20 6e 65 78 74 20 64 65 66 65 72 72 65 64 2e 0a 20 6e 69 6c 3a 20 54 iting.for.next.deferred...nil:.T
4140 68 65 20 6e 65 69 74 68 65 72 20 63 61 6c 6c 62 61 63 6b 20 6e 6f 72 20 65 72 72 6f 72 62 61 63 he.neither.callback.nor.errorbac
4160 6b 20 77 61 73 20 6e 6f 74 20 63 61 6c 6c 65 64 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 2d 73 k.was.not.called."...(deferred-s
4180 74 61 74 75 73 20 64 29 29 0a 0a 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b tatus.d))..;;;;;;;;;;;;;;;;;;;;;
41a0 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 0a ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.
41c0 3b 3b 20 42 61 73 69 63 20 75 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 73 0a 0a 28 64 65 66 ;;.Basic.utility.functions..(def
41e0 75 6e 20 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 28 26 6f 70 74 69 6f 6e 61 6c 20 61 un.deferred:succeed.(&optional.a
4200 72 67 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 73 79 6e 63 68 72 6f 6e 6f 75 73 20 64 65 66 65 rg)..."Create.a.synchronous.defe
4220 72 72 65 64 20 6f 62 6a 65 63 74 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 66 65 72 72 rred.object."...(let.((d.(deferr
4240 65 64 3a 6e 65 77 29 29 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 ed:new))).....(deferred:exec-tas
4260 6b 20 64 20 27 6f 6b 20 61 72 67 29 0a 20 20 20 20 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 k.d.'ok.arg).....d))..(defun.def
4280 65 72 72 65 64 3a 66 61 69 6c 20 28 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 29 0a 20 20 22 43 72 erred:fail.(&optional.arg)..."Cr
42a0 65 61 74 65 20 61 20 73 79 6e 63 68 72 6f 6e 6f 75 73 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 eate.a.synchronous.deferred.obje
42c0 63 74 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 77 29 29 29 ct."...(let.((d.(deferred:new)))
42e0 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b 20 64 20 27 6e 67 20 61 .....(deferred:exec-task.d.'ng.a
4300 72 67 29 0a 20 20 20 20 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 6e 65 78 rg).....d))..(defun.deferred:nex
4320 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 63 61 6c 6c 62 61 63 6b 20 61 72 67 29 0a 20 20 22 43 72 t.(&optional.callback.arg)..."Cr
4340 65 61 74 65 20 61 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 61 6e 64 20 73 63 68 65 64 eate.a.deferred.object.and.sched
4360 75 6c 65 20 65 78 65 63 75 74 69 6e 67 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 0a 69 73 20 ule.executing..This.function.is.
4380 61 20 73 68 6f 72 74 20 63 75 74 20 6f 66 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 3a 0a 20 a.short.cut.of.following.code:..
43a0 28 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 62 61 63 6b 2d 70 6f 73 74 20 28 64 65 66 65 72 72 65 (deferred:callback-post.(deferre
43c0 64 3a 6e 65 77 20 63 61 6c 6c 62 61 63 6b 29 29 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 20 28 69 d:new.callback))."...(let.((d.(i
43e0 66 20 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d f.callback................(make-
4400 64 65 66 65 72 72 65 64 20 3a 63 61 6c 6c 62 61 63 6b 20 63 61 6c 6c 62 61 63 6b 29 0a 20 20 20 deferred.:callback.callback)....
4420 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 64 65 66 65 72 72 65 64 29 29 29 29 0a 20 20 20 ..........(make-deferred))))....
4440 20 28 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 62 61 63 6b 2d 70 6f 73 74 20 64 20 61 72 67 29 0a .(deferred:callback-post.d.arg).
4460 20 20 20 20 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 28 ....d))..(defun.deferred:nextc.(
4480 64 20 63 61 6c 6c 62 61 63 6b 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 64 65 66 65 72 72 65 64 d.callback)..."Create.a.deferred
44a0 20 6f 62 6a 65 63 74 20 77 69 74 68 20 4f 4b 20 63 61 6c 6c 62 61 63 6b 20 61 6e 64 20 63 6f 6e .object.with.OK.callback.and.con
44c0 6e 65 63 74 20 69 74 20 74 6f 20 74 68 65 20 67 69 76 65 6e 20 64 65 66 65 72 72 65 64 20 6f 62 nect.it.to.the.given.deferred.ob
44e0 6a 65 63 74 2e 22 0a 20 20 28 6c 65 74 20 28 28 6e 64 20 28 6d 61 6b 65 2d 64 65 66 65 72 72 65 ject."...(let.((nd.(make-deferre
4500 64 20 3a 63 61 6c 6c 62 61 63 6b 20 63 61 6c 6c 62 61 63 6b 29 29 29 0a 20 20 20 20 28 64 65 66 d.:callback.callback))).....(def
4520 65 72 72 65 64 3a 73 65 74 2d 6e 65 78 74 20 64 20 6e 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 erred:set-next.d.nd)))..(defun.d
4540 65 66 65 72 72 65 64 3a 65 72 72 6f 72 20 28 64 20 63 61 6c 6c 62 61 63 6b 29 0a 20 20 22 43 72 eferred:error.(d.callback)..."Cr
4560 65 61 74 65 20 61 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 77 69 74 68 20 65 72 72 6f eate.a.deferred.object.with.erro
4580 72 62 61 63 6b 20 61 6e 64 20 63 6f 6e 6e 65 63 74 20 69 74 20 74 6f 20 74 68 65 20 67 69 76 65 rback.and.connect.it.to.the.give
45a0 6e 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 2e 22 0a 20 20 28 6c 65 74 20 28 28 6e 64 20 n.deferred.object."...(let.((nd.
45c0 28 6d 61 6b 65 2d 64 65 66 65 72 72 65 64 20 3a 65 72 72 6f 72 62 61 63 6b 20 63 61 6c 6c 62 61 (make-deferred.:errorback.callba
45e0 63 6b 29 29 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 65 74 2d 6e 65 78 74 20 64 20 6e ck))).....(deferred:set-next.d.n
4600 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 77 61 74 63 68 20 28 64 20 63 d)))..(defun.deferred:watch.(d.c
4620 61 6c 6c 62 61 63 6b 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 64 65 66 65 72 72 65 64 20 6f 62 allback)..."Create.a.deferred.ob
4640 6a 65 63 74 20 77 69 74 68 20 77 61 74 63 68 20 74 61 73 6b 20 61 6e 64 20 63 6f 6e 6e 65 63 74 ject.with.watch.task.and.connect
4660 20 69 74 20 74 6f 20 74 68 65 20 67 69 76 65 6e 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 .it.to.the.given.deferred.object
4680 2e 0a 54 68 65 20 77 61 74 63 68 20 74 61 73 6b 20 43 41 4c 4c 42 41 43 4b 20 63 61 6e 20 6e 6f ..The.watch.task.CALLBACK.can.no
46a0 74 20 61 66 66 65 63 74 20 64 65 66 65 72 72 65 64 20 63 68 61 69 6e 73 20 77 69 74 68 0a 72 65 t.affect.deferred.chains.with.re
46c0 74 75 72 6e 20 76 61 6c 75 65 73 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 75 73 turn.values..This.function.is.us
46e0 65 64 20 69 6e 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 75 72 70 6f 73 65 73 2c 0a 73 69 6d 75 6c 61 ed.in.following.purposes,.simula
4700 74 69 6f 6e 20 6f 66 20 74 72 79 2d 66 69 6e 61 6c 6c 79 20 62 6c 6f 63 6b 20 69 6e 20 61 73 79 tion.of.try-finally.block.in.asy
4720 6e 63 68 72 6f 6e 6f 75 73 20 74 61 73 6b 73 2c 20 70 72 6f 67 72 65 73 73 0a 6d 6f 6e 69 74 6f nchronous.tasks,.progress.monito
4740 72 69 6e 67 20 6f 66 20 74 61 73 6b 73 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 63 61 6c 6c 62 61 ring.of.tasks."...(let*.((callba
4760 63 6b 20 63 61 6c 6c 62 61 63 6b 29 0a 20 20 20 20 20 20 20 20 20 28 6e 6f 72 6d 61 6c 20 28 6c ck.callback)..........(normal.(l
4780 61 6d 62 64 61 20 28 78 29 20 28 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 20 28 64 65 66 65 72 72 ambda.(x).(ignore-errors.(deferr
47a0 65 64 3a 63 61 6c 6c 2d 6c 61 6d 62 64 61 20 63 61 6c 6c 62 61 63 6b 20 78 29 29 20 78 29 29 0a ed:call-lambda.callback.x)).x)).
47c0 20 20 20 20 20 20 20 20 20 28 65 72 72 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 29 0a 20 20 20 .........(err....(lambda.(e)....
47e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 20 28 ................(ignore-errors.(
4800 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 2d 6c 61 6d 62 64 61 20 63 61 6c 6c 62 61 63 6b 20 65 29 deferred:call-lambda.callback.e)
4820 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 72 )....................(deferred:r
4840 65 73 69 67 6e 61 6c 20 65 29 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 6e 64 20 28 6d 61 6b esignal.e)))).....(let.((nd.(mak
4860 65 2d 64 65 66 65 72 72 65 64 20 3a 63 61 6c 6c 62 61 63 6b 20 6e 6f 72 6d 61 6c 20 3a 65 72 72 e-deferred.:callback.normal.:err
4880 6f 72 62 61 63 6b 20 65 72 72 29 29 29 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 65 orback.err))).......(deferred:se
48a0 74 2d 6e 65 78 74 20 64 20 6e 64 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 t-next.d.nd))))..(defun.deferred
48c0 3a 77 61 69 74 20 28 6d 73 65 63 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 64 65 66 65 72 72 65 :wait.(msec)..."Return.a.deferre
48e0 64 20 6f 62 6a 65 63 74 20 73 63 68 65 64 75 6c 65 64 20 61 74 20 4d 53 45 43 20 6d 69 6c 6c 69 d.object.scheduled.at.MSEC.milli
4900 73 65 63 6f 6e 64 20 6c 61 74 65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 66 65 72 second.later."...(let.((d.(defer
4920 72 65 64 3a 6e 65 77 29 29 20 28 73 74 61 72 74 2d 74 69 6d 65 20 28 66 6c 6f 61 74 2d 74 69 6d red:new)).(start-time.(float-tim
4940 65 29 29 20 74 69 6d 65 72 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 e)).timer).....(deferred:message
4960 20 22 57 41 49 54 20 3a 20 25 73 22 20 6d 73 65 63 29 0a 20 20 20 20 28 73 65 74 71 20 74 69 6d ."WAIT.:.%s".msec).....(setq.tim
4980 65 72 20 28 64 65 66 65 72 72 65 64 3a 73 65 74 54 69 6d 65 6f 75 74 0a 20 20 20 20 20 20 20 20 er.(deferred:setTimeout.........
49a0 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 ..........(lambda.()............
49c0 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d 74 61 73 6b 20 64 20 27 .........(deferred:exec-task.d.'
49e0 6f 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 31 30 30 30 ok.......................(*.1000
4a00 2e 30 20 28 2d 20 28 66 6c 6f 61 74 2d 74 69 6d 65 29 20 73 74 61 72 74 2d 74 69 6d 65 29 29 29 .0.(-.(float-time).start-time)))
4a20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 20 6d 73 65 63 29 29 .....................nil).msec))
4a40 0a 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 63 61 6e 63 65 6c 20 64 29 0a 20 .....(setf.(deferred-cancel.d)..
4a60 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 .........(lambda.(x)............
4a80 20 28 64 65 66 65 72 72 65 64 3a 63 61 6e 63 65 6c 54 69 6d 65 6f 75 74 20 74 69 6d 65 72 29 0a .(deferred:cancelTimeout.timer).
4aa0 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 ............(deferred:default-ca
4ac0 6e 63 65 6c 20 78 29 29 29 0a 20 20 20 20 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 ncel.x))).....d))..(defun.deferr
4ae0 65 64 3a 77 61 69 74 2d 69 64 6c 65 20 28 6d 73 65 63 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 ed:wait-idle.(msec)..."Return.a.
4b00 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 77 68 69 63 68 20 77 69 6c 6c 20 72 75 6e 20 77 deferred.object.which.will.run.w
4b20 68 65 6e 20 45 6d 61 63 73 20 68 61 73 20 62 65 65 6e 0a 69 64 6c 65 20 66 6f 72 20 4d 53 45 43 hen.Emacs.has.been.idle.for.MSEC
4b40 20 6d 69 6c 6c 69 73 65 63 6f 6e 64 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 66 65 72 .millisecond."...(let.((d.(defer
4b60 72 65 64 3a 6e 65 77 29 29 20 28 73 74 61 72 74 2d 74 69 6d 65 20 28 66 6c 6f 61 74 2d 74 69 6d red:new)).(start-time.(float-tim
4b80 65 29 29 20 74 69 6d 65 72 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 e)).timer).....(deferred:message
4ba0 20 22 57 41 49 54 2d 49 44 4c 45 20 3a 20 25 73 22 20 6d 73 65 63 29 0a 20 20 20 20 28 73 65 74 ."WAIT-IDLE.:.%s".msec).....(set
4bc0 71 20 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 72 75 6e 2d q.timer...........(deferred:run-
4be0 77 69 74 68 2d 69 64 6c 65 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 2f 20 6d with-idle-timer.............(/.m
4c00 73 65 63 20 31 30 30 30 2e 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 sec.1000.0).............(lambda.
4c20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 78 65 63 2d ()...............(deferred:exec-
4c40 74 61 73 6b 20 64 20 27 6f 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 31 30 task.d.'ok.................(*.10
4c60 30 30 2e 30 20 28 2d 20 28 66 6c 6f 61 74 2d 74 69 6d 65 29 20 73 74 61 72 74 2d 74 69 6d 65 29 00.0.(-.(float-time).start-time)
4c80 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 29 29 0a 20 20 20 20 28 73 65 74 ))...............nil))).....(set
4ca0 66 20 28 64 65 66 65 72 72 65 64 2d 63 61 6e 63 65 6c 20 64 29 0a 20 20 20 20 20 20 20 20 20 20 f.(deferred-cancel.d)...........
4cc0 28 6c 61 6d 62 64 61 20 28 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 (lambda.(x).............(deferre
4ce0 64 3a 63 61 6e 63 65 6c 54 69 6d 65 6f 75 74 20 74 69 6d 65 72 29 0a 20 20 20 20 20 20 20 20 20 d:cancelTimeout.timer)..........
4d00 20 20 20 28 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c 20 78 29 29 29 ...(deferred:default-cancel.x)))
4d20 0a 20 20 20 20 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 20 28 .....d))..(defun.deferred:call.(
4d40 66 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 43 61 6c 6c 20 74 68 65 20 67 69 76 65 6e 20 f.&rest.args)..."Call.the.given.
4d60 66 75 6e 63 74 69 6f 6e 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e 22 0a 20 20 28 64 65 66 function.asynchronously."...(def
4d80 65 72 72 65 64 3a 6e 65 78 74 0a 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 78 29 0a 20 20 20 20 erred:next.....(lambda.(_x).....
4da0 20 20 28 61 70 70 6c 79 20 66 20 61 72 67 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 ..(apply.f.args))))..(defun.defe
4dc0 72 72 65 64 3a 61 70 70 6c 79 20 28 66 20 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 73 29 0a 20 20 rred:apply.(f.&optional.args)...
4de0 22 43 61 6c 6c 20 74 68 65 20 67 69 76 65 6e 20 66 75 6e 63 74 69 6f 6e 20 61 73 79 6e 63 68 72 "Call.the.given.function.asynchr
4e00 6f 6e 6f 75 73 6c 79 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 0a 20 20 20 20 28 onously."...(deferred:next.....(
4e20 6c 61 6d 62 64 61 20 28 5f 78 29 0a 20 20 20 20 20 20 28 61 70 70 6c 79 20 66 20 61 72 67 73 29 lambda.(_x).......(apply.f.args)
4e40 29 29 29 0a 0a 0c 0a 0a 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ))).....;;;;;;;;;;;;;;;;;;;;;;;;
4e60 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 0a 3b 3b 20 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;.;;.
4e80 55 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 73 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 Utility.functions..(defun.deferr
4ea0 65 64 3a 65 6d 70 74 79 2d 70 20 28 74 69 6d 65 73 2d 6f 72 2d 73 65 71 29 0a 20 20 22 5b 69 6e ed:empty-p.(times-or-seq)..."[in
4ec0 74 65 72 6e 61 6c 5d 20 52 65 74 75 72 6e 20 6e 6f 6e 2d 6e 69 6c 20 69 66 20 54 49 4d 45 53 2d ternal].Return.non-nil.if.TIMES-
4ee0 4f 52 2d 53 45 51 20 69 73 20 74 68 65 20 6e 75 6d 62 65 72 20 7a 65 72 6f 20 6f 72 20 6e 69 6c OR-SEQ.is.the.number.zero.or.nil
4f00 2e 22 0a 20 20 28 6f 72 20 28 61 6e 64 20 28 6e 75 6d 62 65 72 70 20 74 69 6d 65 73 2d 6f 72 2d ."...(or.(and.(numberp.times-or-
4f20 73 65 71 29 20 28 3c 3d 20 74 69 6d 65 73 2d 6f 72 2d 73 65 71 20 30 29 29 0a 20 20 20 20 20 20 seq).(<=.times-or-seq.0)).......
4f40 28 61 6e 64 20 28 73 65 71 75 65 6e 63 65 70 20 74 69 6d 65 73 2d 6f 72 2d 73 65 71 29 20 28 3d (and.(sequencep.times-or-seq).(=
4f60 20 28 6c 65 6e 67 74 68 20 74 69 6d 65 73 2d 6f 72 2d 73 65 71 29 20 30 29 29 29 29 0a 0a 28 64 .(length.times-or-seq).0))))..(d
4f80 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 6c 6f 6f 70 20 28 74 69 6d 65 73 2d 6f 72 2d 73 65 71 efun.deferred:loop.(times-or-seq
4fa0 20 66 75 6e 63 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 69 74 65 72 61 74 69 6f 6e 20 64 65 66 .func)..."Return.a.iteration.def
4fc0 65 72 72 65 64 20 6f 62 6a 65 63 74 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 erred.object."...(deferred:messa
4fe0 67 65 20 22 4c 4f 4f 50 20 3a 20 25 73 22 20 74 69 6d 65 73 2d 6f 72 2d 73 65 71 29 0a 20 20 28 ge."LOOP.:.%s".times-or-seq)...(
5000 69 66 20 28 64 65 66 65 72 72 65 64 3a 65 6d 70 74 79 2d 70 20 74 69 6d 65 73 2d 6f 72 2d 73 65 if.(deferred:empty-p.times-or-se
5020 71 29 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 29 0a 20 20 20 20 28 6c 65 74 2a 20 28 69 74 q).(deferred:next).....(let*.(it
5040 65 6d 73 20 28 72 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a ems.(rd...................(cond.
5060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e 75 6d 62 65 72 70 20 74 69 6d ...................((numberp.tim
5080 65 73 2d 6f 72 2d 73 65 71 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 es-or-seq).....................(
50a0 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 69 20 66 72 6f 6d 20 30 20 62 65 6c 6f 77 20 74 69 6d 65 73 cl-loop.for.i.from.0.below.times
50c0 2d 6f 72 2d 73 65 71 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 -or-seq.........................
50e0 20 20 20 20 20 77 69 74 68 20 6c 64 20 3d 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 29 0a 20 .....with.ld.=.(deferred:next)..
5100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 0a 20 ............................do..
5120 20 20 20 20 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 ............................(pus
5140 68 20 6c 64 20 69 74 65 6d 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h.ld.items).....................
5160 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........(setq.ld...............
5180 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 69 20 69 29 .....................(let.((i.i)
51a0 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 )...............................
51c0 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 6c 64 0a 20 20 20 20 20 20 .......(deferred:nextc.ld.......
51e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5200 20 28 6c 61 6d 62 64 61 20 28 5f 78 29 20 28 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 2d 6c 61 6d .(lambda.(_x).(deferred:call-lam
5220 62 64 61 20 66 75 6e 63 20 69 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 bda.func.i))))).................
5240 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6e 61 6c 6c 79 20 72 65 74 75 72 6e 20 6c 64 29 29 .............finally.return.ld))
5260 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 73 65 71 75 65 6e 63 65 70 20 ....................((sequencep.
5280 74 69 6d 65 73 2d 6f 72 2d 73 65 71 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 times-or-seq)...................
52a0 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 69 20 69 6e 20 28 61 70 70 65 6e 64 20 74 69 6d 65 ..(cl-loop.for.i.in.(append.time
52c0 73 2d 6f 72 2d 73 65 71 20 6e 69 6c 29 20 3b 20 73 65 71 2d 3e 6c 69 73 74 0a 20 20 20 20 20 20 s-or-seq.nil).;.seq->list.......
52e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 6c 64 20 3d .......................with.ld.=
5300 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(deferred:next)................
5320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............do................
5340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 6c 64 20 69 74 65 6d 73 29 0a 20 20 ..............(push.ld.items)...
5360 20 20 20 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 ...........................(setq
5380 20 6c 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 20 .ld.............................
53a0 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 20 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .......(let.((i.i)).............
53c0 20 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 64 65 66 65 72 72 .........................(deferr
53e0 65 64 3a 6e 65 78 74 63 20 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed:nextc.ld.....................
5400 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 61 20 28 5f 78 29 20 ...................(lambda.(_x).
5420 28 64 65 66 65 72 72 65 64 3a 63 61 6c 6c 2d 6c 61 6d 62 64 61 20 66 75 6e 63 20 69 29 29 29 29 (deferred:call-lambda.func.i))))
5440 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 66 )..............................f
5460 69 6e 61 6c 6c 79 20 72 65 74 75 72 6e 20 6c 64 29 29 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 inally.return.ld))))).......(set
5480 66 20 28 64 65 66 65 72 72 65 64 2d 63 61 6e 63 65 6c 20 72 64 29 0a 20 20 20 20 20 20 20 20 20 f.(deferred-cancel.rd)..........
54a0 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 ...(lambda.(x).(deferred:default
54c0 2d 63 61 6e 63 65 6c 20 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 6c 6f 6f -cancel.x)...............(cl-loo
54e0 70 20 66 6f 72 20 69 20 69 6e 20 69 74 65 6d 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 p.for.i.in.items................
5500 20 20 20 20 20 20 20 20 64 6f 20 28 64 65 66 65 72 72 65 64 3a 63 61 6e 63 65 6c 20 69 29 29 29 ........do.(deferred:cancel.i)))
5520 29 0a 20 20 20 20 20 20 72 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 74 ).......rd)))..(defun.deferred:t
5540 72 61 6e 73 2d 6d 75 6c 74 69 2d 61 72 67 73 20 28 61 72 67 73 20 73 65 6c 66 2d 66 75 6e 63 20 rans-multi-args.(args.self-func.
5560 6c 69 73 74 2d 66 75 6e 63 20 6d 61 69 6e 2d 66 75 6e 63 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 list-func.main-func)..."[interna
5580 6c 5d 20 43 68 65 63 6b 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 76 61 6c 75 65 73 20 61 6e 64 l].Check.the.argument.values.and
55a0 20 64 69 73 70 61 74 63 68 20 74 6f 20 6d 65 74 68 6f 64 73 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 .dispatch.to.methods."...(cond..
55c0 20 20 28 28 61 6e 64 20 28 3d 20 31 20 28 6c 65 6e 67 74 68 20 61 72 67 73 29 29 20 28 63 6f 6e ..((and.(=.1.(length.args)).(con
55e0 73 70 20 28 63 61 72 20 61 72 67 73 29 29 20 28 6e 6f 74 20 28 66 75 6e 63 74 69 6f 6e 70 20 28 sp.(car.args)).(not.(functionp.(
5600 63 61 72 20 61 72 67 73 29 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 6c 73 74 20 28 63 61 72 car.args)))).....(let.((lst.(car
5620 20 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 28 28 6f 72 .args))).......(cond........((or
5640 20 28 6e 75 6c 6c 20 6c 73 74 29 20 28 6e 75 6c 6c 20 28 63 61 72 20 6c 73 74 29 29 29 0a 20 20 .(null.lst).(null.(car.lst)))...
5660 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 29 29 0a 20 20 20 20 20 20 20 28 28 ......(deferred:next))........((
5680 64 65 66 65 72 72 65 64 3a 61 61 6e 64 20 6c 73 74 20 28 63 61 72 20 69 74 29 20 28 6f 72 20 28 deferred:aand.lst.(car.it).(or.(
56a0 66 75 6e 63 74 69 6f 6e 70 20 69 74 29 20 28 64 65 66 65 72 72 65 64 2d 70 20 69 74 29 29 29 0a functionp.it).(deferred-p.it))).
56c0 20 20 20 20 20 20 20 20 3b 3b 20 61 20 6c 69 73 74 20 6f 66 20 64 65 66 65 72 72 65 64 20 6f 62 ........;;.a.list.of.deferred.ob
56e0 6a 65 63 74 73 0a 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 6c 69 73 74 2d 66 75 6e 63 jects.........(funcall.list-func
5700 20 6c 73 74 29 29 0a 20 20 20 20 20 20 20 28 28 64 65 66 65 72 72 65 64 3a 61 61 6e 64 20 6c 73 .lst))........((deferred:aand.ls
5720 74 20 28 63 6f 6e 73 70 20 69 74 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 61 6e 20 61 6c 69 73 t.(consp.it)).........;;.an.alis
5740 74 20 6f 66 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 73 0a 20 20 20 20 20 20 20 20 28 66 t.of.deferred.objects.........(f
5760 75 6e 63 61 6c 6c 20 6d 61 69 6e 2d 66 75 6e 63 20 6c 73 74 29 29 0a 20 20 20 20 20 20 20 28 74 uncall.main-func.lst))........(t
5780 20 28 65 72 72 6f 72 20 22 57 72 6f 6e 67 20 61 72 67 75 6d 65 6e 74 20 74 79 70 65 2e 20 25 73 .(error."Wrong.argument.type..%s
57a0 22 20 61 72 67 73 29 29 29 29 29 0a 20 20 20 28 74 20 28 66 75 6e 63 61 6c 6c 20 73 65 6c 66 2d ".args)))))....(t.(funcall.self-
57c0 66 75 6e 63 20 61 72 67 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 func.args))))..(defun.deferred:p
57e0 61 72 61 6c 6c 65 6c 2d 61 72 72 61 79 2d 74 6f 2d 61 6c 69 73 74 20 28 6c 73 74 29 0a 20 20 22 arallel-array-to-alist.(lst)..."
5800 5b 69 6e 74 65 72 6e 61 6c 5d 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 61 72 72 61 79 20 74 6f 20 [internal].Translation.array.to.
5820 61 6c 69 73 74 2e 22 0a 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 64 20 69 6e 20 6c 73 74 0a alist."...(cl-loop.for.d.in.lst.
5840 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 69 20 66 72 6f 6d 20 30 20 62 65 6c 6f 77 20 28 6c ...........for.i.from.0.below.(l
5860 65 6e 67 74 68 20 6c 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 28 63 ength.lst)............collect.(c
5880 6f 6e 73 20 69 20 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 61 72 61 ons.i.d)))..(defun.deferred:para
58a0 6c 6c 65 6c 2d 61 6c 69 73 74 2d 74 6f 2d 61 72 72 61 79 20 28 61 6c 73 74 29 0a 20 20 22 5b 69 llel-alist-to-array.(alst)..."[i
58c0 6e 74 65 72 6e 61 6c 5d 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 61 6c 69 73 74 20 74 6f 20 61 72 nternal].Translation.alist.to.ar
58e0 72 61 79 2e 22 0a 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 70 61 69 72 20 69 6e 0a 20 20 20 ray."...(cl-loop.for.pair.in....
5900 20 20 20 20 20 20 20 20 28 73 6f 72 74 20 61 6c 73 74 20 28 6c 61 6d 62 64 61 20 28 78 20 79 29 ........(sort.alst.(lambda.(x.y)
5920 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 3c 20 28 63 61 72 .........................(<.(car
5940 20 78 29 20 28 63 61 72 20 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 .x).(car.y))))............collec
5960 74 20 28 63 64 72 20 70 61 69 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a t.(cdr.pair)))..(defun.deferred:
5980 70 61 72 61 6c 6c 65 6c 2d 66 75 6e 63 2d 74 6f 2d 64 65 66 65 72 72 65 64 20 28 61 6c 73 74 29 parallel-func-to-deferred.(alst)
59a0 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 4e 6f 72 6d 61 6c 69 7a 61 74 69 6f 6e 20 66 6f 72 ..."[internal].Normalization.for
59c0 20 70 61 72 61 6c 6c 65 6c 20 61 6e 64 20 65 61 72 6c 69 65 72 20 61 72 67 75 6d 65 6e 74 73 2e .parallel.and.earlier.arguments.
59e0 22 0a 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 70 61 69 72 20 69 6e 20 61 6c 73 74 0a 20 20 "...(cl-loop.for.pair.in.alst...
5a00 20 20 20 20 20 20 20 20 20 66 6f 72 20 64 20 3d 20 28 63 64 72 20 70 61 69 72 29 0a 20 20 20 20 .........for.d.=.(cdr.pair).....
5a20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e .......collect............(progn
5a40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 64 65 66 65 72 72 65 64 2d ..............(unless.(deferred-
5a60 70 20 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 63 64 72 20 70 p.d)................(setf.(cdr.p
5a80 61 69 72 29 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 20 64 29 29 29 0a 20 20 20 20 20 20 20 air).(deferred:next.d)))........
5aa0 20 20 20 20 20 20 70 61 69 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 ......pair)))..(defun.deferred:p
5ac0 61 72 61 6c 6c 65 6c 2d 6d 61 69 6e 20 28 61 6c 73 74 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c arallel-main.(alst)..."[internal
5ae0 5d 20 44 65 66 65 72 72 65 64 20 61 6c 69 73 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 ].Deferred.alist.implementation.
5b00 66 6f 72 20 60 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 27 2e 20 22 0a 20 20 28 64 65 for.`deferred:parallel'.."...(de
5b20 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 50 41 52 41 4c 4c 45 4c 3c 4b 45 59 20 2e 20 56 ferred:message."PARALLEL<KEY...V
5b40 41 4c 55 45 3e 22 20 29 0a 20 20 28 6c 65 74 20 28 28 6e 64 20 28 64 65 66 65 72 72 65 64 3a 6e ALUE>".)...(let.((nd.(deferred:n
5b60 65 77 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65 6e 20 28 6c 65 6e 67 74 68 20 61 6c 73 74 29 29 ew)).........(len.(length.alst))
5b80 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 73 29 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f .........values).....(cl-loop.fo
5ba0 72 20 70 61 69 72 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 r.pair.in..............(deferred
5bc0 3a 70 61 72 61 6c 6c 65 6c 2d 66 75 6e 63 2d 74 6f 2d 64 65 66 65 72 72 65 64 20 61 6c 73 74 29 :parallel-func-to-deferred.alst)
5be0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 63 64 20 3b 20 63 75 72 72 65 6e 74 20 ..............with.cd.;.current.
5c00 63 68 69 6c 64 20 64 65 66 65 72 72 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 0a 20 child.deferred..............do..
5c20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 61 6d 65 20 28 63 61 72 20 70 61 69 ............(let.((name.(car.pai
5c40 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 64 0a 20 20 20 r)))................(setq.cd....
5c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 ..................(deferred:next
5c80 63 20 28 63 64 72 20 70 61 69 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 c.(cdr.pair)....................
5ca0 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(lambda.(x).................
5cc0 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 6e 61 6d 65 20 78 29 20 76 61 6c .........(push.(cons.name.x).val
5ce0 75 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 20 20 28 64 ues)..........................(d
5d00 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 50 41 52 41 4c 4c 45 4c 20 56 41 4c 55 45 20 eferred:message."PARALLEL.VALUE.
5d20 5b 25 73 2f 25 73 5d 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 [%s/%s].%s".....................
5d40 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68 20 76 61 6c 75 65 73 29 20 6c 65 6e 20 28 63 6f 6e 73 .......(length.values).len.(cons
5d60 20 6e 61 6d 65 20 78 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 .name.x)).......................
5d80 20 20 20 28 77 68 65 6e 20 28 3d 20 6c 65 6e 20 28 6c 65 6e 67 74 68 20 76 61 6c 75 65 73 29 29 ...(when.(=.len.(length.values))
5da0 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 64 65 66 ............................(def
5dc0 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 50 41 52 41 4c 4c 45 4c 20 43 4f 4c 4c 45 43 54 45 erred:message."PARALLEL.COLLECTE
5de0 44 22 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 28 D")............................(
5e00 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 6e 64 20 27 6f 6b 20 28 6e 72 65 76 65 deferred:post-task.nd.'ok.(nreve
5e20 72 73 65 20 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 rse.values)))...................
5e40 20 20 20 20 20 20 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 .......nil)))................(de
5e60 66 65 72 72 65 64 3a 65 72 72 6f 72 20 63 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ferred:error.cd.................
5e80 20 28 6c 61 6d 62 64 61 20 28 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(lambda.(e)....................
5ea0 28 70 75 73 68 20 28 63 6f 6e 73 20 6e 61 6d 65 20 65 29 20 76 61 6c 75 65 73 29 0a 20 20 20 20 (push.(cons.name.e).values).....
5ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 ...............(deferred:message
5ee0 20 22 50 41 52 41 4c 4c 45 4c 20 45 52 52 4f 52 20 5b 25 73 2f 25 73 5d 20 25 73 22 0a 20 20 20 ."PARALLEL.ERROR.[%s/%s].%s"....
5f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68 20 76 61 6c 75 65 73 ..................(length.values
5f20 29 20 6c 65 6e 20 28 63 6f 6e 73 20 6e 61 6d 65 20 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ).len.(cons.name.e))............
5f40 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 3d 20 28 6c 65 6e 67 74 68 20 76 61 6c 75 65 73 29 ........(when.(=.(length.values)
5f60 20 6c 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 28 64 65 66 65 .len)......................(defe
5f80 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 50 41 52 41 4c 4c 45 4c 20 43 4f 4c 4c 45 43 54 45 44 rred:message."PARALLEL.COLLECTED
5fa0 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 ")......................(deferre
5fc0 64 3a 70 6f 73 74 2d 74 61 73 6b 20 6e 64 20 27 6f 6b 20 28 6e 72 65 76 65 72 73 65 20 76 61 6c d:post-task.nd.'ok.(nreverse.val
5fe0 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 6e 69 6c 29 29 29 ues)))....................nil)))
6000 29 0a 20 20 20 20 6e 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 61 72 61 ).....nd))..(defun.deferred:para
6020 6c 6c 65 6c 2d 6c 69 73 74 20 28 6c 73 74 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 44 65 llel-list.(lst)..."[internal].De
6040 66 65 72 72 65 64 20 6c 69 73 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 60 ferred.list.implementation.for.`
6060 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 27 2e 20 22 0a 20 20 28 64 65 66 65 72 72 65 deferred:parallel'.."...(deferre
6080 64 3a 6d 65 73 73 61 67 65 20 22 50 41 52 41 4c 4c 45 4c 3c 4c 49 53 54 3e 22 20 29 0a 20 20 28 d:message."PARALLEL<LIST>".)...(
60a0 6c 65 74 2a 20 28 28 70 64 20 28 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 2d 6d 61 69 let*.((pd.(deferred:parallel-mai
60c0 6e 20 28 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 2d 61 72 72 61 79 2d 74 6f 2d 61 6c n.(deferred:parallel-array-to-al
60e0 69 73 74 20 6c 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 64 20 28 64 65 66 65 72 72 65 ist.lst)))..........(rd.(deferre
6100 64 3a 6e 65 78 74 63 20 70 64 20 27 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 2d 61 6c d:nextc.pd.'deferred:parallel-al
6120 69 73 74 2d 74 6f 2d 61 72 72 61 79 29 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 ist-to-array))).....(setf.(defer
6140 72 65 64 2d 63 61 6e 63 65 6c 20 72 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 red-cancel.rd)...........(lambda
6160 20 28 78 29 20 28 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c 20 78 29 .(x).(deferred:default-cancel.x)
6180 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 63 61 6e 63 65 6c 20 70 64 .............(deferred:cancel.pd
61a0 29 29 29 0a 20 20 20 20 72 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 61 ))).....rd))..(defun.deferred:pa
61c0 72 61 6c 6c 65 6c 20 28 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 rallel.(&rest.args)..."Return.a.
61e0 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 74 68 61 74 20 63 61 6c 6c 73 20 67 69 76 65 6e deferred.object.that.calls.given
6200 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 73 20 6f 72 0a 66 75 6e 63 74 69 6f 6e 73 20 69 .deferred.objects.or.functions.i
6220 6e 20 70 61 72 61 6c 6c 65 6c 20 61 6e 64 20 77 61 69 74 20 66 6f 72 20 61 6c 6c 20 63 61 6c 6c n.parallel.and.wait.for.all.call
6240 62 61 63 6b 73 2e 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 64 65 66 65 72 72 65 64 20 74 61 backs..The.following.deferred.ta
6260 73 6b 20 77 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68 20 61 6e 20 61 72 72 61 79 20 sk.will.be.called.with.an.array.
6280 6f 66 20 74 68 65 20 72 65 74 75 72 6e 0a 76 61 6c 75 65 73 2e 20 41 52 47 53 20 63 61 6e 20 62 of.the.return.values..ARGS.can.b
62a0 65 20 61 20 6c 69 73 74 20 6f 72 20 61 6e 20 61 6c 69 73 74 20 6f 66 20 64 65 66 65 72 72 65 64 e.a.list.or.an.alist.of.deferred
62c0 20 6f 62 6a 65 63 74 73 20 6f 72 0a 66 75 6e 63 74 69 6f 6e 73 2e 22 0a 20 20 28 64 65 66 65 72 .objects.or.functions."...(defer
62e0 72 65 64 3a 6d 65 73 73 61 67 65 20 22 50 41 52 41 4c 4c 45 4c 20 3a 20 25 73 22 20 61 72 67 73 red:message."PARALLEL.:.%s".args
6300 29 0a 20 20 28 64 65 66 65 72 72 65 64 3a 74 72 61 6e 73 2d 6d 75 6c 74 69 2d 61 72 67 73 20 61 )...(deferred:trans-multi-args.a
6320 72 67 73 0a 20 20 20 20 27 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 20 27 64 65 66 65 rgs.....'deferred:parallel.'defe
6340 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 2d 6c 69 73 74 20 27 64 65 66 65 72 72 65 64 3a 70 61 72 rred:parallel-list.'deferred:par
6360 61 6c 6c 65 6c 2d 6d 61 69 6e 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 65 61 allel-main))..(defun.deferred:ea
6380 72 6c 69 65 72 2d 6d 61 69 6e 20 28 61 6c 73 74 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 rlier-main.(alst)..."[internal].
63a0 44 65 66 65 72 72 65 64 20 61 6c 69 73 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 6f Deferred.alist.implementation.fo
63c0 72 20 60 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 27 2e 20 22 0a 20 20 28 64 65 66 65 72 r.`deferred:earlier'.."...(defer
63e0 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 41 52 4c 49 45 52 3c 4b 45 59 20 2e 20 56 41 4c 55 45 red:message."EARLIER<KEY...VALUE
6400 3e 22 20 29 0a 20 20 28 6c 65 74 20 28 28 6e 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 77 29 29 >".)...(let.((nd.(deferred:new))
6420 0a 20 20 20 20 20 20 20 20 28 6c 65 6e 20 28 6c 65 6e 67 74 68 20 61 6c 73 74 29 29 0a 20 20 20 .........(len.(length.alst))....
6440 20 20 20 20 20 76 61 6c 75 65 20 72 65 73 75 6c 74 73 29 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 .....value.results).....(cl-loop
6460 20 66 6f 72 20 70 61 69 72 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 .for.pair.in..............(defer
6480 72 65 64 3a 70 61 72 61 6c 6c 65 6c 2d 66 75 6e 63 2d 74 6f 2d 64 65 66 65 72 72 65 64 20 61 6c red:parallel-func-to-deferred.al
64a0 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 63 64 20 3b 20 63 75 72 72 65 st)..............with.cd.;.curre
64c0 6e 74 20 63 68 69 6c 64 20 64 65 66 65 72 72 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 64 nt.child.deferred..............d
64e0 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 61 6d 65 20 28 63 61 72 20 o..............(let.((name.(car.
6500 70 61 69 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 64 0a pair)))................(setq.cd.
6520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e .....................(deferred:n
6540 65 78 74 63 20 28 63 64 72 20 70 61 69 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 extc.(cdr.pair).................
6560 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .......(lambda.(x)..............
6580 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 6e 61 6d 65 20 78 29 20 ............(push.(cons.name.x).
65a0 72 65 73 75 6c 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 results)........................
65c0 20 20 28 63 6f 6e 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 ..(cond.........................
65e0 20 20 28 28 6e 75 6c 6c 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..((null.value).................
6600 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 61 6c 75 65 20 28 63 6f 6e 73 20 6e 61 6d ...........(setq.value.(cons.nam
6620 65 20 78 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 e.x))...........................
6640 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 41 52 4c 49 45 52 20 56 41 4c 55 .(deferred:message."EARLIER.VALU
6660 45 20 25 73 22 20 28 63 6f 6e 73 20 6e 61 6d 65 20 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 E.%s".(cons.name.value))........
6680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 70 6f ....................(deferred:po
66a0 73 74 2d 74 61 73 6b 20 6e 64 20 27 6f 6b 20 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 st-task.nd.'ok.value))..........
66c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................(t.............
66e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 ...............(deferred:message
6700 20 22 45 41 52 4c 49 45 52 20 4d 49 53 53 20 5b 25 73 2f 25 73 5d 20 25 73 22 20 28 6c 65 6e 67 ."EARLIER.MISS.[%s/%s].%s".(leng
6720 74 68 20 72 65 73 75 6c 74 73 29 20 6c 65 6e 20 28 63 6f 6e 73 20 6e 61 6d 65 20 76 61 6c 75 65 th.results).len.(cons.name.value
6740 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 28 77 ))............................(w
6760 68 65 6e 20 28 65 71 6c 20 28 6c 65 6e 67 74 68 20 72 65 73 75 6c 74 73 29 20 6c 65 6e 29 0a 20 hen.(eql.(length.results).len)..
6780 20 20 20 20 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 64 65 66 ............................(def
67a0 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 41 52 4c 49 45 52 20 43 4f 4c 4c 45 43 54 45 44 erred:message."EARLIER.COLLECTED
67c0 22 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 6e "))))..........................n
67e0 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 il)))................(deferred:e
6800 72 72 6f 72 20 63 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 rror.cd..................(lambda
6820 20 28 65 29 0a 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 .(e)....................(push.(c
6840 6f 6e 73 20 6e 61 6d 65 20 65 29 20 72 65 73 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 ons.name.e).results)............
6860 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 41 52 4c 49 ........(deferred:message."EARLI
6880 45 52 20 45 52 52 4f 52 20 5b 25 73 2f 25 73 5d 20 25 73 22 20 28 6c 65 6e 67 74 68 20 72 65 73 ER.ERROR.[%s/%s].%s".(length.res
68a0 75 6c 74 73 29 20 6c 65 6e 20 28 63 6f 6e 73 20 6e 61 6d 65 20 65 29 29 0a 20 20 20 20 20 20 20 ults).len.(cons.name.e))........
68c0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 65 71 6c 20 28 6c 65 6e ............(when.(and.(eql.(len
68e0 67 74 68 20 72 65 73 75 6c 74 73 29 20 6c 65 6e 29 20 28 6e 75 6c 6c 20 76 61 6c 75 65 29 29 0a gth.results).len).(null.value)).
6900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6d .....................(deferred:m
6920 65 73 73 61 67 65 20 22 45 41 52 4c 49 45 52 20 46 41 49 4c 45 44 22 29 0a 20 20 20 20 20 20 20 essage."EARLIER.FAILED")........
6940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 ..............(deferred:post-tas
6960 6b 20 6e 64 20 27 6f 6b 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 k.nd.'ok.nil))..................
6980 20 20 6e 69 6c 29 29 29 29 0a 20 20 20 20 6e 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 ..nil)))).....nd))..(defun.defer
69a0 72 65 64 3a 65 61 72 6c 69 65 72 2d 6c 69 73 74 20 28 6c 73 74 29 0a 20 20 22 5b 69 6e 74 65 72 red:earlier-list.(lst)..."[inter
69c0 6e 61 6c 5d 20 44 65 66 65 72 72 65 64 20 6c 69 73 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f nal].Deferred.list.implementatio
69e0 6e 20 66 6f 72 20 60 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 27 2e 20 22 0a 20 20 28 64 n.for.`deferred:earlier'.."...(d
6a00 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 20 22 45 41 52 4c 49 45 52 3c 4c 49 53 54 3e 22 20 eferred:message."EARLIER<LIST>".
6a20 29 0a 20 20 28 6c 65 74 2a 20 28 28 70 64 20 28 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 )...(let*.((pd.(deferred:earlier
6a40 2d 6d 61 69 6e 20 28 64 65 66 65 72 72 65 64 3a 70 61 72 61 6c 6c 65 6c 2d 61 72 72 61 79 2d 74 -main.(deferred:parallel-array-t
6a60 6f 2d 61 6c 69 73 74 20 6c 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 64 20 28 64 65 66 o-alist.lst)))..........(rd.(def
6a80 65 72 72 65 64 3a 6e 65 78 74 63 20 70 64 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 63 64 72 20 erred:nextc.pd.(lambda.(x).(cdr.
6aa0 78 29 29 29 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 63 61 6e 63 65 x))))).....(setf.(deferred-cance
6ac0 6c 20 72 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 64 65 66 l.rd)...........(lambda.(x).(def
6ae0 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c 20 78 29 0a 20 20 20 20 20 20 20 20 erred:default-cancel.x).........
6b00 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 63 61 6e 63 65 6c 20 70 64 29 29 29 0a 20 20 20 20 72 ....(deferred:cancel.pd))).....r
6b20 64 29 29 0a 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 20 28 26 d))...(defun.deferred:earlier.(&
6b40 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 64 65 66 65 72 72 65 64 20 rest.args)..."Return.a.deferred.
6b60 6f 62 6a 65 63 74 20 74 68 61 74 20 63 61 6c 6c 73 20 67 69 76 65 6e 20 64 65 66 65 72 72 65 64 object.that.calls.given.deferred
6b80 20 6f 62 6a 65 63 74 73 20 6f 72 0a 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 70 61 72 61 6c 6c 65 .objects.or.functions.in.paralle
6ba0 6c 20 61 6e 64 20 77 61 69 74 20 66 6f 72 20 74 68 65 20 66 69 72 73 74 20 63 61 6c 6c 62 61 63 l.and.wait.for.the.first.callbac
6bc0 6b 2e 20 54 68 65 0a 66 6f 6c 6c 6f 77 69 6e 67 20 64 65 66 65 72 72 65 64 20 74 61 73 6b 20 77 k..The.following.deferred.task.w
6be0 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 66 69 72 73 74 20 72 65 74 ill.be.called.with.the.first.ret
6c00 75 72 6e 0a 76 61 6c 75 65 2e 20 41 52 47 53 20 63 61 6e 20 62 65 20 61 20 6c 69 73 74 20 6f 72 urn.value..ARGS.can.be.a.list.or
6c20 20 61 6e 20 61 6c 69 73 74 20 6f 66 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 73 20 6f 72 .an.alist.of.deferred.objects.or
6c40 0a 66 75 6e 63 74 69 6f 6e 73 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 6d 65 73 73 61 67 65 .functions."...(deferred:message
6c60 20 22 45 41 52 4c 49 45 52 20 3a 20 25 73 22 20 61 72 67 73 29 0a 20 20 28 64 65 66 65 72 72 65 ."EARLIER.:.%s".args)...(deferre
6c80 64 3a 74 72 61 6e 73 2d 6d 75 6c 74 69 2d 61 72 67 73 20 61 72 67 73 0a 20 20 20 20 27 64 65 66 d:trans-multi-args.args.....'def
6ca0 65 72 72 65 64 3a 65 61 72 6c 69 65 72 20 27 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 2d erred:earlier.'deferred:earlier-
6cc0 6c 69 73 74 20 27 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 2d 6d 61 69 6e 29 29 0a 0a 28 list.'deferred:earlier-main))..(
6ce0 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a 74 69 6d 65 6f 75 74 20 28 74 69 6d 65 6f defmacro.deferred:timeout.(timeo
6d00 75 74 2d 6d 73 65 63 20 74 69 6d 65 6f 75 74 2d 66 6f 72 6d 20 64 29 0a 20 20 22 54 69 6d 65 20 ut-msec.timeout-form.d)..."Time.
6d20 6f 75 74 20 6d 61 63 72 6f 20 6f 6e 20 61 20 64 65 66 65 72 72 65 64 20 74 61 73 6b 20 44 2e 20 out.macro.on.a.deferred.task.D..
6d40 20 49 66 20 74 68 65 20 64 65 66 65 72 72 65 64 20 74 61 73 6b 20 44 0a 64 6f 65 73 20 6e 6f 74 .If.the.deferred.task.D.does.not
6d60 20 63 6f 6d 70 6c 65 74 65 20 77 69 74 68 69 6e 20 54 49 4d 45 4f 55 54 2d 4d 53 45 43 2c 20 74 .complete.within.TIMEOUT-MSEC,.t
6d80 68 69 73 20 6d 61 63 72 6f 20 63 61 6e 63 65 6c 73 20 74 68 65 0a 64 65 66 65 72 72 65 64 20 74 his.macro.cancels.the.deferred.t
6da0 61 73 6b 20 61 6e 64 20 72 65 74 75 72 6e 20 74 68 65 20 54 49 4d 45 4f 55 54 2d 46 4f 52 4d 2e ask.and.return.the.TIMEOUT-FORM.
6dc0 22 0a 20 20 60 28 64 65 66 65 72 72 65 64 3a 65 61 72 6c 69 65 72 0a 20 20 20 20 20 28 64 65 66 "...`(deferred:earlier......(def
6de0 65 72 72 65 64 3a 6e 65 78 74 63 20 28 64 65 66 65 72 72 65 64 3a 77 61 69 74 20 2c 74 69 6d 65 erred:nextc.(deferred:wait.,time
6e00 6f 75 74 2d 6d 73 65 63 29 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 20 2c 74 69 out-msec)........(lambda.(x).,ti
6e20 6d 65 6f 75 74 2d 66 6f 72 6d 29 29 0a 20 20 20 20 20 2c 64 29 29 0a 0a 0c 0a 0a 3b 3b 3b 3b 3b meout-form))......,d)).....;;;;;
6e40 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6e60 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 0a 3b 3b 20 41 70 70 6c 69 63 61 74 69 6f 6e 20 66 ;;;;;;;;;;;;;;;.;;.Application.f
6e80 75 6e 63 74 69 6f 6e 73 0a 0a 28 64 65 66 76 61 72 20 64 65 66 65 72 72 65 64 3a 75 69 64 20 30 unctions..(defvar.deferred:uid.0
6ea0 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 53 65 71 75 65 6e 63 65 20 6e 75 6d 62 65 72 20 66 6f 72 ."[internal].Sequence.number.for
6ec0 20 73 6f 6d 65 20 75 74 69 6c 69 74 69 65 73 2e 20 53 65 65 20 74 68 65 20 66 75 6e 63 74 69 6f .some.utilities..See.the.functio
6ee0 6e 20 60 64 65 66 65 72 72 65 64 3a 75 69 64 27 2e 22 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 n.`deferred:uid'.")..(defun.defe
6f00 72 72 65 64 3a 75 69 64 20 28 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 47 65 6e 65 72 61 rred:uid.()..."[internal].Genera
6f20 74 65 20 61 20 73 65 71 75 65 6e 63 65 20 6e 75 6d 62 65 72 2e 22 0a 20 20 28 63 6c 2d 69 6e 63 te.a.sequence.number."...(cl-inc
6f40 66 20 64 65 66 65 72 72 65 64 3a 75 69 64 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 f.deferred:uid))..(defun.deferre
6f60 64 3a 62 75 66 66 65 72 2d 73 74 72 69 6e 67 20 28 73 74 72 66 6f 72 6d 61 74 20 62 75 66 29 0a d:buffer-string.(strformat.buf).
6f80 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 52 65 74 75 72 6e 20 61 20 73 74 72 69 6e 67 20 69 6e .."[internal].Return.a.string.in
6fa0 20 74 68 65 20 62 75 66 66 65 72 20 77 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 66 6f 72 6d 61 .the.buffer.with.the.given.forma
6fc0 74 2e 22 0a 20 20 28 66 6f 72 6d 61 74 20 73 74 72 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20 20 t."...(format.strformat.........
6fe0 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 20 28 62 75 66 66 ..(with-current-buffer.buf.(buff
7000 65 72 2d 73 74 72 69 6e 67 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 er-string))))..(defun.deferred:p
7020 72 6f 63 65 73 73 20 28 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 41 rocess.(command.&rest.args)..."A
7040 20 64 65 66 65 72 72 65 64 20 77 72 61 70 70 65 72 20 6f 66 20 60 73 74 61 72 74 2d 70 72 6f 63 .deferred.wrapper.of.`start-proc
7060 65 73 73 27 2e 20 52 65 74 75 72 6e 20 61 20 64 65 66 65 72 72 65 64 0a 6f 62 6a 65 63 74 2e 20 ess'..Return.a.deferred.object..
7080 54 68 65 20 70 72 6f 63 65 73 73 20 6e 61 6d 65 20 61 6e 64 20 62 75 66 66 65 72 20 6e 61 6d 65 The.process.name.and.buffer.name
70a0 20 6f 66 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 6f 66 20 74 68 65 0a 60 73 74 61 72 74 2d 70 .of.the.argument.of.the.`start-p
70c0 72 6f 63 65 73 73 27 20 61 72 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 69 73 20 66 75 rocess'.are.generated.by.this.fu
70e0 6e 63 74 69 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 54 68 65 20 6e 65 78 74 20 64 nction.automatically..The.next.d
7100 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 73 74 64 6f 75 74 20 61 eferred.object.receives.stdout.a
7120 6e 64 20 73 74 64 65 72 72 20 73 74 72 69 6e 67 20 66 72 6f 6d 0a 74 68 65 20 63 6f 6d 6d 61 6e nd.stderr.string.from.the.comman
7140 64 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d d.process."...(deferred:process-
7160 67 65 6e 20 27 73 74 61 72 74 2d 70 72 6f 63 65 73 73 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 gen.'start-process.command.args)
7180 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 73 68 65 6c 6c )..(defun.deferred:process-shell
71a0 20 28 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 41 20 64 65 66 65 72 .(command.&rest.args)..."A.defer
71c0 72 65 64 20 77 72 61 70 70 65 72 20 6f 66 20 60 73 74 61 72 74 2d 70 72 6f 63 65 73 73 2d 73 68 red.wrapper.of.`start-process-sh
71e0 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 27 2e 20 52 65 74 75 72 6e 20 61 20 64 65 66 65 72 72 65 64 0a ell-command'..Return.a.deferred.
7200 6f 62 6a 65 63 74 2e 20 54 68 65 20 70 72 6f 63 65 73 73 20 6e 61 6d 65 20 61 6e 64 20 62 75 66 object..The.process.name.and.buf
7220 66 65 72 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 6f 66 20 74 68 65 0a fer.name.of.the.argument.of.the.
7240 60 73 74 61 72 74 2d 70 72 6f 63 65 73 73 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 27 20 61 72 `start-process-shell-command'.ar
7260 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 e.generated.by.this.function.aut
7280 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 54 68 65 20 6e 65 78 74 20 64 65 66 65 72 72 65 64 20 6f 62 omatically..The.next.deferred.ob
72a0 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64 65 72 72 20 ject.receives.stdout.and.stderr.
72c0 73 74 72 69 6e 67 20 66 72 6f 6d 0a 74 68 65 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 73 73 2e string.from.the.command.process.
72e0 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 67 65 6e 20 27 73 74 61 72 74 "...(deferred:process-gen.'start
7300 2d 70 72 6f 63 65 73 73 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 20 63 6f 6d 6d 61 6e 64 20 61 -process-shell-command.command.a
7320 72 67 73 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 62 rgs))..(defun.deferred:process-b
7340 75 66 66 65 72 20 28 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 41 20 uffer.(command.&rest.args)..."A.
7360 64 65 66 65 72 72 65 64 20 77 72 61 70 70 65 72 20 6f 66 20 60 73 74 61 72 74 2d 70 72 6f 63 65 deferred.wrapper.of.`start-proce
7380 73 73 27 2e 20 52 65 74 75 72 6e 20 61 20 64 65 66 65 72 72 65 64 0a 6f 62 6a 65 63 74 2e 20 54 ss'..Return.a.deferred.object..T
73a0 68 65 20 70 72 6f 63 65 73 73 20 6e 61 6d 65 20 61 6e 64 20 62 75 66 66 65 72 20 6e 61 6d 65 20 he.process.name.and.buffer.name.
73c0 6f 66 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 6f 66 20 74 68 65 0a 60 73 74 61 72 74 2d 70 72 of.the.argument.of.the.`start-pr
73e0 6f 63 65 73 73 27 20 61 72 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 69 73 20 66 75 6e ocess'.are.generated.by.this.fun
7400 63 74 69 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 54 68 65 20 6e 65 78 74 20 64 65 ction.automatically..The.next.de
7420 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 73 74 64 6f 75 74 20 61 6e ferred.object.receives.stdout.an
7440 64 20 73 74 64 65 72 72 20 62 75 66 66 65 72 20 66 72 6f 6d 0a 74 68 65 20 63 6f 6d 6d 61 6e 64 d.stderr.buffer.from.the.command
7460 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 62 .process."...(deferred:process-b
7480 75 66 66 65 72 2d 67 65 6e 20 27 73 74 61 72 74 2d 70 72 6f 63 65 73 73 20 63 6f 6d 6d 61 6e 64 uffer-gen.'start-process.command
74a0 20 61 72 67 73 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 .args))..(defun.deferred:process
74c0 2d 73 68 65 6c 6c 2d 62 75 66 66 65 72 20 28 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 -shell-buffer.(command.&rest.arg
74e0 73 29 0a 20 20 22 41 20 64 65 66 65 72 72 65 64 20 77 72 61 70 70 65 72 20 6f 66 20 60 73 74 61 s)..."A.deferred.wrapper.of.`sta
7500 72 74 2d 70 72 6f 63 65 73 73 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 27 2e 20 52 65 74 75 72 rt-process-shell-command'..Retur
7520 6e 20 61 20 64 65 66 65 72 72 65 64 0a 6f 62 6a 65 63 74 2e 20 54 68 65 20 70 72 6f 63 65 73 73 n.a.deferred.object..The.process
7540 20 6e 61 6d 65 20 61 6e 64 20 62 75 66 66 65 72 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 61 72 67 .name.and.buffer.name.of.the.arg
7560 75 6d 65 6e 74 20 6f 66 20 74 68 65 0a 60 73 74 61 72 74 2d 70 72 6f 63 65 73 73 2d 73 68 65 6c ument.of.the.`start-process-shel
7580 6c 2d 63 6f 6d 6d 61 6e 64 27 20 61 72 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 69 73 l-command'.are.generated.by.this
75a0 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 54 68 65 20 6e 65 78 .function.automatically..The.nex
75c0 74 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 73 74 64 6f 75 t.deferred.object.receives.stdou
75e0 74 20 61 6e 64 20 73 74 64 65 72 72 20 62 75 66 66 65 72 20 66 72 6f 6d 0a 74 68 65 20 63 6f 6d t.and.stderr.buffer.from.the.com
7600 6d 61 6e 64 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 mand.process."...(deferred:proce
7620 73 73 2d 62 75 66 66 65 72 2d 67 65 6e 20 27 73 74 61 72 74 2d 70 72 6f 63 65 73 73 2d 73 68 65 ss-buffer-gen.'start-process-she
7640 6c 6c 2d 63 6f 6d 6d 61 6e 64 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 29 0a 0a 28 64 65 66 75 ll-command.command.args))..(defu
7660 6e 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 67 65 6e 20 28 66 20 63 6f 6d 6d 61 6e n.deferred:process-gen.(f.comman
7680 64 20 61 72 67 73 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 22 0a 20 20 28 6c 65 74 20 28 28 d.args)..."[internal]"...(let.((
76a0 70 64 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 2d 67 65 6e 20 pd.(deferred:process-buffer-gen.
76c0 66 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 29 20 64 29 0a 20 20 20 20 28 73 65 74 71 20 64 20 f.command.args)).d).....(setq.d.
76e0 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 70 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (deferred:nextc.pd..............
7700 20 28 6c 61 6d 62 64 61 20 28 62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .(lambda.(buf).................(
7720 70 72 6f 67 31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d prog1.....................(with-
7740 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e current-buffer.buf.(buffer-strin
7760 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 g))...................(kill-buff
7780 65 72 20 62 75 66 29 29 29 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d er.buf))))).....(setf.(deferred-
77a0 63 61 6e 63 65 6c 20 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 78 29 cancel.d)...........(lambda.(_x)
77c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 .............(deferred:default-c
77e0 61 6e 63 65 6c 20 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 64 ancel.d).............(deferred:d
7800 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c 20 70 64 29 29 29 0a 20 20 20 20 64 29 29 0a 0a 28 64 65 efault-cancel.pd))).....d))..(de
7820 66 75 6e 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 2d 67 65 6e 20 fun.deferred:process-buffer-gen.
7840 28 66 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 0a 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 22 0a (f.command.args)..."[internal]".
7860 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 29 29 20 28 75 69 64 ..(let.((d.(deferred:next)).(uid
7880 20 28 64 65 66 65 72 72 65 64 3a 75 69 64 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 70 72 6f .(deferred:uid))).....(let.((pro
78a0 63 2d 6e 61 6d 65 20 28 66 6f 72 6d 61 74 20 22 2a 64 65 66 65 72 72 65 64 3a 2a 25 73 2a 3a 25 c-name.(format."*deferred:*%s*:%
78c0 73 22 20 63 6f 6d 6d 61 6e 64 20 75 69 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 62 75 66 2d s".command.uid))...........(buf-
78e0 6e 61 6d 65 20 28 66 6f 72 6d 61 74 20 22 20 2a 64 65 66 65 72 72 65 64 3a 2a 25 73 2a 3a 25 73 name.(format.".*deferred:*%s*:%s
7900 22 20 63 6f 6d 6d 61 6e 64 20 75 69 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 77 64 20 64 ".command.uid))...........(pwd.d
7920 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 28 65 6e 76 efault-directory)...........(env
7940 20 70 72 6f 63 65 73 73 2d 65 6e 76 69 72 6f 6e 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 .process-environment)...........
7960 28 63 6f 6e 2d 74 79 70 65 20 70 72 6f 63 65 73 73 2d 63 6f 6e 6e 65 63 74 69 6f 6e 2d 74 79 70 (con-type.process-connection-typ
7980 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 6e 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 77 29 29 e)...........(nd.(deferred:new))
79a0 20 70 72 6f 63 2d 62 75 66 20 70 72 6f 63 29 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a .proc-buf.proc).......(deferred:
79c0 6e 65 78 74 63 20 64 0a 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 78 29 0a 20 20 20 nextc.d.........(lambda.(_x)....
79e0 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 63 2d 62 75 66 20 28 67 65 74 2d 62 75 66 66 65 .......(setq.proc-buf.(get-buffe
7a00 72 2d 63 72 65 61 74 65 20 62 75 66 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 r-create.buf-name))...........(c
7a20 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ondition-case.err...............
7a40 28 6c 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 70 77 64 29 0a 20 20 (let.((default-directory.pwd)...
7a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 65 6e 76 69 72 ..................(process-envir
7a80 6f 6e 6d 65 6e 74 20 65 6e 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onment.env).....................
7aa0 28 70 72 6f 63 65 73 73 2d 63 6f 6e 6e 65 63 74 69 6f 6e 2d 74 79 70 65 20 63 6f 6e 2d 74 79 70 (process-connection-type.con-typ
7ac0 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 63 0a 20 e)).................(setq.proc..
7ae0 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 6e 75 6c 6c 20 28 .....................(if.(null.(
7b00 63 61 72 20 61 72 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 car.args))......................
7b20 20 20 20 20 20 28 61 70 70 6c 79 20 66 20 70 72 6f 63 2d 6e 61 6d 65 20 62 75 66 2d 6e 61 6d 65 .....(apply.f.proc-name.buf-name
7b40 20 63 6f 6d 6d 61 6e 64 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .command.nil)...................
7b60 20 20 20 20 20 20 28 61 70 70 6c 79 20 66 20 70 72 6f 63 2d 6e 61 6d 65 20 62 75 66 2d 6e 61 6d ......(apply.f.proc-name.buf-nam
7b80 65 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.command.args)))...............
7ba0 20 20 28 73 65 74 2d 70 72 6f 63 65 73 73 2d 73 65 6e 74 69 6e 65 6c 0a 20 20 20 20 20 20 20 20 ..(set-process-sentinel.........
7bc0 20 20 20 20 20 20 20 20 20 70 72 6f 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .........proc..................(
7be0 6c 61 6d 62 64 61 20 28 70 72 6f 63 20 65 76 65 6e 74 29 0a 09 09 20 20 20 28 75 6e 6c 65 73 73 lambda.(proc.event)......(unless
7c00 20 28 70 72 6f 63 65 73 73 2d 6c 69 76 65 2d 70 20 70 72 6f 63 29 0a 09 09 20 20 20 20 20 28 69 .(process-live-p.proc)........(i
7c20 66 20 28 7a 65 72 6f 70 20 28 70 72 6f 63 65 73 73 2d 65 78 69 74 2d 73 74 61 74 75 73 20 70 72 f.(zerop.(process-exit-status.pr
7c40 6f 63 29 29 0a 09 09 09 20 28 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 6e 64 20 oc)).....(deferred:post-task.nd.
7c60 27 6f 6b 20 70 72 6f 63 2d 62 75 66 29 0a 09 09 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 73 'ok.proc-buf)..........(let.((ms
7c80 67 20 28 66 6f 72 6d 61 74 20 22 44 65 66 65 72 72 65 64 20 70 72 6f 63 65 73 73 20 65 78 69 74 g.(format."Deferred.process.exit
7ca0 65 64 20 61 62 6e 6f 72 6d 61 6c 6c 79 3a 5c 6e 20 20 63 6f 6d 6d 61 6e 64 3a 20 25 73 5c 6e 20 ed.abnormally:\n..command:.%s\n.
7cc0 20 65 78 69 74 20 73 74 61 74 75 73 3a 20 25 73 20 25 73 5c 6e 20 20 65 76 65 6e 74 3a 20 25 73 .exit.status:.%s.%s\n..event:.%s
7ce0 5c 6e 20 20 62 75 66 66 65 72 20 63 6f 6e 74 65 6e 74 73 3a 20 25 53 22 0a 09 09 09 09 09 20 20 \n..buffer.contents:.%S"........
7d00 63 6f 6d 6d 61 6e 64 0a 09 09 09 09 09 20 20 28 70 72 6f 63 65 73 73 2d 73 74 61 74 75 73 20 70 command........(process-status.p
7d20 72 6f 63 29 0a 09 09 09 09 09 20 20 28 70 72 6f 63 65 73 73 2d 65 78 69 74 2d 73 74 61 74 75 73 roc)........(process-exit-status
7d40 20 70 72 6f 63 29 0a 09 09 09 09 09 20 20 28 73 74 72 69 6e 67 2d 74 72 69 6d 2d 72 69 67 68 74 .proc)........(string-trim-right
7d60 20 65 76 65 6e 74 29 0a 09 09 09 09 09 20 20 28 69 66 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d .event)........(if.(buffer-live-
7d80 70 20 70 72 6f 63 2d 62 75 66 29 0a 09 09 09 09 09 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 p.proc-buf)............(with-cur
7da0 72 65 6e 74 2d 62 75 66 66 65 72 20 70 72 6f 63 2d 62 75 66 0a 09 09 09 09 09 09 28 62 75 66 66 rent-buffer.proc-buf.......(buff
7dc0 65 72 2d 73 74 72 69 6e 67 29 29 0a 09 09 09 09 09 20 20 20 20 22 28 75 6e 61 76 61 69 6c 61 62 er-string)).........."(unavailab
7de0 6c 65 29 22 29 29 29 29 0a 09 09 09 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 70 72 6f 63 2d 62 le)")))).....(kill-buffer.proc-b
7e00 75 66 29 0a 09 09 09 20 28 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 6e 64 20 27 uf).....(deferred:post-task.nd.'
7e20 6e 67 20 6d 73 67 29 29 29 29 29 29 0a 09 09 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 63 ng.msg))))))...(setf.(deferred-c
7e40 61 6e 63 65 6c 20 6e 64 29 0a 09 09 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 64 ancel.nd).........(lambda.(x).(d
7e60 65 66 65 72 72 65 64 3a 64 65 66 61 75 6c 74 2d 63 61 6e 63 65 6c 20 78 29 0a 09 09 09 28 77 68 eferred:default-cancel.x)....(wh
7e80 65 6e 20 70 72 6f 63 0a 09 09 09 20 20 28 6b 69 6c 6c 2d 70 72 6f 63 65 73 73 20 70 72 6f 63 29 en.proc......(kill-process.proc)
7ea0 0a 09 09 09 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 70 72 6f 63 2d 62 75 66 29 29 29 29 29 ......(kill-buffer.proc-buf)))))
7ec0 0a 09 20 20 20 20 28 65 72 72 6f 72 20 28 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b ......(error.(deferred:post-task
7ee0 20 6e 64 20 27 6e 67 20 65 72 72 29 29 29 0a 09 20 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 6e 64 .nd.'ng.err)))....nil)).......nd
7f00 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 63 )))..(defmacro.deferred:processc
7f20 20 28 64 20 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 50 72 6f 63 65 .(d.command.&rest.args)..."Proce
7f40 73 73 20 63 68 61 69 6e 20 6f 66 20 60 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 27 2e 22 ss.chain.of.`deferred:process'."
7f60 0a 20 20 60 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 2c 64 0a 20 20 20 20 28 6c 61 6d 62 ...`(deferred:nextc.,d.....(lamb
7f80 64 61 20 28 2c 28 63 6c 2d 67 65 6e 73 79 6d 29 29 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 da.(,(cl-gensym)).(deferred:proc
7fa0 65 73 73 20 2c 63 6f 6d 6d 61 6e 64 20 2c 40 61 72 67 73 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 ess.,command.,@args))))..(defmac
7fc0 72 6f 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 63 20 28 64 20 63 ro.deferred:process-bufferc.(d.c
7fe0 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 50 72 6f 63 65 73 73 20 63 68 ommand.&rest.args)..."Process.ch
8000 61 69 6e 20 6f 66 20 60 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 27 ain.of.`deferred:process-buffer'
8020 2e 22 0a 20 20 60 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 2c 64 0a 20 20 20 20 20 28 6c ."...`(deferred:nextc.,d......(l
8040 61 6d 62 64 61 20 28 2c 28 63 6c 2d 67 65 6e 73 79 6d 29 29 20 28 64 65 66 65 72 72 65 64 3a 70 ambda.(,(cl-gensym)).(deferred:p
8060 72 6f 63 65 73 73 2d 62 75 66 66 65 72 20 2c 63 6f 6d 6d 61 6e 64 20 2c 40 61 72 67 73 29 29 29 rocess-buffer.,command.,@args)))
8080 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 73 68 )..(defmacro.deferred:process-sh
80a0 65 6c 6c 63 20 28 64 20 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 50 ellc.(d.command.&rest.args)..."P
80c0 72 6f 63 65 73 73 20 63 68 61 69 6e 20 6f 66 20 60 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 rocess.chain.of.`deferred:proces
80e0 73 27 2e 22 0a 20 20 60 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 2c 64 0a 20 20 20 20 28 s'."...`(deferred:nextc.,d.....(
8100 6c 61 6d 62 64 61 20 28 2c 28 63 6c 2d 67 65 6e 73 79 6d 29 29 20 28 64 65 66 65 72 72 65 64 3a lambda.(,(cl-gensym)).(deferred:
8120 70 72 6f 63 65 73 73 2d 73 68 65 6c 6c 20 2c 63 6f 6d 6d 61 6e 64 20 2c 40 61 72 67 73 29 29 29 process-shell.,command.,@args)))
8140 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 73 68 )..(defmacro.deferred:process-sh
8160 65 6c 6c 2d 62 75 66 66 65 72 63 20 28 64 20 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 ell-bufferc.(d.command.&rest.arg
8180 73 29 0a 20 20 22 50 72 6f 63 65 73 73 20 63 68 61 69 6e 20 6f 66 20 60 64 65 66 65 72 72 65 64 s)..."Process.chain.of.`deferred
81a0 3a 70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 27 2e 22 0a 20 20 60 28 64 65 66 65 72 72 65 64 3a :process-buffer'."...`(deferred:
81c0 6e 65 78 74 63 20 2c 64 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 2c 28 63 6c 2d 67 65 6e 73 nextc.,d......(lambda.(,(cl-gens
81e0 79 6d 29 29 20 28 64 65 66 65 72 72 65 64 3a 70 72 6f 63 65 73 73 2d 73 68 65 6c 6c 2d 62 75 66 ym)).(deferred:process-shell-buf
8200 66 65 72 20 2c 63 6f 6d 6d 61 6e 64 20 2c 40 61 72 67 73 29 29 29 29 0a 0a 3b 3b 20 53 70 65 63 fer.,command.,@args))))..;;.Spec
8220 69 61 6c 20 76 61 72 69 61 62 6c 65 73 20 64 65 66 69 6e 65 64 20 69 6e 20 75 72 6c 2d 76 61 72 ial.variables.defined.in.url-var
8240 73 2e 65 6c 2e 0a 28 64 65 66 76 61 72 20 75 72 6c 2d 72 65 71 75 65 73 74 2d 64 61 74 61 29 0a s.el..(defvar.url-request-data).
8260 28 64 65 66 76 61 72 20 75 72 6c 2d 72 65 71 75 65 73 74 2d 6d 65 74 68 6f 64 29 0a 28 64 65 66 (defvar.url-request-method).(def
8280 76 61 72 20 75 72 6c 2d 72 65 71 75 65 73 74 2d 65 78 74 72 61 2d 68 65 61 64 65 72 73 29 0a 0a var.url-request-extra-headers)..
82a0 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 75 72 6c 2d 68 74 74 70 2d 73 79 6d 62 6f (declare-function.url-http-symbo
82c0 6c 2d 76 61 6c 75 65 2d 69 6e 2d 62 75 66 66 65 72 20 22 75 72 6c 2d 68 74 74 70 22 0a 20 20 20 l-value-in-buffer."url-http"....
82e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 20 62 75 66 66 65 72 20 26 6f ...............(symbol.buffer.&o
8300 70 74 69 6f 6e 61 6c 20 75 6e 62 6f 75 6e 64 2d 76 61 6c 75 65 29 29 0a 0a 28 64 65 63 6c 61 72 ptional.unbound-value))..(declar
8320 65 2d 66 75 6e 63 74 69 6f 6e 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 70 61 72 61 6d 2d 73 65 e-function.deferred:url-param-se
8340 72 69 61 6c 69 7a 65 20 22 72 65 71 75 65 73 74 22 20 28 70 61 72 61 6d 73 29 29 0a 0a 28 64 65 rialize."request".(params))..(de
8360 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 65 73 63 61 clare-function.deferred:url-esca
8380 70 65 20 22 72 65 71 75 65 73 74 22 20 28 76 61 6c 29 29 0a 0a 28 65 76 61 6c 2d 61 66 74 65 72 pe."request".(val))..(eval-after
83a0 2d 6c 6f 61 64 20 22 75 72 6c 22 0a 20 20 3b 3b 20 66 6f 72 20 75 72 6c 20 70 61 63 6b 61 67 65 -load."url"...;;.for.url.package
83c0 0a 20 20 3b 3b 20 54 4f 44 4f 3a 20 70 72 6f 78 79 2c 20 63 68 61 72 61 73 65 74 0a 20 20 3b 3b ...;;.TODO:.proxy,.charaset...;;
83e0 20 4c 69 73 74 20 6f 66 20 67 6c 6f 61 62 6c 20 76 61 72 69 61 62 6c 65 73 20 74 6f 20 70 72 65 .List.of.gloabl.variables.to.pre
8400 73 65 72 76 65 20 61 6e 64 20 72 65 73 74 6f 72 65 20 62 65 66 6f 72 65 20 75 72 6c 2d 72 65 74 serve.and.restore.before.url-ret
8420 72 69 65 76 65 20 63 61 6c 6c 0a 20 20 27 28 6c 65 74 20 28 28 75 72 6c 2d 67 6c 6f 62 61 6c 2d rieve.call...'(let.((url-global-
8440 76 61 72 69 61 62 6c 65 73 20 27 28 75 72 6c 2d 72 65 71 75 65 73 74 2d 64 61 74 61 0a 20 20 20 variables.'(url-request-data....
8460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 72 ..............................ur
8480 6c 2d 72 65 71 75 65 73 74 2d 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l-request-method................
84a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 72 6c 2d 72 65 71 75 65 73 74 2d 65 78 ..................url-request-ex
84c0 74 72 61 2d 68 65 61 64 65 72 73 29 29 29 0a 0a 20 20 20 20 20 28 64 65 66 75 6e 20 64 65 66 65 tra-headers))).......(defun.defe
84e0 72 72 65 64 3a 75 72 6c 2d 72 65 74 72 69 65 76 65 20 28 75 72 6c 20 26 6f 70 74 69 6f 6e 61 6c rred:url-retrieve.(url.&optional
8500 20 63 62 61 72 67 73 20 73 69 6c 65 6e 74 20 69 6e 68 69 62 69 74 2d 63 6f 6f 6b 69 65 73 29 0a .cbargs.silent.inhibit-cookies).
8520 20 20 20 20 20 20 20 22 41 20 77 72 61 70 70 65 72 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 75 ......."A.wrapper.function.for.u
8540 72 6c 2d 72 65 74 72 69 65 76 65 2e 20 54 68 65 20 6e 65 78 74 20 64 65 66 65 72 72 65 64 0a 6f rl-retrieve..The.next.deferred.o
8560 62 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 74 68 65 20 62 75 66 66 65 72 20 6f 62 6a 65 63 74 bject.receives.the.buffer.object
8580 20 74 68 61 74 20 55 52 4c 20 77 69 6c 6c 20 6c 6f 61 64 0a 69 6e 74 6f 2e 20 56 61 6c 75 65 73 .that.URL.will.load.into..Values
85a0 20 6f 66 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 62 6f 75 6e 64 20 27 75 72 6c 2d 72 65 71 75 65 .of.dynamically.bound.'url-reque
85c0 73 74 2d 64 61 74 61 27 2c 20 27 75 72 6c 2d 72 65 71 75 65 73 74 2d 6d 65 74 68 6f 64 27 20 61 st-data',.'url-request-method'.a
85e0 6e 64 0a 27 75 72 6c 2d 72 65 71 75 65 73 74 2d 65 78 74 72 61 2d 68 65 61 64 65 72 73 27 20 61 nd.'url-request-extra-headers'.a
8600 72 65 20 70 61 73 73 65 64 20 74 6f 20 75 72 6c 2d 72 65 74 72 69 65 76 65 20 63 61 6c 6c 2e 22 re.passed.to.url-retrieve.call."
8620 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 77 29 ........(let.((nd.(deferred:new)
8640 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............buf..............
8660 28 6c 6f 63 61 6c 2d 76 61 6c 75 65 73 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 73 (local-values.(mapcar.(lambda.(s
8680 79 6d 62 6f 6c 29 20 28 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 73 79 6d 62 6f 6c 29 29 20 75 72 ymbol).(symbol-value.symbol)).ur
86a0 6c 2d 67 6c 6f 62 61 6c 2d 76 61 72 69 61 62 6c 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 l-global-variables)))..........(
86c0 64 65 66 65 72 72 65 64 3a 6e 65 78 74 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 deferred:next............(lambda
86e0 20 28 5f 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 70 72 6f 67 76 20 75 72 6c .(_x)..............(cl-progv.url
8700 2d 67 6c 6f 62 61 6c 2d 76 61 72 69 61 62 6c 65 73 20 6c 6f 63 61 6c 2d 76 61 6c 75 65 73 0a 20 -global-variables.local-values..
8720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 ..............(condition-case.er
8740 72 0a 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 62 75 66 0a 20 r....................(setq.buf..
8760 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 72 6c 2d 72 65 74 ........................(url-ret
8780 72 69 65 76 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rieve...........................
87a0 75 72 6c 20 28 6c 61 6d 62 64 61 20 28 5f 78 78 29 20 28 64 65 66 65 72 72 65 64 3a 70 6f 73 74 url.(lambda.(_xx).(deferred:post
87c0 2d 74 61 73 6b 20 6e 64 20 27 6f 6b 20 62 75 66 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -task.nd.'ok.buf))..............
87e0 20 20 20 20 20 20 20 20 20 20 20 20 20 63 62 61 72 67 73 20 73 69 6c 65 6e 74 20 69 6e 68 69 62 .............cbargs.silent.inhib
8800 69 74 2d 63 6f 6f 6b 69 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 it-cookies))..................(e
8820 72 72 6f 72 20 28 64 65 66 65 72 72 65 64 3a 70 6f 73 74 2d 74 61 73 6b 20 6e 64 20 27 6e 67 20 rror.(deferred:post-task.nd.'ng.
8840 65 72 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 err)))..............nil)))......
8860 20 20 20 20 28 73 65 74 66 20 28 64 65 66 65 72 72 65 64 2d 63 61 6e 63 65 6c 20 6e 64 29 0a 20 ....(setf.(deferred-cancel.nd)..
8880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 78 29 0a 20 20 20 20 20 ..............(lambda.(_x)......
88a0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d 70 ............(when.(buffer-live-p
88c0 20 62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 .buf)....................(kill-b
88e0 75 66 66 65 72 20 62 75 66 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 6e 64 29 29 0a 0a 20 20 20 uffer.buf))))..........nd)).....
8900 20 20 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 64 65 6c 65 74 65 2d 68 65 61 ..(defun.deferred:url-delete-hea
8920 64 65 72 20 28 62 75 66 29 0a 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 der.(buf)........(with-current-b
8940 75 66 66 65 72 20 62 75 66 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 6f 73 20 28 75 uffer.buf..........(let.((pos.(u
8960 72 6c 2d 68 74 74 70 2d 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 2d 69 6e 2d 62 75 66 66 65 72 0a 20 rl-http-symbol-value-in-buffer..
8980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 75 72 6c 2d 68 74 74 70 2d 65 6e ....................'url-http-en
89a0 64 2d 6f 66 2d 68 65 61 64 65 72 73 20 62 75 66 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 d-of-headers.buf)))............(
89c0 77 68 65 6e 20 70 6f 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 when.pos..............(delete-re
89e0 67 69 6f 6e 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 31 2b 20 70 6f 73 29 29 29 29 29 0a 20 20 gion.(point-min).(1+.pos)))))...
8a00 20 20 20 20 20 62 75 66 29 0a 0a 20 20 20 20 20 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a .....buf).......(defun.deferred:
8a20 75 72 6c 2d 64 65 6c 65 74 65 2d 62 75 66 66 65 72 20 28 62 75 66 29 0a 20 20 20 20 20 20 20 28 url-delete-buffer.(buf)........(
8a40 77 68 65 6e 20 28 61 6e 64 20 62 75 66 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d 70 20 62 75 66 when.(and.buf.(buffer-live-p.buf
8a60 29 29 0a 20 20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 62 75 66 29 29 0a 20 ))..........(kill-buffer.buf))..
8a80 20 20 20 20 20 20 6e 69 6c 29 0a 0a 20 20 20 20 20 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 ......nil).......(defun.deferred
8aa0 3a 75 72 6c 2d 67 65 74 20 28 75 72 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 70 61 72 61 6d 73 20 26 :url-get.(url.&optional.params.&
8ac0 72 65 73 74 20 61 72 67 73 29 0a 20 20 20 20 20 20 20 22 50 65 72 66 6f 72 6d 20 61 20 48 54 54 rest.args)........"Perform.a.HTT
8ae0 50 20 47 45 54 20 6d 65 74 68 6f 64 20 77 69 74 68 20 60 75 72 6c 2d 72 65 74 72 69 65 76 65 27 P.GET.method.with.`url-retrieve'
8b00 2e 20 50 41 52 41 4d 53 20 69 73 0a 61 20 70 61 72 61 6d 65 74 65 72 20 6c 69 73 74 20 6f 66 20 ..PARAMS.is.a.parameter.list.of.
8b20 28 6b 65 79 20 2e 20 76 61 6c 75 65 29 20 6f 72 20 6b 65 79 2e 20 41 52 47 53 20 77 69 6c 6c 20 (key...value).or.key..ARGS.will.
8b40 62 65 20 61 70 70 65 6e 64 65 64 0a 74 6f 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 72 65 74 72 be.appended.to.deferred:url-retr
8b60 69 65 76 65 20 61 72 67 73 20 6c 69 73 74 2e 20 54 68 65 20 6e 65 78 74 20 64 65 66 65 72 72 65 ieve.args.list..The.next.deferre
8b80 64 0a 6f 62 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 74 68 65 20 62 75 66 66 65 72 20 6f 62 6a d.object.receives.the.buffer.obj
8ba0 65 63 74 20 74 68 61 74 20 55 52 4c 20 77 69 6c 6c 20 6c 6f 61 64 20 69 6e 74 6f 2e 22 0a 20 20 ect.that.URL.will.load.into."...
8bc0 20 20 20 20 20 28 77 68 65 6e 20 70 61 72 61 6d 73 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 .....(when.params..........(setq
8be0 20 75 72 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 75 72 6c 20 .url................(concat.url.
8c00 22 3f 22 20 28 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 70 61 72 61 6d 2d 73 65 72 69 61 6c 69 7a "?".(deferred:url-param-serializ
8c20 65 20 70 61 72 61 6d 73 29 29 29 29 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 e.params))))........(let.((d.(de
8c40 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c ferred:$...................(appl
8c60 79 20 27 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 72 65 74 72 69 65 76 65 20 75 72 6c 20 61 72 67 y.'deferred:url-retrieve.url.arg
8c80 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e s)...................(deferred:n
8ca0 65 78 74 63 20 69 74 20 27 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 64 65 6c 65 74 65 2d 68 65 61 extc.it.'deferred:url-delete-hea
8cc0 64 65 72 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 65 74 2d 6e der))))..........(deferred:set-n
8ce0 65 78 74 0a 20 20 20 20 20 20 20 20 20 20 20 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 77 20 27 ext............d.(deferred:new.'
8d00 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 64 65 6c 65 74 65 2d 62 75 66 66 65 72 29 29 0a 20 20 20 deferred:url-delete-buffer))....
8d20 20 20 20 20 20 20 64 29 29 0a 0a 20 20 20 20 20 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a ......d)).......(defun.deferred:
8d40 75 72 6c 2d 70 6f 73 74 20 28 75 72 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 70 61 72 61 6d 73 20 26 url-post.(url.&optional.params.&
8d60 72 65 73 74 20 61 72 67 73 29 0a 20 20 20 20 20 20 20 22 50 65 72 66 6f 72 6d 20 61 20 48 54 54 rest.args)........"Perform.a.HTT
8d80 50 20 50 4f 53 54 20 6d 65 74 68 6f 64 20 77 69 74 68 20 60 75 72 6c 2d 72 65 74 72 69 65 76 65 P.POST.method.with.`url-retrieve
8da0 27 2e 20 50 41 52 41 4d 53 20 69 73 0a 61 20 70 61 72 61 6d 65 74 65 72 20 6c 69 73 74 20 6f 66 '..PARAMS.is.a.parameter.list.of
8dc0 20 28 6b 65 79 20 2e 20 76 61 6c 75 65 29 20 6f 72 20 6b 65 79 2e 20 41 52 47 53 20 77 69 6c 6c .(key...value).or.key..ARGS.will
8de0 20 62 65 20 61 70 70 65 6e 64 65 64 0a 74 6f 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 72 65 74 .be.appended.to.deferred:url-ret
8e00 72 69 65 76 65 20 61 72 67 73 20 6c 69 73 74 2e 20 54 68 65 20 6e 65 78 74 20 64 65 66 65 72 72 rieve.args.list..The.next.deferr
8e20 65 64 0a 6f 62 6a 65 63 74 20 72 65 63 65 69 76 65 73 20 74 68 65 20 62 75 66 66 65 72 20 6f 62 ed.object.receives.the.buffer.ob
8e40 6a 65 63 74 20 74 68 61 74 20 55 52 4c 20 77 69 6c 6c 20 6c 6f 61 64 20 69 6e 74 6f 2e 22 0a 20 ject.that.URL.will.load.into."..
8e60 20 20 20 20 20 20 28 6c 65 74 20 28 28 75 72 6c 2d 72 65 71 75 65 73 74 2d 6d 65 74 68 6f 64 20 ......(let.((url-request-method.
8e80 22 50 4f 53 54 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 72 6c 2d 72 65 71 75 65 73 "POST")..............(url-reques
8ea0 74 2d 65 78 74 72 61 2d 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 t-extra-headers...............(a
8ec0 70 70 65 6e 64 20 75 72 6c 2d 72 65 71 75 65 73 74 2d 65 78 74 72 61 2d 68 65 61 64 65 72 73 0a ppend.url-request-extra-headers.
8ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 28 22 43 6f 6e 74 65 6e ......................'(("Conten
8f00 74 2d 54 79 70 65 22 20 2e 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 2d 77 77 77 2d 66 6f 72 t-Type"..."application/x-www-for
8f20 6d 2d 75 72 6c 65 6e 63 6f 64 65 64 22 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 m-urlencoded"))))..............(
8f40 75 72 6c 2d 72 65 71 75 65 73 74 2d 64 61 74 61 20 28 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 70 url-request-data.(deferred:url-p
8f60 61 72 61 6d 2d 73 65 72 69 61 6c 69 7a 65 20 70 61 72 61 6d 73 29 29 29 0a 20 20 20 20 20 20 20 aram-serialize.params)))........
8f80 20 20 28 6c 65 74 20 28 28 64 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 ..(let.((d.(deferred:$..........
8fa0 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 27 64 65 66 65 72 72 65 64 3a 75 72 6c 2d ...........(apply.'deferred:url-
8fc0 72 65 74 72 69 65 76 65 20 75 72 6c 20 61 72 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 retrieve.url.args)..............
8fe0 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 20 27 64 65 66 65 72 .......(deferred:nextc.it.'defer
9000 72 65 64 3a 75 72 6c 2d 64 65 6c 65 74 65 2d 68 65 61 64 65 72 29 29 29 29 0a 20 20 20 20 20 20 red:url-delete-header)))).......
9020 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 65 74 2d 6e 65 78 74 0a 20 20 20 20 20 20 20 20 .....(deferred:set-next.........
9040 20 20 20 20 20 64 20 28 64 65 66 65 72 72 65 64 3a 6e 65 77 20 27 64 65 66 65 72 72 65 64 3a 75 .....d.(deferred:new.'deferred:u
9060 72 6c 2d 64 65 6c 65 74 65 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 64 29 rl-delete-buffer))............d)
9080 29 29 0a 0a 20 20 20 20 20 28 64 65 66 75 6e 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 65 73 63 )).......(defun.deferred:url-esc
90a0 61 70 65 20 28 76 61 6c 29 0a 20 20 20 20 20 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 52 65 74 ape.(val)........"[internal].Ret
90c0 75 72 6e 20 61 20 6e 65 77 20 73 74 72 69 6e 67 20 74 68 61 74 20 69 73 20 56 41 4c 20 55 52 49 urn.a.new.string.that.is.VAL.URI
90e0 2d 65 6e 63 6f 64 65 64 2e 22 0a 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 73 74 72 69 6e -encoded."........(unless.(strin
9100 67 70 20 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 61 6c 20 28 66 6f 72 6d gp.val)..........(setq.val.(form
9120 61 74 20 22 25 73 22 20 76 61 6c 29 29 29 0a 20 20 20 20 20 20 20 28 75 72 6c 2d 68 65 78 69 66 at."%s".val)))........(url-hexif
9140 79 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 28 65 6e 63 6f 64 65 2d 63 6f 64 69 6e 67 2d y-string.........(encode-coding-
9160 73 74 72 69 6e 67 20 76 61 6c 20 27 75 74 66 2d 38 29 29 29 0a 0a 20 20 20 20 20 28 64 65 66 75 string.val.'utf-8))).......(defu
9180 6e 20 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 70 61 72 61 6d 2d 73 65 72 69 61 6c 69 7a 65 20 28 n.deferred:url-param-serialize.(
91a0 70 61 72 61 6d 73 29 0a 20 20 20 20 20 20 20 22 5b 69 6e 74 65 72 6e 61 6c 5d 20 53 65 72 69 61 params)........"[internal].Seria
91c0 6c 69 7a 65 20 61 20 6c 69 73 74 20 6f 66 20 28 6b 65 79 20 2e 20 76 61 6c 75 65 29 20 63 6f 6e lize.a.list.of.(key...value).con
91e0 73 20 63 65 6c 6c 73 0a 69 6e 74 6f 20 61 20 71 75 65 72 79 20 73 74 72 69 6e 67 2e 22 0a 20 20 s.cells.into.a.query.string."...
9200 20 20 20 20 20 28 77 68 65 6e 20 70 61 72 61 6d 73 0a 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 .....(when.params..........(mapc
9220 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 20 20 27 69 64 65 6e 74 69 74 79 0a 20 20 20 20 20 20 oncat...........'identity.......
9240 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 70 20 69 6e 20 70 61 72 61 6d 73 0a 20 20 20 ....(cl-loop.for.p.in.params....
9260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 0a 20 20 20 20 20 20 20 20 ................collect.........
9280 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........(cond................
92a0 20 20 20 20 20 28 28 63 6f 6e 73 70 20 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....((consp.p).................
92c0 20 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(concat....................
92e0 20 20 20 28 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 65 73 63 61 70 65 20 28 63 61 72 20 70 29 29 ...(deferred:url-escape.(car.p))
9300 20 22 3d 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 ."=".......................(defe
9320 72 72 65 64 3a 75 72 6c 2d 65 73 63 61 70 65 20 28 63 64 72 20 70 29 29 29 29 0a 20 20 20 20 20 rred:url-escape.(cdr.p))))......
9340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............(t...............
9360 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 75 72 6c 2d 65 73 63 61 70 65 20 70 29 29 29 .......(deferred:url-escape.p)))
9380 29 0a 20 20 20 20 20 20 20 20 20 20 22 26 22 29 29 29 0a 20 20 20 20 20 29 29 0a 0a 0a 28 70 72 )..........."&")))......))...(pr
93a0 6f 76 69 64 65 20 27 64 65 66 65 72 72 65 64 29 0a 3b 3b 3b 20 64 65 66 65 72 72 65 64 2e 65 6c ovide.'deferred).;;;.deferred.el
93c0 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ends.here......................
93e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
98a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
98c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
98e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
99a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
99c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
99e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................