summaryrefslogtreecommitdiff
path: root/.localrepo/promise-20210307.727.tar
blob: fb92609f16a68bce3f3c1e4cc71f5a5ab1e46e6c (plain)
ofshex dumpascii
0000 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 00 00 00 00 00 00 00 00 00 00 00 promise-20210307.727/...........
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 34 30 35 00 20 35 00 00 00 0000000.00000000000.012405..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 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2d 63 6f 72 promise-20210307.727/promise-cor
0220 65 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 00 00 e.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 32 33 33 34 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 33 33 36 00 20 30 00 00 00 0023341.00000000000.015336..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 3b 20 70 72 6f 6d 69 73 65 2d 63 6f 72 65 2e 65 6c 20 2d 2d 2d 20 54 68 69 73 20 69 73 20 ;;;.promise-core.el.---.This.is.
0420 61 20 73 69 6d 70 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 50 72 6f 6d 69 a.simple.implementation.of.Promi
0440 73 65 73 2f 41 2b 2e 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 ses/A+...-*-.lexical-binding:.t;
0460 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d 32 30 31 37 .-*-..;;.Copyright.(C).2016-2017
0480 20 20 63 68 75 6e 74 61 72 6f 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 63 68 75 6e 74 61 72 6f 20 ..chuntaro..;;.Author:.chuntaro.
04a0 3c 63 68 75 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 61 6d 65 73 2e 6a 70 3e 0a 3b 3b 20 55 52 <chuntaro@sakura-games.jp>.;;.UR
04c0 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 68 75 6e 74 61 72 6f 2f 65 L:.https://github.com/chuntaro/e
04e0 6d 61 63 73 2d 70 72 6f 6d 69 73 65 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 61 73 79 6e 63 20 macs-promise.;;.Keywords:.async.
0500 70 72 6f 6d 69 73 65 20 63 6f 6e 76 65 6e 69 65 6e 63 65 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f promise.convenience..;;.This.pro
0520 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 gram.is.free.software;.you.can.r
0540 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 edistribute.it.and/or.modify.;;.
0560 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 it.under.the.terms.of.the.GNU.Ge
0580 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 neral.Public.License.as.publishe
05a0 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 d.by.;;.the.Free.Software.Founda
05c0 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 tion,.either.version.3.of.the.Li
05e0 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e cense,.or.;;.(at.your.option).an
0600 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 y.later.version...;;.This.progra
0620 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 m.is.distributed.in.the.hope.tha
0640 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 t.it.will.be.useful,.;;.but.WITH
0660 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 OUT.ANY.WARRANTY;.without.even.t
0680 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 he.implied.warranty.of.;;.MERCHA
06a0 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 NTABILITY.or.FITNESS.FOR.A.PARTI
06c0 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 CULAR.PURPOSE...See.the.;;.GNU.G
06e0 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 eneral.Public.License.for.more.d
0700 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 etails...;;.You.should.have.rece
0720 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 ived.a.copy.of.the.GNU.General.P
0740 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 ublic.License.;;.along.with.this
0760 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 .program...If.not,.see.<http://w
0780 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 20 54 68 65 20 6f ww.gnu.org/licenses/>...;;.The.o
07a0 72 69 67 69 6e 61 6c 20 4a 61 76 61 53 63 72 69 70 74 20 63 6f 64 65 20 69 73 3a 0a 3b 3b 0a 3b riginal.JavaScript.code.is:.;;.;
07c0 3b 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 34 20 46 6f 72 62 65 73 20 4c 69 6e 64 ;.Copyright.(c).2014.Forbes.Lind
07e0 65 73 61 79 0a 3b 3b 0a 3b 3b 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 esay.;;.;;.Permission.is.hereby.
0800 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 granted,.free.of.charge,.to.any.
0820 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b 20 6f 66 20 74 68 person.obtaining.a.copy.;;.of.th
0840 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 75 6d is.software.and.associated.docum
0860 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c entation.files.(the."Software"),
0880 20 74 6f 20 64 65 61 6c 0a 3b 3b 20 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 .to.deal.;;.in.the.Software.with
08a0 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f out.restriction,.including.witho
08c0 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b 3b 20 74 6f 20 75 ut.limitation.the.rights.;;.to.u
08e0 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 se,.copy,.modify,.merge,.publish
0900 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 ,.distribute,.sublicense,.and/or
0920 20 73 65 6c 6c 0a 3b 3b 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c .sell.;;.copies.of.the.Software,
0940 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 .and.to.permit.persons.to.whom.t
0960 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 he.Software.is.;;.furnished.to.d
0980 6f 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 o.so,.subject.to.the.following.c
09a0 6f 6e 64 69 74 69 6f 6e 73 3a 0a 3b 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 onditions:.;;.;;.The.above.copyr
09c0 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 ight.notice.and.this.permission.
09e0 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 0a 3b 3b 20 61 notice.shall.be.included.in.;;.a
0a00 6c 6c 20 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e ll.copies.or.substantial.portion
0a20 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 48 45 20 53 4f 46 s.of.the.Software..;;.;;.THE.SOF
0a40 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f TWARE.IS.PROVIDED."AS.IS",.WITHO
0a60 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 UT.WARRANTY.OF.ANY.KIND,.EXPRESS
0a80 20 4f 52 0a 3b 3b 20 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f .OR.;;.IMPLIED,.INCLUDING.BUT.NO
0aa0 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d T.LIMITED.TO.THE.WARRANTIES.OF.M
0ac0 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 ERCHANTABILITY,.;;.FITNESS.FOR.A
0ae0 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 .PARTICULAR.PURPOSE.AND.NONINFRI
0b00 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 0a 3b NGEMENT..IN.NO.EVENT.SHALL.THE.;
0b20 3b 20 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 ;.AUTHORS.OR.COPYRIGHT.HOLDERS.B
0b40 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 E.LIABLE.FOR.ANY.CLAIM,.DAMAGES.
0b60 4f 52 20 4f 54 48 45 52 0a 3b 3b 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 OR.OTHER.;;.LIABILITY,.WHETHER.I
0b80 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 N.AN.ACTION.OF.CONTRACT,.TORT.OR
0ba0 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 3b 3b 20 4f 55 54 .OTHERWISE,.ARISING.FROM,.;;.OUT
0bc0 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f .OF.OR.IN.CONNECTION.WITH.THE.SO
0be0 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 FTWARE.OR.THE.USE.OR.OTHER.DEALI
0c00 4e 47 53 20 49 4e 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 3b 3b 3b 20 43 6f 6d NGS.IN.;;.THE.SOFTWARE...;;;.Com
0c20 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e mentary:..;;.This.implementation
0c40 20 70 6f 72 74 65 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 50 72 6f 6d 69 73 65 73 2f 41 .ported.the.following.Promises/A
0c60 2b 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 61 69 74 68 66 75 6c 6c 79 2e 0a 3b 3b 20 +.implementation.faithfully..;;.
0c80 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 68 65 6e 2f 70 72 6f 6d 69 73 65 2f https://github.com/then/promise/
0ca0 62 6c 6f 62 2f 6d 61 73 74 65 72 2f 73 72 63 2f 63 6f 72 65 2e 6a 73 0a 3b 3b 0a 3b 3b 20 54 68 blob/master/src/core.js.;;.;;.Th
0cc0 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 63 6f 72 65 20 50 72 6f 6d 69 73 is.file.contains.the.core.Promis
0ce0 65 73 2f 41 2b 20 41 50 49 2e 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 66 6e 29 20 6f es/A+.API..;;.(promise-new.fn).o
0d00 72 20 28 6d 61 6b 65 2d 69 6e 73 74 61 6e 63 65 20 27 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 20 r.(make-instance.'promise-class.
0d20 3a 66 6e 20 66 6e 29 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 28 28 74 68 69 73 20 :fn.fn).;;.(promise-then.((this.
0d40 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 29 20 26 6f 70 74 69 6f 6e 61 6c 20 6f 6e 2d 66 75 6c 66 promise-class).&optional.on-fulf
0d60 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a illed.on-rejected))..;;;.Code:..
0d80 28 72 65 71 75 69 72 65 20 27 65 69 65 69 6f 29 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 (require.'eieio).(require.'cl-li
0da0 62 29 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 20 28 72 65 71 75 69 72 65 20 27 b).(eval-when-compile.(require.'
0dc0 73 75 62 72 2d 78 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 61 73 61 70 20 28 subr-x))..(defun.promise--asap.(
0de0 74 61 73 6b 29 0a 20 20 28 72 75 6e 2d 61 74 2d 74 69 6d 65 20 30 2e 30 30 31 20 6e 69 6c 20 74 task)...(run-at-time.0.001.nil.t
0e00 61 73 6b 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 74 79 70 65 2d 6f 66 20 28 ask))..(defun.promise--type-of.(
0e20 6f 62 6a 29 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 6e 6f 74 20 28 76 65 63 74 6f 72 70 20 6f obj)...(cond....((not.(vectorp.o
0e40 62 6a 29 29 0a 20 20 20 20 28 74 79 70 65 2d 6f 66 20 6f 62 6a 29 29 0a 20 20 20 28 28 63 6c 2d bj)).....(type-of.obj))....((cl-
0e60 73 74 72 75 63 74 2d 70 20 6f 62 6a 29 0a 20 20 20 20 3b 3b 20 43 6f 64 65 20 63 6f 70 69 65 64 struct-p.obj).....;;.Code.copied
0e80 20 66 72 6f 6d 20 60 63 6c 2d 2d 64 65 73 63 72 69 62 65 2d 63 6c 61 73 73 27 2e 0a 20 20 20 20 .from.`cl--describe-class'......
0ea0 28 63 6c 2d 2d 63 6c 61 73 73 2d 6e 61 6d 65 20 28 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 28 61 (cl--class-name.(symbol-value.(a
0ec0 72 65 66 20 6f 62 6a 20 30 29 29 29 29 0a 20 20 20 28 28 65 69 65 69 6f 2d 6f 62 6a 65 63 74 2d ref.obj.0))))....((eieio-object-
0ee0 70 20 6f 62 6a 29 0a 20 20 20 20 28 65 69 65 69 6f 2d 6f 62 6a 65 63 74 2d 63 6c 61 73 73 20 6f p.obj).....(eieio-object-class.o
0f00 62 6a 29 29 0a 20 20 20 28 74 0a 20 20 20 20 27 76 65 63 74 6f 72 29 29 29 0a 0a 28 64 65 66 75 bj))....(t.....'vector)))..(defu
0f20 6e 20 70 72 6f 6d 69 73 65 2d 2d 69 73 2d 6f 62 6a 65 63 74 20 28 6f 62 6a 29 0a 20 20 28 6f 72 n.promise--is-object.(obj)...(or
0f40 20 28 63 6c 2d 73 74 72 75 63 74 2d 70 20 6f 62 6a 29 0a 20 20 20 20 20 20 28 65 69 65 69 6f 2d .(cl-struct-p.obj).......(eieio-
0f60 6f 62 6a 65 63 74 2d 70 20 6f 62 6a 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 70 72 6f 6d 69 object-p.obj)))..(defsubst.promi
0f80 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d 6d 65 74 68 6f 64 20 28 6f 62 6a 29 0a 20 20 28 63 6c se--find-then-method.(obj)...(cl
0fa0 2d 66 69 6e 64 2d 6d 65 74 68 6f 64 20 23 27 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 27 28 29 20 -find-method.#'promise-then.'().
0fc0 28 6c 69 73 74 20 28 70 72 6f 6d 69 73 65 2d 2d 74 79 70 65 2d 6f 66 20 6f 62 6a 29 29 29 29 0a (list.(promise--type-of.obj)))).
0fe0 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d 66 75 6e 63 74 .(defun.promise--find-then-funct
1000 69 6f 6e 20 28 6f 62 6a 29 0a 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 6d 65 74 68 6f 64 20 28 70 ion.(obj)...(when-let.(method.(p
1020 72 6f 6d 69 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d 6d 65 74 68 6f 64 20 6f 62 6a 29 29 0a 20 romise--find-then-method.obj))..
1040 20 20 20 28 63 6c 2d 2d 67 65 6e 65 72 69 63 2d 6d 65 74 68 6f 64 2d 66 75 6e 63 74 69 6f 6e 20 ...(cl--generic-method-function.
1060 6d 65 74 68 6f 64 29 29 29 0a 0a 3b 3b 20 53 74 61 74 65 73 3a 0a 3b 3b 0a 3b 3b 20 30 20 2d 20 method)))..;;.States:.;;.;;.0.-.
1080 70 65 6e 64 69 6e 67 0a 3b 3b 20 31 20 2d 20 66 75 6c 66 69 6c 6c 65 64 20 77 69 74 68 20 5f 76 pending.;;.1.-.fulfilled.with._v
10a0 61 6c 75 65 0a 3b 3b 20 32 20 2d 20 72 65 6a 65 63 74 65 64 20 77 69 74 68 20 5f 76 61 6c 75 65 alue.;;.2.-.rejected.with._value
10c0 0a 3b 3b 20 33 20 2d 20 61 64 6f 70 74 65 64 20 74 68 65 20 73 74 61 74 65 20 6f 66 20 61 6e 6f .;;.3.-.adopted.the.state.of.ano
10e0 74 68 65 72 20 70 72 6f 6d 69 73 65 2c 20 5f 76 61 6c 75 65 0a 3b 3b 0a 3b 3b 20 6f 6e 63 65 20 ther.promise,._value.;;.;;.once.
1100 74 68 65 20 73 74 61 74 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 70 65 6e 64 69 6e 67 20 28 the.state.is.no.longer.pending.(
1120 30 29 20 69 74 20 69 73 20 69 6d 6d 75 74 61 62 6c 65 0a 0a 3b 3b 20 74 6f 20 61 76 6f 69 64 20 0).it.is.immutable..;;.to.avoid.
1140 75 73 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 69 6e 73 69 64 65 20 63 72 69 74 using.condition-case.inside.crit
1160 69 63 61 6c 20 66 75 6e 63 74 69 6f 6e 73 2c 20 77 65 0a 3b 3b 20 65 78 74 72 61 63 74 20 74 68 ical.functions,.we.;;.extract.th
1180 65 6d 20 74 6f 20 68 65 72 65 2e 0a 28 64 65 66 76 61 72 20 70 72 6f 6d 69 73 65 2d 2d 6c 61 73 em.to.here..(defvar.promise--las
11a0 74 2d 65 72 72 6f 72 20 6e 69 6c 29 0a 28 64 65 66 63 6f 6e 73 74 20 70 72 6f 6d 69 73 65 2d 2d t-error.nil).(defconst.promise--
11c0 69 73 2d 65 72 72 6f 72 20 28 63 6c 2d 67 65 6e 73 79 6d 20 22 70 72 6f 6d 69 73 65 2d 65 72 72 is-error.(cl-gensym."promise-err
11e0 6f 72 22 29 29 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 67 65 74 2d 74 68 65 6e 20 28 or")).(defun.promise--get-then.(
1200 6f 62 6a 29 0a 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 78 0a 20 20 20 20 20 20 obj)...(condition-case.ex.......
1220 28 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d 66 75 6e 63 74 69 6f 6e 20 6f 62 6a (promise--find-then-function.obj
1240 29 0a 20 20 20 20 28 65 72 72 6f 72 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 2d 2d 6c 61 73 74 ).....(error.(setf.promise--last
1260 2d 65 72 72 6f 72 20 65 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 73 65 2d 2d 69 -error.ex)............promise--i
1280 73 2d 65 72 72 6f 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 74 72 79 2d s-error)))..(defun.promise--try-
12a0 63 61 6c 6c 2d 6f 6e 65 20 28 66 6e 20 61 29 0a 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 call-one.(fn.a)...(condition-cas
12c0 65 20 65 78 0a 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 6e 20 61 29 0a 20 20 20 20 28 65 e.ex.......(funcall.fn.a).....(e
12e0 72 72 6f 72 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 2d 2d 6c 61 73 74 2d 65 72 72 6f 72 20 65 rror.(setf.promise--last-error.e
1300 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 73 65 2d 2d 69 73 2d 65 72 72 6f 72 29 x)............promise--is-error)
1320 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 74 72 79 2d 63 61 6c 6c 2d 74 77 6f ))..(defun.promise--try-call-two
1340 20 28 66 6e 20 61 20 62 29 0a 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 78 0a 20 .(fn.a.b)...(condition-case.ex..
1360 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 6e 20 61 20 62 29 0a 20 20 20 20 28 65 72 72 6f 72 .....(funcall.fn.a.b).....(error
1380 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 2d 2d 6c 61 73 74 2d 65 72 72 6f 72 20 65 78 29 0a 20 .(setf.promise--last-error.ex)..
13a0 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 73 65 2d 2d 69 73 2d 65 72 72 6f 72 29 29 29 0a 0a ..........promise--is-error)))..
13c0 28 64 65 66 63 6c 61 73 73 20 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 20 28 29 0a 20 20 28 28 5f (defclass.promise-class.()...((_
13e0 64 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 3a 61 63 63 65 73 73 6f 72 20 70 72 6f 6d 69 73 65 deferred-state.:accessor.promise
1400 2d 5f 64 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 3a 69 6e 69 74 66 6f 72 6d 20 30 29 0a 20 20 -_deferred-state.:initform.0)...
1420 20 28 5f 73 74 61 74 65 20 20 20 20 20 20 20 20 20 20 3a 61 63 63 65 73 73 6f 72 20 70 72 6f 6d .(_state..........:accessor.prom
1440 69 73 65 2d 5f 73 74 61 74 65 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 30 29 ise-_state..........:initform.0)
1460 0a 20 20 20 28 5f 76 61 6c 75 65 20 20 20 20 20 20 20 20 20 20 3a 61 63 63 65 73 73 6f 72 20 70 ....(_value..........:accessor.p
1480 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d romise-_value..........:initform
14a0 20 6e 69 6c 29 0a 20 20 20 28 5f 64 65 66 65 72 72 65 64 73 20 20 20 20 20 20 3a 61 63 63 65 73 .nil)....(_deferreds......:acces
14c0 73 6f 72 20 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 73 20 20 20 20 20 20 3a 69 6e 69 sor.promise-_deferreds......:ini
14e0 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 66 6f 72 20 72 65 6a 65 63 74 69 6f 6e 2d 74 tform.nil)....;;.for.rejection-t
1500 72 61 63 6b 69 6e 67 0a 20 20 20 28 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 20 20 20 3a 61 63 63 racking....(_rejection-id...:acc
1520 65 73 73 6f 72 20 70 72 6f 6d 69 73 65 2d 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 20 20 20 3a 69 essor.promise-_rejection-id...:i
1540 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 29 29 0a 28 64 65 66 76 61 72 20 70 72 6f 6d 69 73 65 2d 2d nitform.nil))).(defvar.promise--
1560 6f 6e 2d 68 61 6e 64 6c 65 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 70 72 6f 6d 69 73 65 2d 2d on-handle.nil).(defvar.promise--
1580 6f 6e 2d 72 65 6a 65 63 74 20 6e 69 6c 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 69 6e on-reject.nil)..(cl-defmethod.in
15a0 69 74 69 61 6c 69 7a 65 2d 69 6e 73 74 61 6e 63 65 20 28 28 74 68 69 73 20 70 72 6f 6d 69 73 65 itialize-instance.((this.promise
15c0 2d 63 6c 61 73 73 29 20 26 6f 70 74 69 6f 6e 61 6c 20 61 72 67 73 29 0a 20 20 28 63 6c 2d 63 61 -class).&optional.args)...(cl-ca
15e0 6c 6c 2d 6e 65 78 74 2d 6d 65 74 68 6f 64 20 74 68 69 73 29 0a 20 20 28 6c 65 74 20 28 28 66 6e ll-next-method.this)...(let.((fn
1600 20 28 70 6c 69 73 74 2d 67 65 74 20 61 72 67 73 20 3a 66 6e 29 29 29 0a 20 20 20 20 28 75 6e 6c .(plist-get.args.:fn))).....(unl
1620 65 73 73 20 28 65 71 20 66 6e 20 23 27 69 67 6e 6f 72 65 29 0a 20 20 20 20 20 20 28 70 72 6f 6d ess.(eq.fn.#'ignore).......(prom
1640 69 73 65 2d 2d 64 6f 2d 72 65 73 6f 6c 76 65 20 66 6e 20 74 68 69 73 29 29 29 29 0a 0a 28 64 65 ise--do-resolve.fn.this))))..(de
1660 66 75 6e 20 70 72 6f 6d 69 73 65 2d 6e 65 77 20 28 66 6e 29 0a 20 20 28 6d 61 6b 65 2d 69 6e 73 fun.promise-new.(fn)...(make-ins
1680 74 61 6e 63 65 20 27 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 20 3a 66 6e 20 66 6e 29 29 0a 0a 28 tance.'promise-class.:fn.fn))..(
16a0 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 28 28 74 68 69 73 cl-defmethod.promise-then.((this
16c0 20 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 29 20 26 6f 70 74 69 6f 6e 61 6c 20 6f 6e 2d 66 75 6c .promise-class).&optional.on-ful
16e0 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 0a 20 20 28 69 66 20 28 6e 6f 74 20 28 filled.on-rejected)...(if.(not.(
1700 65 71 20 28 70 72 6f 6d 69 73 65 2d 2d 74 79 70 65 2d 6f 66 20 74 68 69 73 29 20 27 70 72 6f 6d eq.(promise--type-of.this).'prom
1720 69 73 65 2d 63 6c 61 73 73 29 29 0a 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 73 61 66 65 ise-class)).......(promise--safe
1740 2d 74 68 65 6e 20 74 68 69 73 20 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 -then.this.on-fulfilled.on-rejec
1760 74 65 64 29 0a 20 20 20 20 28 6c 65 74 20 28 28 72 65 73 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 ted).....(let.((res.(promise-new
1780 20 23 27 69 67 6e 6f 72 65 29 29 29 0a 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 68 61 6e .#'ignore))).......(promise--han
17a0 64 6c 65 20 74 68 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dle.this........................
17c0 28 70 72 6f 6d 69 73 65 2d 2d 68 61 6e 64 6c 65 72 2d 6e 65 77 20 6f 6e 2d 66 75 6c 66 69 6c 6c (promise--handler-new.on-fulfill
17e0 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed..............................
1800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 6e 2d 72 65 6a 65 63 74 65 64 0a 20 20 20 20 ................on-rejected.....
1820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1840 20 20 20 20 20 20 20 20 20 72 65 73 29 29 0a 20 20 20 20 20 20 72 65 73 29 29 29 0a 0a 28 64 65 .........res)).......res)))..(de
1860 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 73 61 66 65 2d 74 68 65 6e 20 28 73 65 6c 66 20 6f 6e 2d fun.promise--safe-then.(self.on-
1880 66 75 6c 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 0a 20 20 28 6d 61 6b 65 2d 69 fulfilled.on-rejected)...(make-i
18a0 6e 73 74 61 6e 63 65 20 28 70 72 6f 6d 69 73 65 2d 2d 74 79 70 65 2d 6f 66 20 73 65 6c 66 29 0a nstance.(promise--type-of.self).
18c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 66 6e 20 28 6c 61 6d 62 64 61 20 28 72 65 .................:fn.(lambda.(re
18e0 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 solve.reject)...................
1900 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 73 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 23 27 69 .....(let.((res.(promise-new.#'i
1920 67 6e 6f 72 65 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 gnore)))........................
1940 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 72 65 73 20 72 65 73 6f 6c 76 65 20 72 65 6a 65 ..(promise-then.res.resolve.reje
1960 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 ct)..........................(pr
1980 6f 6d 69 73 65 2d 2d 68 61 6e 64 6c 65 20 73 65 6c 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 omise--handle.self..............
19a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 .............................(pr
19c0 6f 6d 69 73 65 2d 2d 68 61 6e 64 6c 65 72 2d 6e 65 77 20 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 0a omise--handler-new.on-fulfilled.
19e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a20 6f 6e 2d 72 65 6a 65 63 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on-rejected.....................
1a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a60 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 ............res))))))..(defun.pr
1a80 6f 6d 69 73 65 2d 2d 68 61 6e 64 6c 65 20 28 73 65 6c 66 20 64 65 66 65 72 72 65 64 29 0a 20 20 omise--handle.(self.deferred)...
1aa0 28 77 68 69 6c 65 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 73 65 6c 66 29 20 (while.(=.(promise-_state.self).
1ac0 33 29 0a 20 20 20 20 28 73 65 74 66 20 73 65 6c 66 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 3).....(setf.self.(promise-_valu
1ae0 65 20 73 65 6c 66 29 29 29 0a 20 20 28 77 68 65 6e 20 70 72 6f 6d 69 73 65 2d 2d 6f 6e 2d 68 61 e.self)))...(when.promise--on-ha
1b00 6e 64 6c 65 0a 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 70 72 6f 6d 69 73 65 2d 2d 6f 6e 2d 68 61 ndle.....(funcall.promise--on-ha
1b20 6e 64 6c 65 20 73 65 6c 66 29 29 0a 20 20 28 69 66 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 ndle.self))...(if.(=.(promise-_s
1b40 74 61 74 65 20 73 65 6c 66 29 20 30 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 tate.self).0).......(cond.......
1b60 20 28 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 73 65 .((=.(promise-_deferred-state.se
1b80 6c 66 29 20 30 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 64 lf).0).........(setf.(promise-_d
1ba0 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 73 65 6c 66 29 20 31 0a 20 20 20 20 20 20 20 20 20 20 eferred-state.self).1...........
1bc0 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 73 20 73 65 6c 66 29 20 64 65 ....(promise-_deferreds.self).de
1be0 66 65 72 72 65 64 29 29 0a 20 20 20 20 20 20 20 28 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 ferred))........((=.(promise-_de
1c00 66 65 72 72 65 64 2d 73 74 61 74 65 20 73 65 6c 66 29 20 31 29 0a 20 20 20 20 20 20 20 20 28 73 ferred-state.self).1).........(s
1c20 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 73 65 6c etf.(promise-_deferred-state.sel
1c40 66 29 20 32 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 f).2...............(promise-_def
1c60 65 72 72 65 64 73 20 73 65 6c 66 29 20 28 6c 69 73 74 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 erreds.self).(list.(promise-_def
1c80 65 72 72 65 64 73 20 73 65 6c 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erreds.self)....................
1ca0 20 20 20 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 65 66 65 72 ...........................defer
1cc0 72 65 64 29 29 29 0a 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 red)))........(t.........(setf.(
1ce0 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 73 20 73 65 6c 66 29 20 28 6e 63 6f 6e 63 20 promise-_deferreds.self).(nconc.
1d00 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 73 20 73 65 6c 66 29 0a 20 20 20 20 20 20 (promise-_deferreds.self).......
1d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1d40 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 64 65 66 65 72 72 65 64 29 29 29 29 29 0a 20 20 20 .........(list.deferred)))))....
1d60 20 28 70 72 6f 6d 69 73 65 2d 2d 68 61 6e 64 6c 65 2d 72 65 73 6f 6c 76 65 64 20 73 65 6c 66 20 .(promise--handle-resolved.self.
1d80 64 65 66 65 72 72 65 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 68 61 6e deferred)))..(defun.promise--han
1da0 64 6c 65 2d 72 65 73 6f 6c 76 65 64 20 28 73 65 6c 66 20 64 65 66 65 72 72 65 64 29 0a 20 20 28 dle-resolved.(self.deferred)...(
1dc0 70 72 6f 6d 69 73 65 2d 2d 61 73 61 70 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 promise--asap....(lambda.().....
1de0 20 28 6c 65 74 2d 61 6c 69 73 74 20 64 65 66 65 72 72 65 64 0a 20 20 20 20 20 20 20 28 6c 65 74 .(let-alist.deferred........(let
1e00 20 28 28 63 62 20 28 69 66 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 73 65 6c .((cb.(if.(=.(promise-_state.sel
1e20 66 29 20 31 29 20 2e 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 20 2e 6f 6e 2d 72 65 6a 65 63 74 65 64 f).1)..on-fulfilled..on-rejected
1e40 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 63 62 29 0a 20 20 20 20 20 20 )))..........(if.(not.cb).......
1e60 20 20 20 20 20 20 20 28 69 66 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 73 65 .......(if.(=.(promise-_state.se
1e80 6c 66 29 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 lf).1)..................(promise
1ea0 2d 2d 72 65 73 6f 6c 76 65 20 2e 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c --resolve..promise.(promise-_val
1ec0 75 65 20 73 65 6c 66 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 ue.self))................(promis
1ee0 65 2d 2d 72 65 6a 65 63 74 20 2e 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c e--reject..promise.(promise-_val
1f00 75 65 20 73 65 6c 66 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 74 ue.self)))............(let.((ret
1f20 20 28 70 72 6f 6d 69 73 65 2d 2d 74 72 79 2d 63 61 6c 6c 2d 6f 6e 65 20 63 62 20 28 70 72 6f 6d .(promise--try-call-one.cb.(prom
1f40 69 73 65 2d 5f 76 61 6c 75 65 20 73 65 6c 66 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ise-_value.self)))).............
1f60 20 28 69 66 20 28 65 71 20 72 65 74 20 70 72 6f 6d 69 73 65 2d 2d 69 73 2d 65 72 72 6f 72 29 0a .(if.(eq.ret.promise--is-error).
1f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 72 65 6a 65 63 .................(promise--rejec
1fa0 74 20 2e 70 72 6f 6d 69 73 65 20 70 72 6f 6d 69 73 65 2d 2d 6c 61 73 74 2d 65 72 72 6f 72 29 0a t..promise.promise--last-error).
1fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 72 65 73 6f 6c 76 65 ...............(promise--resolve
1fe0 20 2e 70 72 6f 6d 69 73 65 20 72 65 74 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 ..promise.ret)))))))))..(defun.p
2000 72 6f 6d 69 73 65 2d 2d 72 65 73 6f 6c 76 65 20 28 73 65 6c 66 20 6e 65 77 2d 76 61 6c 75 65 29 romise--resolve.(self.new-value)
2020 0a 20 20 22 50 72 6f 6d 69 73 65 20 52 65 73 6f 6c 75 74 69 6f 6e 20 50 72 6f 63 65 64 75 72 65 ..."Promise.Resolution.Procedure
2040 2e 0a 53 65 65 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 70 72 6f 6d 69 73 ..See:.https://github.com/promis
2060 65 73 2d 61 70 6c 75 73 2f 70 72 6f 6d 69 73 65 73 2d 73 70 65 63 23 74 68 65 2d 70 72 6f 6d 69 es-aplus/promises-spec#the-promi
2080 73 65 2d 72 65 73 6f 6c 75 74 69 6f 6e 2d 70 72 6f 63 65 64 75 72 65 22 0a 20 20 28 63 6c 2d 62 se-resolution-procedure"...(cl-b
20a0 6c 6f 63 6b 20 6e 69 6c 0a 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 6e 65 77 2d 76 61 6c 75 65 lock.nil.....(when.(eq.new-value
20c0 20 73 65 6c 66 29 0a 20 20 20 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 20 28 70 72 6f 6d 69 73 65 .self).......(cl-return.(promise
20e0 2d 2d 72 65 6a 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 0a --reject...................self.
2100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 77 72 6f 6e 67 2d 74 79 70 65 2d 61 ..................'(wrong-type-a
2120 72 67 75 6d 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 41 20 70 rgument....................."A.p
2140 72 6f 6d 69 73 65 20 63 61 6e 6e 6f 74 20 62 65 20 72 65 73 6f 6c 76 65 64 20 77 69 74 68 20 69 romise.cannot.be.resolved.with.i
2160 74 73 65 6c 66 2e 22 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 6e 65 77 2d 76 tself.")))).....(when.(and.new-v
2180 61 6c 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 69 73 alue................(promise--is
21a0 2d 6f 62 6a 65 63 74 20 6e 65 77 2d 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 -object.new-value)).......(let.(
21c0 28 74 68 65 6e 20 28 70 72 6f 6d 69 73 65 2d 2d 67 65 74 2d 74 68 65 6e 20 6e 65 77 2d 76 61 6c (then.(promise--get-then.new-val
21e0 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 74 68 65 6e 20 70 72 6f ue))).........(when.(eq.then.pro
2200 6d 69 73 65 2d 2d 69 73 2d 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 mise--is-error)...........(cl-re
2220 74 75 72 6e 20 28 70 72 6f 6d 69 73 65 2d 2d 72 65 6a 65 63 74 20 73 65 6c 66 20 70 72 6f 6d 69 turn.(promise--reject.self.promi
2240 73 65 2d 2d 6c 61 73 74 2d 65 72 72 6f 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a se--last-error))).........(cond.
2260 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 65 71 20 74 68 65 6e 20 28 69 67 6e 6f 72 65 2d .........((and.(eq.then.(ignore-
2280 65 72 72 6f 72 73 20 28 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d 66 75 6e 63 74 errors.(promise--find-then-funct
22a0 69 6f 6e 20 73 65 6c 66 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d ion.self)))................(prom
22c0 69 73 65 2d 63 6c 61 73 73 2d 70 20 6e 65 77 2d 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 ise-class-p.new-value)).........
22e0 20 20 28 73 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 73 65 6c 66 29 20 33 0a ..(setf.(promise-_state.self).3.
2300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 ................(promise-_value.
2320 73 65 6c 66 29 20 6e 65 77 2d 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d self).new-value)...........(prom
2340 69 73 65 2d 2d 66 69 6e 61 6c 65 20 73 65 6c 66 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d ise--finale.self)...........(cl-
2360 72 65 74 75 72 6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 28 66 75 6e 63 74 69 6f 6e 70 20 74 68 return))..........((functionp.th
2380 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 64 6f 2d 72 65 73 6f 6c en)...........(promise--do-resol
23a0 76 65 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 ve.(lambda.(resolve.reject).....
23c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 .............................(pr
23e0 6f 6d 69 73 65 2d 74 68 65 6e 20 6e 65 77 2d 76 61 6c 75 65 20 72 65 73 6f 6c 76 65 20 72 65 6a omise-then.new-value.resolve.rej
2400 65 63 74 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 ect))...........................
2420 20 20 20 20 20 73 65 6c 66 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 29 .....self)...........(cl-return)
2440 29 29 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 73 )))).....(setf.(promise-_state.s
2460 65 6c 66 29 20 31 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 elf).1...........(promise-_value
2480 20 73 65 6c 66 29 20 6e 65 77 2d 76 61 6c 75 65 29 0a 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d .self).new-value).....(promise--
24a0 66 69 6e 61 6c 65 20 73 65 6c 66 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d finale.self)))..(defun.promise--
24c0 72 65 6a 65 63 74 20 28 73 65 6c 66 20 6e 65 77 2d 76 61 6c 75 65 29 0a 20 20 28 73 65 74 66 20 reject.(self.new-value)...(setf.
24e0 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 73 65 6c 66 29 20 32 0a 20 20 20 20 20 20 20 20 (promise-_state.self).2.........
2500 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 73 65 6c 66 29 20 6e 65 77 2d 76 61 6c 75 65 29 (promise-_value.self).new-value)
2520 0a 20 20 28 77 68 65 6e 20 70 72 6f 6d 69 73 65 2d 2d 6f 6e 2d 72 65 6a 65 63 74 0a 20 20 20 20 ...(when.promise--on-reject.....
2540 28 66 75 6e 63 61 6c 6c 20 70 72 6f 6d 69 73 65 2d 2d 6f 6e 2d 72 65 6a 65 63 74 20 73 65 6c 66 (funcall.promise--on-reject.self
2560 20 6e 65 77 2d 76 61 6c 75 65 29 29 0a 20 20 28 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 61 6c 65 20 .new-value))...(promise--finale.
2580 73 65 6c 66 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 61 6c 65 20 28 self))..(defun.promise--finale.(
25a0 73 65 6c 66 29 0a 20 20 28 77 68 65 6e 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 self)...(when.(=.(promise-_defer
25c0 72 65 64 2d 73 74 61 74 65 20 73 65 6c 66 29 20 31 29 0a 20 20 20 20 28 70 72 6f 6d 69 73 65 2d red-state.self).1).....(promise-
25e0 2d 68 61 6e 64 6c 65 20 73 65 6c 66 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 73 -handle.self.(promise-_deferreds
2600 20 73 65 6c 66 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 .self)).....(setf.(promise-_defe
2620 72 72 65 64 73 20 73 65 6c 66 29 20 6e 69 6c 29 29 0a 20 20 28 77 68 65 6e 20 28 3d 20 28 70 72 rreds.self).nil))...(when.(=.(pr
2640 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 73 65 6c 66 29 20 32 29 0a 20 omise-_deferred-state.self).2)..
2660 20 20 20 28 64 6f 6c 69 73 74 20 28 64 65 66 65 72 72 65 64 20 28 70 72 6f 6d 69 73 65 2d 5f 64 ...(dolist.(deferred.(promise-_d
2680 65 66 65 72 72 65 64 73 20 73 65 6c 66 29 29 0a 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d eferreds.self)).......(promise--
26a0 68 61 6e 64 6c 65 20 73 65 6c 66 20 64 65 66 65 72 72 65 64 29 29 0a 20 20 20 20 28 73 65 74 66 handle.self.deferred)).....(setf
26c0 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 73 20 73 65 6c 66 29 20 6e 69 6c 29 29 .(promise-_deferreds.self).nil))
26e0 0a 20 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 68 61 6e 64 6c 65 72 ...nil)..(defun.promise--handler
2700 2d 6e 65 77 20 28 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 74 65 64 20 70 -new.(on-fulfilled.on-rejected.p
2720 72 6f 6d 69 73 65 29 0a 20 20 60 28 28 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 20 2e 20 2c 28 61 6e romise)...`((on-fulfilled...,(an
2740 64 20 28 66 75 6e 63 74 69 6f 6e 70 20 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 29 20 6f 6e 2d 66 75 d.(functionp.on-fulfilled).on-fu
2760 6c 66 69 6c 6c 65 64 29 29 0a 20 20 20 20 28 6f 6e 2d 72 65 6a 65 63 74 65 64 20 2e 20 2c 28 61 lfilled)).....(on-rejected...,(a
2780 6e 64 20 28 66 75 6e 63 74 69 6f 6e 70 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 20 6f 6e 2d 72 65 nd.(functionp.on-rejected).on-re
27a0 6a 65 63 74 65 64 29 29 0a 20 20 20 20 28 70 72 6f 6d 69 73 65 20 2e 20 2c 70 72 6f 6d 69 73 65 jected)).....(promise...,promise
27c0 29 29 29 0a 0a 3b 3b 20 54 61 6b 65 20 61 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 6d 69 73 62 65 )))..;;.Take.a.potentially.misbe
27e0 68 61 76 69 6e 67 20 72 65 73 6f 6c 76 65 72 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 6d 61 6b having.resolver.function.and.mak
2800 65 20 73 75 72 65 0a 3b 3b 20 6f 6e 46 75 6c 66 69 6c 6c 65 64 20 61 6e 64 20 6f 6e 52 65 6a 65 e.sure.;;.onFulfilled.and.onReje
2820 63 74 65 64 20 61 72 65 20 6f 6e 6c 79 20 63 61 6c 6c 65 64 20 6f 6e 63 65 2e 0a 3b 3b 0a 3b 3b cted.are.only.called.once..;;.;;
2840 20 4d 61 6b 65 73 20 6e 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 62 6f 75 74 20 61 73 79 6e 63 .Makes.no.guarantees.about.async
2860 68 72 6f 6e 79 2e 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 64 6f 2d 72 65 73 6f 6c 76 hrony..(defun.promise--do-resolv
2880 65 20 28 66 6e 20 70 72 6f 6d 69 73 65 29 0a 20 20 28 6c 65 74 2a 20 28 28 64 6f 6e 65 20 6e 69 e.(fn.promise)...(let*.((done.ni
28a0 6c 29 0a 20 20 20 20 20 20 20 20 20 28 72 65 73 20 28 70 72 6f 6d 69 73 65 2d 2d 74 72 79 2d 63 l)..........(res.(promise--try-c
28c0 61 6c 6c 2d 74 77 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6e 0a 20 20 20 20 20 20 all-two................fn.......
28e0 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 26 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 .........(lambda.(&optional.valu
2900 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 64 6f 6e 65 e)..................(unless.done
2920 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 64 6f 6e 65 20 74 ....................(setf.done.t
2940 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 72 )....................(promise--r
2960 65 73 6f 6c 76 65 20 70 72 6f 6d 69 73 65 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 esolve.promise.value))).........
2980 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 26 6f 70 74 69 6f 6e 61 6c 20 72 65 61 73 6f 6e .......(lambda.(&optional.reason
29a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 64 6f 6e 65 0a )..................(unless.done.
29c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 64 6f 6e 65 20 74 29 ...................(setf.done.t)
29e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 72 65 ....................(promise--re
2a00 6a 65 63 74 20 70 72 6f 6d 69 73 65 20 72 65 61 73 6f 6e 29 29 29 29 29 29 0a 20 20 20 20 28 77 ject.promise.reason)))))).....(w
2a20 68 65 6e 20 28 61 6e 64 20 28 6e 6f 74 20 64 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 hen.(and.(not.done).............
2a40 20 20 20 28 65 71 20 72 65 73 20 70 72 6f 6d 69 73 65 2d 2d 69 73 2d 65 72 72 6f 72 29 29 0a 20 ...(eq.res.promise--is-error))..
2a60 20 20 20 20 20 28 73 65 74 66 20 64 6f 6e 65 20 74 29 0a 20 20 20 20 20 20 28 70 72 6f 6d 69 73 .....(setf.done.t).......(promis
2a80 65 2d 2d 72 65 6a 65 63 74 20 70 72 6f 6d 69 73 65 20 70 72 6f 6d 69 73 65 2d 2d 6c 61 73 74 2d e--reject.promise.promise--last-
2aa0 65 72 72 6f 72 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 72 6f 6d 69 73 65 2d 63 6f 72 error))))..(provide.'promise-cor
2ac0 65 29 0a 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 63 6f 72 65 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 e).;;;.promise-core.el.ends.here
2ae0 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2c00 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2d 64 6f 6e promise-20210307.727/promise-don
2c20 65 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 00 00 e.el............................
2c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2c60 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
2c80 30 30 30 35 32 34 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 33 33 36 00 20 30 00 00 00 0005245.00000000000.015336..0...
2ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d00 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...................
2d20 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...................
2d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e00 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 64 6f 6e 65 2e 65 6c 20 2d 2d 2d 20 50 6f 72 74 69 6e 67 20 ;;;.promise-done.el.---.Porting.
2e20 64 6f 6e 65 2e 6a 73 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 done.js..-*-.lexical-binding:.t;
2e40 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d 32 30 31 37 .-*-..;;.Copyright.(C).2016-2017
2e60 20 20 63 68 75 6e 74 61 72 6f 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 63 68 75 6e 74 61 72 6f 20 ..chuntaro..;;.Author:.chuntaro.
2e80 3c 63 68 75 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 61 6d 65 73 2e 6a 70 3e 0a 3b 3b 20 55 52 <chuntaro@sakura-games.jp>.;;.UR
2ea0 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 68 75 6e 74 61 72 6f 2f 65 L:.https://github.com/chuntaro/e
2ec0 6d 61 63 73 2d 70 72 6f 6d 69 73 65 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 61 73 79 6e 63 20 macs-promise.;;.Keywords:.async.
2ee0 70 72 6f 6d 69 73 65 20 63 6f 6e 76 65 6e 69 65 6e 63 65 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f promise.convenience..;;.This.pro
2f00 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 gram.is.free.software;.you.can.r
2f20 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 edistribute.it.and/or.modify.;;.
2f40 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 it.under.the.terms.of.the.GNU.Ge
2f60 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 neral.Public.License.as.publishe
2f80 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 d.by.;;.the.Free.Software.Founda
2fa0 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 tion,.either.version.3.of.the.Li
2fc0 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e cense,.or.;;.(at.your.option).an
2fe0 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 y.later.version...;;.This.progra
3000 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 m.is.distributed.in.the.hope.tha
3020 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 t.it.will.be.useful,.;;.but.WITH
3040 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 OUT.ANY.WARRANTY;.without.even.t
3060 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 he.implied.warranty.of.;;.MERCHA
3080 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 NTABILITY.or.FITNESS.FOR.A.PARTI
30a0 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 CULAR.PURPOSE...See.the.;;.GNU.G
30c0 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 eneral.Public.License.for.more.d
30e0 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 etails...;;.You.should.have.rece
3100 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 ived.a.copy.of.the.GNU.General.P
3120 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 ublic.License.;;.along.with.this
3140 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 .program...If.not,.see.<http://w
3160 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 20 54 68 65 20 6f ww.gnu.org/licenses/>...;;.The.o
3180 72 69 67 69 6e 61 6c 20 4a 61 76 61 53 63 72 69 70 74 20 63 6f 64 65 20 69 73 3a 0a 3b 3b 0a 3b riginal.JavaScript.code.is:.;;.;
31a0 3b 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 34 20 46 6f 72 62 65 73 20 4c 69 6e 64 ;.Copyright.(c).2014.Forbes.Lind
31c0 65 73 61 79 0a 3b 3b 0a 3b 3b 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 esay.;;.;;.Permission.is.hereby.
31e0 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 granted,.free.of.charge,.to.any.
3200 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b 20 6f 66 20 74 68 person.obtaining.a.copy.;;.of.th
3220 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 75 6d is.software.and.associated.docum
3240 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c entation.files.(the."Software"),
3260 20 74 6f 20 64 65 61 6c 0a 3b 3b 20 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 .to.deal.;;.in.the.Software.with
3280 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f out.restriction,.including.witho
32a0 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b 3b 20 74 6f 20 75 ut.limitation.the.rights.;;.to.u
32c0 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 se,.copy,.modify,.merge,.publish
32e0 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 ,.distribute,.sublicense,.and/or
3300 20 73 65 6c 6c 0a 3b 3b 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c .sell.;;.copies.of.the.Software,
3320 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 .and.to.permit.persons.to.whom.t
3340 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 he.Software.is.;;.furnished.to.d
3360 6f 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 o.so,.subject.to.the.following.c
3380 6f 6e 64 69 74 69 6f 6e 73 3a 0a 3b 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 onditions:.;;.;;.The.above.copyr
33a0 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 ight.notice.and.this.permission.
33c0 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 0a 3b 3b 20 61 notice.shall.be.included.in.;;.a
33e0 6c 6c 20 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e ll.copies.or.substantial.portion
3400 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 48 45 20 53 4f 46 s.of.the.Software..;;.;;.THE.SOF
3420 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f TWARE.IS.PROVIDED."AS.IS",.WITHO
3440 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 UT.WARRANTY.OF.ANY.KIND,.EXPRESS
3460 20 4f 52 0a 3b 3b 20 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f .OR.;;.IMPLIED,.INCLUDING.BUT.NO
3480 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d T.LIMITED.TO.THE.WARRANTIES.OF.M
34a0 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 ERCHANTABILITY,.;;.FITNESS.FOR.A
34c0 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 .PARTICULAR.PURPOSE.AND.NONINFRI
34e0 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 0a 3b NGEMENT..IN.NO.EVENT.SHALL.THE.;
3500 3b 20 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 ;.AUTHORS.OR.COPYRIGHT.HOLDERS.B
3520 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 E.LIABLE.FOR.ANY.CLAIM,.DAMAGES.
3540 4f 52 20 4f 54 48 45 52 0a 3b 3b 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 OR.OTHER.;;.LIABILITY,.WHETHER.I
3560 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 N.AN.ACTION.OF.CONTRACT,.TORT.OR
3580 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 3b 3b 20 4f 55 54 .OTHERWISE,.ARISING.FROM,.;;.OUT
35a0 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f .OF.OR.IN.CONNECTION.WITH.THE.SO
35c0 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 FTWARE.OR.THE.USE.OR.OTHER.DEALI
35e0 4e 47 53 20 49 4e 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 3b 3b 3b 20 43 6f 6d NGS.IN.;;.THE.SOFTWARE...;;;.Com
3600 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e mentary:..;;.This.implementation
3620 20 70 6f 72 74 65 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 6d 70 6c 65 6d 65 6e 74 61 .ported.the.following.implementa
3640 74 69 6f 6e 20 66 61 69 74 68 66 75 6c 6c 79 2e 0a 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 tion.faithfully..;;.https://gith
3660 75 62 2e 63 6f 6d 2f 74 68 65 6e 2f 70 72 6f 6d 69 73 65 2f 62 6c 6f 62 2f 6d 61 73 74 65 72 2f ub.com/then/promise/blob/master/
3680 73 72 63 2f 64 6f 6e 65 2e 6a 73 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 src/done.js..;;;.Code:..(require
36a0 20 27 70 72 6f 6d 69 73 65 2d 63 6f 72 65 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 .'promise-core)..(cl-defmethod.p
36c0 72 6f 6d 69 73 65 2d 64 6f 6e 65 20 28 28 74 68 69 73 20 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 romise-done.((this.promise-class
36e0 29 20 26 6f 70 74 69 6f 6e 61 6c 20 6f 6e 2d 66 75 6c 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 ).&optional.on-fulfilled.on-reje
3700 63 74 65 64 29 0a 20 20 28 6c 65 74 20 28 28 73 65 6c 66 20 28 69 66 20 28 6f 72 20 6f 6e 2d 66 cted)...(let.((self.(if.(or.on-f
3720 75 6c 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 ulfilled.on-rejected)...........
3740 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 74 68 69 73 20 6f 6e 2d 66 75 ........(promise-then.this.on-fu
3760 6c 66 69 6c 6c 65 64 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 lfilled.on-rejected)............
3780 20 20 20 20 20 74 68 69 73 29 29 29 0a 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 73 .....this))).....(promise-then.s
37a0 65 6c 66 20 6e 69 6c 20 28 6c 61 6d 62 64 61 20 28 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 elf.nil.(lambda.(err)...........
37c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 75 6e 2d 61 74 2d 74 69 6d 65 20 ...................(run-at-time.
37e0 30 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0.nil...........................
3800 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 29 0a 20 20 20 20 20 ................(lambda.()......
3820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3840 20 20 20 20 20 20 20 28 73 69 67 6e 61 6c 20 27 65 72 72 6f 72 20 28 6c 69 73 74 20 65 72 72 29 .......(signal.'error.(list.err)
3860 29 29 29 29 29 29 0a 20 20 6e 69 6c 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 72 6f 6d 69 73 65 ))))))...nil)..(provide.'promise
3880 2d 64 6f 6e 65 29 0a 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 64 6f 6e 65 2e 65 6c 20 65 6e 64 73 20 -done).;;;.promise-done.el.ends.
38a0 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 00 00 00 00 00 00 here............................
38c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a00 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2d 65 73 36 promise-20210307.727/promise-es6
3a20 2d 65 78 74 65 6e 73 69 6f 6e 73 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -extensions.el..................
3a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a60 00 00 00 00 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
3a80 30 30 31 34 37 36 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 33 31 32 00 20 30 00 00 00 0014765.00000000000.017312..0...
3aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3b00 00 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...................
3b20 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...................
3b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c00 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 65 73 36 2d 65 78 74 65 6e 73 69 6f 6e 73 2e 65 6c 20 2d 2d ;;;.promise-es6-extensions.el.--
3c20 2d 20 50 6f 72 74 69 6e 67 20 65 73 36 2d 65 78 74 65 6e 73 69 6f 6e 73 2e 6a 73 20 20 2d 2a 2d -.Porting.es6-extensions.js..-*-
3c40 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 3b 20 43 6f 70 .lexical-binding:.t;.-*-..;;.Cop
3c60 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d 32 30 31 37 20 20 63 68 75 6e 74 61 72 6f 0a 0a yright.(C).2016-2017..chuntaro..
3c80 3b 3b 20 41 75 74 68 6f 72 3a 20 63 68 75 6e 74 61 72 6f 20 3c 63 68 75 6e 74 61 72 6f 40 73 61 ;;.Author:.chuntaro.<chuntaro@sa
3ca0 6b 75 72 61 2d 67 61 6d 65 73 2e 6a 70 3e 0a 3b 3b 20 55 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 kura-games.jp>.;;.URL:.https://g
3cc0 69 74 68 75 62 2e 63 6f 6d 2f 63 68 75 6e 74 61 72 6f 2f 65 6d 61 63 73 2d 70 72 6f 6d 69 73 65 ithub.com/chuntaro/emacs-promise
3ce0 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 61 73 79 6e 63 20 70 72 6f 6d 69 73 65 20 63 6f 6e 76 .;;.Keywords:.async.promise.conv
3d00 65 6e 69 65 6e 63 65 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 enience..;;.This.program.is.free
3d20 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 .software;.you.can.redistribute.
3d40 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 it.and/or.modify.;;.it.under.the
3d60 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 .terms.of.the.GNU.General.Public
3d80 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 .License.as.published.by.;;.the.
3da0 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 Free.Software.Foundation,.either
3dc0 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b .version.3.of.the.License,.or.;;
3de0 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 .(at.your.option).any.later.vers
3e00 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 ion...;;.This.program.is.distrib
3e20 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 uted.in.the.hope.that.it.will.be
3e40 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 .useful,.;;.but.WITHOUT.ANY.WARR
3e60 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 ANTY;.without.even.the.implied.w
3e80 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 arranty.of.;;.MERCHANTABILITY.or
3ea0 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 .FITNESS.FOR.A.PARTICULAR.PURPOS
3ec0 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 E...See.the.;;.GNU.General.Publi
3ee0 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 c.License.for.more.details...;;.
3f00 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 You.should.have.received.a.copy.
3f20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 of.the.GNU.General.Public.Licens
3f40 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 e.;;.along.with.this.program...I
3f60 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c f.not,.see.<http://www.gnu.org/l
3f80 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 4a 61 76 61 icenses/>...;;.The.original.Java
3fa0 53 63 72 69 70 74 20 63 6f 64 65 20 69 73 3a 0a 3b 3b 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 Script.code.is:.;;.;;.Copyright.
3fc0 28 63 29 20 32 30 31 34 20 46 6f 72 62 65 73 20 4c 69 6e 64 65 73 61 79 0a 3b 3b 0a 3b 3b 20 50 (c).2014.Forbes.Lindesay.;;.;;.P
3fe0 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 ermission.is.hereby.granted,.fre
4000 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 e.of.charge,.to.any.person.obtai
4020 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b 20 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 ning.a.copy.;;.of.this.software.
4040 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c and.associated.documentation.fil
4060 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 3b 3b 20 es.(the."Software"),.to.deal.;;.
4080 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 in.the.Software.without.restrict
40a0 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f ion,.including.without.limitatio
40c0 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b 3b 20 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f n.the.rights.;;.to.use,.copy,.mo
40e0 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 dify,.merge,.publish,.distribute
4100 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c 6c 0a 3b 3b 20 63 6f 70 ,.sublicense,.and/or.sell.;;.cop
4120 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 6d ies.of.the.Software,.and.to.perm
4140 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 it.persons.to.whom.the.Software.
4160 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a 65 63 is.;;.furnished.to.do.so,.subjec
4180 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 3b t.to.the.following.conditions:.;
41a0 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 ;.;;.The.above.copyright.notice.
41c0 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c and.this.permission.notice.shall
41e0 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 0a 3b 3b 20 61 6c 6c 20 63 6f 70 69 65 73 20 6f 72 .be.included.in.;;.all.copies.or
4200 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 .substantial.portions.of.the.Sof
4220 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f tware..;;.;;.THE.SOFTWARE.IS.PRO
4240 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 VIDED."AS.IS",.WITHOUT.WARRANTY.
4260 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 3b 3b 20 49 4d 50 4c 49 OF.ANY.KIND,.EXPRESS.OR.;;.IMPLI
4280 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f ED,.INCLUDING.BUT.NOT.LIMITED.TO
42a0 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 .THE.WARRANTIES.OF.MERCHANTABILI
42c0 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 TY,.;;.FITNESS.FOR.A.PARTICULAR.
42e0 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 PURPOSE.AND.NONINFRINGEMENT..IN.
4300 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 0a 3b 3b 20 41 55 54 48 4f 52 53 20 4f 52 NO.EVENT.SHALL.THE.;;.AUTHORS.OR
4320 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 .COPYRIGHT.HOLDERS.BE.LIABLE.FOR
4340 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 3b 3b 20 .ANY.CLAIM,.DAMAGES.OR.OTHER.;;.
4360 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 LIABILITY,.WHETHER.IN.AN.ACTION.
4380 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 OF.CONTRACT,.TORT.OR.OTHERWISE,.
43a0 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 3b 3b 20 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f ARISING.FROM,.;;.OUT.OF.OR.IN.CO
43c0 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 48 NNECTION.WITH.THE.SOFTWARE.OR.TH
43e0 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 49 4e 0a 3b 3b 20 54 48 E.USE.OR.OTHER.DEALINGS.IN.;;.TH
4400 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b E.SOFTWARE...;;;.Commentary:..;;
4420 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 70 6f 72 74 65 64 20 74 68 65 20 .This.implementation.ported.the.
4440 66 6f 6c 6c 6f 77 69 6e 67 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 61 69 74 68 66 75 following.implementation.faithfu
4460 6c 6c 79 2e 0a 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 68 65 6e 2f lly..;;.https://github.com/then/
4480 70 72 6f 6d 69 73 65 2f 62 6c 6f 62 2f 6d 61 73 74 65 72 2f 73 72 63 2f 65 73 36 2d 65 78 74 65 promise/blob/master/src/es6-exte
44a0 6e 73 69 6f 6e 73 2e 6a 73 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 nsions.js.;;.;;.This.file.contai
44c0 6e 73 20 74 68 65 20 45 53 36 20 65 78 74 65 6e 73 69 6f 6e 73 20 74 6f 20 74 68 65 20 63 6f 72 ns.the.ES6.extensions.to.the.cor
44e0 65 20 50 72 6f 6d 69 73 65 73 2f 41 2b 20 41 50 49 2e 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 72 e.Promises/A+.API..;;.(promise-r
4500 65 73 6f 6c 76 65 20 76 61 6c 75 65 29 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 61 6c 6c 20 5b 76 esolve.value).;;.(promise-all.[v
4520 61 6c 75 65 73 2e 2e 2e 5d 29 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 20 76 61 alues...]).;;.(promise-reject.va
4540 6c 75 65 29 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 72 61 63 65 20 5b 76 61 6c 75 65 73 2e 2e 2e lue).;;.(promise-race.[values...
4560 5d 29 0a 3b 3b 20 28 70 72 6f 6d 69 73 65 2d 63 61 74 63 68 20 28 28 74 68 69 73 20 70 72 6f 6d ]).;;.(promise-catch.((this.prom
4580 69 73 65 2d 63 6c 61 73 73 29 20 6f 6e 2d 72 65 6a 65 63 74 65 64 29 29 0a 0a 3b 3b 3b 20 43 6f ise-class).on-rejected))..;;;.Co
45a0 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 70 72 6f 6d 69 73 65 2d 63 6f 72 65 29 0a 0a 28 64 de:..(require.'promise-core)..(d
45c0 65 66 73 75 62 73 74 20 70 72 6f 6d 69 73 65 2d 2d 74 68 65 6e 2d 66 75 6e 63 74 69 6f 6e 20 28 efsubst.promise--then-function.(
45e0 29 0a 20 20 28 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 0a 20 20 20 20 28 63 6c 2d 2d 67 65 6e 65 )...(ignore-errors.....(cl--gene
4600 72 69 63 2d 6d 65 74 68 6f 64 2d 66 75 6e 63 74 69 6f 6e 20 28 63 6c 2d 66 69 6e 64 2d 6d 65 74 ric-method-function.(cl-find-met
4620 68 6f 64 20 23 27 70 72 6f 6d 69 73 65 2d 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 hod.#'promise-then..............
4640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4660 20 20 20 20 27 28 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 ....'().........................
4680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 70 72 6f 6d 69 .........................'(promi
46a0 73 65 2d 63 6c 61 73 73 29 29 29 29 29 0a 0a 3b 3b 20 53 74 61 74 69 63 20 46 75 6e 63 74 69 6f se-class)))))..;;.Static.Functio
46c0 6e 73 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 76 61 6c 75 65 20 28 76 61 6c 75 65 ns..(defun.promise--value.(value
46e0 29 0a 20 20 28 6c 65 74 20 28 28 70 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 23 27 69 67 6e 6f )...(let.((p.(promise-new.#'igno
4700 72 65 29 29 29 0a 20 20 20 20 28 73 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 re))).....(setf.(promise-_state.
4720 70 29 20 31 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 70 p).1...........(promise-_value.p
4740 29 20 76 61 6c 75 65 29 0a 20 20 20 20 70 29 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 70 72 6f 6d ).value).....p))..(defconst.prom
4760 69 73 65 2d 74 20 28 70 72 6f 6d 69 73 65 2d 2d 76 61 6c 75 65 20 74 29 29 0a 28 64 65 66 63 6f ise-t.(promise--value.t)).(defco
4780 6e 73 74 20 70 72 6f 6d 69 73 65 2d 6e 69 6c 20 28 70 72 6f 6d 69 73 65 2d 2d 76 61 6c 75 65 20 nst.promise-nil.(promise--value.
47a0 6e 69 6c 29 29 0a 28 64 65 66 63 6f 6e 73 74 20 70 72 6f 6d 69 73 65 2d 7a 65 72 6f 20 28 70 72 nil)).(defconst.promise-zero.(pr
47c0 6f 6d 69 73 65 2d 2d 76 61 6c 75 65 20 30 29 29 0a 28 64 65 66 63 6f 6e 73 74 20 70 72 6f 6d 69 omise--value.0)).(defconst.promi
47e0 73 65 2d 65 6d 70 74 79 73 74 72 69 6e 67 20 28 70 72 6f 6d 69 73 65 2d 2d 76 61 6c 75 65 20 22 se-emptystring.(promise--value."
4800 22 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 72 65 73 6f 6c 76 65 20 28 76 61 6c "))..(defun.promise-resolve.(val
4820 75 65 29 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 2d 70 ue)...(cond....((promise-class-p
4840 20 76 61 6c 75 65 29 20 76 61 6c 75 65 29 0a 0a 20 20 20 28 28 65 71 20 76 61 6c 75 65 20 74 29 .value).value).....((eq.value.t)
4860 20 70 72 6f 6d 69 73 65 2d 74 29 0a 20 20 20 28 28 65 71 20 76 61 6c 75 65 20 6e 69 6c 29 20 70 .promise-t)....((eq.value.nil).p
4880 72 6f 6d 69 73 65 2d 6e 69 6c 29 0a 20 20 20 28 28 65 71 20 76 61 6c 75 65 20 30 29 20 70 72 6f romise-nil)....((eq.value.0).pro
48a0 6d 69 73 65 2d 7a 65 72 6f 29 0a 20 20 20 28 28 65 71 20 76 61 6c 75 65 20 22 22 29 20 70 72 6f mise-zero)....((eq.value."").pro
48c0 6d 69 73 65 2d 65 6d 70 74 79 73 74 72 69 6e 67 29 0a 0a 20 20 20 28 28 70 72 6f 6d 69 73 65 2d mise-emptystring).....((promise-
48e0 2d 69 73 2d 6f 62 6a 65 63 74 20 76 61 6c 75 65 29 0a 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e -is-object.value).....(condition
4900 2d 63 61 73 65 20 65 78 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 74 68 65 6e 20 28 69 67 -case.ex.........(let.((then.(ig
4920 6e 6f 72 65 2d 65 72 72 6f 72 73 20 28 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d nore-errors.(promise--find-then-
4940 66 75 6e 63 74 69 6f 6e 20 76 61 6c 75 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 function.value))))...........(if
4960 20 28 66 75 6e 63 74 69 6f 6e 70 20 74 68 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(functionp.then)...............
4980 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 (promise-new.(lambda.(resolve.re
49a0 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ject)...........................
49c0 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 76 61 6c 75 65 20 72 65 73 6f 6c 76 65 20 72 ...(promise-then.value.resolve.r
49e0 65 6a 65 63 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 76 eject))).............(promise--v
4a00 61 6c 75 65 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 28 70 72 6f 6d alue.value))).......(error.(prom
4a20 69 73 65 2d 6e 65 77 20 28 6c 61 6d 62 64 61 20 28 5f 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 ise-new.(lambda.(_resolve.reject
4a40 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 28 66 ).............................(f
4a60 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 65 78 29 29 29 29 29 29 0a 20 20 20 28 74 0a 20 20 20 uncall.reject.ex))))))....(t....
4a80 20 28 70 72 6f 6d 69 73 65 2d 2d 76 61 6c 75 65 20 76 61 6c 75 65 29 29 29 29 0a 0a 28 64 65 66 .(promise--value.value))))..(def
4aa0 75 6e 20 70 72 6f 6d 69 73 65 2d 61 6c 6c 20 28 61 72 72 29 0a 20 20 28 6c 65 74 20 28 28 61 72 un.promise-all.(arr)...(let.((ar
4ac0 67 73 20 28 63 6c 2d 63 6f 65 72 63 65 20 61 72 72 20 27 76 65 63 74 6f 72 29 29 29 0a 0a 20 20 gs.(cl-coerce.arr.'vector)))....
4ae0 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 ..(promise-new......(lambda.(res
4b00 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 20 20 28 69 66 20 28 7a 65 72 6f 70 20 28 olve.reject)........(if.(zerop.(
4b20 6c 65 6e 67 74 68 20 61 72 67 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c length.args))............(funcal
4b40 6c 20 72 65 73 6f 6c 76 65 20 5b 5d 29 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 l.resolve.[])..........(let.((re
4b60 6d 61 69 6e 69 6e 67 20 28 6c 65 6e 67 74 68 20 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 maining.(length.args))).........
4b80 20 20 20 28 63 6c 2d 6c 61 62 65 6c 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 72 ...(cl-labels................((r
4ba0 65 73 20 28 69 20 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es.(i.val)......................
4bc0 28 63 6c 2d 62 6c 6f 63 6b 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (cl-block.nil...................
4be0 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 76 61 6c 20 28 70 72 6f 6d 69 73 65 2d 2d 69 73 .....(when.(and.val.(promise--is
4c00 2d 6f 62 6a 65 63 74 20 76 61 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -object.val))...................
4c20 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 20 20 20 20 .......(cond....................
4c40 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 2d 70 20 76 61 .......((and.(promise-class-p.va
4c60 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l)..............................
4c80 20 20 20 28 65 71 20 28 70 72 6f 6d 69 73 65 2d 2d 66 69 6e 64 2d 74 68 65 6e 2d 66 75 6e 63 74 ...(eq.(promise--find-then-funct
4ca0 69 6f 6e 20 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ion.val)........................
4cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 74 68 65 6e 2d 66 75 6e 63 .............(promise--then-func
4ce0 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion))).........................
4d00 20 20 20 28 77 68 69 6c 65 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 76 61 6c ...(while.(=.(promise-_state.val
4d20 29 20 33 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 ).3)............................
4d40 20 20 28 73 65 74 66 20 76 61 6c 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 76 61 6c 29 ..(setf.val.(promise-_value.val)
4d60 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
4d80 68 65 6e 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 76 61 6c 29 20 31 29 0a 20 hen.(=.(promise-_state.val).1)..
4da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d ............................(cl-
4dc0 72 65 74 75 72 6e 20 28 72 65 73 20 69 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 76 61 return.(res.i.(promise-_value.va
4de0 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l))))...........................
4e00 20 28 77 68 65 6e 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 76 61 6c 29 20 32 .(when.(=.(promise-_state.val).2
4e20 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 28 )..............................(
4e40 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 76 funcall.reject.(promise-_value.v
4e60 61 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 al)))...........................
4e80 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 76 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .(promise-then.val..............
4ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d ............................(lam
4ec0 62 64 61 20 28 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 bda.(val).......................
4ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 73 20 69 20 76 61 6c 29 .....................(res.i.val)
4f00 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 )...............................
4f20 20 20 20 20 20 20 20 20 20 20 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........reject)..............
4f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 29 29 0a 20 20 20 20 20 ..............(cl-return))......
4f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 .....................(t.........
4f80 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 74 68 65 6e 20 28 ...................(let.((then.(
4fa0 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ignore-errors...................
4fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d .......................(promise-
4fe0 2d 66 69 6e 64 2d 74 68 65 6e 2d 66 75 6e 63 74 69 6f 6e 20 76 61 6c 29 29 29 29 0a 20 20 20 20 -find-then-function.val)))).....
5000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 .........................(when.(
5020 66 75 6e 63 74 69 6f 6e 70 20 74 68 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 functionp.then).................
5040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 20 28 70 72 6f 6d 69 73 65 ...............(let.((p.(promise
5060 2d 6e 65 77 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 -new............................
5080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 ..............(lambda.(resolve.r
50a0 65 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eject)..........................
50c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 ..................(promise-then.
50e0 76 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 val.............................
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 20 72 65 73 .............................res
5120 6f 6c 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 20 olve............................
5140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 ..............................re
5160 6a 65 63 74 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ject))))).......................
5180 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 70 0a 20 20 20 20 20 ...........(promise-then.p......
51a0 20 20 20 20 20 20 20 20 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 20 20 20 28 6c 61 6d 62 64 61 20 28 76 61 6c 29 0a 20 20 20 20 20 20 20 20 ..........(lambda.(val).........
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 20 20 20 20 20 20 20 20 28 72 65 73 20 69 20 76 61 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 .........(res.i.val))...........
5220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5240 20 20 20 20 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....reject)....................
5260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 29 29 29 29 29 29 29 0a ..............(cl-return))))))).
5280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 61 72 .......................(setf.(ar
52a0 65 66 20 61 72 67 73 20 69 29 20 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ef.args.i).val).................
52c0 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 7a 65 72 6f 70 20 28 63 6c 2d 64 65 63 66 20 72 65 6d .......(when.(zerop.(cl-decf.rem
52e0 61 69 6e 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 aining))........................
5300 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c 76 65 20 61 72 67 73 29 29 29 29 29 0a 20 20 20 ..(funcall.resolve.args)))))....
5320 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 69 20 66 72 6f 6d 20 30 0a ..........(cl-loop.for.i.from.0.
5340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 61 72 67 20 61 63 ......................for.arg.ac
5360 72 6f 73 73 20 61 72 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ross.args.......................
5380 64 6f 20 28 72 65 73 20 69 20 61 72 67 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 do.(res.i.arg)))))))))..(defun.p
53a0 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 20 28 76 61 6c 75 65 29 0a 20 20 28 70 72 6f 6d 69 73 65 romise-reject.(value)...(promise
53c0 2d 6e 65 77 20 28 6c 61 6d 62 64 61 20 28 5f 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 -new.(lambda.(_resolve.reject)..
53e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 ................(funcall.reject.
5400 76 61 6c 75 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 72 61 63 65 20 28 value))))..(defun.promise-race.(
5420 76 61 6c 75 65 73 29 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 28 6c 61 6d 62 64 61 20 28 values)...(promise-new.(lambda.(
5440 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 resolve.reject).................
5460 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 76 61 6c 75 65 20 61 63 72 6f 73 73 20 28 63 6c 2d 63 .(cl-loop.for.value.across.(cl-c
5480 6f 65 72 63 65 20 76 61 6c 75 65 73 20 27 76 65 63 74 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 oerce.values.'vector)...........
54a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e ................do.(promise-then
54c0 20 28 70 72 6f 6d 69 73 65 2d 72 65 73 6f 6c 76 65 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 .(promise-resolve.value)........
54e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5500 20 20 20 20 72 65 73 6f 6c 76 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....resolve.....................
5520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6a 65 63 74 29 29 29 .......................reject)))
5540 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 72 6f 6d 69 73 65 2d 63 61 74 63 68 20 ))..(cl-defmethod.promise-catch.
5560 28 28 74 68 69 73 20 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 29 20 6f 6e 2d 72 65 6a 65 63 74 65 ((this.promise-class).on-rejecte
5580 64 29 0a 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 74 68 69 73 20 6e 69 6c 20 6f 6e 2d 72 d)...(promise-then.this.nil.on-r
55a0 65 6a 65 63 74 65 64 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 72 6f 6d 69 73 65 2d 65 73 36 ejected))..(provide.'promise-es6
55c0 2d 65 78 74 65 6e 73 69 6f 6e 73 29 0a 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 65 73 36 2d 65 78 74 -extensions).;;;.promise-es6-ext
55e0 65 6e 73 69 6f 6e 73 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 ensions.el.ends.here............
5600 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2d 66 69 6e promise-20210307.727/promise-fin
5620 61 6c 6c 79 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 ally.el.........................
5640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5660 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
5680 30 30 30 35 32 34 34 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 30 34 36 00 20 30 00 00 00 0005244.00000000000.016046..0...
56a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5700 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...................
5720 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...................
5740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
57a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
57c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
57e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5800 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c 79 2e 65 6c 20 2d 2d 2d 20 50 6f 72 74 69 ;;;.promise-finally.el.---.Porti
5820 6e 67 20 66 69 6e 61 6c 6c 79 2e 6a 73 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 ng.finally.js..-*-.lexical-bindi
5840 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 ng:.t;.-*-..;;.Copyright.(C).201
5860 36 2d 32 30 31 37 20 20 63 68 75 6e 74 61 72 6f 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 63 68 75 6-2017..chuntaro..;;.Author:.chu
5880 6e 74 61 72 6f 20 3c 63 68 75 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 61 6d 65 73 2e 6a 70 3e ntaro.<chuntaro@sakura-games.jp>
58a0 0a 3b 3b 20 55 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 68 75 6e .;;.URL:.https://github.com/chun
58c0 74 61 72 6f 2f 65 6d 61 63 73 2d 70 72 6f 6d 69 73 65 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 taro/emacs-promise.;;.Keywords:.
58e0 61 73 79 6e 63 20 70 72 6f 6d 69 73 65 20 63 6f 6e 76 65 6e 69 65 6e 63 65 0a 0a 3b 3b 20 54 68 async.promise.convenience..;;.Th
5900 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 is.program.is.free.software;.you
5920 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 .can.redistribute.it.and/or.modi
5940 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 fy.;;.it.under.the.terms.of.the.
5960 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 GNU.General.Public.License.as.pu
5980 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 blished.by.;;.the.Free.Software.
59a0 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 Foundation,.either.version.3.of.
59c0 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 the.License,.or.;;.(at.your.opti
59e0 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 on).any.later.version...;;.This.
5a00 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f program.is.distributed.in.the.ho
5a20 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 pe.that.it.will.be.useful,.;;.bu
5a40 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 t.WITHOUT.ANY.WARRANTY;.without.
5a60 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 even.the.implied.warranty.of.;;.
5a80 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 MERCHANTABILITY.or.FITNESS.FOR.A
5aa0 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b .PARTICULAR.PURPOSE...See.the.;;
5ac0 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 .GNU.General.Public.License.for.
5ae0 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 more.details...;;.You.should.hav
5b00 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e e.received.a.copy.of.the.GNU.Gen
5b20 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 eral.Public.License.;;.along.wit
5b40 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 h.this.program...If.not,.see.<ht
5b60 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b tp://www.gnu.org/licenses/>...;;
5b80 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 4a 61 76 61 53 63 72 69 70 74 20 63 6f 64 65 20 69 73 .The.original.JavaScript.code.is
5ba0 3a 0a 3b 3b 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 34 20 46 6f 72 62 65 :.;;.;;.Copyright.(c).2014.Forbe
5bc0 73 20 4c 69 6e 64 65 73 61 79 0a 3b 3b 0a 3b 3b 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 s.Lindesay.;;.;;.Permission.is.h
5be0 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 ereby.granted,.free.of.charge,.t
5c00 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b o.any.person.obtaining.a.copy.;;
5c20 20 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 .of.this.software.and.associated
5c40 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 .documentation.files.(the."Softw
5c60 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 3b 3b 20 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 are"),.to.deal.;;.in.the.Softwar
5c80 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 e.without.restriction,.including
5ca0 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b .without.limitation.the.rights.;
5cc0 3b 20 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 ;.to.use,.copy,.modify,.merge,.p
5ce0 75 62 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 ublish,.distribute,.sublicense,.
5d00 61 6e 64 2f 6f 72 20 73 65 6c 6c 0a 3b 3b 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 and/or.sell.;;.copies.of.the.Sof
5d20 74 77 61 72 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 tware,.and.to.permit.persons.to.
5d40 77 68 6f 6d 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 whom.the.Software.is.;;.furnishe
5d60 64 20 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f d.to.do.so,.subject.to.the.follo
5d80 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 3b 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 wing.conditions:.;;.;;.The.above
5da0 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 .copyright.notice.and.this.permi
5dc0 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 ssion.notice.shall.be.included.i
5de0 6e 0a 3b 3b 20 61 6c 6c 20 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 n.;;.all.copies.or.substantial.p
5e00 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 ortions.of.the.Software..;;.;;.T
5e20 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c HE.SOFTWARE.IS.PROVIDED."AS.IS",
5e40 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 .WITHOUT.WARRANTY.OF.ANY.KIND,.E
5e60 58 50 52 45 53 53 20 4f 52 0a 3b 3b 20 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 XPRESS.OR.;;.IMPLIED,.INCLUDING.
5e80 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 BUT.NOT.LIMITED.TO.THE.WARRANTIE
5ea0 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 S.OF.MERCHANTABILITY,.;;.FITNESS
5ec0 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f .FOR.A.PARTICULAR.PURPOSE.AND.NO
5ee0 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c NINFRINGEMENT..IN.NO.EVENT.SHALL
5f00 20 54 48 45 0a 3b 3b 20 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c .THE.;;.AUTHORS.OR.COPYRIGHT.HOL
5f20 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 DERS.BE.LIABLE.FOR.ANY.CLAIM,.DA
5f40 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 3b 3b 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 MAGES.OR.OTHER.;;.LIABILITY,.WHE
5f60 54 48 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 THER.IN.AN.ACTION.OF.CONTRACT,.T
5f80 4f 52 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a ORT.OR.OTHERWISE,.ARISING.FROM,.
5fa0 3b 3b 20 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 ;;.OUT.OF.OR.IN.CONNECTION.WITH.
5fc0 54 48 45 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 THE.SOFTWARE.OR.THE.USE.OR.OTHER
5fe0 20 44 45 41 4c 49 4e 47 53 20 49 4e 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 3b .DEALINGS.IN.;;.THE.SOFTWARE...;
6000 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e ;;.Commentary:..;;.This.implemen
6020 74 61 74 69 6f 6e 20 70 6f 72 74 65 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 6d 70 6c tation.ported.the.following.impl
6040 65 6d 65 6e 74 61 74 69 6f 6e 20 66 61 69 74 68 66 75 6c 6c 79 2e 0a 3b 3b 20 68 74 74 70 73 3a ementation.faithfully..;;.https:
6060 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 68 65 6e 2f 70 72 6f 6d 69 73 65 2f 62 6c 6f 62 2f 6d //github.com/then/promise/blob/m
6080 61 73 74 65 72 2f 73 72 63 2f 66 69 6e 61 6c 6c 79 2e 6a 73 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a aster/src/finally.js..;;;.Code:.
60a0 0a 28 72 65 71 75 69 72 65 20 27 70 72 6f 6d 69 73 65 2d 65 73 36 2d 65 78 74 65 6e 73 69 6f 6e .(require.'promise-es6-extension
60c0 73 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c s)..(cl-defmethod.promise-finall
60e0 79 20 28 28 74 68 69 73 20 70 72 6f 6d 69 73 65 2d 63 6c 61 73 73 29 20 66 29 0a 20 20 28 70 72 y.((this.promise-class).f)...(pr
6100 6f 6d 69 73 65 2d 74 68 65 6e 20 74 68 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 omise-then.this.................
6120 28 6c 61 6d 62 64 61 20 28 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (lambda.(value).................
6140 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 28 70 72 6f 6d 69 73 65 2d 72 65 73 6f 6c 76 65 ..(promise-then.(promise-resolve
6160 20 28 66 75 6e 63 61 6c 6c 20 66 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(funcall.f))...................
6180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 20 76 61 6c 75 65 29 ..............(lambda.(_).value)
61a0 29 29 0a 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 65 72 72 29 )).................(lambda.(err)
61c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e ...................(promise-then
61e0 20 28 70 72 6f 6d 69 73 65 2d 72 65 73 6f 6c 76 65 20 28 66 75 6e 63 61 6c 6c 20 66 29 29 0a 20 .(promise-resolve.(funcall.f))..
6200 20 20 20 20 20 20 20 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 ...............................(
6220 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lambda.(_)......................
6240 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 20 65 72 72 .............(promise-reject.err
6260 29 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c ))))))..(provide.'promise-finall
6280 79 29 0a 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c 79 2e 65 6c 20 65 6e 64 73 20 68 y).;;;.promise-finally.el.ends.h
62a0 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ere.............................
62c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
62e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6400 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2d 70 6b 67 promise-20210307.727/promise-pkg
6420 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 00 00 00 .el.............................
6440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6460 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
6480 30 30 30 30 36 35 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 31 36 35 00 20 30 00 00 00 0000650.00000000000.015165..0...
64a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6500 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...................
6520 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...................
6540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6600 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
6620 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
6640 61 67 65 20 22 70 72 6f 6d 69 73 65 22 20 22 32 30 32 31 30 33 30 37 2e 37 32 37 22 0a 20 20 22 age."promise"."20210307.727"..."
6660 50 72 6f 6d 69 73 65 73 2f 41 2b 2e 22 0a 20 20 27 28 28 65 6d 61 63 73 20 22 32 35 2e 31 22 29 Promises/A+."...'((emacs."25.1")
6680 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 63 68 75 )...:url."https://github.com/chu
66a0 6e 74 61 72 6f 2f 65 6d 61 63 73 2d 70 72 6f 6d 69 73 65 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 ntaro/emacs-promise"...:commit."
66c0 63 65 63 35 31 66 65 62 35 66 39 35 37 65 38 66 65 62 65 36 33 32 35 33 33 35 63 66 35 37 64 63 cec51feb5f957e8febe6325335cf57dc
66e0 32 64 62 36 62 65 33 30 22 0a 20 20 3a 72 65 76 64 65 73 63 20 22 63 65 63 35 31 66 65 62 35 66 2db6be30"...:revdesc."cec51feb5f
6700 39 35 22 0a 20 20 3a 6b 65 79 77 6f 72 64 73 20 27 28 22 61 73 79 6e 63 22 20 22 70 72 6f 6d 69 95"...:keywords.'("async"."promi
6720 73 65 22 20 22 63 6f 6e 76 65 6e 69 65 6e 63 65 22 29 0a 20 20 3a 61 75 74 68 6f 72 73 20 27 28 se"."convenience")...:authors.'(
6740 28 22 63 68 75 6e 74 61 72 6f 22 20 2e 20 22 63 68 75 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 ("chuntaro"..."chuntaro@sakura-g
6760 61 6d 65 73 2e 6a 70 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 20 27 28 28 22 63 68 ames.jp"))...:maintainers.'(("ch
6780 75 6e 74 61 72 6f 22 20 2e 20 22 63 68 75 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 61 6d 65 73 untaro"..."chuntaro@sakura-games
67a0 2e 6a 70 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 00 00 00 .jp"))).........................
67c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6800 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2d 72 65 6a promise-20210307.727/promise-rej
6820 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ection-tracking.el..............
6840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6860 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
6880 30 30 31 35 34 36 34 00 30 30 30 30 30 30 30 30 30 30 30 00 30 32 30 31 37 37 00 20 30 00 00 00 0015464.00000000000.020177..0...
68a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6900 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...................
6920 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...................
6940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6a00 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 2e 65 ;;;.promise-rejection-tracking.e
6a20 6c 20 2d 2d 2d 20 50 6f 72 74 69 6e 67 20 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 l.---.Porting.rejection-tracking
6a40 2e 6a 73 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 .js..-*-.lexical-binding:.t;.-*-
6a60 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d 32 30 31 37 20 20 63 68 ..;;.Copyright.(C).2016-2017..ch
6a80 75 6e 74 61 72 6f 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 63 68 75 6e 74 61 72 6f 20 3c 63 68 75 untaro..;;.Author:.chuntaro.<chu
6aa0 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 61 6d 65 73 2e 6a 70 3e 0a 3b 3b 20 55 52 4c 3a 20 68 ntaro@sakura-games.jp>.;;.URL:.h
6ac0 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 68 75 6e 74 61 72 6f 2f 65 6d 61 63 73 ttps://github.com/chuntaro/emacs
6ae0 2d 70 72 6f 6d 69 73 65 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 61 73 79 6e 63 20 70 72 6f 6d -promise.;;.Keywords:.async.prom
6b00 69 73 65 20 63 6f 6e 76 65 6e 69 65 6e 63 65 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d ise.convenience..;;.This.program
6b20 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 .is.free.software;.you.can.redis
6b40 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 tribute.it.and/or.modify.;;.it.u
6b60 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 nder.the.terms.of.the.GNU.Genera
6b80 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 l.Public.License.as.published.by
6ba0 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e .;;.the.Free.Software.Foundation
6bc0 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 ,.either.version.3.of.the.Licens
6be0 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 e,.or.;;.(at.your.option).any.la
6c00 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 ter.version...;;.This.program.is
6c20 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 .distributed.in.the.hope.that.it
6c40 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 .will.be.useful,.;;.but.WITHOUT.
6c60 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 ANY.WARRANTY;.without.even.the.i
6c80 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 mplied.warranty.of.;;.MERCHANTAB
6ca0 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 ILITY.or.FITNESS.FOR.A.PARTICULA
6cc0 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 R.PURPOSE...See.the.;;.GNU.Gener
6ce0 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 al.Public.License.for.more.detai
6d00 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 ls...;;.You.should.have.received
6d20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 .a.copy.of.the.GNU.General.Publi
6d40 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 72 6f c.License.;;.along.with.this.pro
6d60 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 2e 67 gram...If.not,.see.<http://www.g
6d80 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 20 54 68 65 20 6f 72 69 67 69 nu.org/licenses/>...;;.The.origi
6da0 6e 61 6c 20 4a 61 76 61 53 63 72 69 70 74 20 63 6f 64 65 20 69 73 3a 0a 3b 3b 0a 3b 3b 20 43 6f nal.JavaScript.code.is:.;;.;;.Co
6dc0 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 34 20 46 6f 72 62 65 73 20 4c 69 6e 64 65 73 61 79 pyright.(c).2014.Forbes.Lindesay
6de0 0a 3b 3b 0a 3b 3b 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e .;;.;;.Permission.is.hereby.gran
6e00 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 ted,.free.of.charge,.to.any.pers
6e20 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b 20 6f 66 20 74 68 69 73 20 73 on.obtaining.a.copy.;;.of.this.s
6e40 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 oftware.and.associated.documenta
6e60 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 tion.files.(the."Software"),.to.
6e80 64 65 61 6c 0a 3b 3b 20 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 6f 75 74 20 deal.;;.in.the.Software.without.
6ea0 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f 75 74 20 6c restriction,.including.without.l
6ec0 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b 3b 20 74 6f 20 75 73 65 2c 20 imitation.the.rights.;;.to.use,.
6ee0 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 64 69 copy,.modify,.merge,.publish,.di
6f00 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c stribute,.sublicense,.and/or.sel
6f20 6c 0a 3b 3b 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 l.;;.copies.of.the.Software,.and
6f40 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 .to.permit.persons.to.whom.the.S
6f60 6f 66 74 77 61 72 65 20 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 6f 20 73 6f oftware.is.;;.furnished.to.do.so
6f80 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 ,.subject.to.the.following.condi
6fa0 74 69 6f 6e 73 3a 0a 3b 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 tions:.;;.;;.The.above.copyright
6fc0 20 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 .notice.and.this.permission.noti
6fe0 63 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 0a 3b 3b 20 61 6c 6c 20 63 ce.shall.be.included.in.;;.all.c
7000 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 opies.or.substantial.portions.of
7020 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 .the.Software..;;.;;.THE.SOFTWAR
7040 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 E.IS.PROVIDED."AS.IS",.WITHOUT.W
7060 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a ARRANTY.OF.ANY.KIND,.EXPRESS.OR.
7080 3b 3b 20 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 ;;.IMPLIED,.INCLUDING.BUT.NOT.LI
70a0 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 MITED.TO.THE.WARRANTIES.OF.MERCH
70c0 41 4e 54 41 42 49 4c 49 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 ANTABILITY,.;;.FITNESS.FOR.A.PAR
70e0 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d TICULAR.PURPOSE.AND.NONINFRINGEM
7100 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 0a 3b 3b 20 41 55 ENT..IN.NO.EVENT.SHALL.THE.;;.AU
7120 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 45 20 4c 49 THORS.OR.COPYRIGHT.HOLDERS.BE.LI
7140 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 4f 52 20 4f ABLE.FOR.ANY.CLAIM,.DAMAGES.OR.O
7160 54 48 45 52 0a 3b 3b 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 41 4e THER.;;.LIABILITY,.WHETHER.IN.AN
7180 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 4f 54 48 .ACTION.OF.CONTRACT,.TORT.OR.OTH
71a0 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 3b 3b 20 4f 55 54 20 4f 46 20 ERWISE,.ARISING.FROM,.;;.OUT.OF.
71c0 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 OR.IN.CONNECTION.WITH.THE.SOFTWA
71e0 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 RE.OR.THE.USE.OR.OTHER.DEALINGS.
7200 49 4e 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 IN.;;.THE.SOFTWARE...;;;.Comment
7220 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 70 6f 72 ary:..;;.This.implementation.por
7240 74 65 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e ted.the.following.implementation
7260 20 66 61 69 74 68 66 75 6c 6c 79 2e 0a 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 .faithfully..;;.https://github.c
7280 6f 6d 2f 74 68 65 6e 2f 70 72 6f 6d 69 73 65 2f 62 6c 6f 62 2f 6d 61 73 74 65 72 2f 73 72 63 2f om/then/promise/blob/master/src/
72a0 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 2e 6a 73 0a 0a 3b 3b 20 54 4f 44 4f 3a 20 rejection-tracking.js..;;.TODO:.
72c0 44 69 73 70 6c 61 79 20 65 61 73 79 2d 74 6f 2d 72 65 61 64 20 62 61 63 6b 74 72 61 63 65 0a 0a Display.easy-to-read.backtrace..
72e0 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 70 72 6f 6d 69 73 65 2d 63 6f 72 ;;;.Code:..(require.'promise-cor
7300 65 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 77 61 72 6e 20 28 6d 65 73 73 61 67 e)..(defun.promise--warn.(messag
7320 65 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 28 64 69 73 70 6c 61 79 2d 77 61 72 6e 69 6e 67 e.&rest.args)...(display-warning
7340 20 27 70 72 6f 6d 69 73 65 20 28 61 70 70 6c 79 20 23 27 66 6f 72 6d 61 74 2d 6d 65 73 73 61 67 .'promise.(apply.#'format-messag
7360 65 20 6d 65 73 73 61 67 65 20 61 72 67 73 29 29 29 0a 0a 28 64 65 66 76 61 72 20 70 72 6f 6d 69 e.message.args)))..(defvar.promi
7380 73 65 2d 2d 64 65 66 61 75 6c 74 2d 77 68 69 74 65 6c 69 73 74 20 27 28 76 6f 69 64 2d 66 75 6e se--default-whitelist.'(void-fun
73a0 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ction...........................
73c0 20 20 20 20 20 20 20 20 20 20 20 76 6f 69 64 2d 76 61 72 69 61 62 6c 65 0a 20 20 20 20 20 20 20 ...........void-variable........
73e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 72 ..............................wr
7400 6f 6e 67 2d 74 79 70 65 2d 61 72 67 75 6d 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ong-type-argument...............
7420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 67 73 2d 6f 75 74 2d .......................args-out-
7440 6f 66 2d 72 61 6e 67 65 29 29 0a 0a 28 64 65 66 76 61 72 20 70 72 6f 6d 69 73 65 2d 2d 65 6e 61 of-range))..(defvar.promise--ena
7460 62 6c 65 64 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 bled.nil)..(defun.promise-reject
7480 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 2d 64 69 73 61 62 6c 65 20 28 29 0a 20 20 28 73 65 74 66 20 ion-tracking-disable.()...(setf.
74a0 70 72 6f 6d 69 73 65 2d 2d 65 6e 61 62 6c 65 64 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 70 72 6f promise--enabled.nil.........pro
74c0 6d 69 73 65 2d 2d 6f 6e 2d 68 61 6e 64 6c 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 70 72 6f 6d mise--on-handle.nil.........prom
74e0 69 73 65 2d 2d 6f 6e 2d 72 65 6a 65 63 74 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f ise--on-reject.nil))..(defun.pro
7500 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 2d 65 6e 61 62 6c 65 20 28 mise-rejection-tracking-enable.(
7520 26 6f 70 74 69 6f 6e 61 6c 20 6f 70 74 69 6f 6e 73 29 0a 20 20 28 77 68 65 6e 20 70 72 6f 6d 69 &optional.options)...(when.promi
7540 73 65 2d 2d 65 6e 61 62 6c 65 64 20 28 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 se--enabled.(promise-rejection-t
7560 72 61 63 6b 69 6e 67 2d 64 69 73 61 62 6c 65 29 29 0a 20 20 28 73 65 74 66 20 70 72 6f 6d 69 73 racking-disable))...(setf.promis
7580 65 2d 2d 65 6e 61 62 6c 65 64 20 74 29 0a 20 20 28 6c 65 74 20 28 28 69 64 20 2d 31 29 0a 20 20 e--enabled.t)...(let.((id.-1)...
75a0 20 20 20 20 20 20 28 64 69 73 70 6c 61 79 2d 69 64 20 2d 31 29 0a 20 20 20 20 20 20 20 20 28 72 ......(display-id.-1).........(r
75c0 65 6a 65 63 74 69 6f 6e 73 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 29 29 29 0a 20 20 ejections.(make-hash-table)))...
75e0 20 20 28 63 6c 2d 66 6c 65 74 2a 0a 20 20 20 20 20 20 20 20 28 28 72 65 6a 65 63 74 69 6f 6e 73 ..(cl-flet*.........((rejections
7600 20 28 69 64 20 73 79 6d 62 6f 6c 29 20 28 61 6c 69 73 74 2d 67 65 74 20 73 79 6d 62 6f 6c 20 28 .(id.symbol).(alist-get.symbol.(
7620 67 65 74 68 61 73 68 20 69 64 20 72 65 6a 65 63 74 69 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 20 gethash.id.rejections)))........
7640 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 2d 73 65 74 20 28 69 64 20 73 79 6d 62 6f 6c 20 76 61 6c ..(rejections-set.(id.symbol.val
7660 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 ue)..........................(se
7680 74 66 20 28 61 6c 69 73 74 2d 67 65 74 20 73 79 6d 62 6f 6c 20 28 67 65 74 68 61 73 68 20 69 64 tf.(alist-get.symbol.(gethash.id
76a0 20 72 65 6a 65 63 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .rejections))...................
76c0 20 20 20 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 28 6f .............value))..........(o
76e0 70 74 69 6f 6e 73 20 28 73 79 6d 29 20 28 61 6c 69 73 74 2d 67 65 74 20 73 79 6d 20 6f 70 74 69 ptions.(sym).(alist-get.sym.opti
7700 6f 6e 73 29 29 0a 0a 20 20 20 20 20 20 20 20 20 28 6f 6e 2d 75 6e 68 61 6e 64 6c 65 64 20 28 69 ons))...........(on-unhandled.(i
7720 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 d)........................(when.
7740 28 6f 72 20 28 6f 70 74 69 6f 6e 73 20 27 61 6c 6c 2d 72 65 6a 65 63 74 69 6f 6e 73 29 0a 20 20 (or.(options.'all-rejections)...
7760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
7780 70 72 6f 6d 69 73 65 2d 2d 6d 61 74 63 68 2d 77 68 69 74 65 6c 69 73 74 0a 20 20 20 20 20 20 20 promise--match-whitelist........
77a0 20 20 20 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 72 65 6a 65 ...........................(reje
77c0 63 74 69 6f 6e 73 20 69 64 20 27 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ctions.id.'error)...............
77e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6f 70 74 69 6f 6e 73 ....................(or.(options
7800 20 27 77 68 69 74 65 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .'whitelist)....................
7820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 73 65 2d 2d 64 65 66 61 ...................promise--defa
7840 75 6c 74 2d 77 68 69 74 65 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ult-whitelist)))................
7860 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 2d 73 65 74 20 69 64 20 27 64 69 ..........(rejections-set.id.'di
7880 73 70 6c 61 79 2d 69 64 20 28 63 6c 2d 69 6e 63 66 20 64 69 73 70 6c 61 79 2d 69 64 29 29 0a 20 splay-id.(cl-incf.display-id))..
78a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 ........................(cond...
78c0 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 28 6f 70 74 69 6f 6e ........................((option
78e0 73 20 27 6f 6e 2d 75 6e 68 61 6e 64 6c 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s.'on-unhandled)................
7900 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 2d 73 65 74 20 69 64 20 27 ............(rejections-set.id.'
7920 6c 6f 67 67 65 64 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 logged.t).......................
7940 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 28 6f 70 74 69 6f 6e 73 20 27 6f 6e 2d 75 6e 68 61 6e .....(funcall.(options.'on-unhan
7960 64 6c 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dled)...........................
7980 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 64 69 73 70 6c 61 ..........(rejections.id.'displa
79a0 79 2d 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 y-id)...........................
79c0 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 65 72 72 6f 72 29 ..........(rejections.id.'error)
79e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a ))...........................(t.
7a00 20 20 20 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 72 65 6a 65 ...........................(reje
7a20 63 74 69 6f 6e 73 2d 73 65 74 20 69 64 20 27 6c 6f 67 67 65 64 20 74 29 0a 20 20 20 20 20 20 20 ctions-set.id.'logged.t)........
7a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 6c 6f ....................(promise--lo
7a60 67 2d 65 72 72 6f 72 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 64 69 73 70 6c 61 79 2d g-error.(rejections.id.'display-
7a80 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 id).............................
7aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 ...................(rejections.i
7ac0 64 20 27 65 72 72 6f 72 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 6e 2d 68 61 6e 64 d.'error))))))..........(on-hand
7ae0 6c 65 64 20 28 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 led.(id)......................(w
7b00 68 65 6e 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 6c 6f 67 67 65 64 29 0a 20 20 20 20 hen.(rejections.id.'logged).....
7b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 ...................(cond........
7b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f 70 74 69 6f 6e 73 20 27 6f 6e 2d 68 .................((options.'on-h
7b60 61 6e 64 6c 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 andled).........................
7b80 20 28 66 75 6e 63 61 6c 6c 20 28 6f 70 74 69 6f 6e 73 20 27 6f 6e 2d 68 61 6e 64 6c 65 64 29 0a .(funcall.(options.'on-handled).
7ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7bc0 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 64 69 73 70 6c 61 79 2d 69 64 29 0a 20 20 ..(rejections.id.'display-id)...
7be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7c00 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 65 72 72 6f 72 29 29 29 0a 20 20 20 20 20 20 20 (rejections.id.'error)))........
7c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20 28 72 65 6a 65 63 74 69 6f .................((not.(rejectio
7c40 6e 73 20 69 64 20 27 6f 6e 2d 75 6e 68 61 6e 64 6c 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 ns.id.'on-unhandled))...........
7c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 2d 77 61 72 6e 20 22 50 ...............(promise--warn."P
7c80 72 6f 6d 69 73 65 20 52 65 6a 65 63 74 69 6f 6e 20 48 61 6e 64 6c 65 64 20 28 69 64 3a 25 64 29 romise.Rejection.Handled.(id:%d)
7ca0 3a 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :"..............................
7cc0 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 64 69 73 70 6c ...........(rejections.id.'displ
7ce0 61 79 2d 69 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ay-id)).........................
7d00 20 28 70 72 6f 6d 69 73 65 2d 2d 77 61 72 6e 20 22 20 20 54 68 69 73 20 6d 65 61 6e 73 20 79 6f .(promise--warn."..This.means.yo
7d20 75 20 63 61 6e 20 69 67 6e 6f 72 65 20 61 6e 79 20 70 72 65 76 69 6f 75 73 20 6d 65 73 73 61 67 u.can.ignore.any.previous.messag
7d40 65 73 20 6f 66 20 74 68 65 20 66 6f 72 6d 20 5c 22 50 6f 73 73 69 62 6c 65 20 55 6e 68 61 6e 64 es.of.the.form.\"Possible.Unhand
7d60 6c 65 64 20 50 72 6f 6d 69 73 65 20 52 65 6a 65 63 74 69 6f 6e 5c 22 20 77 69 74 68 20 69 64 20 led.Promise.Rejection\".with.id.
7d80 25 64 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 %d."............................
7da0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 69 64 20 27 64 69 73 .............(rejections.id.'dis
7dc0 70 6c 61 79 2d 69 64 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 66 20 70 72 6f 6d 69 play-id))))))).......(setf.promi
7de0 73 65 2d 2d 6f 6e 2d 68 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 se--on-handle.............(lambd
7e00 61 20 28 70 72 6f 6d 69 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 a.(promise)...............(when.
7e20 28 61 6e 64 20 28 3d 20 28 70 72 6f 6d 69 73 65 2d 5f 73 74 61 74 65 20 70 72 6f 6d 69 73 65 29 (and.(=.(promise-_state.promise)
7e40 20 32 29 20 3b 20 49 53 20 52 45 4a 45 43 54 45 44 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .2).;.IS.REJECTED...............
7e60 20 20 20 20 20 20 20 20 20 20 20 28 67 65 74 68 61 73 68 20 28 70 72 6f 6d 69 73 65 2d 5f 72 65 ...........(gethash.(promise-_re
7e80 6a 65 63 74 69 6f 6e 2d 69 64 20 70 72 6f 6d 69 73 65 29 20 72 65 6a 65 63 74 69 6f 6e 73 29 29 jection-id.promise).rejections))
7ea0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 72 65 6a 65 63 74 69 6f 6e 73 .................(if.(rejections
7ec0 20 28 70 72 6f 6d 69 73 65 2d 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 20 70 72 6f 6d 69 73 65 29 .(promise-_rejection-id.promise)
7ee0 20 27 6c 6f 67 67 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f .'logged).....................(o
7f00 6e 2d 68 61 6e 64 6c 65 64 20 28 70 72 6f 6d 69 73 65 2d 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 n-handled.(promise-_rejection-id
7f20 20 70 72 6f 6d 69 73 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 .promise))...................(ca
7f40 6e 63 65 6c 2d 74 69 6d 65 72 20 28 72 65 6a 65 63 74 69 6f 6e 73 20 28 70 72 6f 6d 69 73 65 2d ncel-timer.(rejections.(promise-
7f60 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 20 70 72 6f 6d 69 73 65 29 20 27 74 69 6d 65 6f 75 74 29 _rejection-id.promise).'timeout)
7f80 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6d 68 61 73 68 20 28 70 72 6f )).................(remhash.(pro
7fa0 6d 69 73 65 2d 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 20 70 72 6f 6d 69 73 65 29 20 72 65 6a 65 mise-_rejection-id.promise).reje
7fc0 63 74 69 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 73 65 2d 2d 6f ctions))).............promise--o
7fe0 6e 2d 72 65 6a 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70 72 n-reject.............(lambda.(pr
8000 6f 6d 69 73 65 20 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 omise.err)...............(when.(
8020 7a 65 72 6f 70 20 28 70 72 6f 6d 69 73 65 2d 5f 64 65 66 65 72 72 65 64 2d 73 74 61 74 65 20 70 zerop.(promise-_deferred-state.p
8040 72 6f 6d 69 73 65 29 29 20 3b 20 6e 6f 74 20 79 65 74 20 68 61 6e 64 6c 65 64 0a 20 20 20 20 20 romise)).;.not.yet.handled......
8060 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 70 72 6f 6d 69 73 65 2d 5f 72 65 6a 65 63 ...........(setf.(promise-_rejec
8080 74 69 6f 6e 2d 69 64 20 70 72 6f 6d 69 73 65 29 20 28 63 6c 2d 69 6e 63 66 20 69 64 29 29 0a 20 tion-id.promise).(cl-incf.id))..
80a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 28 70 72 6f 6d 69 73 65 ...............(puthash.(promise
80c0 2d 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 64 20 70 72 6f 6d 69 73 65 29 0a 20 20 20 20 20 20 20 20 -_rejection-id.promise).........
80e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 28 64 69 73 70 6c 61 79 2d 69 64 20 2e .................`((display-id..
8100 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .nil)...........................
8120 20 28 65 72 72 6f 72 20 2e 20 2c 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(error...,err).................
8140 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 6f 75 74 20 2e 20 2c 28 72 75 6e 2d 61 74 2d 74 ...........(timeout...,(run-at-t
8160 69 6d 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 20 20 ime.............................
8180 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 70 72 6f 6d 69 73 65 2d 2d 6d 61 74 63 68 2d ............(if.(promise--match-
81a0 77 68 69 74 65 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 whitelist.......................
81c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 20 70 72 6f 6d 69 .......................err.promi
81e0 73 65 2d 2d 64 65 66 61 75 6c 74 2d 77 68 69 74 65 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 se--default-whitelist)..........
8200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8220 20 20 20 30 2e 31 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 ...0.1..........................
8240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................2).............
8260 20 20 20 20 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 69 6c 0a ............................nil.
8280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
82a0 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ........(lambda.()..............
82c0 20 20 20 20 20 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 6f 6e .............................(on
82e0 2d 75 6e 68 61 6e 64 6c 65 64 20 28 70 72 6f 6d 69 73 65 2d 5f 72 65 6a 65 63 74 69 6f 6e 2d 69 -unhandled.(promise-_rejection-i
8300 64 20 70 72 6f 6d 69 73 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d.promise)))))..................
8320 20 20 20 20 20 20 20 20 20 20 28 6c 6f 67 67 65 64 20 2e 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 ..........(logged...nil)).......
8340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6a 65 63 74 69 6f 6e 73 29 29 29 ...................rejections)))
8360 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 6c 6f 67 2d 65 72 72 6f 72 20 ))))..(defun.promise--log-error.
8380 28 69 64 20 65 72 72 6f 72 29 0a 20 20 28 70 72 6f 6d 69 73 65 2d 2d 77 61 72 6e 20 22 50 6f 73 (id.error)...(promise--warn."Pos
83a0 73 69 62 6c 65 20 55 6e 68 61 6e 64 6c 65 64 20 50 72 6f 6d 69 73 65 20 52 65 6a 65 63 74 69 6f sible.Unhandled.Promise.Rejectio
83c0 6e 20 28 69 64 3a 25 64 29 3a 22 20 69 64 29 0a 20 20 28 64 69 73 70 6c 61 79 2d 77 61 72 6e 69 n.(id:%d):".id)...(display-warni
83e0 6e 67 20 27 70 72 6f 6d 69 73 65 20 28 70 72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67 20 65 72 72 ng.'promise.(prin1-to-string.err
8400 6f 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 2d 6d 61 74 63 68 2d 77 68 69 or)))..(defun.promise--match-whi
8420 74 65 6c 69 73 74 20 28 65 72 72 6f 72 20 6c 69 73 74 29 0a 20 20 28 63 6c 2d 73 6f 6d 65 20 28 telist.(error.list)...(cl-some.(
8440 6c 61 6d 62 64 61 20 28 63 6c 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 28 6f lambda.(cls)..............(eq.(o
8460 72 20 28 61 6e 64 20 28 63 6f 6e 73 70 20 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 r.(and.(consp.error)............
8480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20 65 72 72 6f 72 29 29 0a 20 20 20 20 ...............(car.error)).....
84a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 .................error).........
84c0 20 20 20 20 20 20 20 20 20 63 6c 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 6c 69 73 74 29 29 .........cls))............list))
84e0 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 72 ..(provide.'promise-rejection-tr
8500 61 63 6b 69 6e 67 29 0a 3b 3b 3b 20 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 72 acking).;;;.promise-rejection-tr
8520 61 63 6b 69 6e 67 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 acking.el.ends.here.............
8540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
85a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
85c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
85e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8600 70 72 6f 6d 69 73 65 2d 32 30 32 31 30 33 30 37 2e 37 32 37 2f 70 72 6f 6d 69 73 65 2e 65 6c 00 promise-20210307.727/promise.el.
8620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8660 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
8680 30 30 36 32 34 34 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 34 31 34 00 20 30 00 00 00 0062441.00000000000.014414..0...
86a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
86c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
86e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8700 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...................
8720 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...................
8740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
87a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
87c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
87e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8800 3b 3b 3b 20 70 72 6f 6d 69 73 65 2e 65 6c 20 2d 2d 2d 20 50 72 6f 6d 69 73 65 73 2f 41 2b 20 20 ;;;.promise.el.---.Promises/A+..
8820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c .....................-*-.lexical
8840 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 -binding:.t;.-*-..;;.Copyright.(
8860 43 29 20 32 30 31 36 2d 32 30 31 37 20 20 63 68 75 6e 74 61 72 6f 0a 0a 3b 3b 20 41 75 74 68 6f C).2016-2017..chuntaro..;;.Autho
8880 72 3a 20 63 68 75 6e 74 61 72 6f 20 3c 63 68 75 6e 74 61 72 6f 40 73 61 6b 75 72 61 2d 67 61 6d r:.chuntaro.<chuntaro@sakura-gam
88a0 65 73 2e 6a 70 3e 0a 3b 3b 20 55 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f es.jp>.;;.URL:.https://github.co
88c0 6d 2f 63 68 75 6e 74 61 72 6f 2f 65 6d 61 63 73 2d 70 72 6f 6d 69 73 65 0a 3b 3b 20 50 61 63 6b m/chuntaro/emacs-promise.;;.Pack
88e0 61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28 65 6d 61 63 73 20 22 32 35 2e 31 22 29 29 0a 3b age-Requires:.((emacs."25.1")).;
8900 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32 30 32 31 30 33 30 37 2e 37 32 37 0a ;.Package-Version:.20210307.727.
8920 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e 3a 20 63 65 63 35 31 66 65 62 35 66 39 ;;.Package-Revision:.cec51feb5f9
8940 35 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 61 73 79 6e 63 20 70 72 6f 6d 69 73 65 20 63 6f 6e 5.;;.Keywords:.async.promise.con
8960 76 65 6e 69 65 6e 63 65 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 venience..;;.This.program.is.fre
8980 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 e.software;.you.can.redistribute
89a0 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 .it.and/or.modify.;;.it.under.th
89c0 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 e.terms.of.the.GNU.General.Publi
89e0 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 c.License.as.published.by.;;.the
8a00 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 .Free.Software.Foundation,.eithe
8a20 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b r.version.3.of.the.License,.or.;
8a40 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 ;.(at.your.option).any.later.ver
8a60 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 sion...;;.This.program.is.distri
8a80 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 buted.in.the.hope.that.it.will.b
8aa0 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 e.useful,.;;.but.WITHOUT.ANY.WAR
8ac0 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 RANTY;.without.even.the.implied.
8ae0 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f warranty.of.;;.MERCHANTABILITY.o
8b00 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f r.FITNESS.FOR.A.PARTICULAR.PURPO
8b20 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c SE...See.the.;;.GNU.General.Publ
8b40 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b ic.License.for.more.details...;;
8b60 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 .You.should.have.received.a.copy
8b80 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e .of.the.GNU.General.Public.Licen
8ba0 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 se.;;.along.with.this.program...
8bc0 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f If.not,.see.<http://www.gnu.org/
8be0 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 4a 61 76 licenses/>...;;.The.original.Jav
8c00 61 53 63 72 69 70 74 20 63 6f 64 65 20 69 73 3a 0a 3b 3b 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 aScript.code.is:.;;.;;.Copyright
8c20 20 28 63 29 20 32 30 31 34 20 46 6f 72 62 65 73 20 4c 69 6e 64 65 73 61 79 0a 3b 3b 0a 3b 3b 20 .(c).2014.Forbes.Lindesay.;;.;;.
8c40 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 Permission.is.hereby.granted,.fr
8c60 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 ee.of.charge,.to.any.person.obta
8c80 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b 20 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 ining.a.copy.;;.of.this.software
8ca0 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 .and.associated.documentation.fi
8cc0 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 3b 3b les.(the."Software"),.to.deal.;;
8ce0 20 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 .in.the.Software.without.restric
8d00 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 tion,.including.without.limitati
8d20 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b 3b 20 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d on.the.rights.;;.to.use,.copy,.m
8d40 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 odify,.merge,.publish,.distribut
8d60 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 2f 6f 72 20 73 65 6c 6c 0a 3b 3b 20 63 6f e,.sublicense,.and/or.sell.;;.co
8d80 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 pies.of.the.Software,.and.to.per
8da0 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f 6d 20 74 68 65 20 53 6f 66 74 77 61 72 65 mit.persons.to.whom.the.Software
8dc0 20 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 64 20 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a 65 .is.;;.furnished.to.do.so,.subje
8de0 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a ct.to.the.following.conditions:.
8e00 3b 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 ;;.;;.The.above.copyright.notice
8e20 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c .and.this.permission.notice.shal
8e40 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 0a 3b 3b 20 61 6c 6c 20 63 6f 70 69 65 73 20 6f l.be.included.in.;;.all.copies.o
8e60 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f r.substantial.portions.of.the.So
8e80 66 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 ftware..;;.;;.THE.SOFTWARE.IS.PR
8ea0 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 OVIDED."AS.IS",.WITHOUT.WARRANTY
8ec0 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 3b 3b 20 49 4d 50 4c .OF.ANY.KIND,.EXPRESS.OR.;;.IMPL
8ee0 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 IED,.INCLUDING.BUT.NOT.LIMITED.T
8f00 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c O.THE.WARRANTIES.OF.MERCHANTABIL
8f20 49 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 ITY,.;;.FITNESS.FOR.A.PARTICULAR
8f40 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e .PURPOSE.AND.NONINFRINGEMENT..IN
8f60 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 0a 3b 3b 20 41 55 54 48 4f 52 53 20 4f .NO.EVENT.SHALL.THE.;;.AUTHORS.O
8f80 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f R.COPYRIGHT.HOLDERS.BE.LIABLE.FO
8fa0 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 3b 3b R.ANY.CLAIM,.DAMAGES.OR.OTHER.;;
8fc0 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e .LIABILITY,.WHETHER.IN.AN.ACTION
8fe0 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c .OF.CONTRACT,.TORT.OR.OTHERWISE,
9000 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 3b 3b 20 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 .ARISING.FROM,.;;.OUT.OF.OR.IN.C
9020 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 45 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 ONNECTION.WITH.THE.SOFTWARE.OR.T
9040 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 45 41 4c 49 4e 47 53 20 49 4e 0a 3b 3b 20 54 HE.USE.OR.OTHER.DEALINGS.IN.;;.T
9060 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b HE.SOFTWARE...;;;.Commentary:..;
9080 3b 20 54 68 69 73 20 69 73 20 61 20 73 69 6d 70 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f ;.This.is.a.simple.implementatio
90a0 6e 20 6f 66 20 50 72 6f 6d 69 73 65 73 2f 41 2b 2e 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 69 6d 70 n.of.Promises/A+..;;.;;.This.imp
90c0 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 70 6f 72 74 65 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 lementation.ported.the.following
90e0 20 50 72 6f 6d 69 73 65 73 2f 41 2b 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 61 69 74 .Promises/A+.implementation.fait
9100 68 66 75 6c 6c 79 2e 0a 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 68 hfully..;;.https://github.com/th
9120 65 6e 2f 70 72 6f 6d 69 73 65 0a 3b 3b 0a 3b 3b 20 2a 20 54 68 65 20 73 61 6d 65 20 41 50 49 20 en/promise.;;.;;.*.The.same.API.
9140 61 73 20 4a 61 76 61 53 63 72 69 70 74 20 76 65 72 73 69 6f 6e 20 50 72 6f 6d 69 73 65 20 63 61 as.JavaScript.version.Promise.ca
9160 6e 20 62 65 20 75 73 65 64 2e 0a 3b 3b 20 20 2a 20 74 68 65 6e 2c 20 63 61 74 63 68 2c 20 72 65 n.be.used..;;..*.then,.catch,.re
9180 73 6f 6c 76 65 2c 20 72 65 6a 65 63 74 2c 20 61 6c 6c 2c 20 72 61 63 65 2c 20 65 74 63 2e 2e 2e solve,.reject,.all,.race,.etc...
91a0 0a 3b 3b 20 2a 20 73 75 70 70 6f 72 74 73 20 22 74 68 65 6e 61 62 6c 65 22 0a 3b 3b 20 2a 20 73 .;;.*.supports."thenable".;;.*.s
91c0 75 70 70 6f 72 74 73 20 22 49 6e 68 65 72 69 74 61 6e 63 65 20 6f 66 20 50 72 6f 6d 69 73 65 22 upports."Inheritance.of.Promise"
91e0 0a 3b 3b 20 2a 20 73 75 70 70 6f 72 74 73 20 22 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 .;;.*.supports."rejection-tracki
9200 6e 67 22 0a 3b 3b 0a 3b 3b 20 55 73 61 67 65 3a 0a 3b 3b 20 53 65 65 20 60 70 72 6f 6d 69 73 65 ng".;;.;;.Usage:.;;.See.`promise
9220 2d 65 78 61 6d 70 6c 65 73 2e 65 6c 27 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 20 20 68 -examples.el'.for.details..;;..h
9240 74 74 70 73 3a 2f 2f 72 61 77 2e 67 69 74 68 75 62 75 73 65 72 63 6f 6e 74 65 6e 74 2e 63 6f 6d ttps://raw.githubusercontent.com
9260 2f 63 68 75 6e 74 61 72 6f 2f 65 6d 61 63 73 2d 70 72 6f 6d 69 73 65 2f 6d 61 73 74 65 72 2f 65 /chuntaro/emacs-promise/master/e
9280 78 61 6d 70 6c 65 73 2f 70 72 6f 6d 69 73 65 2d 65 78 61 6d 70 6c 65 73 2e 65 6c 0a 3b 3b 20 20 xamples/promise-examples.el.;;..
92a0 59 6f 75 20 63 61 6e 20 63 68 65 63 6b 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 20 77 68 69 6c You.can.check.the.operation.whil
92c0 65 20 64 6f 77 6e 6c 6f 61 64 69 6e 67 20 61 6e 64 20 72 75 6e 6e 69 6e 67 20 69 74 20 69 6e 74 e.downloading.and.running.it.int
92e0 65 72 61 63 74 69 76 65 6c 79 2e 0a 3b 3b 0a 3b 3b 20 28 72 65 71 75 69 72 65 20 27 70 72 6f 6d eractively..;;.;;.(require.'prom
9300 69 73 65 29 0a 3b 3b 0a 3b 3b 20 3b 3b 20 50 6c 65 61 73 65 20 62 65 20 73 75 72 65 20 74 6f 20 ise).;;.;;.;;.Please.be.sure.to.
9320 65 6e 61 62 6c 65 20 69 74 20 77 68 65 6e 20 64 65 76 65 6c 6f 70 69 6e 67 2e 0a 3b 3b 20 28 70 enable.it.when.developing..;;.(p
9340 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 2d 65 6e 61 62 6c 65 romise-rejection-tracking-enable
9360 20 27 28 28 61 6c 6c 2d 72 65 6a 65 63 74 69 6f 6e 73 20 2e 20 74 29 29 29 0a 3b 3b 0a 3b 3b 20 .'((all-rejections...t))).;;.;;.
9380 28 64 65 66 75 6e 20 64 6f 2d 73 6f 6d 65 74 68 69 6e 67 2d 61 73 79 6e 63 20 28 64 65 6c 61 79 (defun.do-something-async.(delay
93a0 2d 73 65 63 20 76 61 6c 75 65 29 0a 3b 3b 20 20 20 22 52 65 74 75 72 6e 20 60 50 72 6f 6d 69 73 -sec.value).;;..."Return.`Promis
93c0 65 27 20 74 6f 20 72 65 73 6f 6c 76 65 20 74 68 65 20 76 61 6c 75 65 20 61 73 79 6e 63 68 72 6f e'.to.resolve.the.value.asynchro
93e0 6e 6f 75 73 6c 79 2e 22 0a 3b 3b 20 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 28 6c 61 6d 62 nously.".;;...(promise-new.(lamb
9400 64 61 20 28 72 65 73 6f 6c 76 65 20 5f 72 65 6a 65 63 74 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 da.(resolve._reject).;;.........
9420 20 20 20 20 20 20 20 20 20 28 72 75 6e 2d 61 74 2d 74 69 6d 65 20 64 65 6c 61 79 2d 73 65 63 0a .........(run-at-time.delay-sec.
9440 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ;;..............................
9460 20 6e 69 6c 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .nil.;;.........................
9480 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 ......(lambda.().;;.............
94a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 ....................(funcall.res
94c0 6f 6c 76 65 20 76 61 6c 75 65 29 29 29 29 29 29 0a 3b 3b 0a 3b 3b 20 28 64 65 66 75 6e 20 65 78 olve.value)))))).;;.;;.(defun.ex
94e0 61 6d 70 6c 65 34 20 28 29 0a 3b 3b 20 20 20 22 41 6c 6c 20 70 72 6f 63 65 73 73 65 73 20 61 72 ample4.().;;..."All.processes.ar
9500 65 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 50 72 6f 6d 69 73 65 20 63 68 61 69 6e 2e 22 0a 3b e.asynchronous.Promise.chain.".;
9520 3b 20 20 20 28 70 72 6f 6d 69 73 65 2d 63 68 61 69 6e 20 28 64 6f 2d 73 6f 6d 65 74 68 69 6e 67 ;...(promise-chain.(do-something
9540 2d 61 73 79 6e 63 20 31 20 33 33 29 0a 3b 3b 20 20 20 20 20 28 74 68 65 6e 20 28 6c 61 6d 62 64 -async.1.33).;;.....(then.(lambd
9560 61 20 28 72 65 73 75 6c 74 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 a.(result).;;.............(messa
9580 67 65 20 22 66 69 72 73 74 20 72 65 73 75 6c 74 3a 20 25 73 22 20 72 65 73 75 6c 74 29 0a 3b 3b ge."first.result:.%s".result).;;
95a0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 2d 73 6f 6d 65 74 68 69 6e 67 2d 61 73 79 6e 63 .............(do-something-async
95c0 20 31 20 28 2a 20 72 65 73 75 6c 74 20 32 29 29 29 29 0a 3b 3b 0a 3b 3b 20 20 20 20 20 28 74 68 .1.(*.result.2)))).;;.;;.....(th
95e0 65 6e 20 28 6c 61 6d 62 64 61 20 28 73 65 63 6f 6e 64 2d 72 65 73 75 6c 74 29 0a 3b 3b 20 20 20 en.(lambda.(second-result).;;...
9600 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 73 65 63 6f 6e 64 20 72 65 73 75 6c ..........(message."second.resul
9620 74 3a 20 25 73 22 20 73 65 63 6f 6e 64 2d 72 65 73 75 6c 74 29 0a 3b 3b 20 20 20 20 20 20 20 20 t:.%s".second-result).;;........
9640 20 20 20 20 20 28 64 6f 2d 73 6f 6d 65 74 68 69 6e 67 2d 61 73 79 6e 63 20 31 20 28 2a 20 73 65 .....(do-something-async.1.(*.se
9660 63 6f 6e 64 2d 72 65 73 75 6c 74 20 32 29 29 29 29 0a 3b 3b 0a 3b 3b 20 20 20 20 20 28 74 68 65 cond-result.2)))).;;.;;.....(the
9680 6e 20 28 6c 61 6d 62 64 61 20 28 74 68 69 72 64 2d 72 65 73 75 6c 74 29 0a 3b 3b 20 20 20 20 20 n.(lambda.(third-result).;;.....
96a0 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 74 68 69 72 64 20 72 65 73 75 6c 74 3a 20 ........(message."third.result:.
96c0 25 73 22 20 74 68 69 72 64 2d 72 65 73 75 6c 74 29 29 29 29 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a %s".third-result)))))..;;;.Code:
96e0 0a 0a 28 72 65 71 75 69 72 65 20 27 70 72 6f 6d 69 73 65 2d 65 73 36 2d 65 78 74 65 6e 73 69 6f ..(require.'promise-es6-extensio
9700 6e 73 29 0a 28 72 65 71 75 69 72 65 20 27 70 72 6f 6d 69 73 65 2d 64 6f 6e 65 29 0a 28 72 65 71 ns).(require.'promise-done).(req
9720 75 69 72 65 20 27 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c 79 29 0a 28 72 65 71 75 69 72 65 20 uire.'promise-finally).(require.
9740 27 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 69 6f 6e 2d 74 72 61 63 6b 69 6e 67 29 0a 0a 3b 3b 'promise-rejection-tracking)..;;
9760 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 6d 61 63 72 6f 20 70 72 6f 6d 69 73 65 2d 63 ;###autoload.(defmacro.promise-c
9780 68 61 69 6e 20 28 70 72 6f 6d 69 73 65 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 45 78 74 hain.(promise.&rest.body)..."Ext
97a0 72 61 63 74 20 50 52 4f 4d 49 53 45 2c 20 42 4f 44 59 20 69 6e 63 6c 75 64 65 20 74 68 65 6e 2c ract.PROMISE,.BODY.include.then,
97c0 20 63 61 74 63 68 2c 20 64 6f 6e 65 20 61 6e 64 20 66 69 6e 61 6c 6c 79 2e 0a 0a 45 78 74 72 61 .catch,.done.and.finally...Extra
97e0 63 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 2e 2e 2e 0a 0a 20 20 20 20 28 70 ct.the.following.code.........(p
9800 72 6f 6d 69 73 65 2d 63 68 61 69 6e 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 2e 2e 2e 29 0a 20 romise-chain.(promise-new....)..
9820 20 20 20 20 20 28 74 68 65 6e 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 76 61 6c 75 65 .....(then........(lambda.(value
9840 29 0a 20 20 20 20 20 20 20 20 20 2e 2e 2e 29 29 0a 0a 20 20 20 20 20 20 28 63 61 74 63 68 0a 20 ).............))........(catch..
9860 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 61 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 ......(lambda.(reason)..........
9880 2e 2e 2e 29 29 0a 0a 20 20 20 20 20 20 28 64 6f 6e 65 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 64 ...))........(done........(lambd
98a0 61 20 28 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 2e 2e 2e 29 29 0a 0a 20 20 20 20 20 20 a.(value).............))........
98c0 28 66 69 6e 61 6c 6c 79 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 20 2e 2e 2e 29 29 (finally........(lambda.()....))
98e0 0a 0a 20 20 20 20 20 20 3b 3b 20 41 6e 61 70 68 6f 72 69 63 20 76 65 72 73 69 6f 6e 73 20 6f 66 ........;;.Anaphoric.versions.of
9900 20 60 74 68 65 6e 27 20 61 6e 64 20 60 63 61 74 63 68 27 2e 0a 0a 20 20 20 20 20 20 28 74 68 65 .`then'.and.`catch'.........(the
9920 6e 61 20 28 6d 65 73 73 61 67 65 20 5c 22 72 65 73 75 6c 74 20 2d 3e 20 25 73 5c 22 20 72 65 73 na.(message.\"result.->.%s\".res
9940 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 2e 2e 29 0a 0a 20 20 20 20 20 20 28 63 ult).................)........(c
9960 61 74 63 68 61 20 28 6d 65 73 73 61 67 65 20 5c 22 65 72 72 6f 72 3a 20 72 65 61 73 6f 6e 20 2d atcha.(message.\"error:.reason.-
9980 3e 20 25 73 5c 22 20 72 65 61 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 2e 2e >.%s\".reason)..................
99a0 29 29 0a 0a 61 73 20 62 65 6c 6f 77 2e 0a 0a 20 20 20 20 28 6c 65 74 20 28 28 70 72 6f 6d 69 73 ))..as.below.......(let.((promis
99c0 65 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 20 2e 2e 2e 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 e.(promise-new....))).......(set
99e0 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 70 72 6f 6d 69 73 65 0a f.promise.(promise-then.promise.
9a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9a20 20 20 28 6c 61 6d 62 64 61 20 28 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(lambda.(value)...............
9a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 2e 2e 29 29 29 0a 0a 20 20 .........................)))....
9a60 20 20 20 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 63 61 74 63 68 ....(setf.promise.(promise-catch
9a80 20 70 72 6f 6d 69 73 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 .promise........................
9aa0 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 76 61 6c 75 65 29 0a 20 20 20 20 ............(lambda.(value).....
9ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9ae0 20 2e 2e 2e 29 29 29 0a 0a 20 20 20 20 20 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 ....)))........(setf.promise.(pr
9b00 6f 6d 69 73 65 2d 64 6f 6e 65 20 70 72 6f 6d 69 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 omise-done.promise..............
9b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 .....................(lambda.(re
9b40 61 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ason)...........................
9b60 20 20 20 20 20 20 20 20 20 20 2e 2e 2e 29 29 29 0a 0a 20 20 20 20 20 20 28 73 65 74 66 20 70 72 .............)))........(setf.pr
9b80 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c 79 20 70 72 6f 6d 69 73 65 0a 20 omise.(promise-finally.promise..
9ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9bc0 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(lambda.()..................
9be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 2e 2e 29 29 29 0a 0a 20 20 .........................)))....
9c00 20 20 20 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 ....(setf.promise.(promise-then.
9c20 70 72 6f 6d 69 73 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 promise.........................
9c40 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 75 6c 74 29 0a 20 20 20 20 20 ..........(lambda.(result)......
9c60 20 20 20 20 20 20 20 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 ...............................(
9c80 6d 65 73 73 61 67 65 20 5c 22 72 65 73 75 6c 74 20 2d 3e 20 25 73 5c 22 20 72 65 73 75 6c 74 29 message.\"result.->.%s\".result)
9ca0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9cc0 20 20 20 20 20 2e 2e 2e 29 29 29 0a 0a 20 20 20 20 20 20 28 73 65 74 66 20 70 72 6f 6d 69 73 65 ........)))........(setf.promise
9ce0 20 28 70 72 6f 6d 69 73 65 2d 63 61 74 63 68 20 70 72 6f 6d 69 73 65 0a 20 20 20 20 20 20 20 20 .(promise-catch.promise.........
9d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 ...........................(lamb
9d20 64 61 20 28 72 65 61 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 da.(reason).....................
9d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 5c 22 65 72 72 6f .................(message.\"erro
9d60 72 3a 20 72 65 61 73 6f 6e 20 2d 3e 20 25 73 5c 22 20 72 65 61 73 6f 6e 29 0a 20 20 20 20 20 20 r:.reason.->.%s\".reason).......
9d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e ................................
9da0 2e 2e 29 29 29 0a 20 20 20 20 20 20 70 72 6f 6d 69 73 65 29 22 0a 20 20 28 64 65 63 6c 61 72 65 ..))).......promise)"...(declare
9dc0 20 28 69 6e 64 65 6e 74 20 31 29 20 28 64 65 62 75 67 20 74 29 29 0a 20 20 60 28 6c 65 74 20 28 .(indent.1).(debug.t))...`(let.(
9de0 28 70 72 6f 6d 69 73 65 20 2c 70 72 6f 6d 69 73 65 29 29 0a 20 20 20 20 20 2c 40 28 6d 61 70 63 (promise.,promise))......,@(mapc
9e00 61 72 20 28 6c 61 6d 62 64 61 20 28 73 65 78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ar.(lambda.(sexp)...............
9e20 20 20 20 28 6c 65 74 20 28 28 66 6e 20 28 63 61 72 2d 73 61 66 65 20 73 65 78 70 29 29 0a 20 20 ...(let.((fn.(car-safe.sexp))...
9e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 67 73 20 28 63 64 72 2d .....................(args.(cdr-
9e60 73 61 66 65 20 73 65 78 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 safe.sexp)))....................
9e80 28 63 6c 2d 63 61 73 65 20 66 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (cl-case.fn.....................
9ea0 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(promise-new...................
9ec0 20 20 20 20 60 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 2c 73 65 78 70 29 29 0a 20 20 20 20 20 ....`(setf.promise.,sexp))......
9ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 0a 20 ................((promise-then..
9f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 73 65 2d 63 61 ......................promise-ca
9f20 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 6d 69 tch........................promi
9f40 73 65 2d 64 6f 6e 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 70 se-done........................p
9f60 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 romise-finally).................
9f80 20 20 20 20 20 20 60 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 2c 66 6e 20 70 72 6f 6d 69 73 ......`(setf.promise.(,fn.promis
9fa0 65 20 2c 40 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.,@args))).....................
9fc0 20 28 63 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 .(catch.......................`(
9fe0 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 63 61 74 63 68 20 70 72 6f 6d setf.promise.(promise-catch.prom
a000 69 73 65 20 2c 40 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ise.,@args)))...................
a020 20 20 20 28 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 ...(then.......................`
a040 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 70 72 6f 6d (setf.promise.(promise-then.prom
a060 69 73 65 20 2c 40 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ise.,@args)))...................
a080 20 20 20 28 64 6f 6e 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 ...(done.......................`
a0a0 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 64 6f 6e 65 20 70 72 6f 6d (setf.promise.(promise-done.prom
a0c0 69 73 65 20 2c 40 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ise.,@args)))...................
a0e0 20 20 20 28 66 69 6e 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...(finally.....................
a100 20 20 60 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 66 69 6e 61 6c 6c ..`(setf.promise.(promise-finall
a120 79 20 70 72 6f 6d 69 73 65 20 2c 40 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 y.promise.,@args))).............
a140 20 20 20 20 20 20 20 20 20 28 74 68 65 6e 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........(thena.................
a160 20 20 20 20 20 20 60 28 73 65 74 66 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 74 68 ......`(setf.promise.(promise-th
a180 65 6e 20 70 72 6f 6d 69 73 65 20 28 6c 61 6d 62 64 61 20 28 72 65 73 75 6c 74 29 20 2c 40 61 72 en.promise.(lambda.(result).,@ar
a1a0 67 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 74 gs))))......................(cat
a1c0 63 68 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 73 65 74 66 cha.......................`(setf
a1e0 20 70 72 6f 6d 69 73 65 20 28 70 72 6f 6d 69 73 65 2d 63 61 74 63 68 20 70 72 6f 6d 69 73 65 20 .promise.(promise-catch.promise.
a200 28 6c 61 6d 62 64 61 20 28 72 65 61 73 6f 6e 29 20 2c 40 61 72 67 73 29 29 29 29 0a 20 20 20 20 (lambda.(reason).,@args)))).....
a220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 74 68 65 72 77 69 73 65 0a 20 20 20 20 .................(otherwise.....
a240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 78 70 29 29 29 29 0a 20 20 20 20 20 ..................sexp))))......
a260 20 20 20 20 20 20 20 20 20 20 62 6f 64 79 29 0a 20 20 20 20 20 70 72 6f 6d 69 73 65 29 29 0a 0a ..........body)......promise))..
a280 3b 3b 0a 3b 3b 20 50 72 6f 6d 69 73 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 76 61 72 69 6f 75 73 ;;.;;.Promise.version.of.various
a2a0 20 75 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 73 0a 3b 3b 0a 0a 28 72 65 71 75 69 72 65 20 .utility.functions.;;..(require.
a2c0 27 75 72 6c 2d 68 74 74 70 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 72 75 6e 2d 61 'url-http)..(defun.promise:run-a
a2e0 74 2d 74 69 6d 65 20 28 74 69 6d 65 20 66 75 6e 63 74 69 6f 6e 20 26 72 65 73 74 20 61 72 67 73 t-time.(time.function.&rest.args
a300 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 66 75 6e 63 61 6c 6c 20 46 )..."Return.promise.to.funcall.F
a320 55 4e 43 54 49 4f 4e 20 77 69 74 68 20 41 52 47 53 20 61 74 20 73 70 65 63 69 66 69 65 64 20 54 UNCTION.with.ARGS.at.specified.T
a340 49 4d 45 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 54 49 4d 45 20 63 61 6e 20 61 63 IME...Arguments:...-.TIME.can.ac
a360 63 65 70 74 20 74 68 65 20 76 61 72 69 6f 75 73 20 66 6f 72 6d 61 74 73 2e 20 20 53 65 65 20 60 cept.the.various.formats...See.`
a380 72 75 6e 2d 61 74 2d 74 69 6d 65 27 2e 0a 20 20 2d 20 46 55 4e 43 54 49 4f 4e 20 69 73 20 66 75 run-at-time'....-.FUNCTION.is.fu
a3a0 6e 63 61 6c 6c 65 64 20 77 69 74 68 20 41 52 47 53 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d ncalled.with.ARGS...Resolve:...-
a3c0 20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 66 72 6f 6d 20 66 75 6e 63 61 6c 6c 65 64 .The.return.value.from.funcalled
a3e0 20 46 55 4e 43 54 49 4f 4e 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 3c 4e 65 76 65 72 20 72 .FUNCTION...Reject:...-.<Never.r
a400 65 6a 65 63 74 65 64 3e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29 ejected>"...(declare.(indent.1))
a420 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f ...(promise-new....(lambda.(reso
a440 6c 76 65 20 5f 72 65 6a 65 63 74 29 0a 20 20 20 20 20 28 72 75 6e 2d 61 74 2d 74 69 6d 65 20 74 lve._reject)......(run-at-time.t
a460 69 6d 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 ime.nil...................(lambd
a480 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c a.().....................(funcal
a4a0 6c 20 72 65 73 6f 6c 76 65 20 28 61 70 70 6c 79 20 66 75 6e 63 74 69 6f 6e 20 61 72 67 73 29 29 l.resolve.(apply.function.args))
a4c0 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 64 65 6c 61 79 20 28 74 69 6d )))))..(defun.promise:delay.(tim
a4e0 65 20 26 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f e.&optional.value)..."Return.pro
a500 6d 69 73 65 20 74 6f 20 64 65 6c 61 79 20 73 70 65 63 69 66 69 65 64 20 54 49 4d 45 2e 0a 0a 41 mise.to.delay.specified.TIME...A
a520 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 54 49 4d 45 20 63 61 6e 20 61 63 63 65 70 74 20 74 68 rguments:...-.TIME.can.accept.th
a540 65 20 76 61 72 69 6f 75 73 20 66 6f 72 6d 61 74 73 2e 20 20 53 65 65 20 60 72 75 6e 2d 61 74 2d e.various.formats...See.`run-at-
a560 74 69 6d 65 27 2e 0a 20 20 2d 20 56 41 4c 55 45 20 69 73 20 72 65 74 75 72 6e 20 76 61 6c 75 65 time'....-.VALUE.is.return.value
a580 20 77 68 65 6e 20 72 65 73 6f 6c 76 65 64 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2e 0a 0a 52 .when.resolved.this.function...R
a5a0 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 56 41 4c 55 45 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 3c esolve:...-.VALUE..Reject:...-.<
a5c0 4e 65 76 65 72 20 72 65 6a 65 63 74 65 64 3e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 Never.rejected>"...(declare.(ind
a5e0 65 6e 74 20 31 29 29 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 ent.1))...(promise-new....(lambd
a600 61 20 28 72 65 73 6f 6c 76 65 20 5f 72 65 6a 65 63 74 29 0a 20 20 20 20 20 28 72 75 6e 2d 61 74 a.(resolve._reject)......(run-at
a620 2d 74 69 6d 65 20 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c -time.time...................nil
a640 0a 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 29 0a 20 20 ...................(lambda.()...
a660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c ..................(funcall.resol
a680 76 65 20 76 61 6c 75 65 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 74 ve.value))))))..(defun.promise:t
a6a0 69 6d 65 2d 6f 75 74 20 28 74 69 6d 65 20 26 6f 70 74 69 6f 6e 61 6c 20 72 65 61 73 6f 6e 29 0a ime-out.(time.&optional.reason).
a6c0 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 72 65 6a 65 63 74 20 61 66 74 65 .."Return.promise.to.reject.afte
a6e0 72 20 73 70 65 63 69 66 69 65 64 20 54 49 4d 45 20 77 69 74 68 20 52 45 41 53 4f 4e 2e 0a 0a 41 r.specified.TIME.with.REASON...A
a700 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 54 49 4d 45 20 61 6e 20 61 63 63 65 70 74 20 76 61 72 rguments:...-.TIME.an.accept.var
a720 69 6f 75 73 20 66 6f 72 6d 61 74 2e 20 20 53 65 65 20 60 72 75 6e 2d 61 74 2d 74 69 6d 65 27 2e ious.format...See.`run-at-time'.
a740 0a 20 20 2d 20 52 45 41 53 4f 4e 20 69 73 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 77 68 65 6e ...-.REASON.is.return.value.when
a760 20 72 65 6a 65 63 74 65 64 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2e 0a 0a 52 65 73 6f 6c 76 .rejected.this.function...Resolv
a780 65 3a 0a 20 20 2d 20 3c 4e 65 76 65 72 20 72 65 73 6f 6c 76 65 64 3e 0a 0a 52 65 6a 65 63 74 3a e:...-.<Never.resolved>..Reject:
a7a0 0a 20 20 2d 20 52 45 41 53 4f 4e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 ...-.REASON"...(declare.(indent.
a7c0 31 29 29 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 1))...(promise-new....(lambda.(_
a7e0 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 28 72 75 6e 2d 61 74 2d 74 69 6d resolve.reject)......(run-at-tim
a800 65 20 74 69 6d 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 e.time.nil...................(la
a820 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e mbda.().....................(fun
a840 63 61 6c 6c 20 72 65 6a 65 63 74 20 72 65 61 73 6f 6e 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e call.reject.reason))))))..(defun
a860 20 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 20 28 63 6f 6d 6d 61 6e 64 29 0a .promise:make-process.(command).
a880 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 6d 61 6b 65 20 6e 65 77 20 61 73 .."Return.promise.to.make.new.as
a8a0 79 6e 63 68 72 6f 6e 6f 75 73 20 43 4f 4d 4d 41 4e 44 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a ynchronous.COMMAND...Arguments:.
a8c0 20 20 2d 20 43 4f 4d 4d 41 4e 44 20 69 73 20 70 72 6f 67 72 61 6d 20 61 6e 64 20 73 68 65 6c 6c ..-.COMMAND.is.program.and.shell
a8e0 20 61 72 67 75 6d 65 6e 74 73 20 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 2e 0a 0a 53 65 65 20 .arguments.list.of.string...See.
a900 60 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 77 69 74 68 2d 68 61 6e 64 6c `promise:make-process-with-handl
a920 65 72 27 20 66 6f 72 20 52 65 73 6f 6c 76 65 20 61 6e 64 20 52 65 6a 65 63 74 20 73 65 63 74 69 er'.for.Resolve.and.Reject.secti
a940 6f 6e 73 2e 22 0a 20 20 28 66 75 6e 63 61 6c 6c 20 23 27 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d ons."...(funcall.#'promise:make-
a960 70 72 6f 63 65 73 73 2d 77 69 74 68 2d 68 61 6e 64 6c 65 72 20 63 6f 6d 6d 61 6e 64 29 29 0a 0a process-with-handler.command))..
a980 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 73 65 6e 64 (defun.promise:make-process-send
a9a0 2d 62 75 66 66 65 72 20 28 63 6f 6d 6d 61 6e 64 20 62 75 66 29 0a 20 20 22 52 65 74 75 72 6e 20 -buffer.(command.buf)..."Return.
a9c0 70 72 6f 6d 69 73 65 20 74 6f 20 6d 61 6b 65 20 6e 65 77 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 promise.to.make.new.asynchronous
a9e0 20 43 4f 4d 4d 41 4e 44 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 43 4f 4d 4d 41 4e .COMMAND...Arguments:...-.COMMAN
aa00 44 20 69 73 20 70 72 6f 67 72 61 6d 20 61 6e 64 20 73 68 65 6c 6c 20 61 72 67 75 6d 65 6e 74 73 D.is.program.and.shell.arguments
aa20 20 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 2e 0a 20 20 2d 20 42 55 46 20 69 73 20 62 75 66 66 .list.of.string....-.BUF.is.buff
aa40 65 72 2c 20 61 20 66 6f 72 6d 61 74 20 74 68 61 74 20 63 61 6e 20 62 65 20 61 63 63 65 70 74 65 er,.a.format.that.can.be.accepte
aa60 64 20 62 79 20 60 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 27 2e 0a 20 20 20 20 d.by.`with-current-buffer'......
aa80 60 62 75 66 66 65 72 2d 73 74 72 69 6e 67 27 20 6f 66 20 42 55 46 20 69 73 20 73 65 6e 74 20 77 `buffer-string'.of.BUF.is.sent.w
aaa0 69 74 68 20 45 4f 46 20 61 66 74 65 72 20 70 72 6f 63 65 73 73 20 68 61 73 20 62 65 65 6e 20 69 ith.EOF.after.process.has.been.i
aac0 6e 76 6f 6b 65 64 2e 0a 0a 53 65 65 20 60 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 nvoked...See.`promise:make-proce
aae0 73 73 2d 77 69 74 68 2d 68 61 6e 64 6c 65 72 27 20 66 6f 72 20 52 65 73 6f 6c 76 65 20 61 6e 64 ss-with-handler'.for.Resolve.and
ab00 20 52 65 6a 65 63 74 20 73 65 63 74 69 6f 6e 73 2e 22 0a 20 20 28 66 75 6e 63 61 6c 6c 20 23 27 .Reject.sections."...(funcall.#'
ab20 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 77 69 74 68 2d 68 61 6e 64 6c 65 promise:make-process-with-handle
ab40 72 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 r............command............
ab60 28 6c 61 6d 62 64 61 20 28 70 72 6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 (lambda.(proc)..............(wit
ab80 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 20 h-current-buffer.buf............
aba0 20 20 20 20 28 70 72 6f 63 65 73 73 2d 73 65 6e 64 2d 72 65 67 69 6f 6e 20 70 72 6f 63 20 28 70 ....(process-send-region.proc.(p
abc0 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 20 oint-min).(point-max))..........
abe0 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 73 65 6e 64 2d 65 6f 66 20 70 72 6f 63 29 29 29 29 ......(process-send-eof.proc))))
ac00 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 73 )..(defun.promise:make-process-s
ac20 65 6e 64 2d 73 74 72 69 6e 67 20 28 63 6f 6d 6d 61 6e 64 20 73 74 72 69 6e 67 29 0a 20 20 22 52 end-string.(command.string)..."R
ac40 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 6d 61 6b 65 20 6e 65 77 20 61 73 79 6e 63 68 eturn.promise.to.make.new.asynch
ac60 72 6f 6e 6f 75 73 20 43 4f 4d 4d 41 4e 44 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 ronous.COMMAND...Arguments:...-.
ac80 43 4f 4d 4d 41 4e 44 20 69 73 20 70 72 6f 67 72 61 6d 20 61 6e 64 20 73 68 65 6c 6c 20 61 72 67 COMMAND.is.program.and.shell.arg
aca0 75 6d 65 6e 74 73 20 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 2e 0a 20 20 2d 20 53 54 52 49 4e uments.list.of.string....-.STRIN
acc0 47 20 69 73 20 73 65 6e 74 20 77 69 74 68 20 45 4f 46 20 61 66 74 65 72 20 70 72 6f 63 65 73 73 G.is.sent.with.EOF.after.process
ace0 20 68 61 73 20 62 65 65 6e 20 69 6e 76 6f 6b 65 64 2e 0a 0a 53 65 65 20 60 70 72 6f 6d 69 73 65 .has.been.invoked...See.`promise
ad00 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 77 69 74 68 2d 68 61 6e 64 6c 65 72 27 20 66 6f 72 20 :make-process-with-handler'.for.
ad20 52 65 73 6f 6c 76 65 20 61 6e 64 20 52 65 6a 65 63 74 20 73 65 63 74 69 6f 6e 73 2e 22 0a 20 20 Resolve.and.Reject.sections."...
ad40 28 66 75 6e 63 61 6c 6c 20 23 27 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d (funcall.#'promise:make-process-
ad60 77 69 74 68 2d 68 61 6e 64 6c 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 0a with-handler............command.
ad80 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70 72 6f 63 29 0a 20 20 20 20 20 20 ...........(lambda.(proc).......
ada0 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 73 65 6e 64 2d 73 74 72 69 6e 67 20 70 72 6f 63 .......(process-send-string.proc
adc0 20 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 73 .string)..............(process-s
ade0 65 6e 64 2d 65 6f 66 20 70 72 6f 63 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 end-eof.proc))))..(defun.promise
ae00 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 77 69 74 68 2d 68 61 6e 64 6c 65 72 20 28 63 6f 6d 6d :make-process-with-handler.(comm
ae20 61 6e 64 20 26 6f 70 74 69 6f 6e 61 6c 20 68 61 6e 64 6c 65 72 20 6d 65 72 67 65 2d 73 74 64 65 and.&optional.handler.merge-stde
ae40 72 72 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 6d 61 6b 65 20 6e 65 rr)..."Return.promise.to.make.ne
ae60 77 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 43 4f 4d 4d 41 4e 44 2e 0a 0a 41 72 67 75 6d 65 6e w.asynchronous.COMMAND...Argumen
ae80 74 73 3a 0a 20 20 2d 20 43 4f 4d 4d 41 4e 44 20 69 73 20 70 72 6f 67 72 61 6d 20 61 6e 64 20 73 ts:...-.COMMAND.is.program.and.s
aea0 68 65 6c 6c 20 61 72 67 75 6d 65 6e 74 73 20 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 2e 0a 20 hell.arguments.list.of.string...
aec0 20 2d 20 48 41 4e 44 4c 45 52 20 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 63 61 6c 6c 65 64 20 77 .-.HANDLER.is.function,.called.w
aee0 69 74 68 20 70 72 6f 63 65 73 73 20 6f 62 6a 65 63 74 20 61 66 74 65 72 20 70 72 6f 67 72 61 6d ith.process.object.after.program
af00 20 69 73 20 69 6e 76 6f 6b 65 64 2e 0a 20 20 2d 20 4d 45 52 47 45 2d 53 54 44 45 52 52 20 69 73 .is.invoked....-.MERGE-STDERR.is
af20 20 62 6f 6f 6c 65 61 6e 2c 20 77 68 65 74 68 65 72 20 6d 65 72 67 65 20 73 74 64 6f 75 74 20 61 .boolean,.whether.merge.stdout.a
af40 6e 64 20 73 74 64 65 72 72 20 6f 72 20 6e 6f 74 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 nd.stderr.or.not...Resolve:...-.
af60 41 20 6c 69 73 74 20 6c 69 6b 65 20 61 73 20 28 73 74 64 6f 75 74 20 73 74 64 65 72 72 29 20 77 A.list.like.as.(stdout.stderr).w
af80 68 65 6e 20 70 72 6f 63 65 73 73 20 66 69 6e 69 73 68 20 77 69 74 68 20 65 78 69 74 63 6f 64 65 hen.process.finish.with.exitcode
afa0 20 30 2e 0a 20 20 20 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64 65 72 72 20 61 72 65 20 73 74 .0......stdout.and.stderr.are.st
afc0 72 69 6e 67 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 41 20 6c 69 73 74 20 6c 69 6b 65 20 61 ring...Reject:...-.A.list.like.a
afe0 73 20 28 65 76 65 6e 74 20 73 74 64 6f 75 74 20 73 74 64 65 72 72 29 20 77 68 65 6e 20 70 72 6f s.(event.stdout.stderr).when.pro
b000 63 65 73 73 20 64 6f 65 73 6e 27 74 20 66 69 6e 69 73 68 20 65 78 69 74 63 6f 64 65 20 30 2e 0a cess.doesn't.finish.exitcode.0..
b020 20 20 20 20 65 76 65 6e 74 2c 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64 65 72 72 20 61 72 65 ....event,.stdout.and.stderr.are
b040 20 73 74 72 69 6e 67 2e 0a 20 20 20 20 54 68 65 20 65 76 65 6e 74 20 69 73 20 64 6f 63 75 6d 65 .string......The.event.is.docume
b060 6e 74 65 64 20 61 74 20 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 73 6f 66 74 nted.at.https://www.gnu.org/soft
b080 77 61 72 65 2f 65 6d 61 63 73 2f 6d 61 6e 75 61 6c 2f 68 74 6d 6c 5f 6e 6f 64 65 2f 65 6c 69 73 ware/emacs/manual/html_node/elis
b0a0 70 2f 53 65 6e 74 69 6e 65 6c 73 2e 68 74 6d 6c 22 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 p/Sentinels.html"...(promise-new
b0c0 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 ....(lambda.(resolve.reject)....
b0e0 20 20 28 6c 65 74 2a 20 28 28 70 72 6f 67 72 61 6d 20 28 63 61 72 20 63 6f 6d 6d 61 6e 64 29 29 ..(let*.((program.(car.command))
b100 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 64 6f 75 74 20 28 67 65 6e 65 72 61 74 65 2d 6e .............(stdout.(generate-n
b120 65 77 2d 62 75 66 66 65 72 20 28 63 6f 6e 63 61 74 20 22 2a 22 20 70 72 6f 67 72 61 6d 20 22 2d ew-buffer.(concat."*".program."-
b140 73 74 64 6f 75 74 2a 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 64 65 72 72 20 stdout*"))).............(stderr.
b160 28 75 6e 6c 65 73 73 20 6d 65 72 67 65 2d 73 74 64 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 (unless.merge-stderr............
b180 20 20 20 20 20 20 20 20 20 20 20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77 2d 62 75 66 66 65 72 20 ...........(generate-new-buffer.
b1a0 28 63 6f 6e 63 61 74 20 22 2a 22 20 70 72 6f 67 72 61 6d 20 22 2d 73 74 64 65 72 72 2a 22 29 29 (concat."*".program."-stderr*"))
b1c0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 64 65 72 72 2d 70 69 70 65 20 28 75 6e 6c )).............(stderr-pipe.(unl
b1e0 65 73 73 20 6d 65 72 67 65 2d 73 74 64 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ess.merge-stderr................
b200 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 70 69 70 65 2d 70 72 6f 63 65 73 73 0a 20 ............(make-pipe-process..
b220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 61 6d 65 ...........................:name
b240 20 28 63 6f 6e 63 61 74 20 22 2a 22 20 70 72 6f 67 72 61 6d 20 22 2d 73 74 64 65 72 72 2d 70 69 .(concat."*".program."-stderr-pi
b260 70 65 2a 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 pe*")...........................
b280 20 20 3a 6e 6f 71 75 65 72 79 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..:noquery.t....................
b2a0 20 20 20 20 20 20 20 20 20 3b 3b 20 75 73 65 20 3a 66 69 6c 74 65 72 20 69 6e 73 74 65 61 64 20 .........;;.use.:filter.instead.
b2c0 6f 66 20 3a 62 75 66 66 65 72 2c 20 74 6f 20 67 65 74 20 72 69 64 20 6f 66 20 22 50 72 6f 63 65 of.:buffer,.to.get.rid.of."Proce
b2e0 73 73 20 46 69 6e 69 73 68 65 64 22 20 6c 69 6e 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ss.Finished".lines..............
b300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 66 69 6c 74 65 72 20 28 6c 61 6d 62 64 61 20 28 ...............:filter.(lambda.(
b320 5f 20 6f 75 74 70 75 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 _.output).......................
b340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 ................(with-current-bu
b360 66 66 65 72 20 73 74 64 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ffer.stderr.....................
b380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 6f 75 74 70 ....................(insert.outp
b3a0 75 74 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 65 61 6e 75 70 20 28 6c ut)))))).............(cleanup.(l
b3c0 61 6d 62 64 61 20 28 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 ambda.()........................
b3e0 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 73 74 64 6f 75 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 (kill-buffer.stdout)............
b400 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 6d 65 72 67 65 2d 73 74 64 65 72 72 ............(unless.merge-stderr
b420 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 65 6c 65 74 ..........................(delet
b440 65 2d 70 72 6f 63 65 73 73 20 73 74 64 65 72 72 2d 70 69 70 65 29 0a 20 20 20 20 20 20 20 20 20 e-process.stderr-pipe)..........
b460 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 65 72 20 73 74 64 ................(kill-buffer.std
b480 65 72 72 29 29 29 29 29 0a 20 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 err)))))........(condition-case.
b4a0 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 72 6f 63 20 28 69 66 20 6d err............(let.((proc.(if.m
b4c0 65 72 67 65 2d 73 74 64 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erge-stderr.....................
b4e0 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 70 72 6f 63 65 73 73 20 3a 6e 61 6d 65 20 70 72 6f 67 72 .......(make-process.:name.progr
b500 61 6d 20 3a 62 75 66 66 65 72 20 73 74 64 6f 75 74 20 3a 63 6f 6d 6d 61 6e 64 20 63 6f 6d 6d 61 am.:buffer.stdout.:command.comma
b520 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 nd)..........................(ma
b540 6b 65 2d 70 72 6f 63 65 73 73 20 3a 6e 61 6d 65 20 70 72 6f 67 72 61 6d 20 3a 62 75 66 66 65 72 ke-process.:name.program.:buffer
b560 20 73 74 64 6f 75 74 20 3a 63 6f 6d 6d 61 6e 64 20 63 6f 6d 6d 61 6e 64 20 3a 73 74 64 65 72 72 .stdout.:command.command.:stderr
b580 20 73 74 64 65 72 72 2d 70 69 70 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 .stderr-pipe))))..............(s
b5a0 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 20 20 20 20 et-process-sentinel.............
b5c0 20 20 70 72 6f 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 70 ..proc...............(lambda.(_p
b5e0 72 6f 63 65 73 73 20 65 76 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 rocess.event).................(u
b600 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nwind-protect...................
b620 20 20 28 6c 65 74 20 28 28 73 74 64 6f 75 74 2d 73 74 72 20 28 77 69 74 68 2d 63 75 72 72 65 6e ..(let.((stdout-str.(with-curren
b640 74 2d 62 75 66 66 65 72 20 73 74 64 6f 75 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-buffer.stdout.................
b660 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 62 75 66 66 65 72 2d ........................(buffer-
b680 73 74 72 69 6e 67 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 string))).......................
b6a0 20 20 20 20 28 73 74 64 65 72 72 2d 73 74 72 20 28 75 6e 6c 65 73 73 20 6d 65 72 67 65 2d 73 74 ....(stderr-str.(unless.merge-st
b6c0 64 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 derr............................
b6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 .............(with-current-buffe
b700 72 20 73 74 64 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.stderr........................
b720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e ...................(buffer-strin
b740 67 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 g))))).......................(if
b760 20 28 73 74 72 69 6e 67 3d 20 65 76 65 6e 74 20 22 66 69 6e 69 73 68 65 64 5c 6e 22 29 0a 20 20 .(string=.event."finished\n")...
b780 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 66 75 6e 63 61 6c 6c ........................(funcall
b7a0 20 72 65 73 6f 6c 76 65 20 28 6c 69 73 74 20 73 74 64 6f 75 74 2d 73 74 72 20 73 74 64 65 72 72 .resolve.(list.stdout-str.stderr
b7c0 2d 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 -str)).........................(
b7e0 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 28 6c 69 73 74 20 65 76 65 6e 74 20 73 74 64 6f 75 funcall.reject.(list.event.stdou
b800 74 2d 73 74 72 20 73 74 64 65 72 72 2d 73 74 72 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 t-str.stderr-str))))............
b820 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 63 6c 65 61 6e 75 70 29 29 29 29 0a 20 20 20 20 .......(funcall.cleanup)))).....
b840 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 68 61 6e 64 6c 65 72 0a 20 20 20 20 20 20 20 20 20 .........(when.handler..........
b860 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 68 61 6e 64 6c 65 72 20 70 72 6f 63 29 29 29 0a 20 ......(funcall.handler.proc)))..
b880 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 28 66 75 6e 63 61 6c 6c 20 63 6c 65 61 6e 75 70 29 ........(error.(funcall.cleanup)
b8a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 69 67 6e 61 6c 20 28 63 61 72 20 65 72 .................(signal.(car.er
b8c0 72 29 20 28 63 64 72 20 65 72 72 29 29 29 29 29 29 29 29 0a 0a 28 72 65 71 75 69 72 65 20 27 73 r).(cdr.err))))))))..(require.'s
b8e0 75 62 72 2d 78 29 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 6d 61 79 62 65 2d 6d 65 73 73 ubr-x).(defun.promise:maybe-mess
b900 61 67 65 20 28 6d 73 67 29 0a 20 20 22 44 69 73 70 6c 61 79 20 4d 53 47 20 69 66 20 6e 6f 6e 2d age.(msg)..."Display.MSG.if.non-
b920 62 6c 61 6e 6b 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 20 28 73 74 72 69 6e 67 2d 74 72 69 6d 2d blank."...(let.((m.(string-trim-
b940 72 69 67 68 74 20 6d 73 67 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6e 6f 74 20 28 73 74 72 right.msg))).....(when.(not.(str
b960 69 6e 67 2d 65 6d 70 74 79 2d 70 20 6d 29 29 0a 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 ing-empty-p.m)).......(message."
b980 25 73 22 20 6d 29 29 29 29 0a 0a 28 72 65 71 75 69 72 65 20 27 73 65 71 29 0a 28 64 65 66 75 6e %s".m))))..(require.'seq).(defun
b9a0 20 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 73 74 72 69 6e 67 20 28 63 6f .promise:make-process-string.(co
b9c0 6d 6d 61 6e 64 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 6d 61 6b 65 mmand)..."Return.promise.to.make
b9e0 20 6e 65 77 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 43 4f 4d 4d 41 4e 44 2e 0a 0a 41 72 67 75 .new.asynchronous.COMMAND...Argu
ba00 6d 65 6e 74 73 3a 0a 20 20 2d 20 43 4f 4d 4d 41 4e 44 20 69 73 20 70 72 6f 67 72 61 6d 20 61 6e ments:...-.COMMAND.is.program.an
ba20 64 20 73 68 65 6c 6c 20 61 72 67 75 6d 65 6e 74 73 20 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 d.shell.arguments.list.of.string
ba40 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 50 72 6f 63 65 73 73 20 73 74 64 6f 75 74 20 61 ...Resolve:...-.Process.stdout.a
ba60 73 20 73 74 72 69 6e 67 20 77 68 65 6e 20 70 72 6f 63 65 73 73 20 66 69 6e 69 73 68 20 77 69 74 s.string.when.process.finish.wit
ba80 68 20 65 78 69 74 63 6f 64 65 20 30 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 45 76 65 6e 74 h.exitcode.0...Reject:...-.Event
baa0 20 61 73 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 65 64 20 70 72 6f 63 65 73 73 20 65 .as.string.represented.process.e
bac0 78 69 74 20 73 74 61 74 65 2e 0a 20 20 20 20 54 68 65 20 65 76 65 6e 74 20 69 73 20 64 6f 63 75 xit.state......The.event.is.docu
bae0 6d 65 6e 74 65 64 20 61 74 20 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 73 6f mented.at.https://www.gnu.org/so
bb00 66 74 77 61 72 65 2f 65 6d 61 63 73 2f 6d 61 6e 75 61 6c 2f 68 74 6d 6c 5f 6e 6f 64 65 2f 65 6c ftware/emacs/manual/html_node/el
bb20 69 73 70 2f 53 65 6e 74 69 6e 65 6c 73 2e 68 74 6d 6c 22 0a 20 20 28 70 72 6f 6d 69 73 65 2d 74 isp/Sentinels.html"...(promise-t
bb40 68 65 6e 0a 20 20 20 28 66 75 6e 63 61 6c 6c 20 23 27 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 hen....(funcall.#'promise:make-p
bb60 72 6f 63 65 73 73 20 63 6f 6d 6d 61 6e 64 29 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 29 rocess.command)....(lambda.(res)
bb80 0a 20 20 20 20 20 28 73 65 71 2d 6c 65 74 20 28 73 74 64 6f 75 74 20 73 74 64 65 72 72 29 20 72 ......(seq-let.(stdout.stderr).r
bba0 65 73 0a 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 3a 6d 61 79 62 65 2d 6d 65 73 73 61 67 65 es........(promise:maybe-message
bbc0 20 28 70 72 6f 70 65 72 74 69 7a 65 20 73 74 64 65 72 72 20 27 66 61 63 65 20 27 28 3a 66 6f 72 .(propertize.stderr.'face.'(:for
bbe0 65 67 72 6f 75 6e 64 20 22 79 65 6c 6c 6f 77 22 29 29 29 0a 20 20 20 20 20 20 20 73 74 64 6f 75 eground."yellow")))........stdou
bc00 74 29 29 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 65 72 72 29 0a 20 20 20 20 20 28 73 65 71 2d 6c t))....(lambda.(err)......(seq-l
bc20 65 74 20 28 65 76 65 6e 74 20 73 74 64 6f 75 74 20 73 74 64 65 72 72 29 20 65 72 72 0a 20 20 20 et.(event.stdout.stderr).err....
bc40 20 20 20 20 28 70 72 6f 6d 69 73 65 3a 6d 61 79 62 65 2d 6d 65 73 73 61 67 65 20 28 70 72 6f 70 ....(promise:maybe-message.(prop
bc60 65 72 74 69 7a 65 20 73 74 64 6f 75 74 20 27 66 61 63 65 20 27 28 3a 66 6f 72 65 67 72 6f 75 6e ertize.stdout.'face.'(:foregroun
bc80 64 20 22 62 6c 61 63 6b 22 20 3a 62 61 63 6b 67 72 6f 75 6e 64 20 22 77 68 69 74 65 22 29 29 29 d."black".:background."white")))
bca0 0a 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 3a 6d 61 79 62 65 2d 6d 65 73 73 61 67 65 20 28 ........(promise:maybe-message.(
bcc0 70 72 6f 70 65 72 74 69 7a 65 20 73 74 64 65 72 72 20 27 66 61 63 65 20 27 28 3a 66 6f 72 65 67 propertize.stderr.'face.'(:foreg
bce0 72 6f 75 6e 64 20 22 72 65 64 22 29 29 29 0a 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 72 round."red")))........(promise-r
bd00 65 6a 65 63 74 20 65 76 65 6e 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 eject.event)))))..(defun.promise
bd20 3a 6d 61 6b 65 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 20 28 73 63 72 69 70 74 20 26 6f 70 74 :make-shell-command.(script.&opt
bd40 69 6f 6e 61 6c 20 64 69 72 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 ional.dir)..."Return.promise.to.
bd60 6d 61 6b 65 20 6e 65 77 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 73 68 65 6c 6c 20 53 43 52 49 make.new.asynchronous.shell.SCRI
bd80 50 54 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 53 43 52 49 50 54 20 69 73 20 73 74 PT...Arguments:...-.SCRIPT.is.st
bda0 72 69 6e 67 2c 20 77 69 6c 6c 20 62 65 20 70 61 73 73 65 64 20 73 68 20 2d 63 2e 0a 20 20 2d 20 ring,.will.be.passed.sh.-c....-.
bdc0 44 49 52 20 69 73 20 64 69 72 65 63 74 6f 72 79 20 70 61 74 68 20 69 6e 20 77 68 69 63 68 20 53 DIR.is.directory.path.in.which.S
bde0 43 52 49 50 54 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 2e 0a 0a 53 65 65 20 60 70 72 CRIPT.will.be.executed...See.`pr
be00 6f 6d 69 73 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 73 74 72 69 6e 67 27 20 66 6f 72 20 52 omise:make-process-string'.for.R
be20 65 73 6f 6c 76 65 20 61 6e 64 20 52 65 6a 65 63 74 20 73 65 63 74 69 6f 6e 73 2e 22 0a 20 20 28 esolve.and.Reject.sections."...(
be40 6c 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 28 6f 72 20 64 69 72 20 let.((default-directory.(or.dir.
be60 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29 29 29 0a 20 20 20 20 28 70 72 6f 6d 69 73 default-directory))).....(promis
be80 65 3a 6d 61 6b 65 2d 70 72 6f 63 65 73 73 2d 73 74 72 69 6e 67 20 28 6c 69 73 74 20 73 68 65 6c e:make-process-string.(list.shel
bea0 6c 2d 66 69 6c 65 2d 6e 61 6d 65 20 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 73 77 69 74 63 68 l-file-name.shell-command-switch
bec0 20 73 63 72 69 70 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 .script))))..(defun.promise:make
bee0 2d 74 68 72 65 61 64 20 28 66 75 6e 63 74 69 6f 6e 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 -thread.(function.&rest.args)...
bf00 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 6d 61 6b 65 20 6e 65 77 20 74 68 72 65 "Return.promise.to.make.new.thre
bf20 61 64 20 76 69 61 20 60 6d 61 6b 65 2d 74 68 72 65 61 64 27 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 ad.via.`make-thread'...Arguments
bf40 3a 0a 20 20 2d 20 46 55 4e 43 54 49 4f 4e 20 69 73 20 66 75 6e 63 61 6c 6c 65 64 20 77 69 74 68 :...-.FUNCTION.is.funcalled.with
bf60 20 41 52 47 53 20 69 6e 20 6e 65 77 20 74 68 72 65 61 64 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 .ARGS.in.new.thread...Resolve:..
bf80 20 2d 20 52 65 74 75 72 6e 20 76 61 6c 75 65 20 66 72 6f 6d 20 66 75 6e 63 61 6c 6c 65 64 20 46 .-.Return.value.from.funcalled.F
bfa0 55 4e 43 54 49 4f 4e 20 69 6e 20 74 68 65 20 74 68 72 65 61 64 2e 0a 0a 52 65 6a 65 63 74 3a 0a UNCTION.in.the.thread...Reject:.
bfc0 20 20 2d 20 45 72 72 6f 72 20 6f 62 6a 65 63 74 20 77 68 69 6c 65 20 72 75 6e 6e 69 6e 67 20 69 ..-.Error.object.while.running.i
bfe0 6e 20 74 68 65 20 74 68 72 65 61 64 2e 22 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 n.the.thread."...(promise-new...
c000 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 28 .(lambda.(resolve.reject)......(
c020 69 66 20 28 6e 6f 74 20 28 66 62 6f 75 6e 64 70 20 27 6d 61 6b 65 2d 74 68 72 65 61 64 29 29 0a if.(not.(fboundp.'make-thread)).
c040 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 60 70 72 6f 6d 69 73 65 3a 6d 61 6b 65 2d 74 .........(error."`promise:make-t
c060 68 72 65 61 64 27 20 6e 65 65 64 73 20 60 6d 61 6b 65 2d 74 68 72 65 61 64 27 20 61 74 74 61 63 hread'.needs.`make-thread'.attac
c080 68 65 64 20 74 6f 20 45 6d 61 63 73 2d 32 36 2e 31 20 6f 72 20 61 62 6f 76 65 22 29 0a 20 20 20 hed.to.Emacs-26.1.or.above")....
c0a0 20 20 20 20 28 6d 61 6b 65 2d 74 68 72 65 61 64 0a 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 ....(make-thread.........(lambda
c0c0 20 28 29 0a 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
c0e0 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c 76 65 r...............(funcall.resolve
c100 20 28 61 70 70 6c 79 20 66 75 6e 63 74 69 6f 6e 20 61 72 67 73 29 29 0a 20 20 20 20 20 20 20 20 .(apply.function.args)).........
c120 20 20 20 20 28 65 72 72 6f 72 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 65 72 72 29 29 ....(error.(funcall.reject.err))
c140 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 77 72 61 70 2d 6d 65 73 )))))))..(defun.promise:wrap-mes
c160 73 61 67 65 20 28 70 72 6f 6d 69 73 65 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 sage.(promise)..."Return.promise
c180 20 74 6f 20 73 68 6f 77 20 64 65 62 75 67 20 6d 65 73 73 61 67 65 20 61 66 74 65 72 20 50 52 4f .to.show.debug.message.after.PRO
c1a0 4d 49 53 45 20 72 65 73 6f 6c 76 65 64 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 50 MISE.resolved...Arguments:...-.P
c1c0 52 4f 4d 49 53 45 20 69 73 20 61 6e 79 20 70 72 6f 6d 69 73 65 20 6f 62 6a 65 63 74 2e 0a 0a 52 ROMISE.is.any.promise.object...R
c1e0 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 52 65 74 75 72 6e 20 6f 72 69 67 69 6e 61 6c 20 72 65 74 75 esolve:...-.Return.original.retu
c200 72 6e 20 76 61 6c 75 65 20 77 68 65 6e 20 50 52 4f 4d 49 53 45 20 72 65 73 6f 6c 76 65 64 2e 0a rn.value.when.PROMISE.resolved..
c220 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 52 65 74 75 72 6e 20 6f 72 69 67 69 6e 61 6c 20 72 65 74 .Reject:...-.Return.original.ret
c240 75 72 6e 20 76 61 6c 75 65 20 77 68 65 6e 20 50 52 4f 4d 49 53 45 20 72 65 6a 65 63 74 65 64 2e urn.value.when.PROMISE.rejected.
c260 22 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 "...(promise-new....(lambda.(res
c280 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 74 68 65 6e 0a olve.reject)......(promise-then.
c2a0 20 20 20 20 20 20 70 72 6f 6d 69 73 65 0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 ......promise.......(lambda.(res
c2c0 29 0a 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 25 73 3a 20 25 73 22 0a 20 20 20 20 ).........(message."%s:.%s".....
c2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 22 52 65 73 75 6c 74 .............(propertize."Result
c300 22 20 27 66 61 63 65 20 27 28 3a 66 6f 72 65 67 72 6f 75 6e 64 20 22 67 72 65 65 6e 22 29 29 0a ".'face.'(:foreground."green")).
c320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 74 72 69 6d 2d 72 69 .................(string-trim-ri
c340 67 68 74 20 72 65 73 29 29 0a 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c ght.res)).........(funcall.resol
c360 76 65 20 72 65 73 29 29 0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 72 72 29 0a 20 20 20 ve.res)).......(lambda.(err)....
c380 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 25 73 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 .....(message."%s:.%s"..........
c3a0 20 20 20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 22 45 72 72 6f 72 22 20 27 66 61 63 ........(propertize."Error".'fac
c3c0 65 20 27 28 3a 66 6f 72 65 67 72 6f 75 6e 64 20 22 72 65 64 22 29 29 0a 20 20 20 20 20 20 20 20 e.'(:foreground."red")).........
c3e0 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 74 72 69 6d 2d 72 69 67 68 74 20 65 72 72 29 .........(string-trim-right.err)
c400 29 0a 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 65 72 72 29 29 29 ).........(funcall.reject.err)))
c420 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 75 72 6c 2d 72 65 74 72 69 65 76 65 )))..(defun.promise:url-retrieve
c440 20 28 75 72 6c 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 72 65 74 72 .(url)..."Return.promise.to.retr
c460 69 65 76 65 20 72 65 73 70 6f 6e 73 65 20 62 6f 64 79 20 66 72 6f 6d 20 55 52 4c 2e 0a 0a 41 72 ieve.response.body.from.URL...Ar
c480 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 55 52 4c 20 69 73 20 65 69 74 68 65 72 20 61 20 73 74 72 guments:...-.URL.is.either.a.str
c4a0 69 6e 67 20 6f 72 20 61 20 70 61 72 73 65 64 20 55 52 4c 2e 20 20 53 65 65 20 60 75 72 6c 2d 72 ing.or.a.parsed.URL...See.`url-r
c4c0 65 74 72 69 65 76 65 27 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 52 65 73 70 6f 6e 73 65 etrieve'...Resolve:...-.Response
c4e0 20 62 6f 64 79 20 61 73 20 61 20 73 74 72 69 6e 67 20 72 65 74 72 69 65 76 65 64 20 66 72 6f 6d .body.as.a.string.retrieved.from
c500 20 74 68 65 20 55 52 4c 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 45 72 72 6f 72 20 6f 62 6a .the.URL...Reject:...-.Error.obj
c520 65 63 74 20 77 68 69 6c 65 20 72 65 74 72 69 65 76 69 6e 67 20 55 52 4c 2e 22 0a 20 20 28 70 72 ect.while.retrieving.URL."...(pr
c540 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 omise-new....(lambda.(resolve.re
c560 6a 65 63 74 29 0a 20 20 20 20 20 28 75 72 6c 2d 72 65 74 72 69 65 76 65 20 75 72 6c 0a 20 20 20 ject)......(url-retrieve.url....
c580 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 73 74 61 74 75 73 29 ................(lambda.(status)
c5a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 6c 6c 20 65 72 72 ......................;;.All.err
c5c0 6f 72 73 20 61 72 65 20 72 65 6c 69 61 62 6c 79 20 63 61 70 74 75 72 65 64 20 61 6e 64 20 72 65 ors.are.reliably.captured.and.re
c5e0 6a 65 63 74 65 64 20 77 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 65 20 76 61 6c 75 65 73 2e 0a jected.with.appropriate.values..
c600 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 70 6c 69 73 74 2d .....................(if.(plist-
c620 67 65 74 20 73 74 61 74 75 73 20 3a 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 get.status.:error)..............
c640 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 28 70 6c 69 ............(funcall.reject.(pli
c660 73 74 2d 67 65 74 20 73 74 61 74 75 73 20 3a 65 72 72 6f 72 29 29 0a 20 20 20 20 20 20 20 20 20 st-get.status.:error))..........
c680 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
c6a0 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 r............................(if
c6c0 20 28 6e 6f 74 20 28 75 72 6c 2d 68 74 74 70 2d 70 61 72 73 65 2d 68 65 61 64 65 72 73 29 29 0a .(not.(url-http-parse-headers)).
c6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
c700 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 0a funcall.reject.(buffer-string)).
c720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 .............................(se
c740 61 72 63 68 2d 66 6f 72 77 61 72 64 2d 72 65 67 65 78 70 20 22 5c 6e 5c 5c 73 2d 2a 5c 6e 22 20 arch-forward-regexp."\n\\s-*\n".
c760 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nil.t)..........................
c780 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c 76 65 20 28 62 75 66 66 65 72 2d 73 75 62 ....(funcall.resolve.(buffer-sub
c7a0 73 74 72 69 6e 67 20 28 70 6f 69 6e 74 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 29 0a 20 20 string.(point).(point-max))))...
c7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 28 66 .......................(error.(f
c7e0 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 65 72 72 29 29 29 29 29 29 29 29 29 0a 0a 28 72 65 71 uncall.reject.err)))))))))..(req
c800 75 69 72 65 20 27 78 6d 6c 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uire.'xml)......................
c820 20 20 20 20 3b 20 66 6f 72 20 60 78 6d 6c 2d 70 61 72 73 65 2d 72 65 67 69 6f 6e 27 0a 0a 28 64 ....;.for.`xml-parse-region'..(d
c840 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 78 6d 6c 2d 72 65 74 72 69 65 76 65 20 28 75 72 6c 29 0a efun.promise:xml-retrieve.(url).
c860 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 72 65 74 72 69 65 76 65 20 58 4d .."Return.promise.to.retrieve.XM
c880 4c 20 6f 62 6a 65 63 74 20 70 61 72 73 65 64 20 66 72 6f 6d 20 63 6f 6e 74 65 6e 74 73 20 66 72 L.object.parsed.from.contents.fr
c8a0 6f 6d 20 55 52 4c 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 55 52 4c 20 69 73 20 65 om.URL...Arguments:...-.URL.is.e
c8c0 69 74 68 65 72 20 61 20 73 74 72 69 6e 67 20 6f 72 20 61 20 70 61 72 73 65 64 20 55 52 4c 2e 20 ither.a.string.or.a.parsed.URL..
c8e0 20 53 65 65 20 60 75 72 6c 2d 72 65 74 72 69 65 76 65 27 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 .See.`url-retrieve'...Resolve:..
c900 20 2d 20 58 4d 4c 20 6f 62 6a 65 63 74 20 70 61 72 73 65 64 20 62 79 20 60 78 6d 6c 2d 70 61 72 .-.XML.object.parsed.by.`xml-par
c920 73 65 2d 72 65 67 69 6f 6e 27 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 45 72 72 6f 72 20 6f se-region'...Reject:...-.Error.o
c940 62 6a 65 63 74 20 77 68 69 6c 65 20 72 65 74 72 69 65 76 69 6e 67 20 55 52 4c 20 61 6e 64 20 70 bject.while.retrieving.URL.and.p
c960 61 72 73 69 6e 67 20 63 6f 6e 74 65 6e 74 73 2e 22 0a 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 arsing.contents."...(promise-new
c980 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 74 29 0a 20 20 20 ....(lambda.(resolve.reject)....
c9a0 20 20 28 75 72 6c 2d 72 65 74 72 69 65 76 65 20 75 72 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..(url-retrieve.url.............
c9c0 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 73 74 61 74 75 73 29 0a 20 20 20 20 20 20 20 20 .......(lambda.(status).........
c9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 6c 6c 20 65 72 72 6f 72 73 20 61 72 65 20 72 .............;;.All.errors.are.r
ca00 65 6c 69 61 62 6c 79 20 63 61 70 74 75 72 65 64 20 61 6e 64 20 72 65 6a 65 63 74 65 64 20 77 69 eliably.captured.and.rejected.wi
ca20 74 68 20 61 70 70 72 6f 70 72 69 61 74 65 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 20 20 20 th.appropriate.values...........
ca40 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 70 6c 69 73 74 2d 67 65 74 20 73 74 61 74 75 ............(if.(plist-get.statu
ca60 73 20 3a 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s.:error).......................
ca80 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 28 70 6c 69 73 74 2d 67 65 74 20 73 74 ...(funcall.reject.(plist-get.st
caa0 61 74 75 73 20 3a 65 72 72 6f 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 atus.:error))...................
cac0 20 20 20 20 20 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 .....(condition-case.err........
cae0 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 6f 74 20 28 75 72 ....................(if.(not.(ur
cb00 6c 2d 68 74 74 70 2d 70 61 72 73 65 2d 68 65 61 64 65 72 73 29 29 0a 20 20 20 20 20 20 20 20 20 l-http-parse-headers))..........
cb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 ......................(funcall.r
cb40 65 6a 65 63 74 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 eject.(buffer-string))..........
cb60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 61 72 63 68 2d 66 6f 72 77 ....................(search-forw
cb80 61 72 64 2d 72 65 67 65 78 70 20 22 5c 6e 5c 5c 73 2d 2a 5c 6e 22 20 6e 69 6c 20 74 29 0a 20 20 ard-regexp."\n\\s-*\n".nil.t)...
cba0 20 20 20 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 66 75 6e 63 ...........................(func
cbc0 61 6c 6c 20 72 65 73 6f 6c 76 65 20 28 78 6d 6c 2d 70 61 72 73 65 2d 72 65 67 69 6f 6e 29 29 29 all.resolve.(xml-parse-region)))
cbe0 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 65 72 72 6f 72 ..........................(error
cc00 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 65 72 72 29 29 29 29 29 29 29 29 29 0a 0a 28 .(funcall.reject.err)))))))))..(
cc20 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 72 65 71 75 65 73 74 20 28 75 72 6c 29 0a 20 20 22 52 defun.promise:request.(url)..."R
cc40 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 72 65 71 75 65 73 74 20 55 52 4c 20 76 69 61 eturn.promise.to.request.URL.via
cc60 20 60 72 65 71 75 65 73 74 27 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 55 52 4c 20 .`request'...Arguments:...-.URL.
cc80 69 73 20 61 20 74 61 72 67 65 74 20 75 72 6c 20 61 73 20 73 74 72 69 6e 67 2e 0a 0a 52 65 73 6f is.a.target.url.as.string...Reso
cca0 6c 76 65 3a 0a 20 20 2d 20 52 65 73 70 6f 6e 73 65 20 62 6f 64 79 20 61 73 20 73 74 72 69 6e 67 lve:...-.Response.body.as.string
ccc0 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 41 20 73 74 72 69 6e 67 20 6c 69 73 74 20 6c 69 6b ...Reject:...-.A.string.list.lik
cce0 65 20 61 73 20 28 73 74 61 74 75 73 2d 63 6f 64 65 20 72 65 73 70 6f 6e 73 65 2d 68 65 61 64 65 e.as.(status-code.response-heade
cd00 72 20 72 65 73 70 6f 6e 73 65 2d 62 6f 64 79 29 22 0a 20 20 28 70 72 6f 6d 69 73 65 3a 72 65 71 r.response-body)"...(promise:req
cd20 75 65 73 74 2d 77 69 74 68 2d 61 72 67 73 20 75 72 6c 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e uest-with-args.url.nil))..(defun
cd40 20 70 72 6f 6d 69 73 65 3a 72 65 71 75 65 73 74 2d 70 6f 73 74 20 28 75 72 6c 20 64 61 74 61 29 .promise:request-post.(url.data)
cd60 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 50 4f 53 54 20 44 41 54 41 20 ..."Return.promise.to.POST.DATA.
cd80 74 6f 20 55 52 4c 20 76 69 61 20 60 72 65 71 75 65 73 74 27 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 to.URL.via.`request'...Arguments
cda0 3a 0a 20 20 2d 20 55 52 4c 20 69 73 20 61 20 74 61 72 67 65 74 20 75 72 6c 20 61 73 20 73 74 72 :...-.URL.is.a.target.url.as.str
cdc0 69 6e 67 2e 0a 20 20 2d 20 44 41 54 41 20 69 73 20 70 6f 73 74 20 64 61 74 61 20 61 6c 69 73 74 ing....-.DATA.is.post.data.alist
cde0 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 52 65 73 70 6f 6e 73 65 20 62 6f 64 79 20 61 73 ...Resolve:...-.Response.body.as
ce00 20 73 74 72 69 6e 67 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 41 20 73 74 72 69 6e 67 20 6c .string...Reject:...-.A.string.l
ce20 69 73 74 20 6c 69 6b 65 20 61 73 20 28 73 74 61 74 75 73 2d 63 6f 64 65 20 72 65 73 70 6f 6e 73 ist.like.as.(status-code.respons
ce40 65 2d 68 65 61 64 65 72 20 72 65 73 70 6f 6e 73 65 2d 62 6f 64 79 29 22 0a 20 20 28 64 65 63 6c e-header.response-body)"...(decl
ce60 61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29 0a 20 20 28 70 72 6f 6d 69 73 65 3a 72 65 71 75 65 are.(indent.1))...(promise:reque
ce80 73 74 2d 77 69 74 68 2d 61 72 67 73 20 75 72 6c 20 60 28 3a 74 79 70 65 20 22 50 4f 53 54 22 20 st-with-args.url.`(:type."POST".
cea0 3a 64 61 74 61 20 27 2c 64 61 74 61 29 29 29 0a 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 :data.',data)))..(declare-functi
cec0 6f 6e 20 72 65 71 75 65 73 74 20 22 72 65 71 75 65 73 74 2e 65 6c 22 20 28 75 72 6c 20 26 72 65 on.request."request.el".(url.&re
cee0 73 74 20 73 65 74 74 69 6e 67 73 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 st.settings)).(declare-function.
cf00 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 73 74 61 74 75 73 2d 63 6f 64 65 20 22 72 65 request-response-status-code."re
cf20 71 75 65 73 74 2e 65 6c 22 20 28 72 65 73 70 6f 6e 73 65 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 quest.el".(response)).(declare-f
cf40 75 6e 63 74 69 6f 6e 20 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 2d 72 61 77 2d 68 65 unction.request-response--raw-he
cf60 61 64 65 72 20 22 72 65 71 75 65 73 74 2e 65 6c 22 20 28 72 65 73 70 6f 6e 73 65 29 29 0a 28 64 ader."request.el".(response)).(d
cf80 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 eclare-function.request-response
cfa0 2d 64 61 74 61 20 22 72 65 71 75 65 73 74 2e 65 6c 22 20 28 72 65 73 70 6f 6e 73 65 29 29 0a 0a -data."request.el".(response))..
cfc0 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 72 65 71 75 65 73 74 2d 77 69 74 68 2d 61 72 67 73 (defun.promise:request-with-args
cfe0 20 28 75 72 6c 20 61 72 67 6c 69 73 74 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 .(url.arglist)..."Return.promise
d000 20 74 6f 20 72 65 71 75 65 73 74 20 55 52 4c 20 76 69 61 20 60 72 65 71 75 65 73 74 27 20 77 69 .to.request.URL.via.`request'.wi
d020 74 68 20 41 52 47 4c 49 53 54 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 55 52 4c 20 th.ARGLIST...Arguments:...-.URL.
d040 69 73 20 61 20 74 61 72 67 65 74 20 75 72 6c 20 61 73 20 73 74 72 69 6e 67 2e 0a 0a 52 65 73 6f is.a.target.url.as.string...Reso
d060 6c 76 65 3a 0a 20 20 2d 20 52 65 73 70 6f 6e 73 65 20 62 6f 64 79 20 61 73 20 73 74 72 69 6e 67 lve:...-.Response.body.as.string
d080 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 41 20 73 74 72 69 6e 67 20 6c 69 73 74 20 6c 69 6b ...Reject:...-.A.string.list.lik
d0a0 65 20 61 73 20 28 73 74 61 74 75 73 2d 63 6f 64 65 20 72 65 73 70 6f 6e 73 65 2d 68 65 61 64 65 e.as.(status-code.response-heade
d0c0 72 20 72 65 73 70 6f 6e 73 65 2d 62 6f 64 79 29 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e r.response-body)"...(declare.(in
d0e0 64 65 6e 74 20 31 29 29 0a 0a 20 20 28 72 65 71 75 69 72 65 20 27 72 65 71 75 65 73 74 29 0a 20 dent.1))....(require.'request)..
d100 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 .(promise-new....(lambda.(resolv
d120 65 20 72 65 6a 65 63 74 29 0a 20 20 20 20 20 28 77 68 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 e.reject)......(when.(plist-get.
d140 61 72 67 6c 69 73 74 20 3a 73 75 63 63 65 73 73 29 0a 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c arglist.:success)........(funcal
d160 6c 20 72 65 6a 65 63 74 20 22 53 75 63 63 65 73 73 20 63 61 6c 6c 62 61 63 6b 20 66 75 6e 63 74 l.reject."Success.callback.funct
d180 69 6f 6e 20 69 73 20 6e 6f 74 20 63 75 73 74 6f 6d 69 7a 61 62 6c 65 22 29 29 0a 20 20 20 20 20 ion.is.not.customizable"))......
d1a0 28 77 68 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 61 72 67 6c 69 73 74 20 3a 65 72 72 6f 72 29 (when.(plist-get.arglist.:error)
d1c0 0a 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 22 45 72 72 6f 72 20 63 ........(funcall.reject."Error.c
d1e0 61 6c 6c 62 61 63 6b 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6e 6f 74 20 63 75 73 74 6f 6d 69 7a allback.function.is.not.customiz
d200 61 62 6c 65 22 29 29 0a 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 72 65 71 75 65 73 74 20 75 72 able"))......(apply.#'request.ur
d220 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 75 63 63 65 73 73 20 28 63 6c 2d 66 75 6e 63 74 l.............:success.(cl-funct
d240 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 ion.......................(lambd
d260 61 20 28 26 6b 65 79 20 64 61 74 61 20 26 61 6c 6c 6f 77 2d 6f 74 68 65 72 2d 6b 65 79 73 29 0a a.(&key.data.&allow-other-keys).
d280 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 66 75 6e 63 61 6c 6c ........................(funcall
d2a0 20 72 65 73 6f 6c 76 65 20 64 61 74 61 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 65 72 .resolve.data))).............:er
d2c0 72 6f 72 20 28 63 6c 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ror.(cl-function................
d2e0 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 26 6b 65 79 20 72 65 73 70 6f 6e 73 65 20 26 61 6c 6c .....(lambda.(&key.response.&all
d300 6f 77 2d 6f 74 68 65 72 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ow-other-keys)..................
d320 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 .....(funcall.reject............
d340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 72 65 71 75 65 ....................(list.(reque
d360 73 74 2d 72 65 73 70 6f 6e 73 65 2d 73 74 61 74 75 73 2d 63 6f 64 65 20 72 65 73 70 6f 6e 73 65 st-response-status-code.response
d380 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 )...............................
d3a0 20 20 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 2d 72 61 77 2d 68 65 .......(request-response--raw-he
d3c0 61 64 65 72 20 72 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ader.response)..................
d3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 72 65 73 ....................(request-res
d400 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 ponse-data.response)))))........
d420 20 20 20 20 20 61 72 67 6c 69 73 74 29 29 29 29 0a 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 .....arglist))))..(declare-funct
d440 69 6f 6e 20 61 73 79 6e 63 2d 73 74 61 72 74 20 22 61 73 79 6e 63 2e 65 6c 22 20 28 73 74 61 72 ion.async-start."async.el".(star
d460 74 2d 66 75 6e 63 20 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6e 69 73 68 2d 66 75 6e 63 29 29 0a 28 t-func.&optional.finish-func)).(
d480 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 61 73 79 6e 63 2d 77 68 65 6e 2d 64 6f 6e 65 declare-function.async-when-done
d4a0 20 22 61 73 79 6e 63 2e 65 6c 22 20 28 70 72 6f 63 20 26 6f 70 74 69 6f 6e 61 6c 20 5f 63 68 61 ."async.el".(proc.&optional._cha
d4c0 6e 67 65 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 3a 61 73 79 6e 63 2d 73 74 61 72 nge))..(defun.promise:async-star
d4e0 74 20 28 73 74 61 72 74 2d 66 75 6e 63 20 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6e 69 73 68 2d 66 t.(start-func.&optional.finish-f
d500 75 6e 63 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 65 76 61 6c 20 66 unc)..."Return.promise.to.eval.f
d520 75 6e 63 74 69 6f 6e 20 69 6e 20 61 20 6e 65 77 20 45 6d 61 63 73 20 70 72 6f 63 65 73 73 20 76 unction.in.a.new.Emacs.process.v
d540 69 61 20 60 61 73 79 6e 63 2d 73 74 61 72 74 27 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 ia.`async-start'...Arguments:...
d560 2d 20 53 54 41 52 54 2d 46 55 4e 43 20 69 73 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 77 69 -.START-FUNC.is.function.that.wi
d580 6c 6c 20 62 65 20 65 76 61 6c 65 64 20 69 6e 20 6e 65 77 20 45 6d 61 63 73 2e 0a 20 20 2d 20 46 ll.be.evaled.in.new.Emacs....-.F
d5a0 49 4e 49 53 48 2d 46 55 4e 43 20 69 73 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c INISH-FUNC.is.function.that.will
d5c0 20 62 65 20 65 76 61 6c 65 64 20 61 66 74 65 72 20 53 54 41 52 54 2d 46 55 4e 43 20 65 76 61 6c .be.evaled.after.START-FUNC.eval
d5e0 65 64 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 52 65 74 75 72 6e 20 76 61 6c 75 65 20 66 ed...Resolve:...-.Return.value.f
d600 72 6f 6d 20 53 54 41 52 54 2d 46 55 4e 43 20 69 6e 20 74 68 65 20 45 6d 61 63 73 2e 0a 0a 52 65 rom.START-FUNC.in.the.Emacs...Re
d620 6a 65 63 74 3a 0a 20 20 2d 20 45 72 72 6f 72 20 6f 62 6a 65 63 74 20 77 68 69 6c 65 20 65 76 61 ject:...-.Error.object.while.eva
d640 6c 75 61 74 69 6e 67 20 53 54 41 52 54 2d 46 55 4e 43 20 61 6e 64 20 46 49 4e 49 53 48 2d 46 55 luating.START-FUNC.and.FINISH-FU
d660 4e 43 2e 22 0a 20 20 28 72 65 71 75 69 72 65 20 27 61 73 79 6e 63 29 0a 20 20 28 70 72 6f 6d 69 NC."...(require.'async)...(promi
d680 73 65 2d 6e 65 77 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 6a 65 63 se-new....(lambda.(resolve.rejec
d6a0 74 29 0a 20 20 20 20 20 28 73 65 74 2d 70 72 6f 63 65 73 73 2d 73 65 6e 74 69 6e 65 6c 20 28 61 t)......(set-process-sentinel.(a
d6c0 73 79 6e 63 2d 73 74 61 72 74 20 73 74 61 72 74 2d 66 75 6e 63 0a 20 20 20 20 20 20 20 20 20 20 sync-start.start-func...........
d6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c ..............................(l
d700 61 6d 62 64 61 20 28 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ambda.(result)..................
d720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 .........................(when.f
d740 69 6e 69 73 68 2d 66 75 6e 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 inish-func......................
d760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 .......................(funcall.
d780 66 69 6e 69 73 68 2d 66 75 6e 63 20 72 65 73 75 6c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 finish-func.result))............
d7a0 20 20 20 20 20 20 20 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 ...............................(
d7c0 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c 76 65 20 72 65 73 75 6c 74 29 29 29 0a 20 20 20 20 20 20 funcall.resolve.result))).......
d7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70 72 .....................(lambda.(pr
d800 6f 63 65 73 73 20 65 76 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ocess.event)....................
d820 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 72 65 61 73 6f 6e ..........(condition-case.reason
d840 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
d860 20 20 28 61 73 79 6e 63 2d 77 68 65 6e 2d 64 6f 6e 65 20 70 72 6f 63 65 73 73 20 65 76 65 6e 74 ..(async-when-done.process.event
d880 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 )...............................
d8a0 20 28 65 72 72 6f 72 20 28 66 75 6e 63 61 6c 6c 20 72 65 6a 65 63 74 20 72 65 61 73 6f 6e 29 29 .(error.(funcall.reject.reason))
d8c0 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 77 61 69 74 20 28 74 69 6d ))))))..(defun.promise-wait.(tim
d8e0 65 6f 75 74 20 70 72 6f 6d 69 73 65 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 20 eout.promise)..."Return.promise.
d900 74 6f 20 77 61 69 74 20 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 20 75 6e 74 69 6c 20 50 52 4f 4d to.wait.synchronously.until.PROM
d920 49 53 45 20 69 73 20 72 65 73 6f 6c 76 65 64 20 6f 72 20 72 65 6a 65 63 74 65 64 20 6f 72 20 54 ISE.is.resolved.or.rejected.or.T
d940 49 4d 45 4f 55 54 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 54 49 4d 45 4f 55 54 20 IMEOUT...Arguments:...-.TIMEOUT.
d960 63 61 6e 20 61 63 63 65 70 74 20 74 68 65 20 76 61 72 69 6f 75 73 20 66 6f 72 6d 61 74 73 2e 20 can.accept.the.various.formats..
d980 20 53 65 65 20 60 72 75 6e 2d 61 74 2d 74 69 6d 65 27 2e 0a 20 20 2d 20 50 52 4f 4d 49 53 45 20 .See.`run-at-time'....-.PROMISE.
d9a0 69 73 20 61 6e 79 20 70 72 6f 6d 69 73 65 20 6f 62 6a 65 63 74 2e 0a 0a 52 65 73 6f 6c 76 65 3a is.any.promise.object...Resolve:
d9c0 0a 20 20 2d 20 52 65 74 75 72 6e 20 28 3a 66 75 6c 6c 66 69 6c 6c 65 64 20 76 61 6c 75 65 29 2c ...-.Return.(:fullfilled.value),
d9e0 20 76 61 6c 75 65 20 69 73 20 50 52 4f 4d 49 53 45 20 72 65 73 6f 6c 76 65 64 20 76 61 6c 75 65 .value.is.PROMISE.resolved.value
da00 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 52 65 74 75 72 6e 20 28 3a 72 65 6a 65 63 74 65 64 ...Reject:...-.Return.(:rejected
da20 20 72 65 61 73 6f 6e 29 2c 20 72 65 61 73 6f 6e 20 69 73 20 50 52 4f 4d 49 53 45 20 72 65 6a 65 .reason),.reason.is.PROMISE.reje
da40 63 74 65 64 20 72 65 61 73 6f 6e 2e 0a 0a 54 69 6d 65 6f 75 74 3a 0a 20 20 2d 20 52 65 74 75 72 cted.reason...Timeout:...-.Retur
da60 6e 20 28 3a 74 69 6d 65 6f 75 74 65 64 29 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 n.(:timeouted)."...(declare.(ind
da80 65 6e 74 20 31 29 29 0a 20 20 28 63 61 74 63 68 20 27 64 6f 6e 65 0a 20 20 20 20 28 6c 65 74 2a ent.1))...(catch.'done.....(let*
daa0 20 28 68 61 6e 64 6c 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 72 20 28 72 75 6e .(handled............(timer.(run
dac0 2d 61 74 2d 74 69 6d 65 20 74 69 6d 65 6f 75 74 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 -at-time.timeout.nil............
dae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 ....................(lambda.()..
db00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
db20 28 75 6e 6c 65 73 73 20 68 61 6e 64 6c 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (unless.handled.................
db40 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 68 61 6e 64 6c 65 64 ...................(setq.handled
db60 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .t).............................
db80 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 64 6f 6e 65 20 28 70 72 6f 6d 69 73 65 2d 72 65 6a .......(throw.'done.(promise-rej
dba0 65 63 74 20 27 28 3a 74 69 6d 65 6f 75 74 65 64 29 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 ect.'(:timeouted)))))))).......(
dbc0 70 72 6f 6d 69 73 65 2d 74 68 65 6e 20 70 72 6f 6d 69 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 promise-then.promise............
dbe0 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 .........(lambda.(value)........
dc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 68 61 6e 64 6c 65 64 0a 20 ...............(unless.handled..
dc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 68 61 6e .......................(setq.han
dc40 64 6c 65 64 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dled.t).........................
dc60 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 20 74 69 6d 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 (cancel-timer.timer)............
dc80 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 64 6f 6e 65 20 28 70 72 6f 6d 69 .............(throw.'done.(promi
dca0 73 65 2d 72 65 73 6f 6c 76 65 20 60 28 3a 66 75 6c 6c 66 69 6c 6c 65 64 20 2c 76 61 6c 75 65 29 se-resolve.`(:fullfilled.,value)
dcc0 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 28 6c 61 6d 62 64 61 )))).....................(lambda
dce0 20 28 72 65 61 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(reason).......................
dd00 28 75 6e 6c 65 73 73 20 68 61 6e 64 6c 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (unless.handled.................
dd20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 68 61 6e 64 6c 65 64 20 74 29 0a 20 20 20 20 20 20 20 ........(setq.handled.t)........
dd40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 20 74 .................(cancel-timer.t
dd60 69 6d 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 imer).........................(t
dd80 68 72 6f 77 20 27 64 6f 6e 65 20 28 70 72 6f 6d 69 73 65 2d 72 65 6a 65 63 74 20 60 28 3a 72 65 hrow.'done.(promise-reject.`(:re
dda0 6a 65 63 74 65 64 20 2c 72 65 61 73 6f 6e 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 77 68 69 6c jected.,reason)))))).......(whil
ddc0 65 20 74 20 28 61 63 63 65 70 74 2d 70 72 6f 63 65 73 73 2d 6f 75 74 70 75 74 29 29 29 29 29 0a e.t.(accept-process-output))))).
dde0 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 77 61 69 74 2d 76 61 6c 75 65 20 28 70 72 6f 6d .(defun.promise-wait-value.(prom
de00 69 73 65 29 0a 20 20 22 52 65 74 75 72 6e 20 6f 72 69 67 6e 61 6c 20 76 61 6c 75 65 20 66 6f 72 ise)..."Return.orignal.value.for
de20 6d 20 50 52 4f 4d 49 53 45 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 60 70 72 6f 6d 69 m.PROMISE.return.value.of.`promi
de40 73 65 2d 77 61 69 74 27 2e 22 0a 20 20 28 73 65 71 2d 6c 65 74 20 28 73 74 61 74 65 20 76 61 6c se-wait'."...(seq-let.(state.val
de60 75 65 29 20 28 70 72 6f 6d 69 73 65 2d 5f 76 61 6c 75 65 20 70 72 6f 6d 69 73 65 29 0a 20 20 20 ue).(promise-_value.promise)....
de80 20 28 63 6f 6e 64 0a 20 20 20 20 20 28 28 65 71 20 3a 66 75 6c 6c 66 69 6c 6c 65 64 20 73 74 61 .(cond......((eq.:fullfilled.sta
dea0 74 65 29 20 76 61 6c 75 65 29 0a 20 20 20 20 20 28 28 65 71 20 3a 72 65 6a 65 63 74 65 64 20 20 te).value)......((eq.:rejected..
dec0 73 74 61 74 65 29 20 28 65 72 72 6f 72 20 22 52 65 6a 65 63 74 65 64 3a 20 25 73 22 20 28 70 72 state).(error."Rejected:.%s".(pr
dee0 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 28 28 65 71 in1-to-string.value)))......((eq
df00 20 3a 74 69 6d 65 6f 75 74 65 64 20 73 74 61 74 65 29 20 28 65 72 72 6f 72 20 22 54 69 6d 65 6f .:timeouted.state).(error."Timeo
df20 75 74 65 64 3a 20 25 73 22 20 28 70 72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67 20 76 61 6c 75 65 uted:.%s".(prin1-to-string.value
df40 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e ))))))..(defun.promise-concurren
df60 74 2d 2d 69 6e 74 65 72 6e 61 6c 20 28 63 6f 6e 63 75 72 72 65 6e 74 20 6c 69 6d 69 74 20 70 72 t--internal.(concurrent.limit.pr
df80 6f 6d 69 73 65 66 6e 20 26 6f 70 74 69 6f 6e 61 6c 20 6e 6f 2d 72 65 6a 65 63 74 2d 69 6d 6d 65 omisefn.&optional.no-reject-imme
dfa0 64 69 61 74 65 6c 79 2d 70 29 0a 20 20 22 49 6e 74 65 72 6e 61 6c 20 66 75 6e 63 74 69 6f 6e 20 diately-p)..."Internal.function.
dfc0 6f 66 20 60 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e 74 27 2e 0a 0a 41 72 67 75 6d 65 of.`promise-concurrent'...Argume
dfe0 6e 74 73 3a 0a 20 20 2d 20 43 4f 4e 43 55 52 52 45 4e 54 20 69 73 20 6c 69 6d 69 74 65 64 20 6e nts:...-.CONCURRENT.is.limited.n
e000 75 6d 62 65 72 20 6f 66 20 63 6f 6e 63 75 72 72 65 6e 74 20 70 72 6f 6d 69 73 65 73 2e 0a 20 20 umber.of.concurrent.promises....
e020 2d 20 4c 49 4d 49 54 20 69 73 20 6e 75 6d 62 65 72 20 6f 66 20 50 52 4f 4d 49 53 45 46 4e 20 65 -.LIMIT.is.number.of.PROMISEFN.e
e040 78 65 63 75 74 69 6f 6e 73 2e 0a 20 20 2d 20 50 52 4f 4d 49 53 45 46 4e 20 69 73 20 66 75 6e 63 xecutions....-.PROMISEFN.is.func
e060 74 69 6f 6e 20 73 68 6f 75 6c 64 20 72 65 74 75 72 6e 20 61 6e 79 20 70 72 6f 6d 69 73 65 20 6f tion.should.return.any.promise.o
e080 62 6a 65 63 74 2e 0a 20 20 2d 20 49 66 20 4e 4f 2d 52 45 4a 45 43 54 2d 49 4d 4d 45 44 49 41 54 bject....-.If.NO-REJECT-IMMEDIAT
e0a0 45 4c 59 2d 50 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 72 65 74 75 72 6e 65 64 20 70 72 6f 6d 69 ELY-P.is.non-nil,.returned.promi
e0c0 73 65 20 69 73 20 6e 6f 74 20 72 65 6a 65 63 74 20 69 6d 6d 69 64 69 61 74 65 6c 79 2e 22 0a 20 se.is.not.reject.immidiately."..
e0e0 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 32 29 29 0a 20 20 28 6c 65 74 20 28 28 70 .(declare.(indent.2))...(let.((p
e100 69 70 65 6c 69 6e 65 20 28 6d 61 6b 65 2d 76 65 63 74 6f 72 20 63 6f 6e 63 75 72 72 65 6e 74 20 ipeline.(make-vector.concurrent.
e120 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 72 65 73 75 6c 74 73 20 28 6d 61 6b 65 2d 76 65 63 nil)).........(results.(make-vec
e140 74 6f 72 20 6c 69 6d 69 74 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 75 6e 74 20 2d tor.limit.nil)).........(count.-
e160 31 29 0a 20 20 20 20 20 20 20 20 72 65 61 73 6f 6e 73 29 0a 20 20 20 20 28 64 6f 74 69 6d 65 73 1).........reasons).....(dotimes
e180 20 28 69 20 63 6f 6e 63 75 72 72 65 6e 74 29 0a 20 20 20 20 20 20 28 61 73 65 74 20 70 69 70 65 .(i.concurrent).......(aset.pipe
e1a0 6c 69 6e 65 20 69 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 6e 65 77 0a line.i.............(promise-new.
e1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 6f 6c 76 65 20 72 65 .............(lambda.(resolve.re
e1e0 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 6c 61 62 65 6c 73 0a ject)................(cl-labels.
e200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 77 6f 72 6b 65 72 20 28 69 6e 78 29 0a 20 ................((worker.(inx)..
e220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 ........................(if.(not
e240 20 28 3c 20 69 6e 78 20 6c 69 6d 69 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(<.inx.limit)).................
e260 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 73 6f 6c 76 65 29 0a 20 .............(funcall.resolve)..
e280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 ..........................(promi
e2a0 73 65 2d 63 68 61 69 6e 20 28 66 75 6e 63 61 6c 6c 20 70 72 6f 6d 69 73 65 66 6e 20 69 6e 78 29 se-chain.(funcall.promisefn.inx)
e2c0 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 28 74 ..............................(t
e2e0 68 65 6e 20 28 6c 61 6d 62 64 61 20 28 72 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hen.(lambda.(res)...............
e300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 65 74 20 72 65 73 .......................(aset.res
e320 75 6c 74 73 20 69 6e 78 20 72 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ults.inx.res)...................
e340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 6f 72 6b 65 72 20 28 63 6c 2d 69 ...................(worker.(cl-i
e360 6e 63 66 20 63 6f 75 6e 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ncf.count))))...................
e380 20 20 20 20 20 20 20 20 20 20 20 28 63 61 74 63 68 20 28 6c 61 6d 62 64 61 20 28 72 65 61 73 6f ...........(catch.(lambda.(reaso
e3a0 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n)..............................
e3c0 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 6e 6f 2d 72 65 6a 65 63 74 2d 69 6d 6d 65 .........(if.(not.no-reject-imme
e3e0 64 69 61 74 65 6c 79 2d 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 diately-p)......................
e400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 .....................(funcall.re
e420 6a 65 63 74 20 72 65 61 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ject.reason)....................
e440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 60 28 2c 69 6e .....................(push.`(,in
e460 78 20 2c 72 65 61 73 6f 6e 29 20 72 65 61 73 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 x.,reason).reasons).............
e480 20 20 20 20 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 6f 72 ............................(wor
e4a0 6b 65 72 20 28 63 6c 2d 69 6e 63 66 20 63 6f 75 6e 74 29 29 29 29 29 29 29 29 29 0a 20 20 20 20 ker.(cl-incf.count))))))))).....
e4c0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 6f 72 6b 65 72 20 28 63 6c 2d 69 6e 63 66 20 63 6f 75 ............(worker.(cl-incf.cou
e4e0 6e 74 29 29 29 29 29 29 29 0a 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 63 68 61 69 6e 20 28 70 72 nt))))))).....(promise-chain.(pr
e500 6f 6d 69 73 65 2d 61 6c 6c 20 70 69 70 65 6c 69 6e 65 29 0a 20 20 20 20 20 20 28 74 68 65 6e 20 omise-all.pipeline).......(then.
e520 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e (lambda.(_)...............(if.(n
e540 6f 74 20 72 65 61 73 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 ot.reasons)...................re
e560 73 75 6c 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 69 73 65 2d 72 sults.................(promise-r
e580 65 6a 65 63 74 20 60 28 2c 72 65 73 75 6c 74 73 20 2c 72 65 61 73 6f 6e 73 29 29 29 29 29 29 29 eject.`(,results.,reasons)))))))
e5a0 29 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e 74 20 28 63 6f )..(defun.promise-concurrent.(co
e5c0 6e 63 75 72 72 65 6e 74 20 6c 69 6d 69 74 20 70 72 6f 6d 69 73 65 66 6e 29 0a 20 20 22 52 65 74 ncurrent.limit.promisefn)..."Ret
e5e0 75 72 6e 20 70 72 6f 6d 69 73 65 20 74 6f 20 72 75 6e 20 61 20 6c 69 6d 69 74 65 64 20 6e 75 6d urn.promise.to.run.a.limited.num
e600 62 65 72 20 6f 66 20 63 6f 6e 63 75 72 72 65 6e 74 20 70 72 6f 6d 69 73 65 73 2e 0a 0a 54 68 69 ber.of.concurrent.promises...Thi
e620 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 70 72 6f 6d 69 73 65 20 77 68 69 63 68 s.function.returns.promise.which
e640 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 72 65 6a 65 63 74 65 64 20 69 66 20 6f 6e 65 0a 6f 66 20 .immediately.rejected.if.one.of.
e660 70 72 6f 6d 69 73 65 73 20 66 61 69 6c 73 2e 20 20 54 68 69 73 20 62 65 68 61 76 69 6f 72 20 63 promises.fails...This.behavior.c
e680 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 60 70 72 6f 6d 69 73 65 2d 61 6c 6c 27 2e 0a 53 65 65 orresponds.to.`promise-all'..See
e6a0 20 60 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e 74 2d 6e 6f 2d 72 65 6a 65 63 74 2d 69 .`promise-concurrent-no-reject-i
e6c0 6d 6d 69 64 69 61 74 65 6c 79 27 20 77 69 74 68 20 6e 6f 20 72 65 6a 65 63 74 20 69 6d 6d 69 64 mmidiately'.with.no.reject.immid
e6e0 69 61 74 65 6c 79 2e 0a 0a 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 43 4f 4e 43 55 52 52 45 iately...Arguments:...-.CONCURRE
e700 4e 54 20 69 73 20 6c 69 6d 69 74 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6e 63 75 72 72 65 NT.is.limited.number.of.concurre
e720 6e 74 20 70 72 6f 6d 69 73 65 73 2e 0a 20 20 2d 20 4c 49 4d 49 54 20 69 73 20 6e 75 6d 62 65 72 nt.promises....-.LIMIT.is.number
e740 20 6f 66 20 50 52 4f 4d 49 53 45 46 4e 20 65 78 65 63 75 74 69 6f 6e 73 2e 0a 20 20 2d 20 50 52 .of.PROMISEFN.executions....-.PR
e760 4f 4d 49 53 45 46 4e 20 69 73 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 72 65 74 75 72 OMISEFN.is.function.should.retur
e780 6e 20 61 6e 79 20 70 72 6f 6d 69 73 65 20 6f 62 6a 65 63 74 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a n.any.promise.object...Resolve:.
e7a0 20 20 2d 20 52 65 74 75 72 6e 20 76 65 63 74 6f 72 20 69 6e 63 6c 75 64 65 73 20 76 61 6c 75 65 ..-.Return.vector.includes.value
e7c0 73 20 72 65 73 6f 6c 76 65 64 20 66 6f 72 20 70 72 6f 6d 69 73 65 20 77 69 74 68 20 72 65 73 70 s.resolved.for.promise.with.resp
e7e0 65 63 74 20 74 6f 20 6f 72 64 65 72 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 52 65 74 75 72 ect.to.order...Reject:...-.Retur
e800 6e 20 72 65 61 73 6f 6e 20 66 6f 72 20 74 68 65 20 66 69 72 73 74 20 72 65 6a 65 63 74 69 6f 6e n.reason.for.the.first.rejection
e820 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 32 29 29 0a 20 20 28 66 75 6e ."...(declare.(indent.2))...(fun
e840 63 61 6c 6c 20 23 27 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e 74 2d 2d 69 6e 74 65 72 call.#'promise-concurrent--inter
e860 6e 61 6c 20 63 6f 6e 63 75 72 72 65 6e 74 20 6c 69 6d 69 74 20 70 72 6f 6d 69 73 65 66 6e 29 29 nal.concurrent.limit.promisefn))
e880 0a 0a 28 64 65 66 75 6e 20 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e 74 2d 6e 6f 2d 72 ..(defun.promise-concurrent-no-r
e8a0 65 6a 65 63 74 2d 69 6d 6d 69 64 69 61 74 65 6c 79 20 28 63 6f 6e 63 75 72 72 65 6e 74 20 6c 69 eject-immidiately.(concurrent.li
e8c0 6d 69 74 20 70 72 6f 6d 69 73 65 66 6e 29 0a 20 20 22 52 65 74 75 72 6e 20 70 72 6f 6d 69 73 65 mit.promisefn)..."Return.promise
e8e0 20 74 6f 20 72 75 6e 20 61 20 6c 69 6d 69 74 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6e 63 .to.run.a.limited.number.of.conc
e900 75 72 72 65 6e 74 20 70 72 6f 6d 69 73 65 73 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 urrent.promises...This.function.
e920 72 65 74 75 72 6e 73 20 70 72 6f 6d 69 73 65 20 77 68 69 63 68 20 65 78 65 63 75 74 65 20 74 68 returns.promise.which.execute.th
e940 65 20 77 68 6f 6c 65 20 70 72 6f 6d 69 73 65 73 20 69 66 0a 61 20 70 72 6f 6d 69 73 65 20 66 61 e.whole.promises.if.a.promise.fa
e960 69 6c 73 2e 20 20 49 66 20 61 6c 6c 20 70 72 6f 6d 69 73 65 73 20 61 72 65 20 66 75 6c 66 69 6c ils...If.all.promises.are.fulfil
e980 6c 65 64 2c 20 6f 6e 6c 79 20 76 65 63 74 6f 72 73 0a 77 69 74 68 20 72 65 73 6f 6c 76 65 64 20 led,.only.vectors.with.resolved.
e9a0 76 61 6c 75 65 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 2e 20 20 49 66 20 6f 6e 65 20 6f 66 20 values.are.returned...If.one.of.
e9c0 70 72 6f 6d 69 73 65 20 69 73 0a 72 65 6a 65 63 74 65 64 2c 20 74 68 65 20 77 68 6f 6c 65 20 70 promise.is.rejected,.the.whole.p
e9e0 72 6f 6d 69 73 65 73 20 61 72 65 20 65 78 65 63 75 74 65 64 20 61 6e 64 20 74 68 65 20 69 6e 64 romises.are.executed.and.the.ind
ea00 65 78 20 61 6e 64 0a 72 65 61 73 6f 6e 20 72 65 6a 65 63 74 65 64 20 61 73 20 74 68 65 20 73 65 ex.and.reason.rejected.as.the.se
ea20 63 6f 6e 64 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 72 65 74 75 72 6e 65 64 20 61 66 cond.return.value.is.returned.af
ea40 74 65 72 20 74 68 65 0a 77 68 6f 6c 65 20 73 74 61 74 65 20 68 61 73 20 62 65 65 6e 20 64 65 74 ter.the.whole.state.has.been.det
ea60 65 72 6d 69 6e 65 64 2e 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 74 68 65 20 69 6e 64 65 ermined...In.this.case,.the.inde
ea80 78 20 6c 6f 63 61 74 69 6f 6e 0a 6f 66 20 74 68 65 20 66 69 72 73 74 20 72 65 74 75 72 6e 20 76 x.location.of.the.first.return.v
eaa0 61 6c 75 65 20 69 73 20 6e 69 6c 2e 0a 53 65 65 20 60 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 alue.is.nil..See.`promise-concur
eac0 72 65 6e 74 27 20 77 69 74 68 20 72 65 6a 65 63 74 20 69 6d 6d 69 64 69 61 74 65 6c 79 2e 0a 0a rent'.with.reject.immidiately...
eae0 41 72 67 75 6d 65 6e 74 73 3a 0a 20 20 2d 20 43 4f 4e 43 55 52 52 45 4e 54 20 69 73 20 6c 69 6d Arguments:...-.CONCURRENT.is.lim
eb00 69 74 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6e 63 75 72 72 65 6e 74 20 70 72 6f 6d 69 73 ited.number.of.concurrent.promis
eb20 65 73 2e 0a 20 20 2d 20 4c 49 4d 49 54 20 69 73 20 6e 75 6d 62 65 72 20 6f 66 20 50 52 4f 4d 49 es....-.LIMIT.is.number.of.PROMI
eb40 53 45 46 4e 20 65 78 65 63 75 74 69 6f 6e 73 2e 0a 20 20 2d 20 50 52 4f 4d 49 53 45 46 4e 20 69 SEFN.executions....-.PROMISEFN.i
eb60 73 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 72 65 74 75 72 6e 20 61 6e 79 20 70 72 6f s.function.should.return.any.pro
eb80 6d 69 73 65 20 6f 62 6a 65 63 74 2e 0a 0a 52 65 73 6f 6c 76 65 3a 0a 20 20 2d 20 52 65 74 75 72 mise.object...Resolve:...-.Retur
eba0 6e 20 76 65 63 74 6f 72 20 69 6e 63 6c 75 64 65 73 20 76 61 6c 75 65 73 20 72 65 73 6f 6c 76 65 n.vector.includes.values.resolve
ebc0 64 20 66 6f 72 20 70 72 6f 6d 69 73 65 20 77 69 74 68 20 72 65 73 70 65 63 74 20 74 6f 20 6f 72 d.for.promise.with.respect.to.or
ebe0 64 65 72 2e 0a 0a 52 65 6a 65 63 74 3a 0a 20 20 2d 20 52 65 74 75 72 6e 20 28 3c 76 65 63 74 6f der...Reject:...-.Return.(<vecto
ec00 72 3e 20 3c 6c 69 73 74 3e 29 0a 20 20 20 20 20 20 3c 76 65 63 74 6f 72 3e 20 69 6e 63 6c 75 64 r>.<list>).......<vector>.includ
ec20 65 73 20 76 61 6c 75 65 73 20 72 65 73 6f 6c 76 65 64 20 66 6f 72 20 70 72 6f 6d 69 73 65 20 77 es.values.resolved.for.promise.w
ec40 69 74 68 20 72 65 73 70 65 63 74 20 74 6f 20 6f 72 64 65 72 2e 0a 20 20 20 20 20 20 3c 6c 69 73 ith.respect.to.order........<lis
ec60 74 3e 20 69 73 20 6c 69 73 74 20 6f 66 20 28 69 6e 64 65 78 20 72 65 61 73 6f 6e 29 2e 22 0a 20 t>.is.list.of.(index.reason)."..
ec80 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 32 29 29 0a 20 20 28 66 75 6e 63 61 6c 6c .(declare.(indent.2))...(funcall
eca0 20 23 27 70 72 6f 6d 69 73 65 2d 63 6f 6e 63 75 72 72 65 6e 74 2d 2d 69 6e 74 65 72 6e 61 6c 20 .#'promise-concurrent--internal.
ecc0 63 6f 6e 63 75 72 72 65 6e 74 20 6c 69 6d 69 74 20 70 72 6f 6d 69 73 65 66 6e 20 3a 6e 6f 2d 72 concurrent.limit.promisefn.:no-r
ece0 65 6a 65 63 74 2d 69 6d 6d 65 64 69 61 74 65 6c 79 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 eject-immediately))..(provide.'p
ed00 72 6f 6d 69 73 65 29 0a 3b 3b 3b 20 70 72 6f 6d 69 73 65 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 romise).;;;.promise.el.ends.here
ed20 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
edc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ede0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
faa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fe00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fe20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fe40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fe60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fe80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
107a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
107c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
107e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
115a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
115c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
115e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
117a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
117c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
117e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................