| ofs | hex dump | ascii |
|---|
| 0000 | 77 65 62 2d 32 30 31 34 31 32 33 31 2e 32 30 30 31 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | web-20141231.2001/.............. |
| 0020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0060 | 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000755.0000000.0000000.0000 |
| 0080 | 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 31 35 34 36 00 20 35 00 00 00 | 0000000.00000000000.011546..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 | 77 65 62 2d 32 30 31 34 31 32 33 31 2e 32 30 30 31 2f 77 65 62 2d 70 6b 67 2e 65 6c 00 00 00 00 | web-20141231.2001/web-pkg.el.... |
| 0220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0260 | 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000644.0000000.0000000.0000 |
| 0280 | 30 30 30 30 36 37 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 34 33 30 00 20 30 00 00 00 | 0000671.00000000000.013430..0... |
| 02a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 02c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 02e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0300 | 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .ustar...root................... |
| 0320 | 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........root................... |
| 0340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 03a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 03c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 03e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0400 | 3b 3b 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 3b 20 6c 65 78 69 63 | ;;.-*-.no-byte-compile:.t;.lexic |
| 0420 | 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 6e 69 6c 20 2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b | al-binding:.nil.-*-.(define-pack |
| 0440 | 61 67 65 20 22 77 65 62 22 20 22 32 30 31 34 31 32 33 31 2e 32 30 30 31 22 0a 20 20 22 55 73 65 | age."web"."20141231.2001"..."Use |
| 0460 | 66 75 6c 20 48 54 54 50 20 63 6c 69 65 6e 74 2e 22 0a 20 20 27 28 28 64 61 73 68 20 22 32 2e 39 | ful.HTTP.client."...'((dash."2.9 |
| 0480 | 2e 30 22 29 0a 20 20 20 20 28 73 20 20 20 20 22 31 2e 35 2e 30 22 29 29 0a 20 20 3a 75 72 6c 20 | .0").....(s...."1.5.0"))...:url. |
| 04a0 | 22 68 74 74 70 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6e 69 63 66 65 72 72 69 65 72 2f 65 6d | "http://github.com/nicferrier/em |
| 04c0 | 61 63 73 2d 77 65 62 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 34 38 33 31 38 38 64 61 63 34 62 63 | acs-web"...:commit."483188dac4bc |
| 04e0 | 36 62 34 30 39 62 39 38 35 63 39 64 61 65 34 35 66 33 33 32 34 61 34 32 35 65 66 64 22 0a 20 20 | 6b409b985c9dae45f3324a425efd"... |
| 0500 | 3a 72 65 76 64 65 73 63 20 22 34 38 33 31 38 38 64 61 63 34 62 63 22 0a 20 20 3a 6b 65 79 77 6f | :revdesc."483188dac4bc"...:keywo |
| 0520 | 72 64 73 20 27 28 22 6c 69 73 70 22 20 22 68 74 74 70 22 20 22 68 79 70 65 72 6d 65 64 69 61 22 | rds.'("lisp"."http"."hypermedia" |
| 0540 | 29 0a 20 20 3a 61 75 74 68 6f 72 73 20 27 28 28 22 4e 69 63 20 46 65 72 72 69 65 72 22 20 2e 20 | )...:authors.'(("Nic.Ferrier"... |
| 0560 | 22 6e 66 65 72 72 69 65 72 40 66 65 72 72 69 65 72 2e 6d 65 2e 75 6b 22 29 29 0a 20 20 3a 6d 61 | "nferrier@ferrier.me.uk"))...:ma |
| 0580 | 69 6e 74 61 69 6e 65 72 73 20 27 28 28 22 4e 69 63 20 46 65 72 72 69 65 72 22 20 2e 20 22 6e 66 | intainers.'(("Nic.Ferrier"..."nf |
| 05a0 | 65 72 72 69 65 72 40 66 65 72 72 69 65 72 2e 6d 65 2e 75 6b 22 29 29 29 0a 00 00 00 00 00 00 00 | errier@ferrier.me.uk")))........ |
| 05c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 05e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0600 | 77 65 62 2d 32 30 31 34 31 32 33 31 2e 32 30 30 31 2f 77 65 62 2e 65 6c 00 00 00 00 00 00 00 00 | web-20141231.2001/web.el........ |
| 0620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0660 | 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000644.0000000.0000000.0000 |
| 0680 | 30 30 37 31 35 31 36 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 32 36 35 37 00 20 30 00 00 00 | 0071516.00000000000.012657..0... |
| 06a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 06c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 06e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0700 | 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .ustar...root................... |
| 0720 | 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........root................... |
| 0740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 07a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 07c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 07e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0800 | 3b 3b 3b 20 77 65 62 2e 65 6c 20 2d 2d 2d 20 75 73 65 66 75 6c 20 48 54 54 50 20 63 6c 69 65 6e | ;;;.web.el.---.useful.HTTP.clien |
| 0820 | 74 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 20 2d 2a 2d 0a 0a 3b 3b | t.-*-.lexical-binding:.t.-*-..;; |
| 0840 | 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 32 20 20 4e 69 63 20 46 65 72 72 69 65 72 | .Copyright.(C).2012..Nic.Ferrier |
| 0860 | 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 4e 69 63 20 46 65 72 72 69 65 72 20 3c 6e 66 65 72 72 69 | ..;;.Author:.Nic.Ferrier.<nferri |
| 0880 | 65 72 40 66 65 72 72 69 65 72 2e 6d 65 2e 75 6b 3e 0a 3b 3b 20 4d 61 69 6e 74 61 69 6e 65 72 3a | er@ferrier.me.uk>.;;.Maintainer: |
| 08a0 | 20 4e 69 63 20 46 65 72 72 69 65 72 20 3c 6e 66 65 72 72 69 65 72 40 66 65 72 72 69 65 72 2e 6d | .Nic.Ferrier.<nferrier@ferrier.m |
| 08c0 | 65 2e 75 6b 3e 0a 3b 3b 20 43 72 65 61 74 65 64 3a 20 33 20 41 75 67 20 32 30 31 32 0a 3b 3b 20 | e.uk>.;;.Created:.3.Aug.2012.;;. |
| 08e0 | 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32 30 31 34 31 32 33 31 2e 32 30 30 31 0a 3b | Package-Version:.20141231.2001.; |
| 0900 | 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e 3a 20 34 38 33 31 38 38 64 61 63 34 62 63 | ;.Package-Revision:.483188dac4bc |
| 0920 | 0a 3b 3b 20 55 72 6c 3a 20 68 74 74 70 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6e 69 63 66 65 | .;;.Url:.http://github.com/nicfe |
| 0940 | 72 72 69 65 72 2f 65 6d 61 63 73 2d 77 65 62 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 6c 69 73 | rrier/emacs-web.;;.Keywords:.lis |
| 0960 | 70 2c 20 68 74 74 70 2c 20 68 79 70 65 72 6d 65 64 69 61 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 72 | p,.http,.hypermedia.;;.Package-r |
| 0980 | 65 71 75 69 72 65 73 3a 20 28 28 64 61 73 68 20 22 32 2e 39 2e 30 22 29 28 73 20 22 31 2e 35 2e | equires:.((dash."2.9.0")(s."1.5. |
| 09a0 | 30 22 29 29 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 4e 4f 54 20 70 61 72 74 20 6f | 0"))..;;.This.file.is.NOT.part.o |
| 09c0 | 66 20 47 4e 55 20 45 6d 61 63 73 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 | f.GNU.Emacs...;;.This.program.is |
| 09e0 | 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 74 72 69 | .free.software;.you.can.redistri |
| 0a00 | 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 6e 64 65 | bute.it.and/or.modify.;;.it.unde |
| 0a20 | 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 6c 20 50 | r.the.terms.of.the.GNU.General.P |
| 0a40 | 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 0a 3b 3b | ublic.License.as.published.by.;; |
| 0a60 | 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 2c 20 65 | .the.Free.Software.Foundation,.e |
| 0a80 | 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 65 2c 20 | ither.version.3.of.the.License,. |
| 0aa0 | 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 74 65 72 | or.;;.(at.your.option).any.later |
| 0ac0 | 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 20 64 69 | .version...;;.This.program.is.di |
| 0ae0 | 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 20 77 69 | stributed.in.the.hope.that.it.wi |
| 0b00 | 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 41 4e 59 | ll.be.useful,.;;.but.WITHOUT.ANY |
| 0b20 | 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 6d 70 6c | .WARRANTY;.without.even.the.impl |
| 0b40 | 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 49 4c 49 | ied.warranty.of.;;.MERCHANTABILI |
| 0b60 | 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 52 20 50 | TY.or.FITNESS.FOR.A.PARTICULAR.P |
| 0b80 | 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 61 6c 20 | URPOSE...See.the.;;.GNU.General. |
| 0ba0 | 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 6c 73 2e | Public.License.for.more.details. |
| 0bc0 | 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 20 61 20 | ..;;.You.should.have.received.a. |
| 0be0 | 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 63 20 4c | copy.of.the.GNU.General.Public.L |
| 0c00 | 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 67 72 61 | icense.;;.along.with.this.progra |
| 0c20 | 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 6e 75 2e | m...If.not,.see.<http://www.gnu. |
| 0c40 | 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a | org/licenses/>...;;;.Commentary: |
| 0c60 | 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 69 73 20 61 6e 20 48 54 54 50 20 63 6c 69 65 6e 74 20 75 73 | .;;.;;.This.is.an.HTTP.client.us |
| 0c80 | 69 6e 67 20 6c 65 78 69 63 61 6c 20 73 63 6f 70 65 2e 20 20 54 68 69 73 20 6d 61 6b 65 73 20 63 | ing.lexical.scope...This.makes.c |
| 0ca0 | 6f 64 69 6e 67 20 77 69 74 68 0a 3b 3b 20 63 61 6c 6c 62 61 63 6b 73 20 65 61 73 69 65 72 20 74 | oding.with.;;.callbacks.easier.t |
| 0cc0 | 68 61 6e 20 77 69 74 68 20 60 75 72 6c 27 2e 20 20 54 68 69 73 20 70 61 63 6b 61 67 65 20 61 6c | han.with.`url'...This.package.al |
| 0ce0 | 73 6f 20 70 72 6f 76 69 64 65 73 20 61 0a 3b 3b 20 73 74 72 65 61 6d 69 6e 67 20 6d 6f 64 65 20 | so.provides.a.;;.streaming.mode. |
| 0d00 | 77 68 65 72 65 20 74 68 65 20 63 61 6c 6c 62 61 63 6b 20 69 73 20 63 6f 6e 74 69 6e 75 61 6c 6c | where.the.callback.is.continuall |
| 0d20 | 79 20 63 61 6c 6c 65 64 20 77 68 65 6e 65 76 65 72 0a 3b 3b 20 64 61 74 61 20 61 72 72 69 76 65 | y.called.whenever.;;.data.arrive |
| 0d40 | 73 2e 20 54 68 69 73 20 69 73 20 70 61 72 74 69 63 75 6c 61 72 6c 79 20 75 73 65 66 75 6c 20 66 | s..This.is.particularly.useful.f |
| 0d60 | 6f 72 20 63 68 75 6e 6b 65 64 20 65 6e 63 6f 64 69 6e 67 0a 3b 3b 20 73 63 65 6e 61 72 69 6f 73 | or.chunked.encoding.;;.scenarios |
| 0d80 | 2e 0a 0a 3b 3b 20 45 78 61 6d 70 6c 65 73 3a 0a 0a 3b 3b 20 47 45 54 2d 69 6e 67 20 61 6e 20 48 | ...;;.Examples:..;;.GET-ing.an.H |
| 0da0 | 54 54 50 20 70 61 67 65 0a 3b 3b 0a 3b 3b 20 28 77 65 62 2d 68 74 74 70 2d 67 65 74 0a 3b 3b 20 | TTP.page.;;.;;.(web-http-get.;;. |
| 0dc0 | 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 20 68 65 61 64 65 72 20 64 61 74 61 29 0a 3b 3b 20 20 20 | .(lambda.(con.header.data).;;... |
| 0de0 | 20 28 6d 65 73 73 61 67 65 20 22 74 68 65 20 70 61 67 65 20 72 65 74 75 72 6e 65 64 20 69 73 3a | .(message."the.page.returned.is: |
| 0e00 | 20 25 73 22 20 64 61 74 61 29 29 0a 3b 3b 20 20 3a 75 72 6c 20 22 68 74 74 70 3a 2f 2f 65 6d 61 | .%s".data)).;;..:url."http://ema |
| 0e20 | 63 73 77 69 6b 69 2e 6f 72 67 2f 77 69 6b 69 2f 4e 69 63 46 65 72 72 69 65 72 22 29 0a 0a 3b 3b | cswiki.org/wiki/NicFerrier")..;; |
| 0e40 | 20 50 4f 53 54 2d 69 6e 67 20 74 6f 20 61 6e 20 48 54 54 50 20 61 70 70 0a 3b 3b 0a 3b 3b 20 28 | .POST-ing.to.an.HTTP.app.;;.;;.( |
| 0e60 | 77 65 62 2d 68 74 74 70 2d 70 6f 73 74 0a 3b 3b 20 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 20 68 | web-http-post.;;..(lambda.(con.h |
| 0e80 | 65 61 64 65 72 20 64 61 74 61 29 0a 3b 3b 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 74 68 65 20 | eader.data).;;....(message."the. |
| 0ea0 | 64 61 74 61 20 69 73 3a 20 25 53 22 20 64 61 74 61 29 29 0a 3b 3b 20 20 3a 75 72 6c 20 22 68 74 | data.is:.%S".data)).;;..:url."ht |
| 0ec0 | 74 70 3a 2f 2f 65 78 61 6d 70 6c 65 2e 6f 72 67 2f 70 6f 73 74 70 6c 61 63 65 2f 22 0a 3b 3b 20 | tp://example.org/postplace/".;;. |
| 0ee0 | 20 3a 64 61 74 61 20 27 28 28 22 70 61 72 61 6d 65 74 65 72 31 22 20 2e 20 22 64 61 74 61 22 29 | .:data.'(("parameter1"..."data") |
| 0f00 | 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 28 22 70 61 72 61 6d 65 74 65 72 32 22 20 2e 20 22 6d 6f | .;;..........("parameter2"..."mo |
| 0f20 | 72 65 20 64 61 74 61 22 29 29 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 3b 3b 20 53 74 79 6c 65 | re.data")))..;;;.Code:..;;.Style |
| 0f40 | 2d 6e 6f 74 65 3a 20 54 68 69 73 20 63 6f 64 65 73 20 75 73 65 73 20 74 68 65 20 45 6d 61 63 73 | -note:.This.codes.uses.the.Emacs |
| 0f60 | 20 73 74 79 6c 65 20 6f 66 3a 0a 3b 3b 0a 3b 3b 20 20 20 20 77 65 62 2f 70 72 69 76 61 74 65 2d | .style.of:.;;.;;....web/private- |
| 0f80 | 66 75 6e 63 74 69 6f 6e 0a 3b 3b 0a 3b 3b 20 66 6f 72 20 70 72 69 76 61 74 65 20 66 75 6e 63 74 | function.;;.;;.for.private.funct |
| 0fa0 | 69 6f 6e 73 2e 0a 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 72 65 71 | ions...(eval-when-compile...(req |
| 0fc0 | 75 69 72 65 20 27 63 6c 29 29 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 0a 28 72 65 | uire.'cl)).(require.'cl-lib).(re |
| 0fe0 | 71 75 69 72 65 20 27 75 72 6c 2d 70 61 72 73 65 29 0a 28 72 65 71 75 69 72 65 20 27 6a 73 6f 6e | quire.'url-parse).(require.'json |
| 1000 | 29 0a 28 72 65 71 75 69 72 65 20 27 62 72 6f 77 73 65 2d 75 72 6c 29 0a 28 72 65 71 75 69 72 65 | ).(require.'browse-url).(require |
| 1020 | 20 27 64 61 73 68 29 0a 28 72 65 71 75 69 72 65 20 27 74 69 6d 65 2d 73 74 61 6d 70 29 0a 28 72 | .'dash).(require.'time-stamp).(r |
| 1040 | 65 71 75 69 72 65 20 27 72 78 29 0a 28 72 65 71 75 69 72 65 20 27 73 29 0a 0a 28 64 65 66 63 6f | equire.'rx).(require.'s)..(defco |
| 1060 | 6e 73 74 20 77 65 62 2f 72 65 71 75 65 73 74 2d 6d 69 6d 65 74 79 70 65 0a 20 20 27 61 70 70 6c | nst.web/request-mimetype...'appl |
| 1080 | 69 63 61 74 69 6f 6e 2f 78 2d 77 77 77 2d 66 6f 72 6d 2d 75 72 6c 65 6e 63 6f 64 65 64 0a 20 20 | ication/x-www-form-urlencoded... |
| 10a0 | 22 54 68 65 20 64 65 66 61 75 6c 74 20 4d 49 4d 45 20 74 79 70 65 20 75 73 65 64 20 66 6f 72 20 | "The.default.MIME.type.used.for. |
| 10c0 | 72 65 71 75 65 73 74 73 2e 22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 77 65 62 2d 6d 75 6c 74 69 | requests.")..(defconst.web-multi |
| 10e0 | 70 61 72 74 2d 6d 69 6d 65 74 79 70 65 0a 20 20 27 6d 75 6c 74 69 70 61 72 74 2f 66 6f 72 6d 2d | part-mimetype...'multipart/form- |
| 1100 | 64 61 74 61 0a 20 20 22 54 68 65 20 4d 49 4d 45 20 74 79 70 65 20 75 73 65 64 20 66 6f 72 20 6d | data..."The.MIME.type.used.for.m |
| 1120 | 75 6c 74 69 70 61 72 74 20 72 65 71 75 65 73 74 73 2e 22 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 | ultipart.requests.")..(defun.web |
| 1140 | 2d 68 65 61 64 65 72 2d 70 61 72 73 65 20 28 64 61 74 61 29 0a 20 20 22 50 61 72 73 65 20 61 6e | -header-parse.(data)..."Parse.an |
| 1160 | 20 48 54 54 50 20 72 65 73 70 6f 6e 73 65 20 68 65 61 64 65 72 2e 0a 0a 45 61 63 68 20 68 65 61 | .HTTP.response.header...Each.hea |
| 1180 | 64 65 72 20 6c 69 6e 65 20 69 73 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 68 61 73 68 20 77 | der.line.is.stored.in.the.hash.w |
| 11a0 | 69 74 68 20 61 20 73 79 6d 62 6f 6c 20 66 6f 72 6d 20 6f 66 20 74 68 65 0a 68 65 61 64 65 72 20 | ith.a.symbol.form.of.the.header. |
| 11c0 | 6e 61 6d 65 2e 0a 0a 54 68 65 20 73 74 61 74 75 73 20 6c 69 6e 65 20 69 73 20 65 78 70 65 63 74 | name...The.status.line.is.expect |
| 11e0 | 65 64 20 74 6f 20 62 65 20 74 68 65 20 66 69 72 73 74 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 64 | ed.to.be.the.first.line.of.the.d |
| 1200 | 61 74 61 2e 0a 54 68 65 20 73 74 61 74 75 73 20 69 73 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 | ata..The.status.is.stored.in.the |
| 1220 | 20 68 65 61 64 65 72 20 61 73 20 77 65 6c 6c 20 77 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 | .header.as.well.with.the.followi |
| 1240 | 6e 67 0a 6b 65 79 73 3a 0a 0a 20 20 73 74 61 74 75 73 2d 76 65 72 73 69 6f 6e 0a 20 20 73 74 61 | ng.keys:....status-version...sta |
| 1260 | 74 75 73 2d 63 6f 64 65 0a 20 20 73 74 61 74 75 73 2d 73 74 72 69 6e 67 0a 0a 77 68 69 63 68 20 | tus-code...status-string..which. |
| 1280 | 61 72 65 20 73 74 6f 72 65 64 20 61 73 20 73 79 6d 62 6f 6c 73 20 74 68 65 20 73 61 6d 65 20 61 | are.stored.as.symbols.the.same.a |
| 12a0 | 73 20 74 68 65 20 6e 6f 72 6d 61 6c 20 68 65 61 64 65 72 20 6b 65 79 73 2e 22 0a 20 20 28 6c 65 | s.the.normal.header.keys."...(le |
| 12c0 | 74 2a 20 28 28 68 65 61 64 65 72 2d 68 61 73 68 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c | t*.((header-hash.(make-hash-tabl |
| 12e0 | 65 20 3a 74 65 73 74 20 27 65 71 75 61 6c 29 29 0a 20 20 20 20 20 20 20 20 20 28 68 65 61 64 65 | e.:test.'equal))..........(heade |
| 1300 | 72 2d 6c 69 6e 65 73 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 64 61 74 61 20 22 5c 72 5c 6e | r-lines.(split-string.data."\r\n |
| 1320 | 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 74 61 74 75 73 2d 6c 69 6e 65 20 28 63 61 72 20 68 | "))..........(status-line.(car.h |
| 1340 | 65 61 64 65 72 2d 6c 69 6e 65 73 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 | eader-lines))).....(when.(string |
| 1360 | 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 22 48 54 54 50 2f 5c 5c 28 5b 30 2d 39 2e | -match............"HTTP/\\([0-9. |
| 1380 | 5d 2b 5c 5c 29 20 5c 5c 28 5b 30 2d 39 5d 5c 5c 7b 33 5c 5c 7d 5c 5c 29 5c 5c 28 20 5c 5c 28 2e | ]+\\).\\([0-9]\\{3\\}\\)\\(.\\(. |
| 13a0 | 2a 5c 5c 29 5c 5c 29 2a 22 0a 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 75 73 2d 6c 69 6e 65 | *\\)\\)*"............status-line |
| 13c0 | 29 0a 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 27 73 74 61 74 75 73 2d 76 65 72 73 69 6f 6e | ).......(puthash.'status-version |
| 13e0 | 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 73 74 61 74 75 73 2d 6c 69 6e 65 29 20 68 65 | .(match-string.1.status-line).he |
| 1400 | 61 64 65 72 2d 68 61 73 68 29 0a 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 27 73 74 61 74 75 | ader-hash).......(puthash.'statu |
| 1420 | 73 2d 63 6f 64 65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 32 20 73 74 61 74 75 73 2d 6c 69 | s-code.(match-string.2.status-li |
| 1440 | 6e 65 29 20 68 65 61 64 65 72 2d 68 61 73 68 29 0a 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 | ne).header-hash).......(puthash. |
| 1460 | 27 73 74 61 74 75 73 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f | 'status-string................(o |
| 1480 | 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 34 20 73 74 61 74 75 73 2d 6c 69 6e 65 29 20 22 | r.(match-string.4.status-line)." |
| 14a0 | 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 65 61 64 65 72 2d 68 61 73 68 29 29 0a | ")................header-hash)). |
| 14c0 | 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 6c 69 6e 65 20 69 6e 20 28 63 64 72 20 68 65 | ....(cl-loop.for.line.in.(cdr.he |
| 14e0 | 61 64 65 72 2d 6c 69 6e 65 73 29 0a 20 20 20 20 20 20 20 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 | ader-lines)........if.(string-ma |
| 1500 | 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 22 5e 5c 5c 28 5b 41 2d 5a 61 2d 7a 30 2d 39 2e 2d | tch............"^\\([A-Za-z0-9.- |
| 1520 | 5d 2b 5c 5c 29 3a 5b 20 5d 2a 5c 5c 28 2e 2a 5c 5c 29 22 0a 20 20 20 20 20 20 20 20 20 20 20 6c | ]+\\):[.]*\\(.*\\)"............l |
| 1540 | 69 6e 65 29 0a 20 20 20 20 20 20 20 64 6f 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e | ine)........do..........(let.((n |
| 1560 | 61 6d 65 20 28 69 6e 74 65 72 6e 20 28 64 6f 77 6e 63 61 73 65 20 28 6d 61 74 63 68 2d 73 74 72 | ame.(intern.(downcase.(match-str |
| 1580 | 69 6e 67 20 31 20 6c 69 6e 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 | ing.1.line))))................(v |
| 15a0 | 61 6c 75 65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 32 20 6c 69 6e 65 29 29 29 0a 20 20 20 | alue.(match-string.2.line))).... |
| 15c0 | 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 6e 61 6d 65 20 76 61 6c 75 65 20 68 65 61 64 | ........(puthash.name.value.head |
| 15e0 | 65 72 2d 68 61 73 68 29 29 29 0a 20 20 20 20 68 65 61 64 65 72 2d 68 61 73 68 29 29 0a 0a 28 64 | er-hash))).....header-hash))..(d |
| 1600 | 65 66 75 6e 20 77 65 62 2f 63 68 75 6e 6b 65 64 2d 64 65 63 6f 64 65 2d 73 74 72 65 61 6d 20 28 | efun.web/chunked-decode-stream.( |
| 1620 | 63 6f 6e 20 64 61 74 61 20 63 6f 6e 73 75 6d 65 72 29 0a 20 20 22 44 65 63 6f 64 65 20 74 68 65 | con.data.consumer)..."Decode.the |
| 1640 | 20 63 68 75 6e 6b 65 64 20 65 6e 63 6f 64 69 6e 67 20 73 74 72 65 61 6d 20 6f 6e 20 74 68 65 20 | .chunked.encoding.stream.on.the. |
| 1660 | 70 72 6f 63 65 73 73 20 43 4f 4e 2e 0a 0a 44 41 54 41 20 69 73 20 61 20 6c 75 6d 70 20 6f 66 20 | process.CON...DATA.is.a.lump.of. |
| 1680 | 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 73 74 72 65 61 6d 2c 20 61 73 20 70 61 73 73 65 64 20 | data.from.the.stream,.as.passed. |
| 16a0 | 66 72 6f 6d 20 61 20 66 69 6c 74 65 72 0a 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 65 78 61 6d 70 | from.a.filter.function.for.examp |
| 16c0 | 6c 65 2e 0a 0a 43 4f 4e 53 55 4d 45 52 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 | le...CONSUMER.is.a.function.that |
| 16e0 | 20 77 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 72 65 73 75 6c 74 69 | .will.be.called.with.the.resulti |
| 1700 | 6e 67 0a 64 61 74 61 20 6c 69 6b 65 3a 0a 0a 20 20 43 4f 4e 20 43 48 55 4e 4b 0a 0a 74 68 65 20 | ng.data.like:....CON.CHUNK..the. |
| 1720 | 43 4f 4e 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 43 4f 4e 20 69 6e 20 74 68 | CON.is.the.same.as.the.CON.in.th |
| 1740 | 69 73 20 63 61 6c 6c 2e 20 20 54 68 65 20 60 63 68 75 6e 6b 27 20 69 73 20 74 68 65 0a 63 68 75 | is.call...The.`chunk'.is.the.chu |
| 1760 | 6e 6b 20 74 68 61 74 20 68 61 73 20 62 65 65 6e 20 72 65 61 64 2e 20 20 4f 6e 6c 79 20 63 6f 6d | nk.that.has.been.read...Only.com |
| 1780 | 70 6c 65 74 65 20 63 68 75 6e 6b 73 20 61 72 65 20 73 65 6e 74 20 74 6f 20 74 68 65 0a 43 4f 4e | plete.chunks.are.sent.to.the.CON |
| 17a0 | 53 55 4d 45 52 2e 0a 0a 57 68 65 6e 20 74 68 65 20 63 68 75 6e 6b 65 64 20 73 74 72 65 61 6d 20 | SUMER...When.the.chunked.stream. |
| 17c0 | 65 6e 64 73 20 74 68 65 20 43 4f 4e 53 55 4d 45 52 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 | ends.the.CONSUMER.is.called.with |
| 17e0 | 20 43 48 55 4e 4b 0a 62 65 69 6e 67 20 60 3a 64 6f 6e 65 27 2e 20 20 54 68 69 73 20 63 61 6e 20 | .CHUNK.being.`:done'...This.can. |
| 1800 | 62 65 20 75 73 65 64 20 74 6f 20 64 6f 20 63 6c 65 61 6e 20 75 70 2e 20 20 49 74 20 69 73 20 4e | be.used.to.do.clean.up...It.is.N |
| 1820 | 4f 54 0a 65 78 70 65 63 74 65 64 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 62 61 63 6b 20 77 69 | OT.expected.that.the.callback.wi |
| 1840 | 6c 6c 20 68 61 76 65 20 74 6f 20 63 6c 65 61 6e 20 75 70 20 74 68 65 20 43 4f 4e 2c 20 74 68 61 | ll.have.to.clean.up.the.CON,.tha |
| 1860 | 74 0a 73 68 6f 75 6c 64 20 62 65 20 64 6f 6e 65 20 62 79 20 74 68 65 20 63 61 6c 6c 65 72 2e 0a | t.should.be.done.by.the.caller.. |
| 1880 | 0a 43 4f 4e 20 69 73 20 75 73 65 64 20 74 6f 20 73 74 6f 72 65 20 73 74 61 74 65 20 77 69 74 68 | .CON.is.used.to.store.state.with |
| 18a0 | 20 74 68 65 20 70 72 6f 63 65 73 73 20 70 72 6f 70 65 72 74 79 0a 60 3a 63 68 75 6e 6b 65 64 2d | .the.process.property.`:chunked- |
| 18c0 | 65 6e 63 6f 64 69 6e 67 2d 62 75 66 66 65 72 27 20 62 65 69 6e 67 20 75 73 65 64 20 61 73 20 61 | encoding-buffer'.being.used.as.a |
| 18e0 | 20 62 75 66 66 65 72 2e 22 0a 20 20 3b 3b 20 4d 61 6b 65 20 64 61 74 61 20 74 68 65 20 77 68 6f | .buffer."...;;.Make.data.the.who |
| 1900 | 6c 65 20 63 68 75 6e 6b 0a 20 20 28 73 65 74 71 20 64 61 74 61 20 28 6c 65 74 20 28 28 73 61 76 | le.chunk...(setq.data.(let.((sav |
| 1920 | 65 64 20 28 70 72 6f 63 65 73 73 2d 67 65 74 20 63 6f 6e 20 3a 63 68 75 6e 6b 65 64 2d 65 6e 63 | ed.(process-get.con.:chunked-enc |
| 1940 | 6f 64 69 6e 67 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | oding-buffer)))................( |
| 1960 | 69 66 20 73 61 76 65 64 20 28 63 6f 6e 63 61 74 20 73 61 76 65 64 20 64 61 74 61 29 20 64 61 74 | if.saved.(concat.saved.data).dat |
| 1980 | 61 29 29 29 0a 20 20 28 69 66 20 28 6e 6f 74 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5e | a)))...(if.(not.(string-match."^ |
| 19a0 | 5c 5c 28 5b 30 2d 39 41 2d 46 61 2d 66 5d 2b 5c 5c 29 5c 72 5c 6e 22 20 64 61 74 61 29 29 0a 20 | \\([0-9A-Fa-f]+\\)\r\n".data)).. |
| 19c0 | 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 63 68 75 6e 6b 65 64 2d 65 | .....(process-put.con.:chunked-e |
| 19e0 | 6e 63 6f 64 69 6e 67 2d 62 75 66 66 65 72 20 64 61 74 61 29 0a 20 20 20 20 20 20 3b 3b 20 57 65 | ncoding-buffer.data).......;;.We |
| 1a00 | 20 68 61 76 65 20 69 64 65 6e 74 69 66 69 65 64 20 61 20 63 68 75 6e 6b 0a 20 20 20 20 20 20 28 | .have.identified.a.chunk.......( |
| 1a20 | 6c 65 74 2a 20 28 28 63 68 75 6e 6b 2d 6e 75 6d 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 | let*.((chunk-num.(match-string.1 |
| 1a40 | 20 64 61 74 61 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 68 75 6e 6b 2d 73 69 7a 65 | .data))..............(chunk-size |
| 1a60 | 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 63 68 75 6e 6b 2d 6e 75 6d 20 31 36 29 | .(string-to-number.chunk-num.16) |
| 1a80 | 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 6f 72 65 61 64 2d 70 6f 73 20 28 2b 20 32 20 | )..............(toread-pos.(+.2. |
| 1aa0 | 28 6c 65 6e 67 74 68 20 63 68 75 6e 6b 2d 6e 75 6d 29 29 29 20 3b 20 2b 32 20 3d 3d 20 5c 72 5c | (length.chunk-num))).;.+2.==.\r\ |
| 1ac0 | 6e 20 61 66 74 65 72 20 63 68 75 6e 6b 20 73 7a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 | n.after.chunk.sz..............(c |
| 1ae0 | 68 75 6e 6b 2d 65 6e 64 20 28 2b 20 74 6f 72 65 61 64 2d 70 6f 73 20 63 68 75 6e 6b 2d 73 69 7a | hunk-end.(+.toread-pos.chunk-siz |
| 1b00 | 65 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 3c 20 28 6c 65 6e 67 74 68 20 64 61 74 61 | e))).........(if.(<.(length.data |
| 1b20 | 29 20 28 2b 20 32 20 63 68 75 6e 6b 2d 65 6e 64 29 29 20 3b 20 2b 32 20 3d 3d 20 5c 72 5c 6e 20 | ).(+.2.chunk-end)).;.+2.==.\r\n. |
| 1b40 | 61 74 20 65 6e 64 20 6f 66 20 63 68 75 6e 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f | at.end.of.chunk.............(pro |
| 1b60 | 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 63 68 75 6e 6b 65 64 2d 65 6e 63 6f 64 69 6e 67 2d 62 | cess-put.con.:chunked-encoding-b |
| 1b80 | 75 66 66 65 72 20 64 61 74 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 74 | uffer.data).............(let.((t |
| 1ba0 | 6f 72 65 61 64 20 28 73 75 62 73 74 72 69 6e 67 20 64 61 74 61 20 74 6f 72 65 61 64 2d 70 6f 73 | oread.(substring.data.toread-pos |
| 1bc0 | 20 63 68 75 6e 6b 2d 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | .chunk-end))...................( |
| 1be0 | 74 72 61 69 6c 69 6e 67 20 28 73 75 62 73 74 72 69 6e 67 20 64 61 74 61 20 63 68 75 6e 6b 2d 65 | trailing.(substring.data.chunk-e |
| 1c00 | 6e 64 20 28 2b 20 63 68 75 6e 6b 2d 65 6e 64 20 32 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 | nd.(+.chunk-end.2)))............ |
| 1c20 | 20 20 20 20 20 20 20 28 6c 65 66 74 20 28 73 75 62 73 74 72 69 6e 67 20 64 61 74 61 20 28 2b 20 | .......(left.(substring.data.(+. |
| 1c40 | 63 68 75 6e 6b 2d 65 6e 64 20 32 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 | chunk-end.2))))...............(i |
| 1c60 | 66 20 74 72 61 69 6c 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 | f.trailing...................(as |
| 1c80 | 73 65 72 74 20 28 65 71 75 61 6c 20 74 72 61 69 6c 69 6e 67 20 22 5c 72 5c 6e 22 29 20 74 29 29 | sert.(equal.trailing."\r\n").t)) |
| 1ca0 | 0a 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 20 20 20 20 | ...............(cond............ |
| 1cc0 | 20 20 20 20 20 28 28 65 71 75 61 6c 20 30 20 63 68 75 6e 6b 2d 73 69 7a 65 29 0a 20 20 20 20 20 | .....((equal.0.chunk-size)...... |
| 1ce0 | 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 69 6e 69 73 68 65 64 0a 20 20 20 20 20 20 20 20 | ............;;.Finished......... |
| 1d00 | 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 63 6f 6e 73 75 6d 65 72 20 63 6f 6e 20 3a | .........(funcall.consumer.con.: |
| 1d20 | 64 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 64 6f 6e 65 29 0a 20 20 | done)..................:done)... |
| 1d40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 3e 20 63 68 75 6e 6b 2d 73 69 7a 65 20 28 6c 65 | ..............((>.chunk-size.(le |
| 1d60 | 6e 67 74 68 20 74 6f 72 65 61 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | ngth.toread))..................( |
| 1d80 | 70 72 6f 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 63 68 75 6e 6b 65 64 2d 65 6e 63 6f 64 69 6e | process-put.con.:chunked-encodin |
| 1da0 | 67 2d 62 75 66 66 65 72 20 64 61 74 61 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | g-buffer.data))................. |
| 1dc0 | 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 45 61 74 20 74 68 65 20 64 | (t..................;;.Eat.the.d |
| 1de0 | 61 74 61 0a 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 63 6f | ata..................(funcall.co |
| 1e00 | 6e 73 75 6d 65 72 20 63 6f 6e 20 74 6f 72 65 61 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | nsumer.con.toread).............. |
| 1e20 | 20 20 20 20 3b 3b 20 43 6c 65 61 72 20 74 68 65 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 | ....;;.Clear.the.buffer......... |
| 1e40 | 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 63 68 75 6e 6b | .........(process-put.con.:chunk |
| 1e60 | 65 64 2d 65 6e 63 6f 64 69 6e 67 2d 62 75 66 66 65 72 20 22 22 29 0a 20 20 20 20 20 20 20 20 20 | ed-encoding-buffer."").......... |
| 1e80 | 20 20 20 20 20 20 20 20 3b 3b 20 47 6f 20 72 6f 75 6e 64 20 61 67 61 69 6e 20 69 66 20 77 65 20 | ........;;.Go.round.again.if.we. |
| 1ea0 | 6e 65 65 64 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 6c 65 66 | need.to..................(if.lef |
| 1ec0 | 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 63 68 75 6e | t......................(web/chun |
| 1ee0 | 6b 65 64 2d 64 65 63 6f 64 65 2d 73 74 72 65 61 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ked-decode-stream............... |
| 1f00 | 20 20 20 20 20 20 20 20 63 6f 6e 20 6c 65 66 74 20 63 6f 6e 73 75 6d 65 72 29 29 29 29 29 29 29 | ........con.left.consumer))))))) |
| 1f20 | 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 63 6c 65 61 6e 75 70 2d 70 72 6f 63 65 73 73 20 28 | ))..(defun.web/cleanup-process.( |
| 1f40 | 70 72 6f 63 29 0a 20 20 22 4b 69 6c 6c 20 74 68 65 20 62 75 66 66 65 72 20 61 6e 64 20 63 6c 65 | proc)..."Kill.the.buffer.and.cle |
| 1f60 | 61 6e 20 74 68 65 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 62 75 66 20 28 70 | an.the.process."...(let.((buf.(p |
| 1f80 | 72 6f 63 65 73 73 2d 62 75 66 66 65 72 20 70 72 6f 63 29 29 29 0a 20 20 20 20 28 64 65 6c 65 74 | rocess-buffer.proc))).....(delet |
| 1fa0 | 65 2d 70 72 6f 63 65 73 73 20 70 72 6f 63 29 0a 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 | e-process.proc).....(kill-buffer |
| 1fc0 | 20 62 75 66 29 29 29 0a 0a 0a 28 64 65 66 63 6f 6e 73 74 20 77 65 62 2d 63 6f 6f 6b 69 65 2d 6a | .buf)))...(defconst.web-cookie-j |
| 1fe0 | 61 72 2d 66 69 6c 65 0a 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 77 65 62 | ar-file...(expand-file-name."web |
| 2000 | 2d 63 6f 6f 6b 69 65 73 22 20 75 73 65 72 2d 65 6d 61 63 73 2d 64 69 72 65 63 74 6f 72 79 29 0a | -cookies".user-emacs-directory). |
| 2020 | 20 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6f 6b 69 65 20 6a 61 | .."The.location.of.the.cookie.ja |
| 2040 | 72 20 66 69 6c 65 2e 0a 0a 4f 76 65 72 72 69 64 65 20 74 68 69 73 20 77 69 74 68 20 64 79 6e 61 | r.file...Override.this.with.dyna |
| 2060 | 6d 69 63 20 73 63 6f 70 65 20 69 66 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 75 73 65 20 61 20 73 | mic.scope.if.you.need.to.use.a.s |
| 2080 | 70 65 63 69 66 69 63 0a 66 69 6c 65 2e 22 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 63 6f 6f 6b | pecific.file.")..(defun.web/cook |
| 20a0 | 69 65 2d 73 70 6c 69 74 20 28 63 6f 6f 6b 69 65 2d 68 65 61 64 65 72 29 0a 20 20 28 77 68 65 6e | ie-split.(cookie-header)...(when |
| 20c0 | 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 28 5b 5e 3d 5d 2b 5c 5c 29 3d 5c 5c 28 2e | .(string-match."\\([^=]+\\)=\\(. |
| 20e0 | 2a 5c 5c 29 22 20 63 6f 6f 6b 69 65 2d 68 65 61 64 65 72 29 0a 20 20 20 20 28 6c 65 74 2a 20 28 | *\\)".cookie-header).....(let*.( |
| 2100 | 28 6e 61 6d 65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 63 6f 6f 6b 69 65 2d 68 65 61 | (name.(match-string.1.cookie-hea |
| 2120 | 64 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6f 6b 69 65 2d 73 74 72 20 28 6d 61 | der))............(cookie-str.(ma |
| 2140 | 74 63 68 2d 73 74 72 69 6e 67 20 32 20 63 6f 6f 6b 69 65 2d 68 65 61 64 65 72 29 29 0a 20 20 20 | tch-string.2.cookie-header)).... |
| 2160 | 20 20 20 20 20 20 20 20 28 70 61 72 74 73 20 28 73 2d 73 70 6c 69 74 20 22 3b 22 20 63 6f 6f 6b | ........(parts.(s-split.";".cook |
| 2180 | 69 65 2d 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65 20 28 63 61 72 20 | ie-str))............(value.(car. |
| 21a0 | 70 61 72 74 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 72 67 73 20 28 2d 2d 6b 65 65 70 | parts))............(args.(--keep |
| 21c0 | 20 28 73 2d 73 70 6c 69 74 20 22 3d 22 20 28 73 2d 74 72 69 6d 20 69 74 29 20 74 29 20 28 63 64 | .(s-split."=".(s-trim.it).t).(cd |
| 21e0 | 72 20 70 61 72 74 73 29 29 29 29 0a 20 20 20 20 20 20 28 6c 69 73 74 20 6e 61 6d 65 20 76 61 6c | r.parts)))).......(list.name.val |
| 2200 | 75 65 20 61 72 67 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 63 6f 6f 6b 69 65 2d 68 | ue.args))))..(defun.web/cookie-h |
| 2220 | 61 6e 64 6c 65 72 20 28 63 6f 6e 20 68 64 72 29 0a 20 20 22 4d 61 69 6e 74 61 69 6e 73 20 61 20 | andler.(con.hdr)..."Maintains.a. |
| 2240 | 63 6f 6f 6b 69 65 20 6a 61 72 2e 0a 0a 43 6f 6f 6b 69 65 73 20 61 72 65 20 77 72 69 74 74 65 6e | cookie.jar...Cookies.are.written |
| 2260 | 20 74 6f 20 66 69 6c 65 20 5c 22 77 65 62 2d 63 6f 6f 6b 69 65 2d 6a 61 72 2d 66 69 6c 65 5c 22 | .to.file.\"web-cookie-jar-file\" |
| 2280 | 20 69 6e 20 61 20 4a 53 4f 4e 0a 66 6f 72 6d 61 74 20 62 75 74 20 70 72 65 66 69 78 65 64 20 62 | .in.a.JSON.format.but.prefixed.b |
| 22a0 | 79 20 74 68 65 20 75 72 6c 20 74 68 61 74 20 63 61 75 73 65 64 20 74 68 65 20 63 6f 6f 6b 69 65 | y.the.url.that.caused.the.cookie |
| 22c0 | 20 74 6f 20 62 65 20 73 65 74 2e 22 0a 20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 0a | .to.be.set."...(save-match-data. |
| 22e0 | 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6f 6b 69 65 2d 68 64 72 20 28 67 65 74 68 61 73 68 20 27 | ....(let.((cookie-hdr.(gethash.' |
| 2300 | 73 65 74 2d 63 6f 6f 6b 69 65 20 68 64 72 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 73 | set-cookie.hdr))).......(when.(s |
| 2320 | 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 28 5b 5e 3d 5d 2b 5c 5c 29 3d 5c 5c 28 2e 2a 5c 5c | tring-match."\\([^=]+\\)=\\(.*\\ |
| 2340 | 29 22 20 63 6f 6f 6b 69 65 2d 68 64 72 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6e | )".cookie-hdr).........(let*.((n |
| 2360 | 61 6d 65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 63 6f 6f 6b 69 65 2d 68 64 72 29 29 | ame.(match-string.1.cookie-hdr)) |
| 2380 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6f 6b 69 65 2d 73 74 72 20 28 6d 61 74 | ................(cookie-str.(mat |
| 23a0 | 63 68 2d 73 74 72 69 6e 67 20 32 20 63 6f 6f 6b 69 65 2d 68 64 72 29 29 0a 20 20 20 20 20 20 20 | ch-string.2.cookie-hdr))........ |
| 23c0 | 20 20 20 20 20 20 20 20 28 70 61 72 74 73 20 28 73 2d 73 70 6c 69 74 20 22 3b 22 20 63 6f 6f 6b | ........(parts.(s-split.";".cook |
| 23e0 | 69 65 2d 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65 20 28 | ie-str))................(value.( |
| 2400 | 63 61 72 20 70 61 72 74 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 67 73 | car.parts))................(args |
| 2420 | 20 28 2d 2d 6b 65 65 70 20 28 73 2d 73 70 6c 69 74 20 22 3d 22 20 28 73 2d 74 72 69 6d 20 69 74 | .(--keep.(s-split."=".(s-trim.it |
| 2440 | 29 20 74 29 20 28 63 64 72 20 70 61 72 74 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 | ).t).(cdr.parts))))...........(c |
| 2460 | 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ondition-case.err............... |
| 2480 | 28 77 68 65 6e 20 77 65 62 2d 63 6f 6f 6b 69 65 2d 6a 61 72 2d 66 69 6c 65 0a 20 20 20 20 20 20 | (when.web-cookie-jar-file....... |
| 24a0 | 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 72 20 28 | ..........(with-current-buffer.( |
| 24c0 | 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 77 65 62 2d 63 6f 6f 6b 69 65 2d 6a 61 | find-file-noselect.web-cookie-ja |
| 24e0 | 72 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d | r-file)...................(goto- |
| 2500 | 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | char.(point-min))............... |
| 2520 | 20 20 20 20 28 6c 65 74 20 28 28 75 72 6c 20 28 70 72 6f 63 65 73 73 2d 67 65 74 20 63 6f 6e 20 | ....(let.((url.(process-get.con. |
| 2540 | 3a 77 65 62 2d 75 72 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | :web-url))...................... |
| 2560 | 20 20 20 28 6a 73 6f 6e 20 28 6a 73 6f 6e 2d 65 6e 63 6f 64 65 20 60 28 2c 6e 61 6d 65 20 2c 76 | ...(json.(json-encode.`(,name.,v |
| 2580 | 61 6c 75 65 20 2c 61 72 67 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | alue.,args)))).................. |
| 25a0 | 20 20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ...(save-match-data............. |
| 25c0 | 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 | ..........(if.(re-search-forward |
| 25e0 | 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 72 78 2d | ............................(rx- |
| 2600 | 74 6f 2d 73 74 72 69 6e 67 20 60 28 61 6e 64 20 62 6f 6c 20 2c 75 72 6c 20 22 20 22 20 28 67 72 | to-string.`(and.bol.,url.".".(gr |
| 2620 | 6f 75 70 2d 6e 20 31 20 28 2a 20 61 6e 79 74 68 69 6e 67 29 29 29 29 0a 20 20 20 20 20 20 20 20 | oup-n.1.(*.anything))))......... |
| 2640 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 | ...................nil.t)....... |
| 2660 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 6d 61 74 | ....................(replace-mat |
| 2680 | 63 68 20 6a 73 6f 6e 20 6e 69 6c 20 74 20 6e 69 6c 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 | ch.json.nil.t.nil.1)............ |
| 26a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 | ...............(goto-char.(point |
| 26c0 | 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -max)).......................... |
| 26e0 | 20 28 69 6e 73 65 72 74 20 75 72 6c 20 22 20 22 20 6a 73 6f 6e 20 22 5c 6e 22 29 29 29 29 0a 20 | .(insert.url.".".json."\n")))).. |
| 2700 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 72 69 74 65 2d 66 69 6c 65 20 28 62 75 | .................(write-file.(bu |
| 2720 | 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 | ffer-file-name)))).............( |
| 2740 | 65 72 72 6f 72 20 28 6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | error.(message.................. |
| 2760 | 20 20 20 22 77 65 62 2f 63 6f 6f 6b 69 65 2d 68 61 6e 64 6c 65 72 3a 20 27 25 73 27 20 77 72 69 | ..."web/cookie-handler:.'%s'.wri |
| 2780 | 74 69 6e 67 20 63 6f 6f 6b 69 65 73 20 74 6f 20 27 25 73 27 22 0a 20 20 20 20 20 20 20 20 20 20 | ting.cookies.to.'%s'"........... |
| 27a0 | 20 20 20 20 20 20 20 20 20 20 65 72 72 20 77 65 62 2d 63 6f 6f 6b 69 65 2d 6a 61 72 2d 66 69 6c | ..........err.web-cookie-jar-fil |
| 27c0 | 65 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 63 68 75 6e 6b 65 64 2d 66 69 | e))))))))..(defun.web/chunked-fi |
| 27e0 | 6c 74 65 72 20 28 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 6d 6f 64 65 20 68 65 61 64 65 72 20 64 | lter.(callback.con.mode.header.d |
| 2800 | 61 74 61 29 0a 20 20 22 46 69 6c 74 65 72 20 66 6f 72 20 74 68 65 20 63 6c 69 65 6e 74 20 77 68 | ata)..."Filter.for.the.client.wh |
| 2820 | 65 6e 20 77 65 27 72 65 20 64 6f 69 6e 67 20 63 68 75 6e 6b 69 6e 67 2e 22 0a 20 20 28 63 6f 6e | en.we're.doing.chunking."...(con |
| 2840 | 64 0a 20 20 20 20 28 28 65 71 20 6d 6f 64 65 20 27 73 74 72 65 61 6d 29 0a 20 20 20 20 20 28 66 | d.....((eq.mode.'stream)......(f |
| 2860 | 75 6e 63 61 6c 6c 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 68 65 61 64 65 72 20 64 61 74 61 29 | uncall.callback.con.header.data) |
| 2880 | 0a 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 64 61 74 61 20 3a 64 6f 6e 65 29 0a 20 20 20 20 | ......(when.(eq.data.:done)..... |
| 28a0 | 20 20 20 28 77 65 62 2f 63 6c 65 61 6e 75 70 2d 70 72 6f 63 65 73 73 20 63 6f 6e 29 29 29 0a 20 | ...(web/cleanup-process.con))).. |
| 28c0 | 20 20 20 28 28 61 6e 64 20 28 65 71 20 6d 6f 64 65 20 27 62 61 74 63 68 29 0a 20 20 20 20 20 20 | ...((and.(eq.mode.'batch)....... |
| 28e0 | 20 20 20 20 28 65 71 20 64 61 74 61 20 3a 64 6f 6e 65 29 29 0a 20 20 20 20 20 28 66 75 6e 63 61 | ....(eq.data.:done))......(funca |
| 2900 | 6c 6c 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 68 65 61 64 65 72 20 28 70 72 6f 63 65 73 73 2d | ll.callback.con.header.(process- |
| 2920 | 67 65 74 20 63 6f 6e 20 3a 77 65 62 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 28 77 65 62 2f | get.con.:web-buffer))......(web/ |
| 2940 | 63 6c 65 61 6e 75 70 2d 70 72 6f 63 65 73 73 20 63 6f 6e 29 29 0a 20 20 20 20 28 74 0a 20 20 20 | cleanup-process.con)).....(t.... |
| 2960 | 20 20 28 70 72 6f 63 65 73 73 2d 70 75 74 0a 20 20 20 20 20 20 63 6f 6e 20 3a 77 65 62 2d 62 75 | ..(process-put.......con.:web-bu |
| 2980 | 66 66 65 72 0a 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 28 6f 72 20 28 70 72 6f 63 65 73 73 2d | ffer.......(concat.(or.(process- |
| 29a0 | 67 65 74 20 63 6f 6e 20 3a 77 65 62 2d 62 75 66 66 65 72 29 20 22 22 29 0a 20 20 20 20 20 20 20 | get.con.:web-buffer)."")........ |
| 29c0 | 20 20 20 20 20 20 20 64 61 74 61 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 63 6f 6e | .......data)))))..(defun.web/con |
| 29e0 | 74 65 6e 74 2d 6c 65 6e 67 74 68 2d 66 69 6c 74 65 72 20 28 63 61 6c 6c 62 61 63 6b 20 63 6f 6e | tent-length-filter.(callback.con |
| 2a00 | 20 6d 6f 64 65 20 68 65 61 64 65 72 20 64 61 74 61 29 0a 20 20 22 44 6f 65 73 20 74 68 65 20 63 | .mode.header.data)..."Does.the.c |
| 2a20 | 6f 6e 74 65 6e 74 2d 6c 65 6e 67 74 68 20 66 69 6c 74 65 72 69 6e 67 2e 22 0a 20 20 28 6c 65 74 | ontent-length.filtering."...(let |
| 2a40 | 20 28 28 63 6f 6e 74 65 6e 74 2d 6c 65 6e 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 | .((content-len.(string-to-number |
| 2a60 | 20 28 67 65 74 68 61 73 68 20 27 63 6f 6e 74 65 6e 74 2d 6c 65 6e 67 74 68 20 68 65 61 64 65 72 | .(gethash.'content-length.header |
| 2a80 | 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 65 71 20 6d 6f 64 65 20 27 62 61 74 63 68 29 0a 20 20 | )))).....(if.(eq.mode.'batch)... |
| 2aa0 | 20 20 20 20 20 20 28 6c 65 74 20 28 28 73 6f 2d 66 61 72 20 28 63 6f 6e 63 61 74 20 28 70 72 6f | ......(let.((so-far.(concat.(pro |
| 2ac0 | 63 65 73 73 2d 67 65 74 20 63 6f 6e 20 3a 77 65 62 2d 62 75 66 66 65 72 29 20 64 61 74 61 29 29 | cess-get.con.:web-buffer).data)) |
| 2ae0 | 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 3e 20 63 6f 6e 74 65 6e 74 2d 6c 65 6e 20 28 | )...........(if.(>.content-len.( |
| 2b00 | 6c 65 6e 67 74 68 20 73 6f 2d 66 61 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 | length.so-far))...............(p |
| 2b20 | 72 6f 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 77 65 62 2d 62 75 66 66 65 72 20 73 6f 2d 66 61 | rocess-put.con.:web-buffer.so-fa |
| 2b40 | 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 68 61 76 65 20 61 6c 6c 20 | r)...............;;.We.have.all. |
| 2b60 | 74 68 65 20 64 61 74 61 2c 20 63 61 6c 6c 62 61 63 6b 20 61 6e 64 20 74 68 65 6e 20 6b 69 6c 6c | the.data,.callback.and.then.kill |
| 2b80 | 20 74 68 65 20 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 77 69 | .the.process...............(unwi |
| 2ba0 | 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 20 28 66 | nd-protect....................(f |
| 2bc0 | 75 6e 63 61 6c 6c 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 68 65 61 64 65 72 20 73 6f 2d 66 61 | uncall.callback.con.header.so-fa |
| 2be0 | 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 63 6c 65 61 6e 75 70 2d | r).................(web/cleanup- |
| 2c00 | 70 72 6f 63 65 73 73 20 63 6f 6e 29 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 45 6c 73 65 20 | process.con)))).........;;.Else. |
| 2c20 | 77 65 27 72 65 20 69 6e 20 73 74 72 65 61 6d 20 6d 6f 64 65 20 73 6f 20 64 65 6c 69 76 65 72 20 | we're.in.stream.mode.so.deliver. |
| 2c40 | 74 68 65 20 62 69 74 73 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6c 6c 65 63 74 65 | the.bits.........(let.((collecte |
| 2c60 | 64 20 28 2b 20 28 6f 72 20 28 70 72 6f 63 65 73 73 2d 67 65 74 20 63 6f 6e 20 3a 77 65 62 2d 6c | d.(+.(or.(process-get.con.:web-l |
| 2c80 | 65 6e 29 20 30 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 | en).0).......................... |
| 2ca0 | 20 20 20 28 6c 65 6e 67 74 68 20 64 61 74 61 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 | ...(length.data))))...........(i |
| 2cc0 | 66 20 28 3e 20 63 6f 6e 74 65 6e 74 2d 6c 65 6e 20 63 6f 6c 6c 65 63 74 65 64 29 0a 20 20 20 20 | f.(>.content-len.collected)..... |
| 2ce0 | 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........(progn................ |
| 2d00 | 20 28 70 72 6f 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 77 65 62 2d 6c 65 6e 20 63 6f 6c 6c 65 | .(process-put.con.:web-len.colle |
| 2d20 | 63 74 65 64 29 0a 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 63 | cted).................(funcall.c |
| 2d40 | 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 68 65 61 64 65 72 20 64 61 74 61 29 29 0a 20 20 20 20 20 20 | allback.con.header.data))....... |
| 2d60 | 20 20 20 20 20 20 20 20 3b 3b 20 45 6c 73 65 20 77 65 27 72 65 20 64 6f 6e 65 0a 20 20 20 20 20 | ........;;.Else.we're.done...... |
| 2d80 | 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 68 | .........(funcall.callback.con.h |
| 2da0 | 65 61 64 65 72 20 64 61 74 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 | eader.data)...............(funca |
| 2dc0 | 6c 6c 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 68 65 61 64 65 72 20 3a 64 6f 6e 65 29 0a 20 20 | ll.callback.con.header.:done)... |
| 2de0 | 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 63 6c 65 61 6e 75 70 2d 70 72 6f 63 65 73 73 | ............(web/cleanup-process |
| 2e00 | 20 63 6f 6e 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 | .con))))))..(defun.web/http-post |
| 2e20 | 2d 66 69 6c 74 65 72 20 28 63 6f 6e 20 64 61 74 61 20 63 61 6c 6c 62 61 63 6b 20 6d 6f 64 65 29 | -filter.(con.data.callback.mode) |
| 2e40 | 0a 20 20 22 46 69 6c 74 65 72 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 48 54 54 50 20 50 4f 53 | ..."Filter.function.for.HTTP.POS |
| 2e60 | 54 2e 0a 0a 4e 6f 74 20 61 63 74 75 61 6c 6c 79 20 61 20 66 69 6c 74 65 72 20 66 75 6e 63 74 69 | T...Not.actually.a.filter.functi |
| 2e80 | 6f 6e 20 62 65 63 61 75 73 65 20 69 74 20 61 6c 73 6f 20 72 65 63 65 69 76 65 73 20 74 68 65 0a | on.because.it.also.receives.the. |
| 2ea0 | 43 41 4c 4c 42 41 43 4b 20 61 6e 64 20 74 68 65 20 4d 4f 44 45 20 66 72 6f 6d 20 74 68 65 20 61 | CALLBACK.and.the.MODE.from.the.a |
| 2ec0 | 63 74 75 61 6c 20 66 69 6c 74 65 72 20 66 75 6e 63 74 69 6f 6e 2c 20 61 20 6c 65 78 69 63 61 6c | ctual.filter.function,.a.lexical |
| 2ee0 | 0a 63 6c 6f 73 75 72 65 20 69 6e 73 69 64 65 20 60 77 65 62 2d 68 74 74 70 2d 70 6f 73 74 27 2e | .closure.inside.`web-http-post'. |
| 2f00 | 0a 0a 43 41 4c 4c 42 41 43 4b 20 69 73 20 61 20 75 73 65 72 20 73 75 70 70 6c 69 65 64 20 66 75 | ..CALLBACK.is.a.user.supplied.fu |
| 2f20 | 6e 63 74 69 6f 6e 20 68 61 6e 64 6c 69 6e 67 20 74 68 65 20 72 65 74 75 72 6e 20 66 72 6f 6d 20 | nction.handling.the.return.from. |
| 2f40 | 74 68 65 0a 48 54 54 50 20 73 65 72 76 65 72 2e 0a 0a 4d 4f 44 45 20 63 6f 6d 65 73 20 66 72 6f | the.HTTP.server...MODE.comes.fro |
| 2f60 | 6d 20 74 68 65 20 60 77 65 62 2d 68 74 74 70 2d 70 6f 73 74 27 20 63 61 6c 6c 2e 20 20 54 68 69 | m.the.`web-http-post'.call...Thi |
| 2f80 | 73 20 66 75 6e 63 74 69 6f 6e 0a 68 61 6e 64 6c 65 73 20 74 68 65 20 4d 4f 44 45 20 62 79 20 65 | s.function.handles.the.MODE.by.e |
| 2fa0 | 69 74 68 65 72 20 73 74 72 65 61 6d 69 6e 67 20 74 68 65 20 64 61 74 61 20 74 6f 20 74 68 65 20 | ither.streaming.the.data.to.the. |
| 2fc0 | 43 41 4c 4c 42 41 43 4b 20 6f 72 0a 62 79 20 63 6f 6c 6c 65 63 74 69 6e 67 20 69 74 20 61 6e 64 | CALLBACK.or.by.collecting.it.and |
| 2fe0 | 20 74 68 65 6e 20 62 61 74 63 68 69 6e 67 20 69 74 20 74 6f 20 74 68 65 20 43 41 4c 4c 42 41 43 | .then.batching.it.to.the.CALLBAC |
| 3000 | 4b 2e 22 0a 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 70 72 6f 63 | K."...(with-current-buffer.(proc |
| 3020 | 65 73 73 2d 62 75 66 66 65 72 20 63 6f 6e 29 0a 20 20 20 20 28 6c 65 74 20 28 28 68 65 61 64 65 | ess-buffer.con).....(let.((heade |
| 3040 | 72 20 28 70 72 6f 63 65 73 73 2d 67 65 74 20 63 6f 6e 20 3a 68 74 74 70 2d 68 65 61 64 65 72 29 | r.(process-get.con.:http-header) |
| 3060 | 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 68 65 61 64 65 72 29 0a 20 20 20 20 20 20 | )).......(if.(not.header)....... |
| 3080 | 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ....(save-excursion............. |
| 30a0 | 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 | (goto-char.(point-max))......... |
| 30c0 | 20 20 20 20 28 69 6e 73 65 72 74 20 64 61 74 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b | ....(insert.data).............;; |
| 30e0 | 20 46 69 6e 64 20 74 68 65 20 68 65 61 64 65 72 20 69 66 20 77 65 20 64 6f 6e 27 74 20 68 61 76 | .Find.the.header.if.we.don't.hav |
| 3100 | 65 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 6e 6f 74 20 68 | e.it.............(if.(and.(not.h |
| 3120 | 65 61 64 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 28 70 72 6f | eader)......................(pro |
| 3140 | 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d | gn........................(goto- |
| 3160 | 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | char.(point-min))............... |
| 3180 | 20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5c 72 5c | .........(re-search-forward."\r\ |
| 31a0 | 6e 5c 72 5c 6e 22 20 6e 69 6c 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n\r\n".nil.t)))................. |
| 31c0 | 28 6c 65 74 20 28 28 68 64 72 20 28 77 65 62 2d 68 65 61 64 65 72 2d 70 61 72 73 65 0a 20 20 20 | (let.((hdr.(web-header-parse.... |
| 31e0 | 20 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 | .........................(buffer |
| 3200 | 2d 73 75 62 73 74 72 69 6e 67 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 | -substring.(point-min).(point-ma |
| 3220 | 78 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 3b 3b 20 46 | x)))).......................;;.F |
| 3240 | 72 6f 6d 20 74 68 65 20 70 6f 69 6e 74 20 6f 66 20 74 68 65 20 65 6e 64 20 6f 66 20 68 65 61 64 | rom.the.point.of.the.end.of.head |
| 3260 | 65 72 20 74 6f 20 74 68 65 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | er.to.the.end................... |
| 3280 | 20 20 20 20 3b 3b 20 69 73 20 74 68 65 20 64 61 74 61 20 77 65 20 6e 65 65 64 2e 2e 2e 20 74 68 | ....;;.is.the.data.we.need....th |
| 32a0 | 69 73 20 6d 61 79 20 62 65 20 6e 6f 74 68 69 6e 67 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | is.may.be.nothing............... |
| 32c0 | 20 20 20 20 20 20 20 20 20 28 70 61 72 74 2d 64 61 74 61 20 28 69 66 20 28 3e 20 28 70 6f 69 6e | .........(part-data.(if.(>.(poin |
| 32e0 | 74 2d 6d 61 78 29 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t-max).(point))................. |
| 3300 | 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 73 75 62 | .....................(buffer-sub |
| 3320 | 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 0a 20 20 20 20 | string.(point).(point-max))..... |
| 3340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 3360 | 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 | .nil)))...................(proce |
| 3380 | 73 73 2d 70 75 74 20 63 6f 6e 20 3a 68 74 74 70 2d 68 65 61 64 65 72 2d 70 6f 73 20 28 70 6f 69 | ss-put.con.:http-header-pos.(poi |
| 33a0 | 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d | nt))...................(process- |
| 33c0 | 70 75 74 20 63 6f 6e 20 3a 68 74 74 70 2d 68 65 61 64 65 72 20 68 64 72 29 0a 20 20 20 20 20 20 | put.con.:http-header.hdr)....... |
| 33e0 | 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 77 65 20 68 61 76 65 20 6d 6f 72 65 20 64 | ............;;.If.we.have.more.d |
| 3400 | 61 74 61 20 63 61 6c 6c 20 6f 75 72 73 65 6c 76 65 73 20 74 6f 20 70 72 6f 63 65 73 73 20 69 74 | ata.call.ourselves.to.process.it |
| 3420 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 70 61 72 74 2d 64 61 | ...................(when.part-da |
| 3440 | 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 68 74 74 70 | ta.....................(web/http |
| 3460 | 2d 70 6f 73 74 2d 66 69 6c 74 65 72 20 63 6f 6e 20 70 61 72 74 2d 64 61 74 61 20 63 61 6c 6c 62 | -post-filter.con.part-data.callb |
| 3480 | 61 63 6b 20 6d 6f 64 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 45 6c 73 65 20 | ack.mode)))))...........;;.Else. |
| 34a0 | 77 65 20 68 61 76 65 20 74 68 65 20 68 65 61 64 65 72 2c 20 72 65 61 64 20 74 68 65 20 62 6f 64 | we.have.the.header,.read.the.bod |
| 34c0 | 79 20 61 6e 64 20 63 61 6c 6c 20 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 3b 3b | y.and.call.callback...........;; |
| 34e0 | 20 46 49 58 4d 45 20 2d 20 77 65 20 63 6f 75 6c 64 20 64 6f 20 63 6f 6f 6b 69 65 20 68 61 6e 64 | .FIXME.-.we.could.do.cookie.hand |
| 3500 | 6c 69 6e 67 20 68 65 72 65 2e 2e 2e 20 61 6e 64 20 61 75 74 6f 20 72 65 64 69 72 65 63 74 20 0a | ling.here....and.auto.redirect.. |
| 3520 | 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 | ..........(cond.............((eq |
| 3540 | 75 61 6c 20 22 63 68 75 6e 6b 65 64 22 20 28 67 65 74 68 61 73 68 20 27 74 72 61 6e 73 66 65 72 | ual."chunked".(gethash.'transfer |
| 3560 | 2d 65 6e 63 6f 64 69 6e 67 20 68 65 61 64 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | -encoding.header)).............. |
| 3580 | 28 77 65 62 2f 63 68 75 6e 6b 65 64 2d 64 65 63 6f 64 65 2d 73 74 72 65 61 6d 0a 20 20 20 20 20 | (web/chunked-decode-stream...... |
| 35a0 | 20 20 20 20 20 20 20 20 20 63 6f 6e 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .........con.data............... |
| 35c0 | 3b 3b 20 46 49 58 4d 45 20 77 65 20 73 74 69 6c 6c 20 6e 65 65 64 20 74 68 65 20 63 61 6c 6c 62 | ;;.FIXME.we.still.need.the.callb |
| 35e0 | 61 63 6b 20 74 6f 20 6b 6e 6f 77 20 69 66 20 74 68 69 73 20 69 73 20 63 6f 6d 70 6c 65 74 69 6f | ack.to.know.if.this.is.completio |
| 3600 | 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 20 64 61 74 | n...............(lambda.(con.dat |
| 3620 | 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 63 68 75 6e 6b 65 64 2d | a).................(web/chunked- |
| 3640 | 66 69 6c 74 65 72 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 6d 6f 64 65 20 68 65 61 64 65 72 20 | filter.callback.con.mode.header. |
| 3660 | 64 61 74 61 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 68 61 76 65 20 | data)))).............;;.We.have. |
| 3680 | 61 20 63 6f 6e 74 65 6e 74 2d 6c 65 6e 67 74 68 20 68 65 61 64 65 72 20 73 6f 20 6a 75 73 74 20 | a.content-length.header.so.just. |
| 36a0 | 62 75 66 66 65 72 20 74 68 61 74 20 6d 75 63 68 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 | buffer.that.much.data........... |
| 36c0 | 20 20 28 28 67 65 74 68 61 73 68 20 27 63 6f 6e 74 65 6e 74 2d 6c 65 6e 67 74 68 20 68 65 61 64 | ..((gethash.'content-length.head |
| 36e0 | 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 63 6f 6e 74 65 6e 74 2d 6c 65 | er)..............(web/content-le |
| 3700 | 6e 67 74 68 2d 66 69 6c 74 65 72 20 63 61 6c 6c 62 61 63 6b 20 63 6f 6e 20 6d 6f 64 65 20 68 65 | ngth-filter.callback.con.mode.he |
| 3720 | 61 64 65 72 20 64 61 74 61 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 6b 65 79 | ader.data)))))))..(defun.web/key |
| 3740 | 2d 76 61 6c 75 65 2d 65 6e 63 6f 64 65 20 28 6b 65 79 20 76 61 6c 75 65 29 0a 20 20 22 45 6e 63 | -value-encode.(key.value)..."Enc |
| 3760 | 6f 64 65 20 61 20 4b 45 59 20 61 6e 64 20 56 41 4c 55 45 20 66 6f 72 20 75 72 6c 20 65 6e 63 6f | ode.a.KEY.and.VALUE.for.url.enco |
| 3780 | 64 69 6e 67 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 20 28 28 6f 72 0a 20 20 20 20 20 20 28 6e | ding."...(cond.....((or.......(n |
| 37a0 | 75 6d 62 65 72 70 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 28 73 74 72 69 6e 67 70 20 76 61 6c | umberp.value).......(stringp.val |
| 37c0 | 75 65 29 29 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 22 25 73 3d 25 73 22 0a | ue))......(format......."%s=%s". |
| 37e0 | 20 20 20 20 20 20 28 75 72 6c 2d 68 65 78 69 66 79 2d 73 74 72 69 6e 67 20 28 66 6f 72 6d 61 74 | ......(url-hexify-string.(format |
| 3800 | 20 22 25 73 22 20 6b 65 79 29 29 0a 20 20 20 20 20 20 28 75 72 6c 2d 68 65 78 69 66 79 2d 73 74 | ."%s".key)).......(url-hexify-st |
| 3820 | 72 69 6e 67 20 28 66 6f 72 6d 61 74 20 22 25 73 22 20 76 61 6c 75 65 29 29 29 29 0a 20 20 20 20 | ring.(format."%s".value))))..... |
| 3840 | 28 74 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 22 20 28 75 72 6c 2d 68 65 78 69 66 79 | (t......(format."%s".(url-hexify |
| 3860 | 2d 73 74 72 69 6e 67 20 28 66 6f 72 6d 61 74 20 22 25 73 22 20 6b 65 79 29 29 29 29 29 29 0a 0a | -string.(format."%s".key)))))).. |
| 3880 | 28 64 65 66 75 6e 20 77 65 62 2d 74 6f 2d 71 75 65 72 79 2d 73 74 72 69 6e 67 20 28 6f 62 6a 65 | (defun.web-to-query-string.(obje |
| 38a0 | 63 74 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 4f 42 4a 45 43 54 20 28 61 20 68 61 73 68 2d 74 61 | ct)..."Convert.OBJECT.(a.hash-ta |
| 38c0 | 62 6c 65 20 6f 72 20 61 6c 69 73 74 29 20 74 6f 20 61 6e 20 48 54 54 50 20 71 75 65 72 79 20 73 | ble.or.alist).to.an.HTTP.query.s |
| 38e0 | 74 72 69 6e 67 2e 0a 0a 49 66 20 4f 42 4a 45 43 54 20 69 73 20 6f 66 20 74 79 70 65 20 60 68 61 | tring...If.OBJECT.is.of.type.`ha |
| 3900 | 73 68 2d 74 61 62 6c 65 27 20 74 68 65 6e 20 74 68 65 20 6b 65 79 73 20 61 6e 64 20 76 61 6c 75 | sh-table'.then.the.keys.and.valu |
| 3920 | 65 73 20 6f 66 20 74 68 65 0a 68 61 73 68 20 61 72 65 20 69 74 65 72 61 74 65 64 20 69 6e 74 6f | es.of.the.hash.are.iterated.into |
| 3940 | 20 74 68 65 20 73 74 72 69 6e 67 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 69 72 20 74 | .the.string.depending.on.their.t |
| 3960 | 79 70 65 73 2e 0a 0a 4b 65 79 73 20 77 69 74 68 20 60 6e 75 6d 62 65 72 27 20 61 6e 64 20 60 73 | ypes...Keys.with.`number'.and.`s |
| 3980 | 74 72 69 6e 67 27 20 76 61 6c 75 65 73 20 61 72 65 20 65 6e 63 6f 64 65 64 20 61 73 0a 5c 22 6b | tring'.values.are.encoded.as.\"k |
| 39a0 | 65 79 3d 76 61 6c 75 65 5c 22 20 69 6e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 71 75 65 72 | ey=value\".in.the.resulting.quer |
| 39c0 | 79 2e 0a 0a 4b 65 79 73 20 77 69 74 68 20 61 20 62 6f 6f 6c 65 61 6e 20 76 61 6c 75 65 20 28 6f | y...Keys.with.a.boolean.value.(o |
| 39e0 | 72 20 61 6e 79 20 6f 74 68 65 72 20 76 61 6c 75 65 20 6e 6f 74 20 61 6c 72 65 61 64 79 0a 64 65 | r.any.other.value.not.already.de |
| 3a00 | 73 63 72 69 62 65 64 29 20 61 72 65 20 65 6e 63 6f 64 65 64 20 6a 75 73 74 20 61 73 20 5c 22 6b | scribed).are.encoded.just.as.\"k |
| 3a20 | 65 79 5c 22 2e 0a 0a 4b 65 79 73 20 6d 61 79 20 62 65 20 73 79 6d 62 6f 6c 73 20 6f 72 20 73 74 | ey\"...Keys.may.be.symbols.or.st |
| 3a40 | 72 69 6e 67 73 2e 22 0a 20 20 28 6d 61 70 63 6f 6e 63 61 74 0a 20 20 20 28 6c 61 6d 62 64 61 20 | rings."...(mapconcat....(lambda. |
| 3a60 | 28 70 61 69 72 29 0a 20 20 20 20 20 28 77 65 62 2f 6b 65 79 2d 76 61 6c 75 65 2d 65 6e 63 6f 64 | (pair)......(web/key-value-encod |
| 3a80 | 65 20 28 63 61 72 20 70 61 69 72 29 20 28 63 64 72 20 70 61 69 72 29 29 29 0a 20 20 20 28 63 6f | e.(car.pair).(cdr.pair)))....(co |
| 3aa0 | 6e 64 0a 20 20 20 20 20 28 28 68 61 73 68 2d 74 61 62 6c 65 2d 70 20 6f 62 6a 65 63 74 29 0a 20 | nd......((hash-table-p.object).. |
| 3ac0 | 20 20 20 20 20 28 6c 65 74 20 28 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 28 6d 61 70 68 | .....(let.(result).........(maph |
| 3ae0 | 61 73 68 0a 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c 75 65 29 | ash..........(lambda.(key.value) |
| 3b00 | 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 28 61 70 70 65 6e 64 | ............(setq.result.(append |
| 3b20 | 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 6b 65 79 20 76 61 6c 75 65 29 29 20 72 65 73 75 6c 74 29 | .(list.(cons.key.value)).result) |
| 3b40 | 29 29 0a 20 20 20 20 20 20 20 20 20 6f 62 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 28 72 65 76 | ))..........object).........(rev |
| 3b60 | 65 72 73 65 20 72 65 73 75 6c 74 29 29 29 0a 20 20 20 20 20 28 28 6c 69 73 74 70 20 6f 62 6a 65 | erse.result)))......((listp.obje |
| 3b80 | 63 74 29 0a 20 20 20 20 20 20 6f 62 6a 65 63 74 29 29 0a 20 20 20 22 26 22 29 29 0a 0a 0a 3b 3b | ct).......object))...."&"))...;; |
| 3ba0 | 20 57 68 61 74 20 61 20 6d 75 6c 74 69 70 61 72 74 20 62 6f 64 79 20 6c 6f 6f 6b 73 20 6c 69 6b | .What.a.multipart.body.looks.lik |
| 3bc0 | 65 0a 3b 3b 20 43 6f 6e 74 65 6e 74 2d 74 79 70 65 3a 20 6d 75 6c 74 69 70 61 72 74 2f 66 6f 72 | e.;;.Content-type:.multipart/for |
| 3be0 | 6d 2d 64 61 74 61 2c 20 62 6f 75 6e 64 61 72 79 3d 41 61 42 30 33 78 0a 3b 3b 0a 3b 3b 20 2d 2d | m-data,.boundary=AaB03x.;;.;;.-- |
| 3c00 | 41 61 42 30 33 78 0a 3b 3b 20 63 6f 6e 74 65 6e 74 2d 64 69 73 70 6f 73 69 74 69 6f 6e 3a 20 66 | AaB03x.;;.content-disposition:.f |
| 3c20 | 6f 72 6d 2d 64 61 74 61 3b 20 6e 61 6d 65 3d 22 66 69 65 6c 64 31 22 0a 3b 3b 0a 3b 3b 20 4a 6f | orm-data;.name="field1".;;.;;.Jo |
| 3c40 | 65 20 42 6c 6f 77 0a 3b 3b 20 2d 2d 41 61 42 30 33 78 0a 3b 3b 20 63 6f 6e 74 65 6e 74 2d 64 69 | e.Blow.;;.--AaB03x.;;.content-di |
| 3c60 | 73 70 6f 73 69 74 69 6f 6e 3a 20 66 6f 72 6d 2d 64 61 74 61 3b 20 6e 61 6d 65 3d 22 70 69 63 73 | sposition:.form-data;.name="pics |
| 3c80 | 22 3b 20 66 69 6c 65 6e 61 6d 65 3d 22 66 69 6c 65 31 2e 74 78 74 22 0a 3b 3b 20 43 6f 6e 74 65 | ";.filename="file1.txt".;;.Conte |
| 3ca0 | 6e 74 2d 54 79 70 65 3a 20 74 65 78 74 2f 70 6c 61 69 6e 0a 3b 3b 0a 3b 3b 20 20 2e 2e 2e 20 63 | nt-Type:.text/plain.;;.;;......c |
| 3cc0 | 6f 6e 74 65 6e 74 73 20 6f 66 20 66 69 6c 65 31 2e 74 78 74 20 2e 2e 2e 0a 3b 3b 20 2d 2d 41 61 | ontents.of.file1.txt.....;;.--Aa |
| 3ce0 | 42 30 33 78 2d 2d 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 74 6f 2d 6d 75 6c 74 69 70 61 72 74 2d | B03x--..(defun.web/to-multipart- |
| 3d00 | 62 6f 75 6e 64 61 72 79 20 28 29 0a 20 20 22 4d 61 6b 65 20 61 20 62 6f 75 6e 64 61 72 79 20 6d | boundary.()..."Make.a.boundary.m |
| 3d20 | 61 72 6b 65 72 2e 22 0a 20 20 28 73 68 61 31 20 28 66 6f 72 6d 61 74 20 22 25 73 25 73 22 20 28 | arker."...(sha1.(format."%s%s".( |
| 3d40 | 72 61 6e 64 6f 6d 29 20 28 74 69 6d 65 2d 73 74 61 6d 70 2d 73 74 72 69 6e 67 29 29 29 29 0a 0a | random).(time-stamp-string)))).. |
| 3d60 | 28 64 65 66 75 6e 20 77 65 62 2f 69 73 2d 66 69 6c 65 20 28 6b 76 29 0a 20 20 28 6c 65 74 20 28 | (defun.web/is-file.(kv)...(let.( |
| 3d80 | 28 62 20 28 63 64 72 20 6b 76 29 29 29 0a 20 20 20 20 28 61 6e 64 20 28 62 75 66 66 65 72 70 20 | (b.(cdr.kv))).....(and.(bufferp. |
| 3da0 | 62 29 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 20 62 29 20 62 29 29 29 0a 0a 28 64 | b).(buffer-file-name.b).b)))..(d |
| 3dc0 | 65 66 75 6e 20 77 65 62 2d 74 6f 2d 6d 75 6c 74 69 70 61 72 74 20 28 64 61 74 61 29 0a 20 20 22 | efun.web-to-multipart.(data)..." |
| 3de0 | 43 6f 6e 76 65 72 74 20 44 41 54 41 2c 20 61 6e 20 41 4c 49 53 54 20 6f 72 20 48 61 73 68 74 61 | Convert.DATA,.an.ALIST.or.Hashta |
| 3e00 | 62 6c 65 2c 20 69 6e 74 6f 20 61 20 4d 75 6c 74 69 70 61 72 74 20 62 6f 64 79 2e 0a 0a 52 65 74 | ble,.into.a.Multipart.body...Ret |
| 3e20 | 75 72 6e 73 20 61 20 73 74 72 69 6e 67 20 6f 66 20 74 68 65 20 6d 75 6c 74 69 70 61 72 74 20 62 | urns.a.string.of.the.multipart.b |
| 3e40 | 6f 64 79 20 70 72 6f 70 65 72 74 69 7a 65 64 20 77 69 74 68 0a 60 3a 62 6f 75 6e 64 61 72 79 27 | ody.propertized.with.`:boundary' |
| 3e60 | 20 77 69 74 68 20 61 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 62 6f 75 6e 64 61 72 79 20 73 74 | .with.a.value.of.the.boundary.st |
| 3e80 | 72 69 6e 67 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 62 6f 75 6e 64 61 72 79 20 28 77 65 62 2f 74 | ring."...(let*.((boundary.(web/t |
| 3ea0 | 6f 2d 6d 75 6c 74 69 70 61 72 74 2d 62 6f 75 6e 64 61 72 79 29 29 0a 20 20 20 20 20 20 20 20 20 | o-multipart-boundary)).......... |
| 3ec0 | 28 70 61 72 74 73 20 28 6d 61 70 63 6f 6e 63 61 74 20 20 3b 20 66 69 72 73 74 20 74 68 65 20 70 | (parts.(mapconcat..;.first.the.p |
| 3ee0 | 61 72 61 6d 73 20 2e 2e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 | arams......................(lamb |
| 3f00 | 64 61 20 28 6b 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 | da.(kv)....................(let. |
| 3f20 | 28 28 6e 61 6d 65 20 28 63 61 72 20 6b 76 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ((name.(car.kv))................ |
| 3f40 | 20 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65 20 28 63 64 72 20 6b 76 29 29 29 0a 20 20 20 20 | ..........(value.(cdr.kv)))..... |
| 3f60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 2d 2d 25 73 5c 72 | .................(format."--%s\r |
| 3f80 | 0a 43 6f 6e 74 65 6e 74 2d 44 69 73 70 6f 73 69 74 69 6f 6e 3a 20 66 6f 72 6d 2d 64 61 74 61 3b | .Content-Disposition:.form-data; |
| 3fa0 | 20 6e 61 6d 65 3d 5c 22 25 73 5c 22 5c 72 5c 6e 5c 72 5c 6e 25 73 22 0a 20 20 20 20 20 20 20 20 | .name=\"%s\"\r\n\r\n%s"......... |
| 3fc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 20 6e 61 | .....................boundary.na |
| 3fe0 | 6d 65 20 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2d 66 | me.value)))..................(-f |
| 4000 | 69 6c 74 65 72 20 28 6c 61 6d 62 64 61 20 28 6b 76 29 20 28 6e 6f 74 20 28 77 65 62 2f 69 73 2d | ilter.(lambda.(kv).(not.(web/is- |
| 4020 | 66 69 6c 65 20 6b 76 29 29 29 20 64 61 74 61 29 20 22 5c 72 5c 6e 22 29 29 0a 20 20 20 20 20 20 | file.kv))).data)."\r\n"))....... |
| 4040 | 20 20 20 28 66 69 6c 65 73 20 28 6d 61 70 63 6f 6e 63 61 74 20 20 3b 20 74 68 65 6e 20 74 68 65 | ...(files.(mapconcat..;.then.the |
| 4060 | 20 66 69 6c 65 73 20 2e 2e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d | .files......................(lam |
| 4080 | 62 64 61 20 28 6b 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 | bda.(kv)....................(let |
| 40a0 | 2a 20 28 28 6e 61 6d 65 20 28 63 61 72 20 6b 76 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | *.((name.(car.kv)).............. |
| 40c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 20 28 63 64 72 20 6b 76 29 29 0a 20 | .............(buffer.(cdr.kv)).. |
| 40e0 | 20 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 69 6c 65 6e 61 | .........................(filena |
| 4100 | 6d 65 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 20 62 75 66 66 65 72 29 29 0a 20 20 | me.(buffer-file-name.buffer))... |
| 4120 | 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 69 6d 65 2d 65 6e | ........................(mime-en |
| 4140 | 63 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | c.(or........................... |
| 4160 | 20 20 20 20 20 20 20 20 20 20 20 28 6d 6d 2d 64 65 66 61 75 6c 74 2d 66 69 6c 65 2d 65 6e 63 6f | ...........(mm-default-file-enco |
| 4180 | 64 69 6e 67 20 66 69 6c 65 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ding.filename).................. |
| 41a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 65 78 74 2f 70 6c 61 69 6e 22 | ...................."text/plain" |
| 41c0 | 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 66 6f 72 6d 61 74 | )))......................(format |
| 41e0 | 20 22 2d 2d 25 73 5c 72 0a 43 6f 6e 74 65 6e 74 2d 54 72 61 6e 73 66 65 72 2d 45 6e 63 6f 64 69 | ."--%s\r.Content-Transfer-Encodi |
| 4200 | 6e 67 3a 20 42 41 53 45 36 34 5c 72 0a 43 6f 6e 74 65 6e 74 2d 44 69 73 70 6f 73 69 74 69 6f 6e | ng:.BASE64\r.Content-Disposition |
| 4220 | 3a 20 66 6f 72 6d 2d 64 61 74 61 3b 20 6e 61 6d 65 3d 5c 22 25 73 5c 22 3b 20 66 69 6c 65 6e 61 | :.form-data;.name=\"%s\";.filena |
| 4240 | 6d 65 3d 5c 22 25 73 5c 22 5c 72 0a 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 20 25 73 5c 72 5c 6e | me=\"%s\"\r.Content-Type:.%s\r\n |
| 4260 | 5c 72 5c 6e 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | \r\n%s"......................... |
| 4280 | 20 20 20 20 20 62 6f 75 6e 64 61 72 79 20 6e 61 6d 65 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f | .....boundary.name.(file-name-no |
| 42a0 | 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 6e 61 6d 65 29 20 6d 69 6d 65 2d 65 6e 63 0a 20 20 | ndirectory.filename).mime-enc... |
| 42c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 49 | ...........................;;.FI |
| 42e0 | 58 4d 45 20 2d 20 57 65 20 73 68 6f 75 6c 64 20 62 61 73 65 36 34 20 74 68 65 20 63 6f 6e 74 65 | XME.-.We.should.base64.the.conte |
| 4300 | 6e 74 20 77 68 65 6e 20 61 70 70 72 6f 70 72 69 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | nt.when.appropriate............. |
| 4320 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 61 73 65 36 34 2d 65 6e 63 6f 64 65 2d | .................(base64-encode- |
| 4340 | 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | string.......................... |
| 4360 | 20 20 20 20 20 28 61 70 70 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....(apply..................... |
| 4380 | 20 20 20 20 20 20 20 20 20 20 20 27 65 6e 63 6f 64 65 2d 63 6f 64 69 6e 67 2d 73 74 72 69 6e 67 | ...........'encode-coding-string |
| 43a0 | 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 | ................................ |
| 43c0 | 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 20 | (with-current-buffer.buffer..... |
| 43e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 | .............................(li |
| 4400 | 73 74 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 20 62 75 66 66 65 72 2d 66 69 6c 65 2d 63 | st.(buffer-string).buffer-file-c |
| 4420 | 6f 64 69 6e 67 2d 73 79 73 74 65 6d 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | oding-system)))))))............. |
| 4440 | 20 20 20 20 20 28 2d 66 69 6c 74 65 72 20 27 77 65 62 2f 69 73 2d 66 69 6c 65 20 64 61 74 61 29 | .....(-filter.'web/is-file.data) |
| 4460 | 20 22 5c 72 5c 6e 22 29 29 29 0a 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 0a 20 20 20 20 20 | ."\r\n"))).....(propertize...... |
| 4480 | 28 66 6f 72 6d 61 74 20 22 25 73 25 73 2d 2d 25 73 2d 2d 5c 72 5c 6e 22 20 0a 20 20 20 20 20 20 | (format."%s%s--%s--\r\n"........ |
| 44a0 | 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 70 61 72 74 73 20 28 6e 6f 74 20 28 65 71 75 61 | .......(if.(and.parts.(not.(equa |
| 44c0 | 6c 20 70 61 72 74 73 20 22 22 29 29 29 20 28 63 6f 6e 63 61 74 20 70 61 72 74 73 20 22 5c 72 5c | l.parts.""))).(concat.parts."\r\ |
| 44e0 | 6e 22 29 20 22 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 66 69 | n")."")..............(if.(and.fi |
| 4500 | 6c 65 73 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 66 69 6c 65 73 20 22 22 29 29 29 20 28 63 6f 6e | les.(not.(equal.files.""))).(con |
| 4520 | 63 61 74 20 66 69 6c 65 73 20 22 5c 72 5c 6e 22 29 20 22 22 29 0a 20 20 20 20 20 20 20 20 20 20 | cat.files."\r\n")."")........... |
| 4540 | 20 20 20 62 6f 75 6e 64 61 72 79 29 0a 20 20 20 20 20 3a 62 6f 75 6e 64 61 72 79 20 62 6f 75 6e | ...boundary)......:boundary.boun |
| 4560 | 64 61 72 79 29 29 29 0a 0a 28 64 65 66 76 61 72 20 77 65 62 2d 6c 6f 67 2d 69 6e 66 6f 20 6e 69 | dary)))..(defvar.web-log-info.ni |
| 4580 | 6c 0a 20 20 22 57 68 65 74 68 65 72 20 74 6f 20 6c 6f 67 20 69 6e 66 6f 20 6d 65 73 73 61 67 65 | l..."Whether.to.log.info.message |
| 45a0 | 73 2c 20 73 70 65 63 69 66 69 63 61 6c 6c 79 20 66 72 6f 6d 20 74 68 65 20 73 65 6e 74 69 6e 65 | s,.specifically.from.the.sentine |
| 45c0 | 6c 2e 22 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 | l.")..(defun.web/http-post-senti |
| 45e0 | 6e 65 6c 20 28 63 6f 6e 20 65 76 74 29 0a 20 20 22 53 65 6e 74 69 6e 65 6c 20 66 6f 72 20 74 68 | nel.(con.evt)..."Sentinel.for.th |
| 4600 | 65 20 48 54 54 50 20 50 4f 53 54 2e 22 0a 20 20 3b 3b 20 46 49 58 4d 45 20 49 27 6d 20 73 75 72 | e.HTTP.POST."...;;.FIXME.I'm.sur |
| 4620 | 65 20 74 68 69 73 20 6e 65 65 64 73 20 74 6f 20 62 65 20 64 69 66 66 65 72 65 6e 74 20 2d 20 62 | e.this.needs.to.be.different.-.b |
| 4640 | 75 74 20 68 6f 77 3f 20 69 74 20 6e 65 65 64 73 20 74 6f 0a 20 20 3b 3b 20 63 6f 6d 6d 75 6e 69 | ut.how?.it.needs.to...;;.communi |
| 4660 | 63 61 74 65 20 74 6f 20 74 68 65 20 66 69 6c 74 65 72 20 66 75 6e 63 74 69 6f 6e 3f 0a 20 20 28 | cate.to.the.filter.function?...( |
| 4680 | 63 6f 6e 64 0a 20 20 20 20 28 28 65 71 75 61 6c 20 65 76 74 20 22 63 6c 6f 73 65 64 5c 6e 22 29 | cond.....((equal.evt."closed\n") |
| 46a0 | 0a 20 20 20 20 20 28 77 68 65 6e 20 77 65 62 2d 6c 6f 67 2d 69 6e 66 6f 0a 20 20 20 20 20 20 20 | ......(when.web-log-info........ |
| 46c0 | 28 6d 65 73 73 61 67 65 20 22 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 6e 65 6c | (message."web/http-post-sentinel |
| 46e0 | 20 68 74 74 70 20 63 6c 69 65 6e 74 20 70 6f 73 74 20 63 6c 6f 73 65 64 22 29 29 29 0a 20 20 20 | .http.client.post.closed"))).... |
| 4700 | 20 28 28 65 71 75 61 6c 20 65 76 74 20 22 64 65 6c 65 74 65 64 5c 6e 22 29 0a 20 20 20 20 20 28 | .((equal.evt."deleted\n")......( |
| 4720 | 64 65 6c 65 74 65 2d 70 72 6f 63 65 73 73 20 63 6f 6e 29 0a 20 20 20 20 20 28 77 68 65 6e 20 77 | delete-process.con)......(when.w |
| 4740 | 65 62 2d 6c 6f 67 2d 69 6e 66 6f 0a 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 77 65 62 | eb-log-info........(message."web |
| 4760 | 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 6e 65 6c 20 68 74 74 70 20 63 6c 69 65 6e 74 20 | /http-post-sentinel.http.client. |
| 4780 | 70 6f 73 74 20 64 65 6c 65 74 65 64 22 29 29 29 0a 20 20 20 20 28 28 65 71 75 61 6c 20 65 76 74 | post.deleted"))).....((equal.evt |
| 47a0 | 20 22 63 6f 6e 6e 65 63 74 69 6f 6e 20 62 72 6f 6b 65 6e 20 62 79 20 70 65 65 72 5c 6e 22 29 0a | ."connection.broken.by.peer\n"). |
| 47c0 | 20 20 20 20 20 28 77 68 65 6e 20 77 65 62 2d 6c 6f 67 2d 69 6e 66 6f 0a 20 20 20 20 20 20 20 28 | .....(when.web-log-info........( |
| 47e0 | 6d 65 73 73 61 67 65 20 22 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 6e 65 6c 20 | message."web/http-post-sentinel. |
| 4800 | 68 74 74 70 20 63 6c 69 65 6e 74 20 62 72 6f 6b 65 6e 22 29 29 29 0a 20 20 20 20 28 74 0a 20 20 | http.client.broken"))).....(t... |
| 4820 | 20 20 20 28 77 68 65 6e 20 77 65 62 2d 6c 6f 67 2d 69 6e 66 6f 0a 20 20 20 20 20 20 20 28 6d 65 | ...(when.web-log-info........(me |
| 4840 | 73 73 61 67 65 20 22 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 6e 65 6c 20 75 6e | ssage."web/http-post-sentinel.un |
| 4860 | 65 78 70 65 63 74 65 64 20 65 76 74 3a 20 25 73 22 20 65 76 74 29 29 29 29 29 0a 0a 28 64 65 66 | expected.evt:.%s".evt)))))..(def |
| 4880 | 75 6e 20 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 6e 65 6c 2d 77 69 74 68 2d 6c | un.web/http-post-sentinel-with-l |
| 48a0 | 6f 67 67 69 6e 67 20 28 63 6f 6e 20 65 76 74 20 6c 6f 67 67 69 6e 67 29 0a 20 20 22 4d 61 70 20 | ogging.(con.evt.logging)..."Map. |
| 48c0 | 61 20 6c 6f 67 67 69 6e 67 20 76 61 72 69 61 62 6c 65 20 69 6e 74 6f 20 74 68 65 20 73 65 6e 74 | a.logging.variable.into.the.sent |
| 48e0 | 69 6e 65 6c 2e 22 0a 20 20 28 6c 65 74 20 28 28 77 65 62 2d 6c 6f 67 2d 69 6e 66 6f 20 6c 6f 67 | inel."...(let.((web-log-info.log |
| 4900 | 67 69 6e 67 29 29 0a 20 20 20 20 28 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 73 65 6e 74 69 6e | ging)).....(web/http-post-sentin |
| 4920 | 65 6c 20 63 6f 6e 20 65 76 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 68 65 61 64 65 72 | el.con.evt)))..(defun.web/header |
| 4940 | 2d 6c 69 73 74 20 28 68 65 61 64 65 72 73 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 48 45 41 44 45 | -list.(headers)..."Convert.HEADE |
| 4960 | 52 53 20 28 68 61 73 68 2d 74 61 62 6c 65 20 6f 72 20 61 6c 69 73 74 29 20 69 6e 74 6f 20 61 20 | RS.(hash-table.or.alist).into.a. |
| 4980 | 68 65 61 64 65 72 20 6c 69 73 74 2e 22 0a 20 20 28 63 6c 2d 6c 61 62 65 6c 73 0a 20 20 20 20 20 | header.list."...(cl-labels...... |
| 49a0 | 20 28 28 68 64 72 20 28 6b 65 79 20 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 | .((hdr.(key.val)..........(forma |
| 49c0 | 74 20 22 25 73 3a 20 25 73 5c 72 5c 6e 22 20 6b 65 79 20 76 61 6c 29 29 29 0a 20 20 20 20 28 63 | t."%s:.%s\r\n".key.val))).....(c |
| 49e0 | 6f 6e 64 0a 20 20 20 20 20 20 28 28 68 61 73 68 2d 74 61 62 6c 65 2d 70 20 68 65 61 64 65 72 73 | ond.......((hash-table-p.headers |
| 4a00 | 29 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 72 65 73 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 | )........(let.(res)..........(ma |
| 4a20 | 70 68 61 73 68 0a 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 65 79 20 76 61 6c | phash...........(lambda.(key.val |
| 4a40 | 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73 20 28 61 70 70 65 6e 64 20 | ).............(setq.res.(append. |
| 4a60 | 28 6c 69 73 74 20 28 68 64 72 20 6b 65 79 20 76 61 6c 29 29 20 72 65 73 29 29 29 0a 20 20 20 20 | (list.(hdr.key.val)).res)))..... |
| 4a80 | 20 20 20 20 20 20 68 65 61 64 65 72 73 29 0a 20 20 20 20 20 20 20 20 20 72 65 73 29 29 0a 20 20 | ......headers)..........res))... |
| 4aa0 | 20 20 20 20 28 28 6c 69 73 74 70 20 68 65 61 64 65 72 73 29 0a 20 20 20 20 20 20 20 28 6d 61 70 | ....((listp.headers)........(map |
| 4ac0 | 63 61 72 0a 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70 61 69 72 29 20 28 68 64 72 20 | car.........(lambda.(pair).(hdr. |
| 4ae0 | 28 63 61 72 20 70 61 69 72 29 28 63 64 72 20 70 61 69 72 29 29 29 0a 20 20 20 20 20 20 20 20 68 | (car.pair)(cdr.pair))).........h |
| 4b00 | 65 61 64 65 72 73 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2f 68 65 61 64 65 72 2d 73 | eaders)))))..(defun.web/header-s |
| 4b20 | 74 72 69 6e 67 20 28 6d 65 74 68 6f 64 20 68 65 61 64 65 72 73 20 6d 69 6d 65 2d 74 79 70 65 20 | tring.(method.headers.mime-type. |
| 4b40 | 74 6f 2d 73 65 6e 64 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 73 74 72 69 6e 67 20 6f 66 20 61 | to-send)..."Return.a.string.of.a |
| 4b60 | 6c 6c 20 74 68 65 20 48 45 41 44 45 52 53 20 66 6f 72 6d 61 74 74 65 64 20 66 6f 72 20 61 20 72 | ll.the.HEADERS.formatted.for.a.r |
| 4b80 | 65 71 75 65 73 74 2e 0a 0a 43 6f 6e 74 65 6e 74 2d 54 79 70 65 20 61 6e 64 20 43 6f 6e 74 65 6e | equest...Content-Type.and.Conten |
| 4ba0 | 74 2d 4c 65 6e 67 74 68 20 61 72 65 20 62 6f 74 68 20 63 6f 6d 70 75 74 65 64 20 61 75 74 6f 6d | t-Length.are.both.computed.autom |
| 4bc0 | 61 74 69 63 61 6c 6c 79 2e 0a 0a 4d 45 54 48 4f 44 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 | atically...METHOD.specifies.the. |
| 4be0 | 75 73 75 61 6c 20 48 54 54 50 20 6d 65 74 68 6f 64 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 | usual.HTTP.method.and.therefore. |
| 4c00 | 77 68 65 74 68 65 72 0a 74 68 65 72 65 20 6d 69 67 68 74 20 62 65 20 61 20 43 6f 6e 74 65 6e 74 | whether.there.might.be.a.Content |
| 4c20 | 2d 54 79 70 65 20 6f 6e 20 74 68 65 20 72 65 71 75 65 73 74 20 62 6f 64 79 2e 0a 0a 4d 49 4d 45 | -Type.on.the.request.body...MIME |
| 4c40 | 2d 54 59 50 45 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 4d 49 4d 45 2d 54 59 50 45 20 6f 66 | -TYPE.specifies.the.MIME-TYPE.of |
| 4c60 | 20 61 6e 79 20 54 4f 2d 53 45 4e 44 2e 0a 0a 54 4f 2d 53 45 4e 44 20 69 73 20 61 6e 79 20 72 65 | .any.TO-SEND...TO-SEND.is.any.re |
| 4c80 | 71 75 65 73 74 20 62 6f 64 79 20 74 68 61 74 20 6e 65 65 64 73 20 74 6f 20 62 65 20 73 65 6e 74 | quest.body.that.needs.to.be.sent |
| 4ca0 | 2e 20 20 54 4f 2d 53 45 4e 44 20 6d 61 79 0a 62 65 20 70 72 6f 70 65 72 74 69 7a 65 64 20 77 69 | ...TO-SEND.may.be.propertized.wi |
| 4cc0 | 74 68 20 61 20 6d 75 6c 74 69 70 61 72 74 20 62 6f 75 6e 64 61 72 79 20 6d 61 72 6b 65 72 20 77 | th.a.multipart.boundary.marker.w |
| 4ce0 | 68 69 63 68 20 6e 65 65 64 73 20 74 6f 20 62 65 0a 73 65 74 20 6f 6e 20 74 68 65 20 43 6f 6e 74 | hich.needs.to.be.set.on.the.Cont |
| 4d00 | 65 6e 74 2d 54 79 70 65 20 68 65 61 64 65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 68 74 74 70 2d | ent-Type.header."...(let.((http- |
| 4d20 | 68 64 72 73 20 28 77 65 62 2f 68 65 61 64 65 72 2d 6c 69 73 74 20 68 65 61 64 65 72 73 29 29 0a | hdrs.(web/header-list.headers)). |
| 4d40 | 20 20 20 20 20 20 20 20 28 62 6f 75 6e 64 61 72 79 20 28 61 6e 64 20 74 6f 2d 73 65 6e 64 0a 20 | ........(boundary.(and.to-send.. |
| 4d60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 | ......................(plist-get |
| 4d80 | 20 28 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 2d 61 74 20 30 20 74 6f 2d 73 65 6e 64 29 20 | .(text-properties-at.0.to-send). |
| 4da0 | 3a 62 6f 75 6e 64 61 72 79 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6d 65 6d 62 65 72 20 | :boundary)))).....(when.(member. |
| 4dc0 | 6d 65 74 68 6f 64 20 27 28 22 50 4f 53 54 22 20 22 50 55 54 22 29 29 0a 20 20 20 20 20 20 28 77 | method.'("POST"."PUT")).......(w |
| 4de0 | 68 65 6e 20 28 3e 20 28 6c 65 6e 67 74 68 20 74 6f 2d 73 65 6e 64 29 20 31 29 0a 20 20 20 20 20 | hen.(>.(length.to-send).1)...... |
| 4e00 | 20 20 20 28 70 75 73 68 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...(push.(format................ |
| 4e20 | 22 43 6f 6e 74 65 6e 74 2d 74 79 70 65 3a 20 25 73 25 73 5c 72 5c 6e 22 20 6d 69 6d 65 2d 74 79 | "Content-type:.%s%s\r\n".mime-ty |
| 4e40 | 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 62 6f 75 6e 64 61 72 79 20 28 | pe................(if.boundary.( |
| 4e60 | 66 6f 72 6d 61 74 20 22 3b 20 62 6f 75 6e 64 61 72 79 3d 25 73 22 20 62 6f 75 6e 64 61 72 79 29 | format.";.boundary=%s".boundary) |
| 4e80 | 20 22 22 29 29 0a 20 20 20 20 20 20 20 20 20 68 74 74 70 2d 68 64 72 73 29 29 29 0a 20 20 20 20 | .""))..........http-hdrs)))..... |
| 4ea0 | 28 77 68 65 6e 20 28 61 6e 64 20 74 6f 2d 73 65 6e 64 20 28 3e 20 28 6c 65 6e 67 74 68 20 74 6f | (when.(and.to-send.(>.(length.to |
| 4ec0 | 2d 73 65 6e 64 29 20 30 29 29 0a 20 20 20 20 20 20 28 70 75 73 68 0a 20 20 20 20 20 20 20 28 66 | -send).0)).......(push........(f |
| 4ee0 | 6f 72 6d 61 74 20 22 43 6f 6e 74 65 6e 74 2d 6c 65 6e 67 74 68 3a 20 25 64 5c 72 5c 6e 22 20 28 | ormat."Content-length:.%d\r\n".( |
| 4f00 | 6c 65 6e 67 74 68 20 74 6f 2d 73 65 6e 64 29 29 0a 20 20 20 20 20 20 20 68 74 74 70 2d 68 64 72 | length.to-send))........http-hdr |
| 4f20 | 73 29 29 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 68 64 72 20 69 6e 20 68 74 74 70 | s)).....(cl-loop.for.hdr.in.http |
| 4f40 | 2d 68 64 72 73 20 69 66 20 68 64 72 20 63 6f 6e 63 61 74 20 68 64 72 29 29 29 0a 0a 28 64 65 66 | -hdrs.if.hdr.concat.hdr)))..(def |
| 4f60 | 75 6e 20 77 65 62 2f 6c 6f 67 20 28 6c 6f 67 29 0a 20 20 28 77 68 65 6e 20 6c 6f 67 0a 20 20 20 | un.web/log.(log)...(when.log.... |
| 4f80 | 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 | .(with-current-buffer.(get-buffe |
| 4fa0 | 72 2d 63 72 65 61 74 65 20 22 2a 77 65 62 2d 6c 6f 67 2a 22 29 0a 20 20 20 20 20 20 28 73 61 76 | r-create."*web-log*").......(sav |
| 4fc0 | 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 | e-excursion.........(goto-char.( |
| 4fe0 | 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 77 65 62 | point-max)).........(insert."web |
| 5000 | 2d 68 74 74 70 20 22 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 | -http.").........(insert.(format |
| 5020 | 20 22 25 73 22 20 6c 6f 67 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e 22 | ."%s".log)).........(insert."\n" |
| 5040 | 29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 63 6c 2d 64 65 66 75 6e 20 | )))))..;;;###autoload.(cl-defun. |
| 5060 | 77 65 62 2d 68 74 74 70 2d 63 61 6c 6c 20 28 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 | web-http-call.(method........... |
| 5080 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 | ...............callback......... |
| 50a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 | .................&key........... |
| 50c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 72 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...............url.............. |
| 50e0 | 20 20 20 20 20 20 20 20 20 20 20 20 28 68 6f 73 74 20 22 6c 6f 63 61 6c 68 6f 73 74 22 29 0a 20 | ............(host."localhost").. |
| 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 28 70 6f 72 74 20 38 30 | ........................(port.80 |
| 5120 | 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 73 65 63 75 72 | )..........................secur |
| 5140 | 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 28 70 61 74 68 | e..........................(path |
| 5160 | 20 22 2f 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 65 | ."/")..........................e |
| 5180 | 78 74 72 61 2d 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | xtra-headers.................... |
| 51a0 | 20 20 20 20 20 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......data...................... |
| 51c0 | 20 20 20 20 28 6d 69 6d 65 2d 74 79 70 65 20 77 65 62 2f 72 65 71 75 65 73 74 2d 6d 69 6d 65 74 | ....(mime-type.web/request-mimet |
| 51e0 | 79 70 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 6d | ype)..........................(m |
| 5200 | 6f 64 65 20 27 62 61 74 63 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ode.'batch)..................... |
| 5220 | 20 20 20 20 20 6c 6f 67 67 69 6e 67 29 0a 20 20 22 4d 61 6b 65 20 61 6e 20 48 54 54 50 20 6d 65 | .....logging)..."Make.an.HTTP.me |
| 5240 | 74 68 6f 64 20 74 6f 20 74 68 65 20 55 52 4c 20 6f 72 20 74 68 65 20 48 4f 53 54 2c 20 50 4f 52 | thod.to.the.URL.or.the.HOST,.POR |
| 5260 | 54 2c 20 50 41 54 48 20 61 6e 64 20 73 65 6e 64 20 44 41 54 41 2e 0a 0a 49 66 20 55 52 4c 20 69 | T,.PATH.and.send.DATA...If.URL.i |
| 5280 | 73 20 73 70 65 63 69 66 69 65 64 20 74 68 65 6e 20 69 74 20 74 61 6b 65 73 20 70 72 65 63 65 64 | s.specified.then.it.takes.preced |
| 52a0 | 65 6e 63 65 20 6f 76 65 72 20 53 45 43 55 52 45 2c 20 48 4f 53 54 2c 0a 50 4f 52 54 20 61 6e 64 | ence.over.SECURE,.HOST,.PORT.and |
| 52c0 | 20 50 41 54 48 2e 20 20 55 52 4c 20 6d 61 79 20 62 65 20 48 54 54 50 20 6f 72 20 48 54 54 50 53 | .PATH...URL.may.be.HTTP.or.HTTPS |
| 52e0 | 2e 0a 0a 49 6d 70 6f 72 74 61 6e 74 20 6e 6f 74 65 3a 20 61 6e 79 20 71 75 65 72 79 20 69 6e 20 | ...Important.note:.any.query.in. |
| 5300 | 55 52 4c 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20 49 47 4e 4f 52 45 44 21 0a 0a 53 45 43 55 52 | URL.is.currently.IGNORED!..SECUR |
| 5320 | 45 20 69 73 20 60 6e 69 6c 27 20 62 79 20 64 65 66 61 75 6c 74 20 62 75 74 20 69 66 20 60 74 27 | E.is.`nil'.by.default.but.if.`t' |
| 5340 | 20 74 68 65 6e 20 53 53 4c 20 69 73 20 75 73 65 64 2e 0a 0a 50 4f 52 54 20 69 73 20 38 30 20 62 | .then.SSL.is.used...PORT.is.80.b |
| 5360 | 79 20 64 65 66 61 75 6c 74 2e 20 20 45 76 65 6e 20 69 66 20 53 45 43 55 52 45 20 69 74 20 60 74 | y.default...Even.if.SECURE.it.`t |
| 5380 | 27 2e 20 20 49 66 20 79 6f 75 20 6d 61 6e 75 61 6c 6c 79 0a 73 70 65 63 69 66 79 20 53 45 43 55 | '...If.you.manually.specify.SECU |
| 53a0 | 52 45 20 79 6f 75 20 73 68 6f 75 6c 64 20 6d 61 6e 75 61 6c 6c 79 20 73 70 65 63 69 66 79 20 50 | RE.you.should.manually.specify.P |
| 53c0 | 4f 52 54 20 74 6f 20 62 65 20 34 34 33 2e 20 20 55 73 69 6e 67 0a 55 52 4c 20 6e 65 67 61 74 65 | ORT.to.be.443...Using.URL.negate |
| 53e0 | 73 20 74 68 65 20 6e 65 65 64 20 66 6f 72 20 74 68 61 74 2c 20 61 6e 20 53 53 4c 20 55 52 4c 20 | s.the.need.for.that,.an.SSL.URL. |
| 5400 | 77 69 6c 6c 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79 2e 0a 0a 54 68 65 20 55 52 4c 20 63 6f | will.work.correctly...The.URL.co |
| 5420 | 6e 6e 65 63 74 65 64 20 74 6f 20 28 77 68 65 74 68 65 72 20 73 70 65 63 69 66 69 65 64 20 62 79 | nnected.to.(whether.specified.by |
| 5440 | 20 55 52 4c 20 6f 72 20 62 79 20 74 68 65 20 48 4f 53 54 20 61 6e 64 0a 50 4f 52 54 29 20 69 73 | .URL.or.by.the.HOST.and.PORT).is |
| 5460 | 20 72 65 63 6f 72 64 65 64 20 6f 6e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 63 6f 6e 6e 65 | .recorded.on.the.resulting.conne |
| 5480 | 63 74 69 6f 6e 20 61 73 20 74 68 65 20 70 72 6f 63 65 73 73 0a 70 72 6f 70 65 72 74 79 20 60 3a | ction.as.the.process.property.`: |
| 54a0 | 77 65 62 2d 75 72 6c 27 2e 0a 0a 45 58 54 52 41 2d 48 45 41 44 45 52 53 20 69 73 20 61 6e 20 61 | web-url'...EXTRA-HEADERS.is.an.a |
| 54c0 | 6c 69 73 74 20 6f 72 20 61 20 68 61 73 68 2d 74 61 62 6c 65 20 6f 66 20 65 78 74 72 61 20 68 65 | list.or.a.hash-table.of.extra.he |
| 54e0 | 61 64 65 72 73 20 74 6f 0a 73 65 6e 64 20 74 6f 20 74 68 65 20 73 65 72 76 65 72 2e 0a 0a 54 68 | aders.to.send.to.the.server...Th |
| 5500 | 65 20 66 75 6c 6c 20 73 65 74 20 6f 66 20 68 65 61 64 65 72 73 20 73 65 6e 74 20 74 6f 20 74 68 | e.full.set.of.headers.sent.to.th |
| 5520 | 65 20 73 65 72 76 65 72 20 69 73 20 72 65 63 6f 72 64 65 64 20 6f 6e 20 74 68 65 0a 63 6f 6e 6e | e.server.is.recorded.on.the.conn |
| 5540 | 65 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 70 72 6f 63 65 73 73 20 70 72 6f 70 65 72 74 79 | ection.with.the.process.property |
| 5560 | 20 60 3a 77 65 62 2d 68 65 61 64 65 72 73 27 2e 0a 0a 44 41 54 41 20 69 73 20 6f 66 20 4d 49 4d | .`:web-headers'...DATA.is.of.MIM |
| 5580 | 45 2d 54 59 50 45 2e 20 20 57 65 20 74 72 79 20 74 6f 20 69 6e 74 65 72 70 72 65 74 20 44 41 54 | E-TYPE...We.try.to.interpret.DAT |
| 55a0 | 41 20 61 6e 64 20 4d 49 4d 45 2d 54 59 50 45 0a 75 73 65 66 75 6c 6c 79 3a 0a 0a 49 66 20 4d 49 | A.and.MIME-TYPE.usefully:..If.MI |
| 55c0 | 4d 45 2d 54 59 50 45 20 69 73 20 60 61 70 70 6c 69 63 61 74 69 6f 6e 2f 66 6f 72 6d 2d 77 77 77 | ME-TYPE.is.`application/form-www |
| 55e0 | 2d 75 72 6c 2d 65 6e 63 6f 64 65 64 27 20 74 68 65 6e 0a 60 77 65 62 2d 74 6f 2d 71 75 65 72 79 | -url-encoded'.then.`web-to-query |
| 5600 | 2d 73 74 72 69 6e 67 27 20 69 73 20 75 73 65 64 20 74 6f 20 74 6f 20 66 6f 72 6d 61 74 20 74 68 | -string'.is.used.to.to.format.th |
| 5620 | 65 20 44 41 54 41 20 69 6e 74 6f 20 61 20 50 4f 53 54 0a 62 6f 64 79 2e 0a 0a 49 66 20 4d 49 4d | e.DATA.into.a.POST.body...If.MIM |
| 5640 | 45 2d 54 59 50 45 20 69 73 20 60 6d 75 6c 74 69 70 61 72 74 2f 66 6f 72 6d 2d 64 61 74 61 27 20 | E-TYPE.is.`multipart/form-data'. |
| 5660 | 74 68 65 6e 20 60 77 65 62 2d 74 6f 2d 6d 75 6c 74 69 70 61 72 74 27 20 69 73 0a 63 61 6c 6c 65 | then.`web-to-multipart'.is.calle |
| 5680 | 64 20 74 6f 20 67 65 74 20 61 20 50 4f 53 54 20 62 6f 64 79 2e 0a 0a 41 6e 79 20 64 61 74 61 20 | d.to.get.a.POST.body...Any.data. |
| 56a0 | 73 65 6e 74 20 74 6f 20 74 68 65 20 73 65 72 76 65 72 20 69 73 20 72 65 63 6f 72 64 65 64 20 6f | sent.to.the.server.is.recorded.o |
| 56c0 | 6e 20 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 77 69 74 68 0a 74 68 65 20 70 72 6f 63 65 73 | n.the.connection.with.the.proces |
| 56e0 | 73 20 70 72 6f 70 65 72 74 79 20 60 3a 77 65 62 2d 73 65 6e 74 27 2e 0a 0a 57 68 65 6e 20 74 68 | s.property.`:web-sent'...When.th |
| 5700 | 65 20 72 65 71 75 65 73 74 20 63 6f 6d 65 73 20 62 61 63 6b 20 74 68 65 20 43 41 4c 4c 42 41 43 | e.request.comes.back.the.CALLBAC |
| 5720 | 4b 20 69 73 20 63 61 6c 6c 65 64 2e 20 20 43 41 4c 4c 42 41 43 4b 20 69 73 0a 61 6c 77 61 79 73 | K.is.called...CALLBACK.is.always |
| 5740 | 20 70 61 73 73 65 64 20 33 20 61 72 67 75 6d 65 6e 74 73 3a 20 74 68 65 20 48 54 54 50 20 63 6f | .passed.3.arguments:.the.HTTP.co |
| 5760 | 6e 6e 65 63 74 69 6f 6e 20 77 68 69 63 68 20 69 73 20 61 20 70 72 6f 63 65 73 73 0a 6f 62 6a 65 | nnection.which.is.a.process.obje |
| 5780 | 63 74 2c 20 74 68 65 20 48 54 54 50 20 68 65 61 64 65 72 20 77 68 69 63 68 20 69 73 20 61 20 60 | ct,.the.HTTP.header.which.is.a.` |
| 57a0 | 68 61 73 68 2d 74 61 62 6c 65 27 20 61 6e 64 20 60 64 61 74 61 27 2c 20 77 68 69 63 68 0a 69 73 | hash-table'.and.`data',.which.is |
| 57c0 | 20 6e 6f 72 6d 61 6c 6c 79 20 61 20 73 74 72 69 6e 67 2e 20 20 60 64 61 74 61 27 20 64 65 70 65 | .normally.a.string...`data'.depe |
| 57e0 | 6e 64 73 20 73 6f 6d 65 77 68 61 74 20 6f 6e 20 74 68 65 20 63 6f 6e 74 65 78 74 2e 0a 53 65 65 | nds.somewhat.on.the.context..See |
| 5800 | 20 62 65 6c 6f 77 2e 0a 0a 4d 4f 44 45 20 64 65 66 69 6e 65 73 20 77 68 61 74 20 69 74 20 6d 65 | .below...MODE.defines.what.it.me |
| 5820 | 61 6e 73 20 66 6f 72 20 74 68 65 20 72 65 71 75 65 73 74 20 74 6f 20 63 61 75 73 65 20 74 68 65 | ans.for.the.request.to.cause.the |
| 5840 | 20 43 41 4c 4c 42 41 43 4b 0a 74 6f 20 62 65 20 66 69 72 65 64 2e 20 20 57 68 65 6e 20 4d 4f 44 | .CALLBACK.to.be.fired...When.MOD |
| 5860 | 45 20 69 73 20 60 73 74 72 65 61 6d 27 20 74 68 65 6e 20 74 68 65 20 43 41 4c 4c 42 41 43 4b 20 | E.is.`stream'.then.the.CALLBACK. |
| 5880 | 69 73 20 63 61 6c 6c 65 64 0a 66 6f 72 20 65 76 65 72 79 20 63 68 75 6e 6b 20 6f 66 20 64 61 74 | is.called.for.every.chunk.of.dat |
| 58a0 | 61 20 72 65 63 65 69 76 65 64 20 61 66 74 65 72 20 74 68 65 20 68 65 61 64 65 72 20 68 61 73 20 | a.received.after.the.header.has. |
| 58c0 | 61 72 72 69 76 65 64 2e 0a 54 68 69 73 20 61 6c 6c 6f 77 73 20 73 74 72 65 61 6d 69 6e 67 20 64 | arrived..This.allows.streaming.d |
| 58e0 | 61 74 61 20 74 6f 20 73 6f 6d 65 77 68 65 72 65 20 65 6c 73 65 3b 20 68 65 6e 63 65 20 60 73 74 | ata.to.somewhere.else;.hence.`st |
| 5900 | 72 65 61 6d 27 0a 6d 6f 64 65 2e 20 20 49 6e 20 74 68 69 73 20 6d 6f 64 65 20 43 41 4c 4c 42 41 | ream'.mode...In.this.mode.CALLBA |
| 5920 | 43 4b 27 73 20 60 64 61 74 61 27 20 61 72 67 75 6d 65 6e 74 20 69 73 20 61 20 73 69 6e 67 6c 65 | CK's.`data'.argument.is.a.single |
| 5940 | 20 63 68 75 6e 6b 0a 6f 66 20 74 68 65 20 73 74 72 65 61 6d 20 6f 72 20 60 3a 64 6f 6e 65 27 20 | .chunk.of.the.stream.or.`:done'. |
| 5960 | 77 68 65 6e 20 74 68 65 20 73 74 72 65 61 6d 20 65 6e 64 73 2e 0a 0a 54 68 65 20 64 65 66 61 75 | when.the.stream.ends...The.defau |
| 5980 | 6c 74 20 4d 4f 44 45 20 69 73 20 60 62 61 74 63 68 27 20 77 68 69 63 68 20 63 6f 6c 6c 65 63 74 | lt.MODE.is.`batch'.which.collect |
| 59a0 | 73 20 61 6c 6c 20 74 68 65 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 0a 72 65 73 70 6f 6e 73 65 | s.all.the.data.from.the.response |
| 59c0 | 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 43 41 4c 4c 42 41 43 4b 20 77 69 74 68 20 61 6c | .before.calling.CALLBACK.with.al |
| 59e0 | 6c 20 74 68 65 20 64 61 74 61 20 61 73 20 61 20 73 74 72 69 6e 67 2e 22 0a 20 20 28 77 68 65 6e | l.the.data.as.a.string."...(when |
| 5a00 | 20 6c 6f 67 67 69 6e 67 20 28 77 65 62 2f 6c 6f 67 20 75 72 6c 29 29 0a 20 20 28 6c 65 74 2a 20 | .logging.(web/log.url))...(let*. |
| 5a20 | 28 28 6d 6f 64 65 20 28 6f 72 20 6d 6f 64 65 20 27 62 61 74 63 68 29 29 0a 20 20 20 20 20 20 20 | ((mode.(or.mode.'batch))........ |
| 5a40 | 20 20 28 70 61 72 73 65 64 2d 75 72 6c 20 28 75 72 6c 2d 67 65 6e 65 72 69 63 2d 70 61 72 73 65 | ..(parsed-url.(url-generic-parse |
| 5a60 | 2d 75 72 6c 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 20 75 | -url.......................(if.u |
| 5a80 | 72 6c 20 75 72 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 | rl.url.......................... |
| 5aa0 | 20 28 66 6f 72 6d 61 74 20 22 25 73 3a 2f 2f 25 73 3a 25 64 25 73 22 0a 20 20 20 20 20 20 20 20 | .(format."%s://%s:%d%s"......... |
| 5ac0 | 20 20 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 73 65 | ..........................(if.se |
| 5ae0 | 63 75 72 65 20 22 68 74 74 70 73 22 20 22 68 74 74 70 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 | cure."https"."http")............ |
| 5b00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 6f 73 74 20 70 6f 72 74 | .......................host.port |
| 5b20 | 20 70 61 74 68 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 68 6f 73 74 20 28 70 72 6f 67 6e 0a | .path))))..........(host.(progn. |
| 5b40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 73 65 72 74 0a 20 20 20 20 20 20 20 | .................(assert........ |
| 5b60 | 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 65 71 75 61 6c 20 28 75 72 6c 2d 74 79 70 65 20 | ...........(or.(equal.(url-type. |
| 5b80 | 70 61 72 73 65 64 2d 75 72 6c 29 20 22 68 74 74 70 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | parsed-url)."http")............. |
| 5ba0 | 20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 75 72 6c 2d 74 79 70 65 20 70 61 72 73 65 | ..........(equal.(url-type.parse |
| 5bc0 | 64 2d 75 72 6c 29 20 22 68 74 74 70 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | d-url)."https"))................ |
| 5be0 | 20 20 20 74 20 22 54 68 65 20 75 72 6c 20 73 63 68 65 6d 65 20 6d 75 73 74 20 62 65 20 68 74 74 | ...t."The.url.scheme.must.be.htt |
| 5c00 | 70 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 72 6c 2d 68 6f 73 74 20 70 | p")..................(url-host.p |
| 5c20 | 61 72 73 65 64 2d 75 72 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 6f 72 74 20 28 75 72 6c | arsed-url)))..........(port.(url |
| 5c40 | 2d 70 6f 72 74 20 70 61 72 73 65 64 2d 75 72 6c 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 61 74 | -port.parsed-url))..........(pat |
| 5c60 | 68 20 28 6c 65 74 20 28 28 70 74 68 20 28 75 72 6c 2d 66 69 6c 65 6e 61 6d 65 20 70 61 72 73 65 | h.(let.((pth.(url-filename.parse |
| 5c80 | 64 2d 75 72 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 | d-url)))..................(if.(e |
| 5ca0 | 71 75 61 6c 20 70 74 68 20 22 22 29 20 22 2f 22 20 70 74 68 29 29 29 0a 20 20 20 20 20 20 20 20 | qual.pth."")."/".pth)))......... |
| 5cc0 | 20 28 64 65 73 74 20 28 66 6f 72 6d 61 74 20 22 25 73 3a 25 73 25 73 22 20 68 6f 73 74 20 70 6f | .(dest.(format."%s:%s%s".host.po |
| 5ce0 | 72 74 20 70 61 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 62 75 66 20 28 67 65 6e 65 72 61 74 | rt.path))..........(buf.(generat |
| 5d00 | 65 2d 6e 65 77 2d 62 75 66 66 65 72 20 64 65 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f | e-new-buffer.dest))..........(co |
| 5d20 | 6e 20 28 6f 70 65 6e 2d 6e 65 74 77 6f 72 6b 2d 73 74 72 65 61 6d 0a 20 20 20 20 20 20 20 20 20 | n.(open-network-stream.......... |
| 5d40 | 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 77 65 62 2d 68 74 74 70 2d 70 6f 73 74 2d 25 73 22 | ......(format."web-http-post-%s" |
| 5d60 | 20 64 65 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 66 20 68 6f 73 74 20 70 | .dest)................buf.host.p |
| 5d80 | 6f 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 74 79 70 65 20 28 63 6f 6e 64 0a 20 | ort................:type.(cond.. |
| 5da0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 75 61 6c 20 28 75 72 | .....................((equal.(ur |
| 5dc0 | 6c 2d 74 79 70 65 20 70 61 72 73 65 64 2d 75 72 6c 29 20 22 68 74 74 70 22 29 20 27 70 6c 61 69 | l-type.parsed-url)."http").'plai |
| 5de0 | 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 28 28 65 71 75 61 6c | n).......................((equal |
| 5e00 | 20 28 75 72 6c 2d 74 79 70 65 20 70 61 72 73 65 64 2d 75 72 6c 29 20 22 68 74 74 70 73 22 29 20 | .(url-type.parsed-url)."https"). |
| 5e20 | 27 74 6c 73 29 29 29 29 29 0a 20 20 20 20 3b 3b 20 57 65 20 6d 75 73 74 20 75 73 65 20 74 68 69 | 'tls))))).....;;.We.must.use.thi |
| 5e40 | 73 20 63 6f 64 69 6e 67 20 73 79 73 74 65 6d 20 6f 72 20 74 68 65 20 77 65 62 20 64 69 65 73 0a | s.coding.system.or.the.web.dies. |
| 5e60 | 20 20 20 20 28 73 65 74 2d 70 72 6f 63 65 73 73 2d 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d 20 63 | ....(set-process-coding-system.c |
| 5e80 | 6f 6e 20 27 72 61 77 2d 74 65 78 74 2d 75 6e 69 78 20 27 72 61 77 2d 74 65 78 74 2d 75 6e 69 78 | on.'raw-text-unix.'raw-text-unix |
| 5ea0 | 29 0a 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 63 6f 6e 20 | ).....(set-process-sentinel.con. |
| 5ec0 | 28 6c 61 6d 62 64 61 20 28 63 6f 6e 20 65 76 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (lambda.(con.evt)............... |
| 5ee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 | ..................(web/http-post |
| 5f00 | 2d 73 65 6e 74 69 6e 65 6c 2d 77 69 74 68 2d 6c 6f 67 67 69 6e 67 0a 20 20 20 20 20 20 20 20 20 | -sentinel-with-logging.......... |
| 5f20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 20 65 76 74 20 | ........................con.evt. |
| 5f40 | 6c 6f 67 67 69 6e 67 29 29 29 0a 20 20 20 20 28 73 65 74 2d 70 72 6f 63 65 73 73 2d 66 69 6c 74 | logging))).....(set-process-filt |
| 5f60 | 65 72 0a 20 20 20 20 20 63 6f 6e 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 20 64 61 | er......con......(lambda.(con.da |
| 5f80 | 74 61 29 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 6f 64 65 20 6d 6f 64 65 29 0a 20 20 20 | ta)........(let.((mode.mode).... |
| 5fa0 | 20 20 20 20 20 20 20 20 20 20 28 63 62 20 63 61 6c 6c 62 61 63 6b 29 29 0a 20 20 20 20 20 20 20 | ..........(cb.callback))........ |
| 5fc0 | 20 20 28 77 65 62 2f 68 74 74 70 2d 70 6f 73 74 2d 66 69 6c 74 65 72 20 63 6f 6e 20 64 61 74 61 | ..(web/http-post-filter.con.data |
| 5fe0 | 20 63 62 20 6d 6f 64 65 29 29 29 29 0a 20 20 20 20 3b 3b 20 53 65 6e 64 20 74 68 65 20 72 65 71 | .cb.mode)))).....;;.Send.the.req |
| 6000 | 75 65 73 74 0a 20 20 20 20 28 6c 65 74 2a 0a 20 20 20 20 20 20 20 20 28 28 73 79 6d 2d 6d 74 20 | uest.....(let*.........((sym-mt. |
| 6020 | 28 69 66 20 28 73 79 6d 62 6f 6c 70 20 6d 69 6d 65 2d 74 79 70 65 29 20 6d 69 6d 65 2d 74 79 70 | (if.(symbolp.mime-type).mime-typ |
| 6040 | 65 20 28 69 6e 74 65 72 6e 20 6d 69 6d 65 2d 74 79 70 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 | e.(intern.mime-type))).......... |
| 6060 | 28 74 6f 2d 73 65 6e 64 20 28 63 61 73 65 20 73 79 6d 2d 6d 74 0a 20 20 20 20 20 20 20 20 20 20 | (to-send.(case.sym-mt........... |
| 6080 | 20 20 20 20 20 20 20 20 20 20 28 27 6d 75 6c 74 69 70 61 72 74 2f 66 6f 72 6d 2d 64 61 74 61 0a | ..........('multipart/form-data. |
| 60a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2d 74 6f 2d 6d 75 6c | .....................(web-to-mul |
| 60c0 | 74 69 70 61 72 74 20 64 61 74 61 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tipart.data))................... |
| 60e0 | 20 20 28 27 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 2d 77 77 77 2d 66 6f 72 6d 2d 75 72 6c 65 6e | ..('application/x-www-form-urlen |
| 6100 | 63 6f 64 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 65 62 2d | coded......................(web- |
| 6120 | 74 6f 2d 71 75 65 72 79 2d 73 74 72 69 6e 67 20 64 61 74 61 29 29 0a 20 20 20 20 20 20 20 20 20 | to-query-string.data)).......... |
| 6140 | 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 42 79 20 64 65 66 61 75 6c 74 20 6a 75 73 74 20 68 61 | ...........;;.By.default.just.ha |
| 6160 | 76 65 20 74 68 65 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ve.the.data..................... |
| 6180 | 28 74 20 64 61 74 61 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 68 65 61 64 65 72 73 20 28 6f 72 | (t.data)))..........(headers.(or |
| 61a0 | 20 28 77 65 62 2f 68 65 61 64 65 72 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .(web/header-string............. |
| 61c0 | 20 20 20 20 20 20 20 20 20 20 20 6d 65 74 68 6f 64 20 65 78 74 72 61 2d 68 65 61 64 65 72 73 20 | ...........method.extra-headers. |
| 61e0 | 6d 69 6d 65 2d 74 79 70 65 20 74 6f 2d 73 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | mime-type.to-send).............. |
| 6200 | 20 20 20 20 20 20 20 20 20 22 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 75 62 6d 69 73 73 69 | .........""))..........(submissi |
| 6220 | 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 | on...........(format............ |
| 6240 | 22 25 73 20 25 73 20 48 54 54 50 2f 31 2e 31 5c 72 5c 6e 48 6f 73 74 3a 20 25 73 5c 72 5c 6e 25 | "%s.%s.HTTP/1.1\r\nHost:.%s\r\n% |
| 6260 | 73 5c 72 5c 6e 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 6d 65 74 68 6f 64 20 70 61 74 68 20 | s\r\n%s"............method.path. |
| 6280 | 68 6f 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 | host............headers......... |
| 62a0 | 20 20 20 28 69 66 20 74 6f 2d 73 65 6e 64 20 74 6f 2d 73 65 6e 64 20 22 22 29 29 29 29 0a 20 20 | ...(if.to-send.to-send.""))))... |
| 62c0 | 20 20 20 20 3b 3b 20 53 65 74 20 73 6f 6d 65 20 64 61 74 61 20 6f 6e 20 74 68 65 20 63 6f 6e 6e | ....;;.Set.some.data.on.the.conn |
| 62e0 | 65 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 73 6f 20 75 73 65 72 73 20 77 69 6c 6c 20 62 65 20 | ection.process.so.users.will.be. |
| 6300 | 61 62 6c 65 20 74 6f 20 66 69 6e 64 20 64 61 74 61 0a 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 | able.to.find.data.......(process |
| 6320 | 2d 70 75 74 20 63 6f 6e 20 3a 77 65 62 2d 75 72 6c 20 28 66 6f 72 6d 61 74 20 22 68 74 74 70 3a | -put.con.:web-url.(format."http: |
| 6340 | 2f 2f 25 73 22 20 64 65 73 74 29 29 0a 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 70 75 74 20 | //%s".dest)).......(process-put. |
| 6360 | 63 6f 6e 20 3a 77 65 62 2d 68 65 61 64 65 72 73 20 68 65 61 64 65 72 73 29 0a 20 20 20 20 20 20 | con.:web-headers.headers)....... |
| 6380 | 28 70 72 6f 63 65 73 73 2d 70 75 74 20 63 6f 6e 20 3a 77 65 62 2d 73 65 6e 74 20 74 6f 2d 73 65 | (process-put.con.:web-sent.to-se |
| 63a0 | 6e 64 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 6c 6f 67 67 69 6e 67 20 28 77 65 62 2f 6c 6f 67 | nd).......(when.logging.(web/log |
| 63c0 | 20 73 75 62 6d 69 73 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 73 65 6e | .submission)).......(process-sen |
| 63e0 | 64 2d 73 74 72 69 6e 67 20 63 6f 6e 20 73 75 62 6d 69 73 73 69 6f 6e 29 29 0a 20 20 20 20 63 6f | d-string.con.submission)).....co |
| 6400 | 6e 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 63 6c 2d 64 65 66 75 6e 20 77 65 | n))..;;;###autoload.(cl-defun.we |
| 6420 | 62 2d 68 74 74 70 2d 67 65 74 20 28 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 | b-http-get.(callback............ |
| 6440 | 20 20 20 20 20 20 20 20 20 20 20 26 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...........&key................. |
| 6460 | 20 20 20 20 20 20 75 72 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......url....................... |
| 6480 | 28 68 6f 73 74 20 22 6c 6f 63 61 6c 68 6f 73 74 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | (host."localhost").............. |
| 64a0 | 20 20 20 20 20 20 20 20 20 28 70 6f 72 74 20 38 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | .........(port.80).............. |
| 64c0 | 20 20 20 20 20 20 20 20 20 28 70 61 74 68 20 22 2f 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .........(path."/")............. |
| 64e0 | 20 20 20 20 20 20 20 20 20 20 65 78 74 72 61 2d 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 | ..........extra-headers......... |
| 6500 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 6f 64 65 20 27 62 61 74 63 68 29 0a 20 20 20 20 | ..............(mode.'batch)..... |
| 6520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 67 67 69 6e 67 20 74 29 29 0a 20 | ..................(logging.t)).. |
| 6540 | 20 22 4d 61 6b 65 20 61 20 47 45 54 20 63 61 6c 6c 69 6e 67 20 43 41 4c 4c 42 41 43 4b 20 77 69 | ."Make.a.GET.calling.CALLBACK.wi |
| 6560 | 74 68 20 74 68 65 20 72 65 73 75 6c 74 2e 0a 0a 46 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 | th.the.result...For.information. |
| 6580 | 6f 6e 20 55 52 4c 20 6f 72 20 50 41 54 48 2c 20 48 4f 53 54 2c 20 50 4f 52 54 20 61 6e 64 20 61 | on.URL.or.PATH,.HOST,.PORT.and.a |
| 65a0 | 6c 73 6f 20 45 58 54 52 41 2d 48 45 41 44 45 52 53 0a 61 6e 64 20 4d 4f 44 45 20 73 65 65 20 60 | lso.EXTRA-HEADERS.and.MODE.see.` |
| 65c0 | 77 65 62 2d 68 74 74 70 2d 63 61 6c 6c 27 2e 0a 0a 54 68 65 20 63 61 6c 6c 62 61 63 6b 20 70 72 | web-http-call'...The.callback.pr |
| 65e0 | 6f 62 61 62 6c 79 20 77 6f 6e 27 74 20 77 6f 72 6b 20 75 6e 6c 65 73 73 20 79 6f 75 20 73 65 74 | obably.won't.work.unless.you.set |
| 6600 | 20 60 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 27 0a 74 6f 20 60 74 27 2e 22 0a 20 20 28 77 | .`lexical-binding'.to.`t'."...(w |
| 6620 | 65 62 2d 68 74 74 70 2d 63 61 6c 6c 0a 20 20 20 22 47 45 54 22 0a 20 20 20 63 61 6c 6c 62 61 63 | eb-http-call...."GET"....callbac |
| 6640 | 6b 0a 20 20 20 3a 75 72 6c 20 75 72 6c 0a 20 20 20 3a 68 6f 73 74 20 68 6f 73 74 0a 20 20 20 3a | k....:url.url....:host.host....: |
| 6660 | 70 6f 72 74 20 70 6f 72 74 0a 20 20 20 3a 70 61 74 68 20 70 61 74 68 0a 20 20 20 3a 65 78 74 72 | port.port....:path.path....:extr |
| 6680 | 61 2d 68 65 61 64 65 72 73 20 65 78 74 72 61 2d 68 65 61 64 65 72 73 0a 20 20 20 3a 6d 6f 64 65 | a-headers.extra-headers....:mode |
| 66a0 | 20 6d 6f 64 65 0a 20 20 20 3a 6c 6f 67 67 69 6e 67 20 6c 6f 67 67 69 6e 67 29 29 0a 0a 3b 3b 3b | .mode....:logging.logging))..;;; |
| 66c0 | 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 63 6c 2d 64 65 66 75 6e 20 77 65 62 2d 68 74 74 70 2d 70 | ###autoload.(cl-defun.web-http-p |
| 66e0 | 6f 73 74 20 28 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ost.(callback................... |
| 6700 | 20 20 20 20 20 26 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....&key....................... |
| 6720 | 20 75 72 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 28 68 6f 73 | .url........................(hos |
| 6740 | 74 20 22 6c 6f 63 61 6c 68 6f 73 74 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t."localhost").................. |
| 6760 | 20 20 20 20 20 20 28 70 6f 72 74 20 38 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......(port.80)................. |
| 6780 | 20 20 20 20 20 20 20 28 70 61 74 68 20 22 2f 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......(path."/")............... |
| 67a0 | 20 20 20 20 20 20 20 20 20 65 78 74 72 61 2d 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 20 | .........extra-headers.......... |
| 67c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............data.............. |
| 67e0 | 20 20 20 20 20 20 20 20 20 20 28 6d 69 6d 65 2d 74 79 70 65 20 77 65 62 2f 72 65 71 75 65 73 74 | ..........(mime-type.web/request |
| 6800 | 2d 6d 69 6d 65 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -mimetype)...................... |
| 6820 | 20 20 28 6d 6f 64 65 20 27 62 61 74 63 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..(mode.'batch)................. |
| 6840 | 20 20 20 20 20 20 20 28 6c 6f 67 67 69 6e 67 20 74 29 29 0a 20 20 22 4d 61 6b 65 20 61 20 50 4f | .......(logging.t))..."Make.a.PO |
| 6860 | 53 54 20 61 6e 64 20 63 61 6c 6c 20 43 41 4c 4c 42 41 43 4b 20 77 69 74 68 20 74 68 65 20 72 65 | ST.and.call.CALLBACK.with.the.re |
| 6880 | 73 75 6c 74 2e 0a 0a 46 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 55 52 4c 20 6f 72 | sult...For.information.on.URL.or |
| 68a0 | 20 50 41 54 48 2c 20 48 4f 53 54 2c 20 50 4f 52 54 20 61 6e 64 20 61 6c 73 6f 20 4d 4f 44 45 20 | .PATH,.HOST,.PORT.and.also.MODE. |
| 68c0 | 73 65 65 0a 60 77 65 62 2d 68 74 74 70 2d 63 61 6c 6c 27 2e 0a 0a 54 68 65 20 63 61 6c 6c 62 61 | see.`web-http-call'...The.callba |
| 68e0 | 63 6b 20 70 72 6f 62 61 62 6c 79 20 77 6f 6e 27 74 20 77 6f 72 6b 20 75 6e 6c 65 73 73 20 79 6f | ck.probably.won't.work.unless.yo |
| 6900 | 75 20 73 65 74 20 60 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 27 0a 74 6f 20 60 74 27 2e 22 | u.set.`lexical-binding'.to.`t'." |
| 6920 | 0a 20 20 28 77 65 62 2d 68 74 74 70 2d 63 61 6c 6c 0a 20 20 20 22 50 4f 53 54 22 0a 20 20 20 63 | ...(web-http-call...."POST"....c |
| 6940 | 61 6c 6c 62 61 63 6b 0a 20 20 20 3a 75 72 6c 20 75 72 6c 0a 20 20 20 3a 68 6f 73 74 20 68 6f 73 | allback....:url.url....:host.hos |
| 6960 | 74 0a 20 20 20 3a 70 6f 72 74 20 70 6f 72 74 0a 20 20 20 3a 70 61 74 68 20 70 61 74 68 0a 20 20 | t....:port.port....:path.path... |
| 6980 | 20 3a 65 78 74 72 61 2d 68 65 61 64 65 72 73 20 65 78 74 72 61 2d 68 65 61 64 65 72 73 0a 20 20 | .:extra-headers.extra-headers... |
| 69a0 | 20 3a 64 61 74 61 20 64 61 74 61 0a 20 20 20 3a 6d 69 6d 65 2d 74 79 70 65 20 6d 69 6d 65 2d 74 | .:data.data....:mime-type.mime-t |
| 69c0 | 79 70 65 0a 20 20 20 3a 6c 6f 67 67 69 6e 67 20 6c 6f 67 67 69 6e 67 0a 20 20 20 3a 6d 6f 64 65 | ype....:logging.logging....:mode |
| 69e0 | 20 6d 6f 64 65 29 29 0a 0a 28 64 65 66 76 61 72 20 77 65 62 2d 6a 73 6f 6e 2d 65 78 70 65 63 74 | .mode))..(defvar.web-json-expect |
| 6a00 | 65 64 2d 6d 69 6d 65 74 79 70 65 73 2d 6c 69 73 74 0a 20 20 27 28 22 61 70 70 6c 69 63 61 74 69 | ed-mimetypes-list...'("applicati |
| 6a20 | 6f 6e 2f 6a 73 6f 6e 22 0a 20 20 20 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 2d 6a 61 76 61 | on/json"....."application/x-java |
| 6a40 | 73 63 72 69 70 74 22 0a 20 20 20 20 22 74 65 78 74 2f 6a 61 76 61 73 63 72 69 70 74 22 0a 20 20 | script"....."text/javascript"... |
| 6a60 | 20 20 22 74 65 78 74 2f 78 2d 6a 61 76 61 73 63 72 69 70 74 22 0a 20 20 20 20 22 74 65 78 74 2f | .."text/x-javascript"....."text/ |
| 6a80 | 78 2d 6a 73 6f 6e 22 29 0a 20 20 22 4c 69 73 74 20 6f 66 20 6d 69 6d 65 74 79 70 65 73 20 74 68 | x-json")..."List.of.mimetypes.th |
| 6aa0 | 61 74 20 77 65 20 75 73 65 20 74 6f 20 61 63 63 65 70 74 20 4a 53 4f 4e 2e 22 29 0a 0a 28 64 65 | at.we.use.to.accept.JSON.")..(de |
| 6ac0 | 66 75 6e 20 77 65 62 2d 6a 73 6f 6e 2d 64 65 66 61 75 6c 74 2d 65 78 70 65 63 74 61 74 69 6f 6e | fun.web-json-default-expectation |
| 6ae0 | 2d 66 61 69 6c 75 72 65 20 28 64 61 74 61 20 68 74 74 70 2d 63 6f 6e 20 68 65 61 64 65 72 73 29 | -failure.(data.http-con.headers) |
| 6b00 | 0a 20 20 22 44 65 66 61 75 6c 74 20 65 78 70 65 63 74 61 74 69 6f 6e 20 63 61 6c 6c 62 61 63 6b | ..."Default.expectation.callback |
| 6b20 | 20 66 6f 72 20 4a 53 4f 4e 20 65 78 70 65 63 74 61 74 69 6f 6e 20 65 72 72 6f 72 73 2e 22 0a 20 | .for.JSON.expectation.errors.".. |
| 6b40 | 20 28 65 72 72 6f 72 20 22 77 65 62 2d 6a 73 6f 6e 20 66 61 69 6c 65 64 20 74 6f 20 72 65 61 64 | .(error."web-json.failed.to.read |
| 6b60 | 20 25 53 20 61 73 20 6a 73 6f 6e 20 77 69 74 68 20 25 73 20 61 6e 64 20 25 73 22 0a 20 20 20 20 | .%S.as.json.with.%s.and.%s"..... |
| 6b80 | 20 20 20 20 20 64 61 74 61 20 68 74 74 70 2d 63 6f 6e 20 68 65 61 64 65 72 73 29 29 0a 0a 28 63 | .....data.http-con.headers))..(c |
| 6ba0 | 6c 2d 64 65 66 75 6e 20 77 65 62 2f 6a 73 6f 6e 2d 70 61 72 73 65 20 28 6a 73 6f 6e 2d 63 61 6e | l-defun.web/json-parse.(json-can |
| 6bc0 | 64 69 64 61 74 65 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | didate-data..................... |
| 6be0 | 20 20 20 20 20 20 26 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......&key...................... |
| 6c00 | 20 20 20 20 20 28 6a 73 6f 6e 2d 61 72 72 61 79 2d 74 79 70 65 20 6a 73 6f 6e 2d 61 72 72 61 79 | .....(json-array-type.json-array |
| 6c20 | 2d 74 79 70 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 | -type).......................... |
| 6c40 | 20 28 6a 73 6f 6e 2d 6f 62 6a 65 63 74 2d 74 79 70 65 20 6a 73 6f 6e 2d 6f 62 6a 65 63 74 2d 74 | .(json-object-type.json-object-t |
| 6c60 | 79 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | ype)...........................( |
| 6c80 | 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 65 20 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 65 29 29 0a 20 20 | json-key-type.json-key-type))... |
| 6ca0 | 22 50 61 72 73 65 20 44 41 54 41 20 61 73 20 4a 53 4f 4e 20 61 6e 64 20 72 65 74 75 72 6e 20 74 | "Parse.DATA.as.JSON.and.return.t |
| 6cc0 | 68 65 20 72 65 73 75 6c 74 2e 22 0a 20 20 28 6a 73 6f 6e 2d 72 65 61 64 2d 66 72 6f 6d 2d 73 74 | he.result."...(json-read-from-st |
| 6ce0 | 72 69 6e 67 20 6a 73 6f 6e 2d 63 61 6e 64 69 64 61 74 65 2d 64 61 74 61 29 29 0a 0a 3b 3b 3b 23 | ring.json-candidate-data))..;;;# |
| 6d00 | 23 23 61 75 74 6f 6c 6f 61 64 0a 28 63 6c 2d 64 65 66 75 6e 20 77 65 62 2d 6a 73 6f 6e 2d 70 6f | ##autoload.(cl-defun.web-json-po |
| 6d20 | 73 74 20 28 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | st.(callback.................... |
| 6d40 | 20 20 20 20 20 20 26 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......&key...................... |
| 6d60 | 20 20 20 20 75 72 6c 20 64 61 74 61 20 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 | ....url.data.headers............ |
| 6d80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 69 6d 65 2d 74 79 70 65 20 77 65 62 2f 72 65 71 | ..............(mime-type.web/req |
| 6da0 | 75 65 73 74 2d 6d 69 6d 65 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | uest-mimetype).................. |
| 6dc0 | 20 20 20 20 20 20 20 20 28 6c 6f 67 67 69 6e 67 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ........(logging.t)............. |
| 6de0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6a 73 6f 6e 2d 61 72 72 61 79 2d 74 79 70 65 20 6a 73 | .............(json-array-type.js |
| 6e00 | 6f 6e 2d 61 72 72 61 79 2d 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | on-array-type).................. |
| 6e20 | 20 20 20 20 20 20 20 20 28 6a 73 6f 6e 2d 6f 62 6a 65 63 74 2d 74 79 70 65 20 6a 73 6f 6e 2d 6f | ........(json-object-type.json-o |
| 6e40 | 62 6a 65 63 74 2d 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | bject-type)..................... |
| 6e60 | 20 20 20 20 20 28 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 65 20 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 | .....(json-key-type.json-key-typ |
| 6e80 | 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 65 78 70 | e)..........................(exp |
| 6ea0 | 65 63 74 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 2d 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 | ectation-failure-callback....... |
| 6ec0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 77 65 62 2d 6a 73 6f 6e 2d 64 65 | ....................'web-json-de |
| 6ee0 | 66 61 75 6c 74 2d 65 78 70 65 63 74 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 29 29 0a 20 20 22 50 | fault-expectation-failure))..."P |
| 6f00 | 4f 53 54 20 44 41 54 41 20 74 6f 20 55 52 4c 20 65 78 70 65 63 74 69 6e 67 20 61 20 4a 53 4f 4e | OST.DATA.to.URL.expecting.a.JSON |
| 6f20 | 20 72 65 73 70 6f 6e 73 65 20 73 65 6e 74 20 74 6f 20 43 41 4c 4c 42 41 43 4b 2e 0a 0a 53 65 65 | .response.sent.to.CALLBACK...See |
| 6f40 | 20 60 77 65 62 2d 6a 73 6f 6e 2d 65 78 70 65 63 74 65 64 2d 6d 69 6d 65 74 79 70 65 73 2d 6c 69 | .`web-json-expected-mimetypes-li |
| 6f60 | 73 74 27 20 66 6f 72 20 74 68 65 20 6c 69 73 74 20 6f 66 20 4d 69 6d 65 20 54 79 70 65 73 0a 77 | st'.for.the.list.of.Mime.Types.w |
| 6f80 | 65 20 61 63 63 65 70 74 20 4a 53 4f 4e 20 66 6f 72 2e 20 20 54 68 69 73 20 6d 61 79 20 62 65 20 | e.accept.JSON.for...This.may.be. |
| 6fa0 | 6c 65 74 20 62 6f 75 6e 64 2e 20 20 49 66 20 74 68 65 20 65 78 70 65 63 74 61 74 69 6f 6e 0a 69 | let.bound...If.the.expectation.i |
| 6fc0 | 73 20 6e 6f 74 20 6d 65 74 20 74 68 65 6e 20 45 58 50 45 43 54 41 54 49 4f 4e 2d 46 41 49 4c 55 | s.not.met.then.EXPECTATION-FAILU |
| 6fe0 | 52 45 2d 43 41 4c 4c 42 41 43 4b 20 69 73 20 63 61 6c 6c 65 64 20 62 65 69 6e 67 0a 70 61 73 73 | RE-CALLBACK.is.called.being.pass |
| 7000 | 65 64 20 74 68 65 20 43 41 4c 4c 42 41 43 4b 20 70 61 72 61 6d 65 74 65 72 73 2e 20 20 42 79 20 | ed.the.CALLBACK.parameters...By. |
| 7020 | 64 65 66 61 75 6c 74 0a 45 58 50 45 43 54 41 54 49 4f 4e 2d 46 41 49 4c 55 52 45 2d 43 41 4c 4c | default.EXPECTATION-FAILURE-CALL |
| 7040 | 42 41 43 4b 20 69 73 0a 60 77 65 62 2d 6a 73 6f 6e 2d 64 65 66 61 75 6c 74 2d 65 78 70 65 63 74 | BACK.is.`web-json-default-expect |
| 7060 | 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 27 2e 0a 0a 54 68 65 20 43 41 4c 4c 42 41 43 4b 20 69 73 | ation-failure'...The.CALLBACK.is |
| 7080 | 20 63 61 6c 6c 65 64 20 61 73 3a 0a 0a 20 20 43 41 4c 4c 42 41 43 4b 20 52 45 53 50 4f 4e 53 45 | .called.as:....CALLBACK.RESPONSE |
| 70a0 | 2d 44 41 54 41 20 48 54 54 50 43 4f 4e 20 52 45 53 50 4f 4e 53 45 2d 48 45 41 44 45 52 0a 0a 73 | -DATA.HTTPCON.RESPONSE-HEADER..s |
| 70c0 | 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 62 65 20 64 65 66 69 6e 65 64 20 6c 69 | o.the.function.may.be.defined.li |
| 70e0 | 6b 65 20 74 68 69 73 3a 0a 0a 20 20 28 6c 61 6d 62 64 61 20 28 64 61 74 61 20 26 72 65 73 74 20 | ke.this:....(lambda.(data.&rest. |
| 7100 | 73 74 75 66 66 29 20 2e 2e 2e 29 0a 0a 48 45 41 44 45 52 53 20 6d 61 79 20 62 65 20 73 70 65 63 | stuff)....)..HEADERS.may.be.spec |
| 7120 | 69 66 69 65 64 2c 20 74 68 65 73 65 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 65 78 74 72 | ified,.these.are.treated.as.extr |
| 7140 | 61 2d 68 65 61 64 65 72 73 20 74 6f 0a 62 65 20 73 65 6e 74 20 77 69 74 68 20 74 68 65 20 72 65 | a-headers.to.be.sent.with.the.re |
| 7160 | 71 75 65 73 74 2e 0a 0a 54 68 65 20 44 41 54 41 20 69 73 20 73 65 6e 74 20 61 73 20 60 61 70 70 | quest...The.DATA.is.sent.as.`app |
| 7180 | 6c 69 63 61 74 69 6f 6e 2f 78 2d 77 77 77 2d 66 6f 72 6d 2d 75 72 6c 65 6e 63 6f 64 65 64 27 20 | lication/x-www-form-urlencoded'. |
| 71a0 | 62 79 0a 64 65 66 61 75 6c 74 2c 20 4d 49 4d 45 2d 54 59 50 45 20 63 61 6e 20 63 68 61 6e 67 65 | by.default,.MIME-TYPE.can.change |
| 71c0 | 20 74 68 61 74 2e 0a 0a 4a 53 4f 4e 2d 41 52 52 41 59 2d 54 59 50 45 2c 20 4a 53 4f 4e 2d 4f 42 | .that...JSON-ARRAY-TYPE,.JSON-OB |
| 71e0 | 4a 45 43 54 2d 54 59 50 45 20 61 6e 64 20 4a 53 4f 4e 2d 4b 45 59 2d 54 59 50 45 2c 20 69 66 20 | JECT-TYPE.and.JSON-KEY-TYPE,.if. |
| 7200 | 70 72 65 73 65 6e 74 2c 0a 61 72 65 20 75 73 65 64 20 74 6f 20 6c 65 74 20 62 69 6e 64 20 74 68 | present,.are.used.to.let.bind.th |
| 7220 | 65 20 60 6a 73 6f 6e 2d 72 65 61 64 27 20 76 61 72 69 61 62 6c 65 73 20 6f 66 20 74 68 65 20 73 | e.`json-read'.variables.of.the.s |
| 7240 | 61 6d 65 20 6e 61 6d 65 0a 61 66 66 65 63 74 69 6e 67 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 | ame.name.affecting.the.resulting |
| 7260 | 20 6c 69 73 70 20 73 74 72 75 63 74 75 72 65 2e 22 0a 20 20 28 6c 65 74 20 28 28 63 6c 6f 73 65 | .lisp.structure."...(let.((close |
| 7280 | 64 2d 6a 73 6f 6e 2d 61 72 72 61 79 2d 74 79 70 65 20 6a 73 6f 6e 2d 61 72 72 61 79 2d 74 79 70 | d-json-array-type.json-array-typ |
| 72a0 | 65 29 0a 20 20 20 20 20 20 20 20 28 63 6c 6f 73 65 64 2d 6a 73 6f 6e 2d 6f 62 6a 65 63 74 2d 74 | e).........(closed-json-object-t |
| 72c0 | 79 70 65 20 6a 73 6f 6e 2d 6f 62 6a 65 63 74 2d 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 28 63 | ype.json-object-type).........(c |
| 72e0 | 6c 6f 73 65 64 2d 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 65 20 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 | losed-json-key-type.json-key-typ |
| 7300 | 65 29 29 0a 20 20 20 20 28 77 65 62 2d 68 74 74 70 2d 70 6f 73 74 0a 20 20 20 20 20 28 6c 61 6d | e)).....(web-http-post......(lam |
| 7320 | 62 64 61 20 28 68 74 74 70 63 6f 6e 20 68 65 61 64 65 72 20 68 74 74 70 2d 64 61 74 61 29 0a 20 | bda.(httpcon.header.http-data).. |
| 7340 | 20 20 20 20 20 20 3b 3b 20 41 64 64 20 61 20 6d 65 6d 62 65 72 20 74 65 73 74 20 66 6f 72 20 74 | ......;;.Add.a.member.test.for.t |
| 7360 | 68 65 20 4d 49 4d 45 54 59 50 45 20 65 78 70 65 63 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 28 | he.MIMETYPE.expectation........( |
| 7380 | 6c 65 74 20 28 28 6c 69 73 70 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 | let.((lisp-data...............(c |
| 73a0 | 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ondition-case.err............... |
| 73c0 | 20 20 20 20 28 77 65 62 2f 6a 73 6f 6e 2d 70 61 72 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ....(web/json-parse............. |
| 73e0 | 20 20 20 20 20 20 20 68 74 74 70 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......http-data................ |
| 7400 | 20 20 20 20 3a 6a 73 6f 6e 2d 61 72 72 61 79 2d 74 79 70 65 20 63 6c 6f 73 65 64 2d 6a 73 6f 6e | ....:json-array-type.closed-json |
| 7420 | 2d 61 72 72 61 79 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a | -array-type....................: |
| 7440 | 6a 73 6f 6e 2d 6f 62 6a 65 63 74 2d 74 79 70 65 20 63 6c 6f 73 65 64 2d 6a 73 6f 6e 2d 6f 62 6a | json-object-type.closed-json-obj |
| 7460 | 65 63 74 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6a 73 6f | ect-type....................:jso |
| 7480 | 6e 2d 6b 65 79 2d 74 79 70 65 20 63 6c 6f 73 65 64 2d 6a 73 6f 6e 2d 6b 65 79 2d 74 79 70 65 29 | n-key-type.closed-json-key-type) |
| 74a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 | .................(error......... |
| 74c0 | 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6c 6f 67 67 69 6e 67 0a 20 20 20 20 20 20 20 20 20 | .........(when.logging.......... |
| 74e0 | 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 77 65 62 2d 6a 73 6f 6e 2d 70 6f 73 | ..........(message."web-json-pos |
| 7500 | 74 20 65 78 70 65 63 74 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 20 25 53 22 20 65 72 72 29 29 0a | t.expectation.failure.%S".err)). |
| 7520 | 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 65 78 70 65 63 74 | .................(funcall.expect |
| 7540 | 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 2d 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 | ation-failure-callback.......... |
| 7560 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 74 74 70 2d 64 61 74 61 20 68 74 74 70 63 | .................http-data.httpc |
| 7580 | 6f 6e 20 68 65 61 64 65 72 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c | on.header)))))..........(funcall |
| 75a0 | 20 63 61 6c 6c 62 61 63 6b 20 6c 69 73 70 2d 64 61 74 61 20 68 74 74 70 63 6f 6e 20 68 65 61 64 | .callback.lisp-data.httpcon.head |
| 75c0 | 65 72 29 29 29 0a 20 20 20 20 20 20 3a 75 72 6c 20 75 72 6c 0a 20 20 20 20 20 20 3a 64 61 74 61 | er))).......:url.url.......:data |
| 75e0 | 20 64 61 74 61 0a 20 20 20 20 20 20 3a 6d 69 6d 65 2d 74 79 70 65 20 6d 69 6d 65 2d 74 79 70 65 | .data.......:mime-type.mime-type |
| 7600 | 0a 20 20 20 20 20 20 3a 65 78 74 72 61 2d 68 65 61 64 65 72 73 20 68 65 61 64 65 72 73 0a 20 20 | .......:extra-headers.headers... |
| 7620 | 20 20 20 20 3a 6c 6f 67 67 69 6e 67 20 6c 6f 67 67 69 6e 67 29 29 29 0a 0a 28 64 65 66 76 61 72 | ....:logging.logging)))..(defvar |
| 7640 | 20 77 65 62 2d 67 65 74 2d 68 69 73 74 6f 72 79 2d 6c 69 73 74 20 6e 69 6c 0a 20 20 22 48 69 73 | .web-get-history-list.nil..."His |
| 7660 | 74 6f 72 79 20 66 6f 72 20 60 77 65 62 2d 67 65 74 27 20 69 6e 74 65 72 61 63 74 69 76 65 20 66 | tory.for.`web-get'.interactive.f |
| 7680 | 6f 72 6d 73 2e 22 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 | orms.")..;;;###autoload.(defun.w |
| 76a0 | 65 62 2d 67 65 74 20 28 75 72 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 62 75 66 66 65 72 29 0a 20 20 | eb-get.(url.&optional.buffer)... |
| 76c0 | 22 47 65 74 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 55 52 4c 20 69 6e 74 6f 20 74 68 65 20 | "Get.the.specified.URL.into.the. |
| 76e0 | 42 55 46 46 45 52 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 28 6c 69 73 74 | BUFFER."...(interactive....(list |
| 7700 | 0a 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 2d 75 72 6c 20 28 62 72 6f 77 73 65 2d 75 72 6c 2d | .....(let.((def-url.(browse-url- |
| 7720 | 75 72 6c 2d 61 74 2d 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20 28 72 65 61 64 2d 66 72 6f 6d | url-at-point))).......(read-from |
| 7740 | 2d 6d 69 6e 69 62 75 66 66 65 72 20 22 55 52 4c 3a 20 22 20 64 65 66 2d 75 72 6c 20 6e 69 6c 20 | -minibuffer."URL:.".def-url.nil. |
| 7760 | 6e 69 6c 20 27 77 65 62 2d 67 65 74 2d 68 69 73 74 6f 72 79 2d 6c 69 73 74 29 29 0a 20 20 20 20 | nil.'web-get-history-list))..... |
| 7780 | 28 77 68 65 6e 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 20 20 20 20 20 | (when.current-prefix-arg........ |
| 77a0 | 20 28 72 65 61 64 2d 62 75 66 66 65 72 20 22 42 75 66 66 65 72 3a 20 22 20 27 28 22 2a 77 65 62 | .(read-buffer."Buffer:.".'("*web |
| 77c0 | 2d 67 65 74 2a 22 29 29 29 29 29 0a 20 20 28 6c 65 74 20 28 28 68 61 6e 64 6c 65 72 0a 20 20 20 | -get*")))))...(let.((handler.... |
| 77e0 | 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 68 74 74 70 63 20 68 65 61 64 65 72 20 64 61 74 61 | ......(lambda.(httpc.header.data |
| 7800 | 29 0a 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 |
| 7820 | 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 62 75 66 66 65 72 70 20 62 75 | r................(if.(bufferp.bu |
| 7840 | 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72 0a | ffer)....................buffer. |
| 7860 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 70 20 | ...................(if.(stringp. |
| 7880 | 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | buffer)........................( |
| 78a0 | 67 65 6e 65 72 61 74 65 2d 6e 65 77 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 29 0a 20 20 20 20 | generate-new-buffer.buffer)..... |
| 78c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77 | ...................(generate-new |
| 78e0 | 2d 62 75 66 66 65 72 20 22 2a 77 65 62 2d 67 65 74 2a 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 | -buffer."*web-get*"))).......... |
| 7900 | 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 | ....(goto-char.(point-max))..... |
| 7920 | 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 64 61 74 61 29 0a 20 20 20 20 20 20 20 20 20 | .........(insert.data).......... |
| 7940 | 20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 | ....(switch-to-buffer.(current-b |
| 7960 | 75 66 66 65 72 29 29 29 29 29 29 0a 20 20 20 20 28 77 65 62 2d 68 74 74 70 2d 67 65 74 20 68 61 | uffer)))))).....(web-http-get.ha |
| 7980 | 6e 64 6c 65 72 20 3a 75 72 6c 20 75 72 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 65 62 2d 68 65 | ndler.:url.url)))..(defun.web-he |
| 79a0 | 61 64 65 72 20 28 68 65 61 64 65 72 20 6e 61 6d 65 20 26 6f 70 74 69 6f 6e 61 6c 20 63 6f 6e 76 | ader.(header.name.&optional.conv |
| 79c0 | 65 72 74 29 0a 20 20 22 4c 6f 6f 6b 20 75 70 20 4e 41 4d 45 20 69 6e 20 48 45 41 44 45 52 2e 22 | ert)..."Look.up.NAME.in.HEADER." |
| 79e0 | 0a 20 20 28 6c 65 74 20 28 28 76 61 6c 20 28 69 66 20 28 68 61 73 68 2d 74 61 62 6c 65 2d 70 20 | ...(let.((val.(if.(hash-table-p. |
| 7a00 | 68 65 61 64 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 | header)..................(let.(( |
| 7a20 | 76 20 28 67 65 74 68 61 73 68 20 28 69 6e 74 65 72 6e 20 6e 61 6d 65 29 20 68 65 61 64 65 72 29 | v.(gethash.(intern.name).header) |
| 7a40 | 29 29 0a 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 76 20 28 63 | ))....................(when.v.(c |
| 7a60 | 6f 6e 73 20 6e 61 6d 65 20 76 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b | ons.name.v)))..................; |
| 7a80 | 3b 20 45 6c 73 65 20 70 72 65 73 75 6d 65 20 69 74 27 73 20 61 6e 20 61 6c 69 73 74 0a 20 20 20 | ;.Else.presume.it's.an.alist.... |
| 7aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 73 6f 63 20 6e 61 6d 65 20 68 65 61 64 65 72 | ..............(assoc.name.header |
| 7ac0 | 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 76 61 6c 0a 20 20 20 20 20 20 28 63 61 73 65 20 63 | )))).....(when.val.......(case.c |
| 7ae0 | 6f 6e 76 65 72 74 0a 20 20 20 20 20 20 20 20 28 3a 6e 75 6d 20 28 73 74 72 69 6e 67 2d 74 6f 2d | onvert.........(:num.(string-to- |
| 7b00 | 6e 75 6d 62 65 72 20 28 63 64 72 20 76 61 6c 29 29 29 0a 20 20 20 20 20 20 20 20 28 74 20 76 61 | number.(cdr.val))).........(t.va |
| 7b20 | 6c 29 29 29 29 29 0a 0a 0a 28 70 72 6f 76 69 64 65 20 27 77 65 62 29 0a 0a 3b 3b 3b 20 77 65 62 | l)))))...(provide.'web)..;;;.web |
| 7b40 | 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .el.ends.here................... |
| 7b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7d00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7d20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7e00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7e20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 80a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 80c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 80e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 81a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 81c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 81e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8260 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 82a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 82c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 82e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8300 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 83a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 83c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 83e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 84a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 84c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 84e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 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 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 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 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8860 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 88a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 88c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 88e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 89a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 89c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 89e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8a00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8a60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8a80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8d00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8d20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8e00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8e20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 90a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 90c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 90e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 91a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 91c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 91e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9260 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 92a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 92c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 92e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9300 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 93a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 93c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 93e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 94a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 94c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 94e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 95a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 95c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 95e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 96a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 96c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 96e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 97a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 97c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 97e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9800 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9860 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 98a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 98c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 98e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 99a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 99c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 99e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9a00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9a60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9a80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9d00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9d20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9e00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9e20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |