| ofs | hex dump | ascii | 
|---|
| 0000 |  64 6a 76 75 2d 31 2e 31 2e 32 2f 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | djvu-1.1.2/..................... | 
| 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 31 32 32 00 20 35 00 00 00  | 0000000.00000000000.011122..5... | 
| 00a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 00c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 00e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0100 |  00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .ustar...root................... | 
| 0120 |  00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .........root................... | 
| 0140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 01a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 01c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 01e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0200 |  64 6a 76 75 2d 31 2e 31 2e 32 2f 64 6a 76 75 2e    65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | djvu-1.1.2/djvu.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 36 30 30 33 33 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 32 34 32 35 00 20 30 00 00 00  | 0600337.00000000000.012425..0... | 
| 02a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 02c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 02e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0300 |  00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .ustar...root................... | 
| 0320 |  00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .........root................... | 
| 0340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0400 |  3b 3b 3b 20 64 6a 76 75 2e 65 6c 20 2d 2d 2d 20    45 64 69 74 20 61 6e 64 20 76 69 65 77 20 44 6a  | ;;;.djvu.el.---.Edit.and.view.Dj | 
| 0420 |  76 75 20 66 69 6c 65 73 20 76 69 61 20 64 6a 76    75 73 65 64 20 2d 2a 2d 20 6c 65 78 69 63 61 6c  | vu.files.via.djvused.-*-.lexical | 
| 0440 |  2d 62 69 6e 64 69 6e 67 3a 20 74 20 2d 2a 2d 0a    0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43  | -binding:.t.-*-..;;.Copyright.(C | 
| 0460 |  29 20 32 30 31 31 2d 32 30 32 32 20 20 46 72 65    65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64  | ).2011-2022..Free.Software.Found | 
| 0480 |  61 74 69 6f 6e 2c 20 49 6e 63 2e 0a 0a 3b 3b 20    41 75 74 68 6f 72 3a 20 52 6f 6c 61 6e 64 20 57  | ation,.Inc...;;.Author:.Roland.W | 
| 04a0 |  69 6e 6b 6c 65 72 20 3c 77 69 6e 6b 6c 65 72 40    67 6e 75 2e 6f 72 67 3e 0a 3b 3b 20 4b 65 79 77  | inkler.<winkler@gnu.org>.;;.Keyw | 
| 04c0 |  6f 72 64 73 3a 20 66 69 6c 65 73 2c 20 77 70 0a    3b 3b 20 56 65 72 73 69 6f 6e 3a 20 31 2e 31 2e  | ords:.files,.wp.;;.Version:.1.1. | 
| 04e0 |  32 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72    61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77  | 2..;;.This.program.is.free.softw | 
| 0500 |  61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64    69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64  | are;.you.can.redistribute.it.and | 
| 0520 |  2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74    20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73  | /or.modify.;;.it.under.the.terms | 
| 0540 |  20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65    72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e  | .of.the.GNU.General.Public.Licen | 
| 0560 |  73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20    62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53  | se.as.published.by.;;.the.Free.S | 
| 0580 |  6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69    6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69  | oftware.Foundation,.either.versi | 
| 05a0 |  6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65    6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79  | on.3.of.the.License,.or.;;.(at.y | 
| 05c0 |  6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20    6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a  | our.option).any.later.version... | 
| 05e0 |  3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20    69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69  | ;;.This.program.is.distributed.i | 
| 0600 |  6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20    69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75  | n.the.hope.that.it.will.be.usefu | 
| 0620 |  6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55    54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20  | l,.;;.but.WITHOUT.ANY.WARRANTY;. | 
| 0640 |  77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65    20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74  | without.even.the.implied.warrant | 
| 0660 |  79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54    41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45  | y.of.;;.MERCHANTABILITY.or.FITNE | 
| 0680 |  53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55    4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65  | SS.FOR.A.PARTICULAR.PURPOSE...Se | 
| 06a0 |  65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e    65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65  | e.the.;;.GNU.General.Public.Lice | 
| 06c0 |  6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74    61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68  | nse.for.more.details...;;.You.sh | 
| 06e0 |  6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76    65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65  | ould.have.received.a.copy.of.the | 
| 0700 |  20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62    6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61  | .GNU.General.Public.License.;;.a | 
| 0720 |  6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70    72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c  | long.with.this.program...If.not, | 
| 0740 |  20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77    2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65  | .see.<http://www.gnu.org/license | 
| 0760 |  73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e    74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 70  | s/>...;;;.Commentary:..;;.This.p | 
| 0780 |  61 63 6b 61 67 65 20 69 73 20 61 20 66 72 6f 6e    74 20 65 6e 64 20 66 6f 72 20 74 68 65 20 63 6f  | ackage.is.a.front.end.for.the.co | 
| 07a0 |  6d 6d 61 6e 64 2d 6c 69 6e 65 20 70 72 6f 67 72    61 6d 20 64 6a 76 75 73 65 64 0a 3b 3b 20 66 72  | mmand-line.program.djvused.;;.fr | 
| 07c0 |  6f 6d 20 44 6a 56 75 4c 69 62 72 65 2c 20 73 65    65 20 68 74 74 70 3a 2f 2f 64 6a 76 75 2e 73 6f  | om.DjVuLibre,.see.http://djvu.so | 
| 07e0 |  75 72 63 65 66 6f 72 67 65 2e 6e 65 74 2f 2e 20    20 49 74 20 61 73 73 75 6d 65 73 20 79 6f 75 0a  | urceforge.net/...It.assumes.you. | 
| 0800 |  3b 3b 20 68 61 76 65 20 74 68 65 20 70 72 6f 67    72 61 6d 73 20 64 6a 76 75 73 65 64 2c 20 64 6a  | ;;.have.the.programs.djvused,.dj | 
| 0820 |  76 69 65 77 2c 20 64 64 6a 76 75 2c 20 61 6e 64    20 64 6a 76 6d 20 69 6e 73 74 61 6c 6c 65 64 2e  | view,.ddjvu,.and.djvm.installed. | 
| 0840 |  0a 3b 3b 20 54 68 65 20 6d 61 69 6e 20 70 75 72    70 6f 73 65 20 6f 66 20 64 6a 76 75 2e 65 6c 20  | .;;.The.main.purpose.of.djvu.el. | 
| 0860 |  69 73 20 74 6f 20 65 64 69 74 20 44 6a 76 75 20    64 6f 63 75 6d 65 6e 74 73 20 76 69 61 20 64 6a  | is.to.edit.Djvu.documents.via.dj | 
| 0880 |  76 75 73 65 64 2e 0a 3b 3b 20 49 66 20 79 6f 75    20 6f 6e 6c 79 20 73 65 65 6b 20 61 6e 20 45 6d  | vused..;;.If.you.only.seek.an.Em | 
| 08a0 |  61 63 73 20 76 69 65 77 65 72 20 66 6f 72 20 44    6a 76 75 20 64 6f 63 75 6d 65 6e 74 73 2c 20 79  | acs.viewer.for.Djvu.documents,.y | 
| 08c0 |  6f 75 20 6d 61 79 20 62 65 0a 3b 3b 20 62 65 74    74 65 72 20 6f 66 66 20 77 69 74 68 20 44 6f 63  | ou.may.be.;;.better.off.with.Doc | 
| 08e0 |  56 69 65 77 20 73 68 69 70 70 65 64 20 77 69 74    68 20 47 4e 55 20 45 6d 61 63 73 2e 20 20 53 74  | View.shipped.with.GNU.Emacs...St | 
| 0900 |  61 72 74 69 6e 67 20 66 72 6f 6d 0a 3b 3b 20 47    4e 55 20 45 6d 61 63 73 20 32 36 2c 20 44 6f 63  | arting.from.;;.GNU.Emacs.26,.Doc | 
| 0920 |  56 69 65 77 20 73 75 70 70 6f 72 74 73 20 44 6a    76 75 20 64 6f 63 75 6d 65 6e 74 73 2e 0a 3b 3b  | View.supports.Djvu.documents..;; | 
| 0940 |  0a 3b 3b 20 41 20 44 6a 76 75 20 64 6f 63 75 6d    65 6e 74 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20  | .;;.A.Djvu.document.contains.an. | 
| 0960 |  69 6d 61 67 65 20 6c 61 79 65 72 20 28 74 79 70    69 63 61 6c 6c 79 20 73 63 61 6e 6e 65 64 20 70  | image.layer.(typically.scanned.p | 
| 0980 |  61 67 65 20 69 6d 61 67 65 73 29 0a 3b 3b 20 61    73 20 77 65 6c 6c 20 61 73 20 6d 75 6c 74 69 70  | age.images).;;.as.well.as.multip | 
| 09a0 |  6c 65 20 74 65 78 74 75 61 6c 20 6c 61 79 65 72    73 20 5b 74 65 78 74 20 28 66 6f 72 20 73 63 61  | le.textual.layers.[text.(for.sca | 
| 09c0 |  6e 6e 65 64 20 64 6f 63 75 6d 65 6e 74 73 20 66    72 6f 6d 20 4f 43 52 29 2c 0a 3b 3b 20 61 6e 6e  | nned.documents.from.OCR),.;;.ann | 
| 09e0 |  6f 74 61 74 69 6f 6e 73 2c 20 73 68 61 72 65 64    20 61 6e 6e 6f 74 61 74 69 6f 6e 73 2c 20 61 6e  | otations,.shared.annotations,.an | 
| 0a00 |  64 20 62 6f 6f 6b 6d 61 72 6b 73 5d 2e 20 20 54    68 65 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 0a  | d.bookmarks]...The.command-line. | 
| 0a20 |  3b 3b 20 70 72 6f 67 72 61 6d 20 64 6a 76 75 73    65 64 20 61 6c 6c 6f 77 73 20 6f 6e 65 20 74 6f  | ;;.program.djvused.allows.one.to | 
| 0a40 |  20 65 64 69 74 20 74 68 65 73 65 20 74 65 78 74    75 61 6c 20 6c 61 79 65 72 73 20 76 69 61 20 73  | .edit.these.textual.layers.via.s | 
| 0a60 |  75 69 74 61 62 6c 65 0a 3b 3b 20 73 63 72 69 70    74 73 2e 20 20 57 69 74 68 20 44 6a 76 75 20 6d  | uitable.;;.scripts...With.Djvu.m | 
| 0a80 |  6f 64 65 20 79 6f 75 20 63 61 6e 20 65 64 69 74    20 61 6e 64 20 61 70 70 6c 79 20 74 68 65 73 65  | ode.you.can.edit.and.apply.these | 
| 0aa0 |  20 64 6a 76 75 73 65 64 20 73 63 72 69 70 74 73    0a 3b 3b 20 61 73 20 69 66 20 79 6f 75 20 77 65  | .djvused.scripts.;;.as.if.you.we | 
| 0ac0 |  72 65 20 64 69 72 65 63 74 6c 79 20 65 64 69 74    69 6e 67 20 74 68 65 20 74 65 78 74 75 61 6c 20  | re.directly.editing.the.textual. | 
| 0ae0 |  6c 61 79 65 72 73 20 6f 66 20 61 20 44 6a 76 75    20 64 6f 63 75 6d 65 6e 74 0a 3b 3b 20 28 74 68  | layers.of.a.Djvu.document.;;.(th | 
| 0b00 |  6f 75 67 68 20 45 6d 61 63 73 20 6e 65 76 65 72    20 76 69 73 69 74 73 20 74 68 65 20 44 6a 76 75  | ough.Emacs.never.visits.the.Djvu | 
| 0b20 |  20 64 6f 63 75 6d 65 6e 74 20 69 6e 20 74 68 65    20 75 73 75 61 6c 20 45 6d 61 63 73 20 73 65 6e  | .document.in.the.usual.Emacs.sen | 
| 0b40 |  73 65 0a 3b 3b 20 6f 66 20 63 6f 70 79 69 6e 67    20 74 68 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20  | se.;;.of.copying.the.content.of. | 
| 0b60 |  61 20 66 69 6c 65 20 69 6e 74 6f 20 61 20 62 75    66 66 65 72 20 74 6f 20 6d 61 6e 69 70 75 6c 61  | a.file.into.a.buffer.to.manipula | 
| 0b80 |  74 65 20 69 74 29 2e 0a 3b 3b 20 57 69 74 68 20    44 6a 76 75 20 6d 6f 64 65 20 79 6f 75 20 63 61  | te.it)..;;.With.Djvu.mode.you.ca | 
| 0ba0 |  6e 20 61 6c 73 6f 20 76 69 65 77 20 74 68 65 20    70 61 67 65 20 69 6d 61 67 65 73 20 6f 66 20 61  | n.also.view.the.page.images.of.a | 
| 0bc0 |  20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2c 0a    3b 3b 20 79 65 74 20 44 6a 76 75 20 6d 6f 64 65  | .Djvu.document,.;;.yet.Djvu.mode | 
| 0be0 |  20 64 6f 65 73 20 6e 6f 74 20 61 74 74 65 6d 70    74 20 74 6f 20 72 65 69 6e 76 65 6e 74 20 74 68  | .does.not.attempt.to.reinvent.th | 
| 0c00 |  65 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20    6f 66 20 74 68 65 0a 3b 3b 20 6e 61 74 69 76 65  | e.functionality.of.the.;;.native | 
| 0c20 |  20 76 69 65 77 65 72 20 64 6a 76 69 65 77 20 66    6f 72 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74  | .viewer.djview.for.Djvu.document | 
| 0c40 |  73 2e 20 20 28 49 20 66 69 6e 64 20 64 6a 76 69    65 77 20 76 65 72 79 20 65 66 66 69 63 69 65 6e  | s...(I.find.djview.very.efficien | 
| 0c60 |  74 0a 3b 3b 20 2f 20 66 61 73 74 20 66 6f 72 20    69 74 73 20 70 75 72 70 6f 73 65 73 20 74 68 61  | t.;;./.fast.for.its.purposes.tha | 
| 0c80 |  74 20 61 6c 73 6f 20 69 6e 63 6c 75 64 65 20 66    65 61 74 75 72 65 73 20 6c 69 6b 65 20 73 65 61  | t.also.include.features.like.sea | 
| 0ca0 |  72 63 68 69 6e 67 20 74 68 65 0a 3b 3b 20 74 65    78 74 20 6c 61 79 65 72 2e 29 20 20 53 6f 20 44  | rching.the.;;.text.layer.)..So.D | 
| 0cc0 |  6a 76 75 20 6d 6f 64 65 20 73 75 70 70 6f 72 74    73 20 74 68 61 74 20 79 6f 75 20 75 73 65 20 64  | jvu.mode.supports.that.you.use.d | 
| 0ce0 |  6a 76 69 65 77 20 74 6f 20 76 69 65 77 20 74 68    65 0a 3b 3b 20 44 6a 76 75 20 64 6f 63 75 6d 65  | jview.to.view.the.;;.Djvu.docume | 
| 0d00 |  6e 74 20 77 68 69 6c 65 20 65 64 69 74 69 6e 67    20 69 74 73 20 74 65 78 74 75 61 6c 20 6c 61 79  | nt.while.editing.its.textual.lay | 
| 0d20 |  65 72 73 2e 20 20 44 6a 76 69 65 77 20 61 6e 64    20 44 6a 76 75 20 6d 6f 64 65 0a 3b 3b 20 63 6f  | ers...Djview.and.Djvu.mode.;;.co | 
| 0d40 |  6d 70 6c 65 6d 65 6e 74 20 65 61 63 68 20 6f 74    68 65 72 2e 0a 3b 3b 0a 3b 3b 20 41 20 6e 6f 72  | mplement.each.other..;;.;;.A.nor | 
| 0d60 |  6d 61 6c 20 77 6f 72 6b 20 66 6c 6f 77 20 69 73    20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 3b 3b 0a  | mal.work.flow.is.as.follows:.;;. | 
| 0d80 |  3b 3b 20 44 6a 76 75 20 66 69 6c 65 73 20 61 72    65 20 61 73 73 75 6d 65 64 20 74 6f 20 68 61 76  | ;;.Djvu.files.are.assumed.to.hav | 
| 0da0 |  65 20 74 68 65 20 66 69 6c 65 20 65 78 74 65 6e    73 69 6f 6e 20 22 2e 64 6a 76 75 22 2e 0a 3b 3b  | e.the.file.extension.".djvu"..;; | 
| 0dc0 |  20 57 68 65 6e 20 79 6f 75 20 76 69 73 69 74 20    74 68 65 20 66 69 6c 65 20 66 6f 6f 2e 64 6a 76  | .When.you.visit.the.file.foo.djv | 
| 0de0 |  75 2c 20 69 74 20 70 75 74 73 20 79 6f 75 20 69    6e 74 6f 20 74 68 65 20 28 72 65 61 64 2d 6f 6e  | u,.it.puts.you.into.the.(read-on | 
| 0e00 |  6c 79 29 0a 3b 3b 20 62 75 66 66 65 72 20 66 6f    6f 2e 64 6a 76 75 2e 20 20 4e 6f 72 6d 61 6c 6c  | ly).;;.buffer.foo.djvu...Normall | 
| 0e20 |  79 2c 20 74 68 69 73 20 62 75 66 66 65 72 20 28    70 6c 75 73 20 70 6f 73 73 69 62 6c 79 20 74 68  | y,.this.buffer.(plus.possibly.th | 
| 0e40 |  65 20 6f 75 74 6c 69 6e 65 20 62 75 66 66 65 72    29 0a 3b 3b 20 69 73 20 61 6c 6c 20 79 6f 75 20  | e.outline.buffer).;;.is.all.you. | 
| 0e60 |  6e 65 65 64 2e 0a 3b 3b 0a 3b 3b 20 54 68 65 20    6d 65 6e 75 20 62 61 72 20 6f 66 20 74 68 69 73  | need..;;.;;.The.menu.bar.of.this | 
| 0e80 |  20 62 75 66 66 65 72 20 6c 69 73 74 73 20 6d 6f    73 74 20 6f 66 20 74 68 65 20 63 6f 6d 6d 61 6e  | .buffer.lists.most.of.the.comman | 
| 0ea0 |  64 73 20 77 69 74 68 20 74 68 65 69 72 0a 3b 3b    20 72 65 73 70 65 63 74 69 76 65 20 6b 65 79 20  | ds.with.their.;;.respective.key. | 
| 0ec0 |  62 69 6e 64 69 6e 67 73 2e 20 20 46 6f 72 20 65    78 61 6d 70 6c 65 2c 20 79 6f 75 20 63 61 6e 3a  | bindings...For.example,.you.can: | 
| 0ee0 |  0a 3b 3b 0a 3b 3b 20 2d 20 55 73 65 20 60 67 27    20 74 6f 20 67 6f 20 74 6f 20 74 68 65 20 70 61  | .;;.;;.-.Use.`g'.to.go.to.the.pa | 
| 0f00 |  67 65 20 79 6f 75 20 77 61 6e 74 2e 20 20 28 59    65 73 2c 20 44 6a 76 75 20 6d 6f 64 65 20 6f 70  | ge.you.want...(Yes,.Djvu.mode.op | 
| 0f20 |  65 72 61 74 65 73 20 6f 6e 20 6f 6e 65 0a 3b 3b    20 20 20 70 61 67 65 20 61 74 20 61 20 74 69 6d  | erates.on.one.;;...page.at.a.tim | 
| 0f40 |  65 2e 20 20 41 6e 79 74 68 69 6e 67 20 65 6c 73    65 20 77 6f 75 6c 64 20 62 65 20 74 6f 6f 20 73  | e...Anything.else.would.be.too.s | 
| 0f60 |  6c 6f 77 20 66 6f 72 20 6c 61 72 67 65 20 64 6f    63 75 6d 65 6e 74 73 2e 29 0a 3b 3b 0a 3b 3b 20  | low.for.large.documents.).;;.;;. | 
| 0f80 |  2d 20 55 73 65 20 60 76 27 20 74 6f 20 28 72 65    29 73 74 61 72 74 20 64 6a 76 69 65 77 20 75 73  | -.Use.`v'.to.(re)start.djview.us | 
| 0fa0 |  69 6e 67 20 74 68 65 20 70 6f 73 69 74 69 6f 6e    20 69 6e 20 74 68 65 20 66 69 6c 65 20 66 6f 6f  | ing.the.position.in.the.file.foo | 
| 0fc0 |  2e 64 6a 76 75 0a 3b 3b 20 20 20 6d 61 74 63 68    69 6e 67 20 77 68 65 72 65 20 70 6f 69 6e 74 20  | .djvu.;;...matching.where.point. | 
| 0fe0 |  69 73 20 69 6e 20 74 68 65 20 62 75 66 66 65 72    20 66 6f 6f 2e 64 6a 76 75 2e 20 20 28 49 20 66  | is.in.the.buffer.foo.djvu...(I.f | 
| 1000 |  69 6e 64 20 64 6a 76 69 65 77 0a 3b 3b 20 20 20    66 61 73 74 20 65 6e 6f 75 67 68 20 66 6f 72 20  | ind.djview.;;...fast.enough.for. | 
| 1020 |  74 68 69 73 2c 20 65 76 65 6e 20 66 6f 72 20 6c    61 72 67 65 72 20 64 6f 63 75 6d 65 6e 74 73 2e  | this,.even.for.larger.documents. | 
| 1040 |  29 0a 3b 3b 0a 3b 3b 20 20 20 59 65 74 20 6e 6f    74 65 20 61 6c 73 6f 20 74 68 61 74 2c 20 73 74  | ).;;.;;...Yet.note.also.that,.st | 
| 1060 |  61 72 74 69 6e 67 20 66 72 6f 6d 20 69 74 73 20    76 65 72 73 69 6f 6e 20 34 2e 39 2c 20 64 6a 76  | arting.from.its.version.4.9,.djv | 
| 1080 |  69 65 77 20 72 65 6c 6f 61 64 73 0a 3b 3b 20 20    20 64 6a 76 75 20 64 6f 63 75 6d 65 6e 74 73 20  | iew.reloads.;;...djvu.documents. | 
| 10a0 |  61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 77 68    65 6e 20 74 68 65 20 64 6a 76 75 20 66 69 6c 65  | automatically.when.the.djvu.file | 
| 10c0 |  20 63 68 61 6e 67 65 64 20 6f 6e 20 64 69 73 6b    2e 0a 3b 3b 20 20 20 53 6f 20 79 6f 75 20 6e 65  | .changed.on.disk..;;...So.you.ne | 
| 10e0 |  65 64 20 6e 6f 74 20 72 65 73 74 61 72 74 20 69    74 20 61 6e 79 6d 6f 72 65 20 77 68 69 6c 65 20  | ed.not.restart.it.anymore.while. | 
| 1100 |  65 64 69 74 69 6e 67 20 61 20 44 6a 76 75 20 64    6f 63 75 6d 65 6e 74 0a 3b 3b 20 20 20 77 69 74  | editing.a.Djvu.document.;;...wit | 
| 1120 |  68 20 44 6a 76 75 20 6d 6f 64 65 2e 20 20 28 54    68 61 6e 6b 20 79 6f 75 2c 20 4c 65 6f 6e 20 42  | h.Djvu.mode...(Thank.you,.Leon.B | 
| 1140 |  6f 74 74 6f 75 21 29 0a 3b 3b 0a 3b 3b 20 20 20    44 6a 76 75 20 6d 6f 64 65 20 6c 69 6b 65 77 69  | ottou!).;;.;;...Djvu.mode.likewi | 
| 1160 |  73 65 20 64 65 74 65 63 74 73 20 77 68 65 6e 20    74 68 65 20 66 69 6c 65 20 63 68 61 6e 67 65 64  | se.detects.when.the.file.changed | 
| 1180 |  20 6f 6e 20 64 69 73 6b 0a 3b 3b 20 20 20 28 73    61 79 2c 20 62 65 63 61 75 73 65 20 74 68 65 20  | .on.disk.;;...(say,.because.the. | 
| 11a0 |  66 69 6c 65 20 77 61 73 20 6d 6f 64 69 66 69 65    64 20 62 79 20 73 6f 6d 65 20 6f 74 68 65 72 20  | file.was.modified.by.some.other. | 
| 11c0 |  61 70 70 6c 69 63 61 74 69 6f 6e 29 2c 0a 3b 3b    20 20 20 73 6f 20 74 68 61 74 20 79 6f 75 20 63  | application),.;;...so.that.you.c | 
| 11e0 |  61 6e 20 72 65 76 65 72 74 20 74 68 65 20 62 75    66 66 65 72 73 20 76 69 73 69 74 69 6e 67 20 74  | an.revert.the.buffers.visiting.t | 
| 1200 |  68 69 73 20 66 69 6c 65 2e 0a 3b 3b 0a 3b 3b 20    2d 20 54 6f 20 68 69 67 68 6c 69 67 68 74 20 61  | his.file..;;.;;.-.To.highlight.a | 
| 1220 |  20 72 65 67 69 6f 6e 20 69 6e 20 66 6f 6f 2e 64    6a 76 75 20 6d 61 72 6b 20 74 68 65 20 63 6f 72  | .region.in.foo.djvu.mark.the.cor | 
| 1240 |  72 65 73 70 6f 6e 64 69 6e 67 20 72 65 67 69 6f    6e 0a 3b 3b 20 20 20 69 6e 20 74 68 65 20 62 75  | responding.region.;;...in.the.bu | 
| 1260 |  66 66 65 72 20 66 6f 6f 2e 64 6a 76 75 20 28 61    73 20 75 73 75 61 6c 2c 20 60 74 72 61 6e 73 69  | ffer.foo.djvu.(as.usual,.`transi | 
| 1280 |  65 6e 74 2d 6d 61 72 6b 2d 6d 6f 64 65 27 20 63    6f 6d 65 73 20 68 61 6e 64 79 0a 3b 3b 20 20 20  | ent-mark-mode'.comes.handy.;;... | 
| 12a0 |  66 6f 72 20 74 68 69 73 29 2e 20 20 54 68 65 6e    20 74 79 70 65 20 60 68 27 20 61 6e 64 20 61 64  | for.this)...Then.type.`h'.and.ad | 
| 12c0 |  64 20 61 20 63 6f 6d 6d 65 6e 74 20 69 6e 20 74    68 65 20 6d 69 6e 69 62 75 66 66 65 72 20 69 66  | d.a.comment.in.the.minibuffer.if | 
| 12e0 |  20 79 6f 75 0a 3b 3b 20 20 20 6c 69 6b 65 2e 20    20 54 79 70 65 20 43 2d 78 20 43 2d 73 20 74 6f  | .you.;;...like...Type.C-x.C-s.to | 
| 1300 |  20 73 61 76 65 20 74 68 69 73 20 65 64 69 74 69    6e 67 2e 20 20 56 69 65 77 20 79 6f 75 72 20 63  | .save.this.editing...View.your.c | 
| 1320 |  68 61 6e 67 65 73 20 77 69 74 68 0a 3b 3b 20 20    20 64 6a 76 69 65 77 2e 0a 3b 3b 0a 3b 3b 20 2d  | hanges.with.;;...djview..;;.;;.- | 
| 1340 |  20 54 79 70 65 20 60 69 27 20 74 6f 20 65 6e 61    62 6c 65 20 60 64 6a 76 75 2d 69 6d 61 67 65 2d  | .Type.`i'.to.enable.`djvu-image- | 
| 1360 |  6d 6f 64 65 27 2c 20 61 20 6d 69 6e 6f 72 20 6d    6f 64 65 20 64 69 73 70 6c 61 79 69 6e 67 20 74  | mode',.a.minor.mode.displaying.t | 
| 1380 |  68 65 0a 3b 3b 20 20 20 63 75 72 72 65 6e 74 20    70 61 67 65 20 61 73 20 61 6e 20 69 6d 61 67 65  | he.;;...current.page.as.an.image | 
| 13a0 |  2e 20 20 54 68 65 6e 0a 3b 3b 20 20 20 20 20 64    72 61 67 2d 6d 6f 75 73 65 2d 31 20 64 65 66 69  | ...Then.;;.....drag-mouse-1.defi | 
| 13c0 |  6e 65 73 20 61 20 72 65 63 74 20 61 72 65 61 0a    3b 3b 20 20 20 20 20 53 2d 64 72 61 67 2d 6d 6f  | nes.a.rect.area.;;.....S-drag-mo | 
| 13e0 |  75 73 65 2d 31 20 64 65 66 69 6e 65 73 20 61 6e    20 61 72 65 61 20 77 68 65 72 65 20 74 6f 20 70  | use-1.defines.an.area.where.to.p | 
| 1400 |  75 74 20 61 20 74 65 78 74 20 61 72 65 61 2c 0a    3b 3b 20 20 20 20 20 43 2d 64 72 61 67 2d 6d 6f  | ut.a.text.area,.;;.....C-drag-mo | 
| 1420 |  75 73 65 2d 31 20 64 65 66 69 6e 65 73 20 61 6e    20 61 72 65 61 20 77 68 65 72 65 20 74 6f 20 70  | use-1.defines.an.area.where.to.p | 
| 1440 |  75 74 20 61 20 74 65 78 74 20 61 72 65 61 20 77    2f 70 75 73 68 70 69 6e 2e 0a 3b 3b 0a 3b 3b 20  | ut.a.text.area.w/pushpin..;;.;;. | 
| 1460 |  2d 20 55 73 65 20 60 6f 27 20 74 6f 20 73 77 69    74 63 68 20 74 6f 20 74 68 65 20 62 75 66 66 65  | -.Use.`o'.to.switch.to.the.buffe | 
| 1480 |  72 20 66 6f 6f 2e 64 6a 76 75 2d 6f 20 64 69 73    70 6c 61 79 69 6e 67 20 74 68 65 20 6f 75 74 6c  | r.foo.djvu-o.displaying.the.outl | 
| 14a0 |  69 6e 65 0a 3b 3b 20 20 20 6f 66 20 74 68 65 20    64 6f 63 75 6d 65 6e 74 20 28 70 72 6f 76 69 64  | ine.;;...of.the.document.(provid | 
| 14c0 |  65 64 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 20    63 6f 6e 74 61 69 6e 73 20 62 6f 6f 6b 6d 61 72  | ed.the.document.contains.bookmar | 
| 14e0 |  6b 73 20 74 68 61 74 20 79 6f 75 0a 3b 3b 20 20    20 63 61 6e 20 61 64 64 20 77 69 74 68 20 44 6a  | ks.that.you.;;...can.add.with.Dj | 
| 1500 |  76 75 20 6d 6f 64 65 29 2e 20 20 59 6f 75 20 63    61 6e 20 6d 6f 76 65 20 74 68 72 6f 75 67 68 20  | vu.mode)...You.can.move.through. | 
| 1520 |  61 20 6d 75 6c 74 69 2d 70 61 67 65 20 64 6f 63    75 6d 65 6e 74 0a 3b 3b 20 20 20 62 79 20 73 65  | a.multi-page.document.;;...by.se | 
| 1540 |  6c 65 63 74 69 6e 67 20 61 20 62 6f 6f 6b 6d 61    72 6b 20 69 6e 20 74 68 65 20 6f 75 74 6c 69 6e  | lecting.a.bookmark.in.the.outlin | 
| 1560 |  65 20 62 75 66 66 65 72 2e 0a 3b 3b 0a 3b 3b 20    2d 20 54 68 65 20 65 64 69 74 69 6e 67 20 6f 66  | e.buffer..;;.;;.-.The.editing.of | 
| 1580 |  20 74 68 65 20 74 65 78 74 2c 20 61 6e 6e 6f 74    61 74 69 6f 6e 2c 20 73 68 61 72 65 64 20 61 6e  | .the.text,.annotation,.shared.an | 
| 15a0 |  6e 6f 74 61 74 69 6f 6e 20 61 6e 64 20 6f 75 74    6c 69 6e 65 0a 3b 3b 20 20 20 28 62 6f 6f 6b 6d  | notation.and.outline.;;...(bookm | 
| 15c0 |  61 72 6b 73 29 20 6c 61 79 65 72 73 20 72 65 61    6c 6c 79 20 68 61 70 70 65 6e 73 20 69 6e 20 74  | arks).layers.really.happens.in.t | 
| 15e0 |  68 65 20 62 75 66 66 65 72 73 20 66 6f 6f 2e 64    6a 76 75 2d 74 2c 0a 3b 3b 20 20 20 66 6f 6f 2e  | he.buffers.foo.djvu-t,.;;...foo. | 
| 1600 |  64 6a 76 75 2d 61 2c 20 66 6f 6f 2d 64 6a 76 75    2d 73 2c 20 61 6e 64 20 66 6f 6f 2e 64 6a 76 75  | djvu-a,.foo-djvu-s,.and.foo.djvu | 
| 1620 |  2d 62 2e 20 20 54 68 65 20 64 6a 76 75 73 65 64    20 73 63 72 69 70 74 20 73 79 6e 74 61 78 0a 3b  | -b...The.djvused.script.syntax.; | 
| 1640 |  3b 20 20 20 75 73 65 64 20 69 6e 20 74 68 65 73    65 20 62 75 66 66 65 72 73 20 69 73 20 73 6f 20  | ;...used.in.these.buffers.is.so. | 
| 1660 |  63 6c 6f 73 65 20 74 6f 20 4c 69 73 70 20 74 68    61 74 20 69 74 20 77 61 73 20 6e 61 74 75 72 61  | close.to.Lisp.that.it.was.natura | 
| 1680 |  6c 20 74 6f 20 67 69 76 65 0a 3b 3b 20 20 20 74    68 65 73 65 20 62 75 66 66 65 72 73 20 61 20 60  | l.to.give.;;...these.buffers.a.` | 
| 16a0 |  64 6a 76 75 2d 73 63 72 69 70 74 2d 6d 6f 64 65    27 20 74 68 61 74 20 69 73 20 64 65 72 69 76 65  | djvu-script-mode'.that.is.derive | 
| 16c0 |  64 20 66 72 6f 6d 20 60 6c 69 73 70 2d 6d 6f 64    65 27 2e 0a 3b 3b 0a 3b 3b 20 20 20 59 6f 75 20  | d.from.`lisp-mode'..;;.;;...You. | 
| 16e0 |  63 61 6e 20 63 68 65 63 6b 20 77 68 61 74 20 69    73 20 68 61 70 70 65 6e 69 6e 67 20 62 79 20 73  | can.check.what.is.happening.by.s | 
| 1700 |  77 69 74 63 68 69 6e 67 20 74 6f 20 74 68 65 73    65 20 62 75 66 66 65 72 73 2e 0a 3b 3b 20 20 20  | witching.to.these.buffers..;;... | 
| 1720 |  54 68 65 20 72 65 73 70 65 63 74 69 76 65 20 73    77 69 74 63 68 69 6e 67 20 63 6f 6d 6d 61 6e 64  | The.respective.switching.command | 
| 1740 |  73 20 70 75 74 20 70 6f 69 6e 74 20 69 6e 20 74    68 65 73 65 20 62 75 66 66 65 72 73 0a 3b 3b 20  | s.put.point.in.these.buffers.;;. | 
| 1760 |  20 20 73 75 63 68 20 74 68 61 74 20 69 74 20 6d    61 74 63 68 65 73 20 77 68 65 72 65 20 79 6f 75  | ..such.that.it.matches.where.you | 
| 1780 |  20 77 65 72 65 20 69 6e 20 74 68 65 20 6d 61 69    6e 20 62 75 66 66 65 72 20 66 6f 6f 2e 64 6a 76  | .were.in.the.main.buffer.foo.djv | 
| 17a0 |  75 2e 0a 3b 3b 0a 3b 3b 20 20 20 49 6e 20 74 68    65 73 65 20 62 75 66 66 65 72 73 2c 20 74 68 65  | u..;;.;;...In.these.buffers,.the | 
| 17c0 |  20 6d 65 6e 75 20 62 61 72 20 6c 69 73 74 73 20    61 20 66 65 77 20 6c 6f 77 2d 6c 65 76 65 6c 20  | .menu.bar.lists.a.few.low-level. | 
| 17e0 |  63 6f 6d 6d 61 6e 64 73 0a 3b 3b 20 20 20 61 76    61 69 6c 61 62 6c 65 20 66 6f 72 20 65 64 69 74  | commands.;;...available.for.edit | 
| 1800 |  69 6e 67 20 74 68 65 73 65 20 62 75 66 66 65 72    73 20 64 69 72 65 63 74 6c 79 2e 20 20 49 66 20  | ing.these.buffers.directly...If. | 
| 1820 |  79 6f 75 20 6b 6e 6f 77 20 74 68 65 0a 3b 3b 20    20 20 64 6a 76 75 73 65 64 20 73 63 72 69 70 74  | you.know.the.;;...djvused.script | 
| 1840 |  20 73 79 6e 74 61 78 2c 20 73 6f 6d 65 74 69 6d    65 73 20 69 74 20 63 61 6e 20 61 6c 73 6f 20 62  | .syntax,.sometimes.it.can.also.b | 
| 1860 |  65 20 68 65 6c 70 66 75 6c 20 74 6f 20 64 6f 0a    3b 3b 20 20 20 73 75 63 68 20 65 64 69 74 69 6e  | e.helpful.to.do.;;...such.editin | 
| 1880 |  67 20 22 62 79 20 68 61 6e 64 22 2e 0a 3b 3b 0a    3b 3b 20 42 75 74 20 77 61 69 74 3a 20 74 68 65  | g."by.hand"..;;.;;.But.wait:.the | 
| 18a0 |  20 73 79 6e 74 61 78 20 69 6e 20 74 68 65 20 61    6e 6e 6f 74 61 74 69 6f 6e 73 20 62 75 66 66 65  | .syntax.in.the.annotations.buffe | 
| 18c0 |  72 20 66 6f 6f 2e 64 6a 76 75 2d 61 20 69 73 20    61 0a 3b 3b 20 73 6c 69 67 68 74 6c 79 20 6d 6f  | r.foo.djvu-a.is.a.;;.slightly.mo | 
| 18e0 |  64 69 66 69 65 64 20 64 6a 76 75 73 65 64 20 73    63 72 69 70 74 20 73 79 6e 74 61 78 2e 0a 3b 3b  | dified.djvused.script.syntax..;; | 
| 1900 |  0a 3b 3b 20 2d 20 64 6a 76 75 73 65 64 20 63 61    6e 20 6f 6e 6c 79 20 68 69 67 68 6c 69 67 68 74  | .;;.-.djvused.can.only.highlight | 
| 1920 |  20 72 65 63 74 61 6e 67 6c 65 73 2e 20 20 53 6f    20 74 68 65 20 68 69 67 68 6c 69 67 68 74 69 6e  | .rectangles...So.the.highlightin | 
| 1940 |  67 20 6f 66 0a 3b 3b 20 20 20 6c 61 72 67 65 72    20 61 72 65 61 73 20 6f 66 20 74 65 78 74 20 6d  | g.of.;;...larger.areas.of.text.m | 
| 1960 |  75 73 74 20 75 73 65 20 6d 75 6c 74 69 70 6c 65    20 72 65 63 74 61 6e 67 6c 65 73 20 28 69 2e 65  | ust.use.multiple.rectangles.(i.e | 
| 1980 |  2e 2c 0a 3b 3b 20 20 20 6d 75 6c 74 69 70 6c 65    20 64 6a 76 75 73 65 64 20 22 6d 61 70 61 72 65  | .,.;;...multiple.djvused."mapare | 
| 19a0 |  61 73 22 29 2e 20 20 54 6f 20 6d 61 6b 65 20 65    64 69 74 69 6e 67 20 65 61 73 69 65 72 2c 20 74  | as")...To.make.editing.easier,.t | 
| 19c0 |  68 65 73 65 0a 3b 3b 20 20 20 61 72 65 20 63 6f    6d 62 69 6e 65 64 20 69 6e 20 74 68 65 20 62 75  | hese.;;...are.combined.in.the.bu | 
| 19e0 |  66 66 65 72 20 66 6f 6f 2e 64 6a 76 75 2d 61 2e    20 20 28 42 65 66 6f 72 65 20 73 61 76 69 6e 67  | ffer.foo.djvu-a...(Before.saving | 
| 1a00 |  20 74 68 65 73 65 0a 3b 3b 20 20 20 74 68 69 6e    67 73 2c 20 74 68 65 79 20 61 72 65 20 63 6f 6e  | .these.;;...things,.they.are.con | 
| 1a20 |  76 65 72 74 65 64 20 75 73 69 6e 67 20 74 68 65    20 70 72 6f 70 65 72 20 64 6a 76 75 73 65 64 20  | verted.using.the.proper.djvused. | 
| 1a40 |  73 79 6e 74 61 78 2e 29 0a 3b 3b 0a 3b 3b 20 20    20 57 68 65 6e 20 79 6f 75 20 76 69 73 69 74 20  | syntax.).;;.;;...When.you.visit. | 
| 1a60 |  61 20 64 6a 76 75 20 66 69 6c 65 2c 20 44 6a 76    75 20 6d 6f 64 65 20 72 65 63 6f 67 6e 69 7a 65  | a.djvu.file,.Djvu.mode.recognize | 
| 1a80 |  73 20 6d 61 70 61 72 65 61 73 0a 3b 3b 20 20 20    62 65 6c 6f 6e 67 69 6e 67 20 74 6f 67 65 74 68  | s.mapareas.;;...belonging.togeth | 
| 1aa0 |  65 72 20 62 79 20 63 68 65 63 6b 69 6e 67 20 74    68 61 74 20 22 65 76 65 72 79 74 68 69 6e 67 20  | er.by.checking.that."everything. | 
| 1ac0 |  65 6c 73 65 20 69 6e 20 74 68 65 73 65 0a 3b 3b    20 20 20 6d 61 70 61 72 65 61 73 20 65 78 63 65  | else.in.these.;;...mapareas.exce | 
| 1ae0 |  70 74 20 66 6f 72 20 74 68 65 20 72 65 63 74 73    22 20 69 73 20 74 68 65 20 73 61 6d 65 2e 20 20  | pt.for.the.rects".is.the.same... | 
| 1b00 |  53 6f 20 69 66 20 79 6f 75 20 65 6e 74 65 72 65    64 0a 3b 3b 20 20 20 61 20 28 75 6e 69 71 75 65  | So.if.you.entered.;;...a.(unique | 
| 1b20 |  29 20 63 6f 6d 6d 65 6e 74 2c 20 74 68 69 73 20    61 6c 6c 6f 77 73 20 44 6a 76 75 20 6d 6f 64 65  | ).comment,.this.allows.Djvu.mode | 
| 1b40 |  20 74 6f 20 63 6f 6d 62 69 6e 65 20 61 6c 6c 20    74 68 65 0a 3b 3b 20 20 20 6d 61 70 61 72 65 61  | .to.combine.all.the.;;...maparea | 
| 1b60 |  73 20 77 68 65 6e 20 79 6f 75 20 76 69 73 69 74    20 73 75 63 68 20 61 20 66 69 6c 65 20 74 68 65  | s.when.you.visit.such.a.file.the | 
| 1b80 |  20 73 65 63 6f 6e 64 20 74 69 6d 65 2e 20 20 57    69 74 68 6f 75 74 20 61 0a 3b 3b 20 20 20 63 6f  | .second.time...Without.a.;;...co | 
| 1ba0 |  6d 6d 65 6e 74 2c 20 74 68 69 73 20 66 61 69 6c    73 21 0a 3b 3b 0a 3b 3b 20 2d 20 64 6a 76 75 73  | mment,.this.fails!.;;.;;.-.djvus | 
| 1bc0 |  65 64 20 75 73 65 73 20 74 77 6f 20 64 69 66 66    65 72 65 6e 74 20 77 61 79 73 20 6f 66 20 73 70  | ed.uses.two.different.ways.of.sp | 
| 1be0 |  65 63 69 66 79 69 6e 67 20 63 6f 6f 72 64 69 6e    61 74 65 73 20 66 6f 72 0a 3b 3b 20 20 20 72 65  | ecifying.coordinates.for.;;...re | 
| 1c00 |  63 74 61 6e 67 6c 65 73 0a 3b 3b 20 20 20 20 20    28 31 29 20 68 69 64 64 65 6e 20 74 65 78 74 20  | ctangles.;;.....(1).hidden.text. | 
| 1c20 |  75 73 65 73 20 71 75 61 64 72 75 70 65 6c 73 20    28 78 6d 69 6e 20 79 6d 69 6e 20 78 6d 61 78 20  | uses.quadrupels.(xmin.ymin.xmax. | 
| 1c40 |  79 6d 61 78 29 0a 3b 3b 20 20 20 20 20 28 32 29    20 6d 61 70 61 72 65 61 20 61 6e 6e 6f 74 61 74  | ymax).;;.....(2).maparea.annotat | 
| 1c60 |  69 6f 6e 73 20 75 73 65 20 28 78 6d 69 6e 20 79    6d 69 6e 20 77 69 64 74 68 20 68 65 69 67 68 74  | ions.use.(xmin.ymin.width.height | 
| 1c80 |  29 0a 3b 3b 20 20 20 44 6a 76 75 20 6d 6f 64 65    20 61 6c 77 61 79 73 20 75 73 65 73 20 71 75 61  | ).;;...Djvu.mode.always.uses.qua | 
| 1ca0 |  64 72 75 70 65 6c 73 20 28 78 6d 69 6e 20 79 6d    69 6e 20 78 6d 61 78 20 79 6d 61 78 29 0a 3b 3b  | drupels.(xmin.ymin.xmax.ymax).;; | 
| 1cc0 |  20 20 20 54 68 75 73 20 6d 61 70 61 72 65 61 20    63 6f 6f 72 64 69 6e 61 74 65 73 20 61 72 65 20  | ...Thus.maparea.coordinates.are. | 
| 1ce0 |  63 6f 6e 76 65 72 74 65 64 20 66 72 6f 6d 20 61    6e 64 20 74 6f 20 64 6a 76 75 73 65 64 27 73 20  | converted.from.and.to.djvused's. | 
| 1d00 |  66 6f 72 6d 61 74 0a 3b 3b 20 20 20 77 68 65 6e    20 72 65 61 64 69 6e 67 20 61 6e 64 20 77 72 69  | format.;;...when.reading.and.wri | 
| 1d20 |  74 69 6e 67 20 64 6a 76 75 20 66 69 6c 65 73 2e    0a 3b 3b 0a 3b 3b 20 2d 20 55 73 75 61 6c 6c 79  | ting.djvu.files..;;.;;.-.Usually | 
| 1d40 |  20 44 6a 76 75 20 6d 6f 64 65 20 6f 70 65 72 61    74 65 73 20 6f 6e 20 74 68 65 20 74 65 78 74 20  | .Djvu.mode.operates.on.the.text. | 
| 1d60 |  61 6e 64 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20    6c 61 79 65 72 73 0a 3b 3b 20 20 20 66 6f 72 20  | and.annotations.layers.;;...for. | 
| 1d80 |  6f 6e 65 20 70 61 67 65 20 6f 66 20 61 20 44 6a    76 75 20 64 6f 63 75 6d 65 6e 74 2e 20 20 49 66  | one.page.of.a.Djvu.document...If | 
| 1da0 |  20 79 6f 75 20 72 65 61 6c 6c 79 20 28 49 20 6d    65 61 6e 3a 20 52 45 41 4c 4c 59 29 0a 3b 3b 20  | .you.really.(I.mean:.REALLY).;;. | 
| 1dc0 |  20 20 77 61 6e 74 20 74 6f 20 65 64 69 74 20 61    20 72 61 77 20 64 6a 76 75 73 65 64 20 73 63 72  | ..want.to.edit.a.raw.djvused.scr | 
| 1de0 |  69 70 74 20 66 6f 72 20 74 68 65 20 63 6f 6d 70    6c 65 74 65 20 74 65 78 74 20 6f 72 0a 3b 3b 20  | ipt.for.the.complete.text.or.;;. | 
| 1e00 |  20 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20 6c 61    79 65 72 20 6f 66 20 61 20 64 6a 76 75 20 64 6f  | ..annotations.layer.of.a.djvu.do | 
| 1e20 |  63 75 6d 65 6e 74 2c 20 75 73 65 20 60 64 6a 76    75 2d 74 65 78 74 2d 73 63 72 69 70 74 27 20 6f  | cument,.use.`djvu-text-script'.o | 
| 1e40 |  72 0a 3b 3b 20 20 20 60 64 6a 76 75 2d 61 6e 6e    6f 74 2d 73 63 72 69 70 74 27 20 74 6f 20 67 65  | r.;;...`djvu-annot-script'.to.ge | 
| 1e60 |  6e 65 72 61 74 65 20 74 68 65 73 65 20 72 61 77    20 73 63 72 69 70 74 73 2e 20 20 57 68 65 6e 20  | nerate.these.raw.scripts...When. | 
| 1e80 |  79 6f 75 20 68 61 76 65 0a 3b 3b 20 20 20 66 69    6e 69 73 68 65 64 20 65 64 69 74 69 6e 67 2c 20  | you.have.;;...finished.editing,. | 
| 1ea0 |  79 6f 75 20 63 61 6e 20 72 65 2d 61 70 70 6c 79    20 74 68 65 20 73 63 72 69 70 74 20 62 79 20 63  | you.can.re-apply.the.script.by.c | 
| 1ec0 |  61 6c 6c 69 6e 67 0a 3b 3b 20 20 20 60 64 6a 76    75 2d 70 72 6f 63 65 73 73 2d 73 63 72 69 70 74  | alling.;;...`djvu-process-script | 
| 1ee0 |  27 2e 20 20 55 73 65 20 74 68 69 73 20 61 74 20    79 6f 75 72 20 6f 77 6e 20 72 69 73 6b 2e 20 20  | '...Use.this.at.your.own.risk... | 
| 1f00 |  54 68 69 73 20 63 6f 64 65 20 64 6f 65 73 0a 3b    3b 20 20 20 6e 6f 74 20 63 68 65 63 6b 20 77 68  | This.code.does.;;...not.check.wh | 
| 1f20 |  65 74 68 65 72 20 74 68 65 20 72 61 77 20 73 63    72 69 70 74 20 69 73 20 6d 65 61 6e 69 6e 67 66  | ether.the.raw.script.is.meaningf | 
| 1f40 |  75 6c 2e 20 20 59 6f 75 20 63 61 6e 20 6c 6f 6f    73 65 20 74 68 65 0a 3b 3b 20 20 20 74 65 78 74  | ul...You.can.loose.the.;;...text | 
| 1f60 |  20 6f 72 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20    6c 61 79 65 72 20 69 66 20 74 68 65 20 73 63 72  | .or.annotations.layer.if.the.scr | 
| 1f80 |  69 70 74 20 69 73 20 6d 65 73 73 65 64 20 75 70    2e 0a 0a 3b 3b 3b 20 4e 65 77 73 3a 0a 0a 3b 3b  | ipt.is.messed.up...;;;.News:..;; | 
| 1fa0 |  20 76 31 2e 31 2e 32 3a 0a 3b 3b 20 2d 20 53 75    70 70 6f 72 74 20 63 68 61 6e 67 69 6e 67 20 74  | .v1.1.2:.;;.-.Support.changing.t | 
| 1fc0 |  68 65 20 6d 6f 64 65 20 6f 66 20 61 20 62 75 66    66 65 72 20 76 69 73 69 74 69 6e 67 20 61 20 44  | he.mode.of.a.buffer.visiting.a.D | 
| 1fe0 |  6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 0a 3b 3b    0a 3b 3b 20 2d 20 53 75 70 70 6f 72 74 20 60 64  | jvu.document..;;.;;.-.Support.`d | 
| 2000 |  6f 63 2d 76 69 65 77 2d 74 6f 67 67 6c 65 2d 64    69 73 70 6c 61 79 27 20 77 69 74 68 20 60 6d 61  | oc-view-toggle-display'.with.`ma | 
| 2020 |  6a 6f 72 2d 6d 6f 64 65 2d 73 75 73 70 65 6e 64    27 2e 0a 3b 3b 0a 3b 3b 20 2d 20 53 65 6c 65 63  | jor-mode-suspend'..;;.;;.-.Selec | 
| 2040 |  74 69 6e 67 20 74 68 65 20 62 61 63 6b 67 72 6f    75 6e 64 20 63 6f 6c 6f 72 20 22 74 72 61 6e 73  | ting.the.background.color."trans | 
| 2060 |  70 61 72 65 6e 74 22 20 72 65 6d 6f 76 65 73 20    74 68 65 0a 3b 3b 20 20 20 62 61 63 6b 67 72 6f  | parent".removes.the.;;...backgro | 
| 2080 |  75 6e 64 20 63 6f 6c 6f 72 20 61 74 74 72 69 62    75 74 65 2e 0a 3b 3b 0a 3b 3b 20 2d 20 4e 65 77  | und.color.attribute..;;.;;.-.New | 
| 20a0 |  20 6f 70 74 69 6f 6e 73 20 60 64 6a 76 75 2d 69    6d 61 67 65 2d 7a 6f 6f 6d 27 20 61 6e 64 20 60  | .options.`djvu-image-zoom'.and.` | 
| 20c0 |  64 6a 76 75 2d 61 73 63 65 6e 64 65 72 73 2d 72    65 27 2e 0a 3b 3b 0a 3b 3b 20 2d 20 42 75 67 20  | djvu-ascenders-re'..;;.;;.-.Bug. | 
| 20e0 |  66 69 78 65 73 2e 0a 3b 3b 0a 3b 3b 20 76 31 2e    31 2e 31 3a 0a 3b 3b 20 2d 20 53 75 70 70 6f 72  | fixes..;;.;;.v1.1.1:.;;.-.Suppor | 
| 2100 |  74 20 74 65 78 74 20 61 6e 64 20 69 6d 61 67 65    20 73 63 72 6f 6c 6c 69 6e 67 20 73 69 6d 69 6c  | t.text.and.image.scrolling.simil | 
| 2120 |  61 72 20 74 6f 20 60 64 6f 63 2d 76 69 65 77 2d    6d 6f 64 65 27 2e 0a 3b 3b 20 20 20 4e 65 77 20  | ar.to.`doc-view-mode'..;;...New. | 
| 2140 |  6f 70 74 69 6f 6e 20 60 64 6a 76 75 2d 63 6f 6e    74 69 6e 75 6f 75 73 27 2e 0a 3b 3b 0a 3b 3b 20  | option.`djvu-continuous'..;;.;;. | 
| 2160 |  2d 20 4e 65 77 20 6f 70 74 69 6f 6e 20 60 64 6a    76 75 2d 64 65 73 63 65 6e 64 65 72 73 2d 72 65  | -.New.option.`djvu-descenders-re | 
| 2180 |  27 2e 0a 3b 3b 0a 3b 3b 20 2d 20 42 75 67 20 66    69 78 65 73 2e 0a 3b 3b 0a 3b 3b 20 76 31 2e 31  | '..;;.;;.-.Bug.fixes..;;.;;.v1.1 | 
| 21a0 |  3a 0a 3b 3b 20 2d 20 55 73 65 20 60 61 75 74 6f    2d 6d 6f 64 65 2d 61 6c 69 73 74 27 20 77 69 74  | :.;;.-.Use.`auto-mode-alist'.wit | 
| 21c0 |  68 20 66 69 6c 65 20 65 78 74 65 6e 73 69 6f 6e    20 22 2e 64 6a 76 75 22 2e 0a 3b 3b 0a 3b 3b 20  | h.file.extension.".djvu"..;;.;;. | 
| 21e0 |  2d 20 53 75 70 70 6f 72 74 20 62 6f 6f 6b 6d 61    72 6b 73 2e 0a 3b 3b 0a 3b 3b 20 2d 20 44 69 73  | -.Support.bookmarks..;;.;;.-.Dis | 
| 2200 |  70 6c 61 79 20 74 6f 74 61 6c 20 6e 75 6d 62 65    72 20 6f 66 20 70 61 67 65 73 20 69 6e 20 6d 6f  | play.total.number.of.pages.in.mo | 
| 2220 |  64 65 20 6c 69 6e 65 2e 0a 3b 3b 0a 3b 3b 20 2d    20 4e 65 77 20 6f 70 74 69 6f 6e 20 60 64 6a 76  | de.line..;;.;;.-.New.option.`djv | 
| 2240 |  75 2d 72 65 63 74 2d 61 72 65 61 2d 6e 6f 64 75    70 73 27 2e 0a 3b 3b 0a 3b 3b 20 2d 20 55 73 65  | u-rect-area-nodups'..;;.;;.-.Use | 
| 2260 |  72 20 6f 70 74 69 6f 6e 73 20 60 64 6a 76 75 2d    73 61 76 65 2d 61 66 74 65 72 2d 65 64 69 74 27  | r.options.`djvu-save-after-edit' | 
| 2280 |  20 61 6e 64 20 60 64 6a 76 75 2d 72 65 67 69 6f    6e 2d 68 69 73 74 6f 72 79 27 20 72 65 6d 6f 76  | .and.`djvu-region-history'.remov | 
| 22a0 |  65 64 0a 3b 3b 20 20 20 28 6f 62 73 6f 6c 65 74    65 29 2e 0a 3b 3b 0a 3b 3b 20 2d 20 4d 6f 72 65  | ed.;;...(obsolete)..;;.;;.-.More | 
| 22c0 |  20 72 6f 62 75 73 74 20 63 6f 64 65 20 66 6f 72    20 6d 65 72 67 69 6e 67 20 6c 69 6e 65 73 20 69  | .robust.code.for.merging.lines.i | 
| 22e0 |  6e 20 74 65 78 74 20 6c 61 79 65 72 2e 0a 3b 3b    0a 3b 3b 20 2d 20 43 6c 65 61 6e 20 75 70 20 68  | n.text.layer..;;.;;.-.Clean.up.h | 
| 2300 |  61 6e 64 6c 69 6e 67 20 6f 66 20 65 64 69 74 69    6e 67 20 70 6f 73 69 74 69 6f 6e 73 20 69 6e 20  | andling.of.editing.positions.in. | 
| 2320 |  61 20 64 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e    0a 3b 3b 0a 3b 3b 20 2d 20 42 75 67 20 66 69 78  | a.djvu.document..;;.;;.-.Bug.fix | 
| 2340 |  65 73 2e 0a 3b 3b 0a 3b 3b 20 76 31 2e 30 2e 31    3a 0a 3b 3b 20 2d 20 55 73 65 20 60 63 72 65 61  | es..;;.;;.v1.0.1:.;;.-.Use.`crea | 
| 2360 |  74 65 2d 66 69 6c 65 2d 62 75 66 66 65 72 27 20    69 6e 73 74 65 61 64 20 6f 66 20 60 67 65 6e 65  | te-file-buffer'.instead.of.`gene | 
| 2380 |  72 61 74 65 2d 6e 65 77 2d 62 75 66 66 65 72 27    0a 3b 3b 20 20 20 66 6f 72 20 63 6f 6d 70 61 74  | rate-new-buffer'.;;...for.compat | 
| 23a0 |  69 62 69 6c 69 74 79 20 77 69 74 68 20 75 6e 69    71 75 69 66 79 2e 0a 3b 3b 0a 3b 3b 20 76 31 2e  | ibility.with.uniquify..;;.;;.v1. | 
| 23c0 |  30 3a 0a 3b 3b 20 2d 20 4e 65 77 20 63 6f 6d 6d    61 6e 64 73 20 60 64 6a 76 75 2d 72 65 76 65 72  | 0:.;;.-.New.commands.`djvu-rever | 
| 23e0 |  74 2d 62 75 66 66 65 72 27 2c 20 60 64 6a 76 75    2d 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61  | t-buffer',.`djvu-re-search-forwa | 
| 2400 |  72 64 27 2c 0a 3b 3b 20 20 20 60 64 6a 76 75 2d    72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | rd',.;;...`djvu-re-search-forwar | 
| 2420 |  64 2d 63 6f 6e 74 69 6e 75 65 27 2c 20 60 64 6a    76 75 2d 68 69 73 74 6f 72 79 2d 62 61 63 6b 77  | d-continue',.`djvu-history-backw | 
| 2440 |  61 72 64 27 2c 0a 3b 3b 20 20 20 60 64 6a 76 75    2d 68 69 73 74 6f 72 79 2d 66 6f 72 77 61 72 64  | ard',.;;...`djvu-history-forward | 
| 2460 |  27 2c 20 60 64 6a 76 75 2d 64 70 69 27 2c 20 60    64 6a 76 75 2d 64 70 69 2d 75 6e 69 66 79 27 2c  | ',.`djvu-dpi',.`djvu-dpi-unify', | 
| 2480 |  20 60 64 6a 76 75 2d 72 6f 74 61 74 65 27 2c 0a    3b 3b 20 20 20 60 64 6a 76 75 2d 70 61 67 65 2d  | .`djvu-rotate',.;;...`djvu-page- | 
| 24a0 |  74 69 74 6c 65 27 2c 20 60 64 6a 76 75 2d 6c 73    27 2c 20 60 64 6a 76 75 2d 69 6e 73 70 65 63 74  | title',.`djvu-ls',.`djvu-inspect | 
| 24c0 |  2d 66 69 6c 65 27 2c 20 60 64 6a 76 75 2d 64 65    6c 65 74 65 2d 70 61 67 65 27 2c 0a 3b 3b 20 20  | -file',.`djvu-delete-page',.;;.. | 
| 24e0 |  20 61 6e 64 20 60 64 6a 76 75 2d 72 65 6d 6f 76    65 2d 61 6e 6e 6f 74 27 2e 0a 3b 3b 0a 3b 3b 20  | .and.`djvu-remove-annot'..;;.;;. | 
| 2500 |  2d 20 4e 65 77 20 63 6f 6d 6d 61 6e 64 73 20 66    6f 72 20 65 64 69 74 69 6e 67 20 74 68 65 20 74  | -.New.commands.for.editing.the.t | 
| 2520 |  65 78 74 20 6c 61 79 65 72 20 60 64 6a 76 75 2d    65 64 69 74 2d 77 6f 72 64 27 2c 0a 3b 3b 20 20  | ext.layer.`djvu-edit-word',.;;.. | 
| 2540 |  20 60 64 6a 76 75 2d 73 70 6c 69 74 2d 77 6f 72    64 27 2c 20 60 64 6a 76 75 2d 6d 65 72 67 65 2d  | .`djvu-split-word',.`djvu-merge- | 
| 2560 |  77 6f 72 64 73 27 2c 20 61 6e 64 20 60 64 6a 76    75 2d 6d 65 72 67 65 2d 6c 69 6e 65 73 27 2e 0a  | words',.and.`djvu-merge-lines'.. | 
| 2580 |  3b 3b 0a 3b 3b 20 2d 20 4d 61 6b 65 20 62 61 63    6b 75 70 73 20 77 68 65 6e 20 65 64 69 74 69 6e  | ;;.;;.-.Make.backups.when.editin | 
| 25a0 |  67 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 73    2e 0a 3b 3b 0a 3b 3b 20 2d 20 50 72 65 74 74 79  | g.Djvu.documents..;;.;;.-.Pretty | 
| 25c0 |  2d 70 72 69 6e 74 65 64 20 6f 75 74 6c 69 6e 65    20 62 75 66 66 65 72 20 66 6f 72 20 62 6f 6f 6b  | -printed.outline.buffer.for.book | 
| 25e0 |  6d 61 72 6b 73 2e 0a 3b 3b 0a 3b 3b 20 2d 20 53    68 61 72 65 64 20 61 6e 6e 6f 74 61 74 69 6f 6e  | marks..;;.;;.-.Shared.annotation | 
| 2600 |  73 20 62 75 66 66 65 72 2e 0a 3b 3b 0a 3b 3b 20    2d 20 46 6f 6e 74 20 6c 6f 63 6b 69 6e 67 2e 0a  | s.buffer..;;.;;.-.Font.locking.. | 
| 2620 |  0a 3b 3b 3b 20 54 6f 20 64 6f 3a 0a 0a 3b 3b 20    2d 20 41 75 74 6f 2d 73 61 76 65 20 73 63 72 69  | .;;;.To.do:..;;.-.Auto-save.scri | 
| 2640 |  70 74 20 62 75 66 66 65 72 73 2e 20 20 48 6f 77    20 63 61 6e 20 77 65 20 72 65 63 6f 76 65 72 20  | pt.buffers...How.can.we.recover. | 
| 2660 |  74 68 65 73 65 20 62 75 66 66 65 72 73 0a 3b 3b    20 20 20 69 6e 20 61 20 6d 65 61 6e 69 6e 67 66  | these.buffers.;;...in.a.meaningf | 
| 2680 |  75 6c 20 77 61 79 3f 0a 3b 3b 0a 3b 3b 20 2d 20    55 73 65 20 60 72 65 70 6c 61 63 65 2d 62 75 66  | ul.way?.;;.;;.-.Use.`replace-buf | 
| 26a0 |  66 65 72 2d 63 6f 6e 74 65 6e 74 73 27 3f 0a 3b    3b 0a 3b 3b 20 2d 20 4e 65 77 20 63 6f 6d 6d 61  | fer-contents'?.;;.;;.-.New.comma | 
| 26c0 |  6e 64 20 74 68 61 74 20 6d 61 6b 65 73 20 6c 69    6e 65 20 62 72 65 61 6b 73 20 69 6e 20 74 65 78  | nd.that.makes.line.breaks.in.tex | 
| 26e0 |  74 20 6c 61 79 65 72 20 62 65 74 74 65 72 20 73    65 61 72 63 68 61 62 6c 65 3a 0a 3b 3b 20 20 20  | t.layer.better.searchable:.;;... | 
| 2700 |  53 63 61 6e 20 74 65 78 74 20 6c 61 79 65 72 20    66 6f 72 20 6c 69 6e 65 73 20 65 6e 64 69 6e 67  | Scan.text.layer.for.lines.ending | 
| 2720 |  20 77 69 74 68 20 68 79 70 68 65 6e 61 74 65 64    20 77 6f 72 64 73 20 22 78 78 78 2d 22 2e 0a 3b  | .with.hyphenated.words."xxx-"..; | 
| 2740 |  3b 20 20 20 49 66 20 74 68 65 20 66 69 72 73 74    20 77 6f 72 64 20 6f 66 20 74 68 65 20 6e 65 78  | ;...If.the.first.word.of.the.nex | 
| 2760 |  74 20 6c 69 6e 65 20 69 73 20 22 79 79 79 22 20    61 6e 64 20 69 73 70 65 6c 6c 20 6b 6e 6f 77 73  | t.line.is."yyy".and.ispell.knows | 
| 2780 |  0a 3b 3b 20 20 20 74 68 65 20 77 6f 72 64 20 22    78 78 78 79 79 79 22 2c 20 72 65 70 6c 61 63 65  | .;;...the.word."xxxyyy",.replace | 
| 27a0 |  20 22 79 79 79 22 20 77 69 74 68 20 74 68 61 74    20 73 74 72 69 6e 67 2e 20 20 41 20 73 65 61 72  | ."yyy".with.that.string...A.sear | 
| 27c0 |  63 68 0a 3b 3b 20 20 20 66 6f 72 20 74 68 65 20    77 6f 72 64 20 22 78 78 78 79 79 79 22 20 77 69  | ch.;;...for.the.word."xxxyyy".wi | 
| 27e0 |  6c 6c 20 74 68 65 6e 20 73 75 63 63 65 65 64 2e    0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 3b 3b 3b  | ll.then.succeed...;;;.Code:..;;; | 
| 2800 |  20 44 6a 76 75 20 69 6e 74 65 72 6e 61 6c 73 20    28 73 65 65 20 53 65 63 2e 20 38 2e 33 2e 34 2e  | .Djvu.internals.(see.Sec..8.3.4. | 
| 2820 |  32 2e 33 2e 31 20 6f 66 20 64 6a 76 75 33 73 70    65 63 2e 64 6a 76 75 29 0a 3b 3b 0a 3b 3b 20 53  | 2.3.1.of.djvu3spec.djvu).;;.;;.S | 
| 2840 |  75 70 70 6f 72 74 65 64 20 61 72 65 61 20 61 74    74 72 69 62 75 74 65 73 20 20 20 20 20 20 20 20  | upported.area.attributes........ | 
| 2860 |  20 20 20 20 20 72 65 63 74 20 20 74 65 78 74 20    20 6f 76 61 6c 20 20 6c 69 6e 65 20 20 70 6f 6c  | .....rect..text..oval..line..pol | 
| 2880 |  79 0a 3b 3b 20 28 6e 6f 6e 65 29 2f 28 78 6f 72    29 2f 28 62 6f 72 64 65 72 20 63 29 20 20 20 20  | y.;;.(none)/(xor)/(border.c).... | 
| 28a0 |  20 20 20 20 20 20 20 20 20 20 20 20 58 20 20 20    20 20 58 20 20 20 20 20 58 20 20 20 20 20 58 20  | ............X.....X.....X.....X. | 
| 28c0 |  20 20 20 20 58 0a 3b 3b 20 28 73 68 61 64 6f 77    5f 2a 20 74 29 20 20 20 20 20 20 20 20 20 20 20  | ....X.;;.(shadow_*.t)........... | 
| 28e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    58 0a 3b 3b 20 28 62 6f 72 64 65 72 5f 61 76 69  | ................X.;;.(border_avi | 
| 2900 |  73 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 58 20 20 20  | s)..........................X... | 
| 2920 |  20 20 20 20 20 20 20 20 58 20 20 20 20 20 20 20    20 20 20 20 58 0a 3b 3b 20 28 68 69 6c 69 74 65  | ........X...........X.;;.(hilite | 
| 2940 |  20 63 6f 6c 6f 72 29 20 2f 20 28 6f 70 61 63 69    74 79 20 6f 29 20 20 20 20 20 20 20 20 20 20 20  | .color)./.(opacity.o)........... | 
| 2960 |  58 0a 3b 3b 20 28 61 72 72 6f 77 29 20 2f 20 28    77 69 64 74 68 20 77 29 20 2f 20 28 6c 69 6e 65  | X.;;.(arrow)./.(width.w)./.(line | 
| 2980 |  63 6c 72 20 63 29 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 58 0a  | clr.c)........................X. | 
| 29a0 |  3b 3b 20 28 62 61 63 6b 63 6c 72 20 63 29 20 2f    20 28 74 65 78 74 63 6c 72 20 63 29 20 2f 20 28  | ;;.(backclr.c)./.(textclr.c)./.( | 
| 29c0 |  70 75 73 68 70 69 6e 29 20 20 20 20 20 20 20 20    58 0a 3b 3b 0a 3b 3b 20 63 20 3d 20 23 52 52 47  | pushpin)........X.;;.;;.c.=.#RRG | 
| 29e0 |  47 42 42 20 20 20 74 20 3d 20 74 68 69 63 6b 6e    65 73 73 20 28 31 2e 2e 33 32 29 0a 3b 3b 20 6f  | GBB...t.=.thickness.(1..32).;;.o | 
| 2a00 |  20 3d 20 6f 70 61 63 69 74 79 20 3d 20 30 2e 2e    32 30 30 20 28 79 65 73 29 0a 3b 3b 0a 3b 3b 20  | .=.opacity.=.0..200.(yes).;;.;;. | 
| 2a20 |  7a 6f 6e 65 73 3a 20 70 61 67 65 2c 20 63 6f 6c    75 6d 6e 2c 20 72 65 67 69 6f 6e 2c 20 70 61 72  | zones:.page,.column,.region,.par | 
| 2a40 |  61 2c 20 6c 69 6e 65 2c 20 77 6f 72 64 2c 20 61    6e 64 20 63 68 61 72 0a 3b 3b 20 61 72 65 61 73  | a,.line,.word,.and.char.;;.areas | 
| 2a60 |  3a 20 72 65 63 74 2c 20 74 65 78 74 2c 20 6f 76    61 6c 2c 20 6c 69 6e 65 2c 20 61 6e 64 20 70 6f  | :.rect,.text,.oval,.line,.and.po | 
| 2a80 |  6c 79 0a 0a 28 72 65 71 75 69 72 65 20 27 69 6d    61 67 65 2d 6d 6f 64 65 29 0a 28 65 76 61 6c 2d  | ly..(require.'image-mode).(eval- | 
| 2aa0 |  77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28    72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29  | when-compile...(require.'cl-lib) | 
| 2ac0 |  29 0a 0a 28 64 65 66 67 72 6f 75 70 20 64 6a 76    75 20 6e 69 6c 0a 20 20 22 44 6a 76 75 20 6d 6f  | )..(defgroup.djvu.nil..."Djvu.mo | 
| 2ae0 |  64 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77    70 0a 20 20 3a 70 72 65 66 69 78 20 22 64 6a 76  | de."...:group.'wp...:prefix."djv | 
| 2b00 |  75 2d 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d    20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 68 69 67 68  | u-")..(defcustom.djvu-color-high | 
| 2b20 |  6c 69 67 68 74 20 22 79 65 6c 6c 6f 77 22 0a 20    20 22 44 65 66 61 75 6c 74 20 63 6f 6c 6f 72 20  | light."yellow"..."Default.color. | 
| 2b40 |  66 6f 72 20 68 69 67 68 6c 69 67 68 74 69 6e 67    2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 64 6a 76  | for.highlighting."...:group.'djv | 
| 2b60 |  75 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e    67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 64  | u...:type.'string)..(defcustom.d | 
| 2b80 |  6a 76 75 2d 63 6f 6c 6f 72 2d 68 69 6d 61 72 6b    20 22 72 65 64 22 0a 20 20 22 44 65 66 61 75 6c  | jvu-color-himark."red"..."Defaul | 
| 2ba0 |  74 20 63 6f 6c 6f 72 20 66 6f 72 20 68 69 67 68    6d 61 72 6b 69 6e 67 2e 22 0a 20 20 3a 67 72 6f  | t.color.for.highmarking."...:gro | 
| 2bc0 |  75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79 70 65    20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63  | up.'djvu...:type.'string)..(defc | 
| 2be0 |  75 73 74 6f 6d 20 64 6a 76 75 2d 63 6f 6c 6f 72    2d 75 72 6c 20 22 62 6c 75 65 22 0a 20 20 22 44  | ustom.djvu-color-url."blue"..."D | 
| 2c00 |  65 66 61 75 6c 74 20 63 6f 6c 6f 72 20 66 6f 72    20 55 52 4c 73 2e 22 0a 20 20 3a 67 72 6f 75 70  | efault.color.for.URLs."...:group | 
| 2c20 |  20 27 64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27    73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73  | .'djvu...:type.'string)..(defcus | 
| 2c40 |  74 6f 6d 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 62    61 63 6b 67 72 6f 75 6e 64 20 22 77 68 69 74 65  | tom.djvu-color-background."white | 
| 2c60 |  22 0a 20 20 22 44 65 66 61 75 6c 74 20 62 61 63    6b 67 72 6f 75 6e 64 2e 22 0a 20 20 3a 67 72 6f  | "..."Default.background."...:gro | 
| 2c80 |  75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79 70 65    20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63  | up.'djvu...:type.'string)..(defc | 
| 2ca0 |  75 73 74 6f 6d 20 64 6a 76 75 2d 63 6f 6c 6f 72    2d 6c 69 6e 65 20 22 62 6c 61 63 6b 22 0a 20 20  | ustom.djvu-color-line."black"... | 
| 2cc0 |  22 44 65 66 61 75 6c 74 20 6c 69 6e 65 20 63 6f    6c 6f 72 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27  | "Default.line.color."...:group.' | 
| 2ce0 |  64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27 73 74    72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f  | djvu...:type.'string)..(defcusto | 
| 2d00 |  6d 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 61 6c 69    73 74 0a 20 20 3b 3b 20 49 66 20 74 68 65 20 6b  | m.djvu-color-alist...;;.If.the.k | 
| 2d20 |  65 79 73 20 61 72 65 20 73 74 72 69 6e 67 73 2c    20 74 68 65 79 20 61 72 65 20 64 69 72 65 63 74  | eys.are.strings,.they.are.direct | 
| 2d40 |  6c 79 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69    74 68 20 77 68 61 74 0a 20 20 3b 3b 20 77 65 20  | ly.compatible.with.what...;;.we. | 
| 2d60 |  67 65 74 20 62 61 63 6b 20 66 72 6f 6d 20 73 6f    6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 60 63 6f  | get.back.from.something.like.`co | 
| 2d80 |  6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 27 2e 0a    20 20 27 28 28 22 72 65 64 22 20 20 20 20 20 2e  | mpleting-read'....'(("red"...... | 
| 2da0 |  20 22 23 46 46 30 30 37 30 22 29 20 3b 20 30 0a    20 20 20 20 28 22 67 72 65 65 6e 22 20 20 20 2e  | ."#FF0070").;.0.....("green".... | 
| 2dc0 |  20 22 23 30 30 46 46 30 30 22 29 20 3b 20 31 0a    20 20 20 20 28 22 62 6c 75 65 22 20 20 20 20 2e  | ."#00FF00").;.1.....("blue"..... | 
| 2de0 |  20 22 23 36 36 36 36 46 46 22 29 20 3b 20 32 0a    20 20 20 20 28 22 79 65 6c 6c 6f 77 22 20 20 2e  | ."#6666FF").;.2.....("yellow"... | 
| 2e00 |  20 22 23 45 45 46 46 30 30 22 29 20 3b 20 33 0a    20 20 20 20 28 22 6f 72 61 6e 67 65 22 20 20 2e  | ."#EEFF00").;.3.....("orange"... | 
| 2e20 |  20 22 23 46 46 37 46 30 30 22 29 20 3b 20 34 0a    20 20 20 20 28 22 6d 61 67 65 6e 74 61 22 20 2e  | ."#FF7F00").;.4.....("magenta".. | 
| 2e40 |  20 22 23 46 46 30 30 46 46 22 29 20 3b 20 35 0a    20 20 20 20 28 22 70 75 72 70 6c 65 22 20 20 2e  | ."#FF00FF").;.5.....("purple"... | 
| 2e60 |  20 22 23 37 46 36 30 46 46 22 29 20 3b 20 36 0a    20 20 20 20 28 22 63 79 61 6e 22 20 20 20 20 2e  | ."#7F60FF").;.6.....("cyan"..... | 
| 2e80 |  20 22 23 30 30 46 46 46 46 22 29 20 3b 20 37 0a    20 20 20 20 28 22 70 69 6e 6b 22 20 20 20 20 2e  | ."#00FFFF").;.7.....("pink"..... | 
| 2ea0 |  20 22 23 46 46 36 30 36 30 22 29 20 3b 20 38 0a    20 20 20 20 28 22 77 68 69 74 65 22 20 20 20 2e  | ."#FF6060").;.8.....("white".... | 
| 2ec0 |  20 22 23 46 46 46 46 46 46 22 29 20 3b 20 39 0a    20 20 20 20 28 22 62 6c 61 63 6b 22 20 20 20 2e  | ."#FFFFFF").;.9.....("black".... | 
| 2ee0 |  20 22 23 30 30 30 30 30 30 22 29 29 3b 20 31 30    0a 20 20 22 41 6c 69 73 74 20 6f 66 20 63 6f 6c  | ."#000000"));.10..."Alist.of.col | 
| 2f00 |  6f 72 73 20 66 6f 72 20 68 69 67 68 6c 69 67 68    74 69 6e 67 2e 22 0a 20 20 3a 67 72 6f 75 70 20  | ors.for.highlighting."...:group. | 
| 2f20 |  27 64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27 28    72 65 70 65 61 74 20 28 63 6f 6e 73 20 28 73 74  | 'djvu...:type.'(repeat.(cons.(st | 
| 2f40 |  72 69 6e 67 29 20 28 73 74 72 69 6e 67 29 29 29    29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 64 6a  | ring).(string))))..(defcustom.dj | 
| 2f60 |  76 75 2d 6c 69 6e 65 2d 77 69 64 74 68 20 31 0a    20 20 22 44 65 66 61 75 6c 74 20 6c 69 6e 65 20  | vu-line-width.1..."Default.line. | 
| 2f80 |  77 69 64 74 68 2e 22 0a 20 20 3a 67 72 6f 75 70    20 27 64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27  | width."...:group.'djvu...:type.' | 
| 2fa0 |  69 6e 74 65 67 65 72 29 0a 0a 28 64 65 66 63 75    73 74 6f 6d 20 64 6a 76 75 2d 6f 70 61 63 69 74  | integer)..(defcustom.djvu-opacit | 
| 2fc0 |  79 20 35 30 0a 20 20 22 44 65 66 61 75 6c 74 20    6f 70 61 63 69 74 79 20 66 6f 72 20 48 69 67 68  | y.50..."Default.opacity.for.High | 
| 2fe0 |  6c 69 67 68 74 69 6e 67 2e 22 0a 20 20 3a 67 72    6f 75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79 70  | lighting."...:group.'djvu...:typ | 
| 3000 |  65 20 27 69 6e 74 65 67 65 72 29 0a 0a 28 64 65    66 63 75 73 74 6f 6d 20 64 6a 76 75 2d 61 72 65  | e.'integer)..(defcustom.djvu-are | 
| 3020 |  61 73 2d 6a 75 73 74 69 66 79 20 30 2e 30 32 0a    20 20 22 55 70 70 65 72 20 74 68 72 65 73 68 6f  | as-justify.0.02..."Upper.thresho | 
| 3040 |  6c 64 20 66 6f 72 20 6a 75 73 74 69 66 79 69 6e    67 20 61 72 65 61 20 63 6f 6f 72 64 69 6e 61 74  | ld.for.justifying.area.coordinat | 
| 3060 |  65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 64    6a 76 75 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d  | es."...:group.'djvu...:type.'num | 
| 3080 |  62 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d    20 64 6a 76 75 2d 66 69 6c 6c 2d 63 6f 6c 75 6d  | ber)..(defcustom.djvu-fill-colum | 
| 30a0 |  6e 20 35 30 0a 20 20 22 46 69 6c 6c 20 63 6f 6c    75 6d 6e 20 66 6f 72 20 44 6a 76 75 20 61 6e 6e  | n.50..."Fill.column.for.Djvu.ann | 
| 30c0 |  6f 74 61 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72    6f 75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79 70  | otations."...:group.'djvu...:typ | 
| 30e0 |  65 20 27 69 6e 74 65 67 65 72 29 0a 0a 28 64 65    66 63 75 73 74 6f 6d 20 64 6a 76 75 2d 73 63 72  | e.'integer)..(defcustom.djvu-scr | 
| 3100 |  69 70 74 2d 62 75 66 66 65 72 20 22 2a 64 6a 76    75 2a 22 0a 20 20 22 44 65 66 61 75 6c 74 20 62  | ipt-buffer."*djvu*"..."Default.b | 
| 3120 |  75 66 66 65 72 20 66 6f 72 20 5c 22 72 61 77 5c    22 20 64 6a 76 75 73 65 64 20 73 63 72 69 70 74  | uffer.for.\"raw\".djvused.script | 
| 3140 |  73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 64 6a    76 75 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69  | s."...:group.'djvu...:type.'stri | 
| 3160 |  6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20    64 6a 76 75 2d 62 75 66 66 65 72 2d 6e 61 6d 65  | ng)..(defcustom.djvu-buffer-name | 
| 3180 |  2d 65 78 74 65 6e 73 69 6f 6e 73 0a 20 20 27 28    22 22 20 22 2d 74 22 20 22 2d 61 22 20 22 2d 73  | -extensions...'(""."-t"."-a"."-s | 
| 31a0 |  22 20 22 2d 62 22 20 22 2d 6f 22 29 0a 20 20 22    45 78 74 65 6e 73 69 6f 6e 73 20 66 6f 72 20 44  | "."-b"."-o")..."Extensions.for.D | 
| 31c0 |  6a 76 75 20 62 75 66 66 65 72 20 6e 61 6d 65 73    2e 0a 54 68 69 73 20 69 73 20 61 20 6c 69 73 74  | jvu.buffer.names..This.is.a.list | 
| 31e0 |  20 77 69 74 68 20 73 69 78 20 65 6c 65 6d 65 6e    74 73 20 28 52 45 41 44 20 54 45 58 54 20 41 4e  | .with.six.elements.(READ.TEXT.AN | 
| 3200 |  4e 4f 54 20 53 48 41 52 45 44 20 42 4f 4f 4b 4d    41 52 4b 53 20 4f 55 54 4c 49 4e 45 29 2e 22 0a  | NOT.SHARED.BOOKMARKS.OUTLINE).". | 
| 3220 |  20 20 3a 67 72 6f 75 70 20 27 64 6a 76 75 0a 20    20 3a 74 79 70 65 20 27 28 6c 69 73 74 20 28 73  | ..:group.'djvu...:type.'(list.(s | 
| 3240 |  74 72 69 6e 67 29 20 28 73 74 72 69 6e 67 29 20    28 73 74 72 69 6e 67 29 20 28 73 74 72 69 6e 67  | tring).(string).(string).(string | 
| 3260 |  29 20 28 73 74 72 69 6e 67 29 20 28 73 74 72 69    6e 67 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f  | ).(string).(string)))..(defcusto | 
| 3280 |  6d 20 64 6a 76 75 2d 69 6d 61 67 65 2d 73 69 7a    65 20 31 30 32 34 0a 20 20 22 53 69 7a 65 20 6f  | m.djvu-image-size.1024..."Size.o | 
| 32a0 |  66 20 69 6e 74 65 72 6e 61 6c 6c 79 20 64 69 73    70 6c 61 79 65 64 20 69 6d 61 67 65 2e 20 20 54  | f.internally.displayed.image...T | 
| 32c0 |  68 69 73 20 69 73 20 4d 41 58 20 28 77 69 64 74    68 2c 20 68 65 69 67 68 74 29 2e 22 0a 20 20 3a  | his.is.MAX.(width,.height)."...: | 
| 32e0 |  67 72 6f 75 70 20 27 64 6a 76 75 0a 20 20 3a 74    79 70 65 20 27 69 6e 74 65 67 65 72 29 0a 0a 28  | group.'djvu...:type.'integer)..( | 
| 3300 |  64 65 66 63 75 73 74 6f 6d 20 64 6a 76 75 2d 69    6e 68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 74  | defcustom.djvu-inherit-input-met | 
| 3320 |  68 6f 64 20 74 0a 20 20 22 49 66 20 6e 6f 6e 2d    6e 69 6c 20 63 61 6c 6c 73 20 6f 66 20 60 72 65  | hod.t..."If.non-nil.calls.of.`re | 
| 3340 |  61 64 2d 73 74 72 69 6e 67 27 20 69 6e 68 65 72    69 74 20 74 68 65 20 69 6e 70 75 74 20 6d 65 74  | ad-string'.inherit.the.input.met | 
| 3360 |  68 6f 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27    64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27 62 6f  | hod."...:group.'djvu...:type.'bo | 
| 3380 |  6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74    6f 6d 20 64 6a 76 75 2d 64 6a 76 69 65 77 2d 63  | olean)..(defcustom.djvu-djview-c | 
| 33a0 |  6f 6d 6d 61 6e 64 20 22 64 6a 76 69 65 77 22 0a    20 20 22 43 6f 6d 6d 61 6e 64 20 66 6f 72 20 74  | ommand."djview"..."Command.for.t | 
| 33c0 |  68 65 20 44 6a 76 75 20 56 69 65 77 65 72 2e 22    0a 20 20 3a 67 72 6f 75 70 20 27 64 6a 76 75 0a  | he.Djvu.Viewer."...:group.'djvu. | 
| 33e0 |  20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29    0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 64 6a 76  | ..:type.'string)..(defcustom.djv | 
| 3400 |  75 2d 64 6a 76 69 65 77 2d 6f 70 74 69 6f 6e 73    20 6e 69 6c 0a 20 20 22 4c 69 73 74 20 6f 66 20  | u-djview-options.nil..."List.of. | 
| 3420 |  63 6f 6d 6d 61 6e 64 20 6f 70 74 69 6f 6e 73 20    66 6f 72 20 74 68 65 20 44 6a 76 75 20 56 69 65  | command.options.for.the.Djvu.Vie | 
| 3440 |  77 65 72 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27    64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27 28 72  | wer."...:group.'djvu...:type.'(r | 
| 3460 |  65 70 65 61 74 20 28 73 74 72 69 6e 67 29 29 29    0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 64 6a 76  | epeat.(string)))..(defcustom.djv | 
| 3480 |  75 2d 66 69 6c 65 2d 6e 61 6d 65 2d 65 78 74 65    6e 73 69 6f 6e 2d 72 65 20 28 72 65 67 65 78 70  | u-file-name-extension-re.(regexp | 
| 34a0 |  2d 6f 70 74 20 27 28 22 2e 64 6a 76 75 22 20 22    2e 64 6a 62 7a 22 20 22 2e 69 66 66 22 29 29 0a  | -opt.'(".djvu".".djbz".".iff")). | 
| 34c0 |  20 20 22 52 65 67 75 6c 61 72 20 65 78 70 72 65    73 73 69 6f 6e 20 66 6f 72 20 66 69 6c 65 20 6e  | .."Regular.expression.for.file.n | 
| 34e0 |  61 6d 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 69    6e 20 62 75 6e 64 6c 65 64 20 6d 75 6c 74 69 2d  | ame.extensions.in.bundled.multi- | 
| 3500 |  70 61 67 65 20 64 6f 63 75 6d 65 6e 74 73 2e 0a    54 68 65 73 65 20 65 78 74 65 6e 73 69 6f 6e 73  | page.documents..These.extensions | 
| 3520 |  20 69 6e 63 6c 75 64 65 20 74 68 65 20 70 65 72    69 6f 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27  | .include.the.period."...:group.' | 
| 3540 |  64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27 72 65    67 65 78 70 29 0a 0a 28 64 65 66 63 75 73 74 6f  | djvu...:type.'regexp)..(defcusto | 
| 3560 |  6d 20 64 6a 76 75 2d 72 65 61 64 2d 70 72 6f 70    2d 6e 65 77 6c 69 6e 65 20 32 0a 20 20 22 4e 75  | m.djvu-read-prop-newline.2..."Nu | 
| 3580 |  6d 62 65 72 20 6f 66 20 6e 65 77 6c 69 6e 65 20    63 68 61 72 61 63 74 65 72 73 20 69 6e 20 52 65  | mber.of.newline.characters.in.Re | 
| 35a0 |  61 64 20 62 75 66 66 65 72 20 66 6f 72 20 63 6f    6e 73 65 63 75 74 69 76 65 20 72 65 67 69 6f 6e  | ad.buffer.for.consecutive.region | 
| 35c0 |  2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 64 6a 76    75 0a 20 20 3a 74 79 70 65 20 27 69 6e 74 65 67  | ."...:group.'djvu...:type.'integ | 
| 35e0 |  65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20    64 6a 76 75 2d 6f 75 74 6c 69 6e 65 2d 66 61 63  | er)..(defcustom.djvu-outline-fac | 
| 3600 |  65 73 0a 20 20 3b 3b 20 53 61 6d 65 20 61 73 20    60 6f 75 74 6c 69 6e 65 2d 66 6f 6e 74 2d 6c 6f  | es...;;.Same.as.`outline-font-lo | 
| 3620 |  63 6b 2d 66 61 63 65 73 27 0a 20 20 5b 66 6f 6e    74 2d 6c 6f 63 6b 2d 66 75 6e 63 74 69 6f 6e 2d  | ck-faces'...[font-lock-function- | 
| 3640 |  6e 61 6d 65 2d 66 61 63 65 20 66 6f 6e 74 2d 6c    6f 63 6b 2d 76 61 72 69 61 62 6c 65 2d 6e 61 6d  | name-face.font-lock-variable-nam | 
| 3660 |  65 2d 66 61 63 65 0a 20 20 66 6f 6e 74 2d 6c 6f    63 6b 2d 6b 65 79 77 6f 72 64 2d 66 61 63 65 20  | e-face...font-lock-keyword-face. | 
| 3680 |  66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e    74 2d 66 61 63 65 0a 20 20 66 6f 6e 74 2d 6c 6f  | font-lock-comment-face...font-lo | 
| 36a0 |  63 6b 2d 74 79 70 65 2d 66 61 63 65 20 66 6f 6e    74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d  | ck-type-face.font-lock-constant- | 
| 36c0 |  66 61 63 65 0a 20 20 66 6f 6e 74 2d 6c 6f 63 6b    2d 62 75 69 6c 74 69 6e 2d 66 61 63 65 20 66 6f  | face...font-lock-builtin-face.fo | 
| 36e0 |  6e 74 2d 6c 6f 63 6b 2d 73 74 72 69 6e 67 2d 66    61 63 65 5d 0a 20 20 22 56 65 63 74 6f 72 20 6f  | nt-lock-string-face]..."Vector.o | 
| 3700 |  66 20 66 61 63 65 73 20 66 6f 72 20 4f 75 74 6c    69 6e 65 20 62 75 66 66 65 72 2e 22 0a 20 20 3a  | f.faces.for.Outline.buffer."...: | 
| 3720 |  67 72 6f 75 70 20 27 64 6a 76 75 0a 20 20 3a 74    79 70 65 20 27 28 73 65 78 70 29 29 0a 0a 28 64  | group.'djvu...:type.'(sexp))..(d | 
| 3740 |  65 66 63 75 73 74 6f 6d 20 64 6a 76 75 2d 73 74    72 69 6e 67 2d 72 65 70 6c 61 63 65 2d 6c 69 73  | efcustom.djvu-string-replace-lis | 
| 3760 |  74 0a 20 20 27 28 28 22 2d 5c 6e 2b 5c 5c 28 5b    5b 3a 6c 6f 77 65 72 3a 5d 5d 5c 5c 29 22 20 2e  | t...'(("-\n+\\([[:lower:]]\\)".. | 
| 3780 |  20 22 5c 5c 31 22 29 20 3b 20 68 79 70 68 65 6e    61 74 69 6f 6e 0a 20 20 20 20 28 22 2d 5c 6e 2b  | ."\\1").;.hyphenation.....("-\n+ | 
| 37a0 |  22 20 2e 20 22 2d 22 29 20 3b 20 68 79 70 68 65    6e 61 74 69 6f 6e 0a 20 20 20 20 28 22 5b 5c 6e  | "..."-").;.hyphenation.....("[\n | 
| 37c0 |  20 5d 2b 22 20 2e 20 22 20 22 29 29 20 3b 20 77    68 69 74 65 20 73 70 61 63 65 0a 20 20 22 52 65  | .]+"...".")).;.white.space..."Re | 
| 37e0 |  70 6c 61 63 65 6d 65 6e 74 20 6c 69 73 74 20 66    6f 72 20 74 65 78 74 20 73 74 72 69 6e 67 73 2e  | placement.list.for.text.strings. | 
| 3800 |  0a 45 61 63 68 20 65 6c 65 6d 65 6e 74 20 69 73    20 6f 66 20 74 68 65 20 66 6f 72 6d 20 28 52 45  | .Each.element.is.of.the.form.(RE | 
| 3820 |  47 45 58 50 20 2e 20 52 45 50 29 2e 0a 55 73 65    64 20 62 79 20 60 64 6a 76 75 2d 72 65 67 69 6f  | GEXP...REP)..Used.by.`djvu-regio | 
| 3840 |  6e 2d 73 74 72 69 6e 67 27 2e 22 0a 20 20 3a 67    72 6f 75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79  | n-string'."...:group.'djvu...:ty | 
| 3860 |  70 65 20 27 28 72 65 70 65 61 74 20 28 63 6f 6e    73 20 28 72 65 67 65 78 70 29 20 28 73 74 72 69  | pe.'(repeat.(cons.(regexp).(stri | 
| 3880 |  6e 67 29 29 29 29 0a 0a 28 64 65 66 63 75 73 74    6f 6d 20 64 6a 76 75 2d 72 65 63 74 2d 61 72 65  | ng))))..(defcustom.djvu-rect-are | 
| 38a0 |  61 2d 6e 6f 64 75 70 73 20 6e 69 6c 0a 20 20 22    49 66 20 6e 6f 6e 2d 6e 69 6c 20 60 64 6a 76 75  | a-nodups.nil..."If.non-nil.`djvu | 
| 38c0 |  2d 72 65 63 74 2d 61 72 65 61 27 20 64 6f 65 73    20 6e 6f 74 20 63 72 65 61 74 65 20 6d 75 6c 74  | -rect-area'.does.not.create.mult | 
| 38e0 |  69 70 6c 65 20 72 65 63 74 73 20 66 6f 72 20 73    61 6d 65 20 61 72 65 61 73 2e 22 0a 20 20 3a 67  | iple.rects.for.same.areas."...:g | 
| 3900 |  72 6f 75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79    70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64  | roup.'djvu...:type.'boolean)..(d | 
| 3920 |  65 66 63 75 73 74 6f 6d 20 64 6a 76 75 2d 63 6f    6e 74 69 6e 75 6f 75 73 20 6e 69 6c 0a 20 20 22  | efcustom.djvu-continuous.nil..." | 
| 3940 |  57 68 65 6e 20 6e 6f 6e 2d 6e 69 6c 2c 20 73 63    72 6f 6c 6c 69 6e 67 20 74 6f 20 74 68 65 20 70  | When.non-nil,.scrolling.to.the.p | 
| 3960 |  61 67 65 20 65 64 67 65 20 61 64 76 61 6e 63 65    73 20 74 6f 20 6e 65 78 74 2f 70 72 65 76 69 6f  | age.edge.advances.to.next/previo | 
| 3980 |  75 73 20 70 61 67 65 2e 22 0a 20 20 3a 67 72 6f    75 70 20 27 64 6a 76 75 0a 20 20 3a 74 79 70 65  | us.page."...:group.'djvu...:type | 
| 39a0 |  20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66    63 75 73 74 6f 6d 20 64 6a 76 75 2d 69 6d 61 67  | .'boolean)..(defcustom.djvu-imag | 
| 39c0 |  65 2d 7a 6f 6f 6d 20 31 2e 32 0a 20 20 22 5a 6f    6f 6d 20 66 61 63 74 6f 72 20 66 6f 72 20 69 6d  | e-zoom.1.2..."Zoom.factor.for.im | 
| 39e0 |  61 67 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20    27 64 6a 76 75 0a 20 20 3a 74 79 70 65 20 27 6e  | ages."...:group.'djvu...:type.'n | 
| 3a00 |  75 6d 62 65 72 29 0a 0a 28 64 65 66 63 75 73 74    6f 6d 20 64 6a 76 75 2d 64 65 73 63 65 6e 64 65  | umber)..(defcustom.djvu-descende | 
| 3a20 |  72 73 2d 72 65 20 22 5b 28 29 2c 3b 51 67 6a 70    71 79 5d 22 20 3b 20 73 6f 6d 65 20 66 6f 6e 74  | rs-re."[(),;Qgjpqy]".;.some.font | 
| 3a40 |  73 20 61 6c 73 6f 20 60 4a 27 20 61 6e 64 20 60    66 27 0a 20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f  | s.also.`J'.and.`f'...;;.https:// | 
| 3a60 |  65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67    2f 77 69 6b 69 2f 44 65 73 63 65 6e 64 65 72 0a  | en.wikipedia.org/wiki/Descender. | 
| 3a80 |  20 20 22 52 65 67 65 78 70 20 6d 61 74 63 68 69    6e 67 20 61 6e 79 20 64 65 73 63 65 6e 64 69 6e  | .."Regexp.matching.any.descendin | 
| 3aa0 |  67 20 63 68 61 72 61 63 74 65 72 73 20 6f 72 20    6e 69 6c 2e 0a 57 69 74 68 20 44 6a 76 75 20 6d  | g.characters.or.nil..With.Djvu.m | 
| 3ac0 |  6f 64 65 2c 20 6d 61 70 61 72 65 61 73 20 6f 66    20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20 6d 61 74  | ode,.mapareas.of.annotations.mat | 
| 3ae0 |  63 68 20 74 69 67 68 74 20 74 68 65 20 74 65 78    74 20 74 68 65 79 20 72 65 66 65 72 20 74 6f 2e  | ch.tight.the.text.they.refer.to. | 
| 3b00 |  0a 54 68 69 73 20 6d 61 79 20 61 70 70 65 61 72    20 76 69 73 75 61 6c 6c 79 20 61 77 6b 77 61 72  | .This.may.appear.visually.awkwar | 
| 3b20 |  64 20 69 66 20 74 68 65 20 6c 6f 77 65 72 20 62    6f 75 6e 64 20 6f 66 20 74 68 65 20 6d 61 70 61  | d.if.the.lower.bound.of.the.mapa | 
| 3b40 |  72 65 61 20 6c 69 6e 65 73 20 75 70 0a 77 69 74    68 20 74 68 65 20 62 61 73 65 6c 69 6e 65 20 6f  | rea.lines.up.with.the.baseline.o | 
| 3b60 |  66 20 74 68 65 20 74 65 78 74 20 62 65 63 61 75    73 65 20 74 68 65 20 74 65 78 74 20 63 6f 6e 74  | f.the.text.because.the.text.cont | 
| 3b80 |  61 69 6e 73 20 6e 6f 20 64 65 73 63 65 6e 64 65    72 73 0a 66 72 6f 6d 20 63 68 61 72 61 63 74 65  | ains.no.descenders.from.characte | 
| 3ba0 |  72 73 20 73 75 63 68 20 61 73 20 60 67 27 20 6f    72 20 60 71 27 2e 20 20 54 68 65 6e 2c 20 69 66  | rs.such.as.`g'.or.`q'...Then,.if | 
| 3bc0 |  20 74 68 65 20 74 65 78 74 20 64 6f 65 73 20 6e    6f 74 20 6d 61 74 63 68 0a 74 68 65 20 72 65 67  | .the.text.does.not.match.the.reg | 
| 3be0 |  65 78 70 20 60 64 6a 76 75 2d 64 65 73 63 65 6e    64 65 72 73 2d 72 65 27 2c 20 74 68 65 20 61 6e  | exp.`djvu-descenders-re',.the.an | 
| 3c00 |  6e 6f 74 61 74 69 6f 6e 20 61 72 65 61 20 77 69    6c 6c 20 64 65 73 63 65 6e 64 0a 73 6c 69 67 68  | notation.area.will.descend.sligh | 
| 3c20 |  74 6c 79 20 62 65 6c 6f 77 20 74 68 65 20 62 61    73 65 6c 69 6e 65 2e 22 0a 20 20 3a 67 72 6f 75  | tly.below.the.baseline."...:grou | 
| 3c40 |  70 20 27 64 6a 76 75 0a 20 20 3a 74 79 70 65 20    27 28 63 68 6f 69 63 65 20 72 65 67 65 78 70 20  | p.'djvu...:type.'(choice.regexp. | 
| 3c60 |  28 63 6f 6e 73 74 20 6e 69 6c 29 29 29 0a 0a 28    64 65 66 63 75 73 74 6f 6d 20 64 6a 76 75 2d 61  | (const.nil)))..(defcustom.djvu-a | 
| 3c80 |  73 63 65 6e 64 65 72 73 2d 72 65 20 22 5b 5e 2d    2c 2e 3b 3a 61 63 65 67 6d 2d 73 75 2d 7a 5c 73  | scenders-re."[^-,.;:acegm-su-z\s | 
| 3ca0 |  5d 22 0a 20 20 22 52 65 67 65 78 70 20 6d 61 74    63 68 69 6e 67 20 61 73 63 65 6e 64 69 6e 67 20  | ]"..."Regexp.matching.ascending. | 
| 3cc0 |  63 68 61 72 61 63 74 65 72 73 20 6f 72 20 6e 69    6c 2c 20 73 65 65 20 60 64 6a 76 75 2d 64 65 73  | characters.or.nil,.see.`djvu-des | 
| 3ce0 |  63 65 6e 64 65 72 73 2d 72 65 27 2e 22 0a 20 20    3a 67 72 6f 75 70 20 27 64 6a 76 75 0a 20 20 3a  | cenders-re'."...:group.'djvu...: | 
| 3d00 |  74 79 70 65 20 27 28 63 68 6f 69 63 65 20 72 65    67 65 78 70 20 28 63 6f 6e 73 74 20 6e 69 6c 29  | type.'(choice.regexp.(const.nil) | 
| 3d20 |  29 29 0a 0a 3b 3b 20 49 6e 74 65 72 6e 61 6c 20    76 61 72 69 61 62 6c 65 73 0a 0a 28 64 65 66 76  | ))..;;.Internal.variables..(defv | 
| 3d40 |  61 72 20 64 6a 76 75 2d 63 6f 6f 72 64 73 2d 72    65 0a 20 20 28 66 6f 72 6d 61 74 20 22 5c 5c 28  | ar.djvu-coords-re...(format."\\( | 
| 3d60 |  3f 32 3a 25 73 5c 5c 29 22 0a 20 20 20 20 20 20    20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 28  | ?2:%s\\)"...........(mapconcat.( | 
| 3d80 |  6c 61 6d 62 64 61 20 28 69 29 20 28 66 6f 72 6d    61 74 20 22 5c 5c 28 3f 25 64 3a 2d 3f 5b 30 2d  | lambda.(i).(format."\\(?%d:-?[0- | 
| 3da0 |  39 5d 2b 5c 5c 29 22 20 69 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 9]+\\)".i))..................... | 
| 3dc0 |  20 27 28 33 20 34 20 35 20 36 29 20 22 5b 5c 73    5c 74 5d 2b 22 29 29 0a 20 20 22 52 65 67 65 78  | .'(3.4.5.6)."[\s\t]+"))..."Regex | 
| 3de0 |  70 20 6d 61 74 63 68 69 6e 67 20 74 68 65 20 63    6f 6f 72 64 69 6e 61 74 65 73 20 6f 66 20 44 6a  | p.matching.the.coordinates.of.Dj | 
| 3e00 |  76 75 20 61 72 65 61 73 20 61 6e 64 20 7a 6f 6e    65 73 2e 0a 53 75 62 73 74 72 69 6e 67 20 32 3a  | vu.areas.and.zones..Substring.2: | 
| 3e20 |  20 63 6f 6f 72 64 69 6e 61 74 65 73 2c 20 33 2d    36 3a 20 69 6e 64 69 76 69 64 75 61 6c 20 63 6f  | .coordinates,.3-6:.individual.co | 
| 3e40 |  6f 72 64 69 6e 61 74 65 73 2e 22 29 0a 0a 28 64    65 66 76 61 72 20 64 6a 76 75 2d 63 6f 6f 72 64  | ordinates.")..(defvar.djvu-coord | 
| 3e60 |  2d 78 79 2d 72 65 0a 20 20 28 6d 61 70 63 6f 6e    63 61 74 20 28 6c 61 6d 62 64 61 20 28 69 29 20  | -xy-re...(mapconcat.(lambda.(i). | 
| 3e80 |  28 66 6f 72 6d 61 74 20 22 5c 5c 28 3f 25 64 3a    2d 3f 5b 30 2d 39 5d 2b 5c 5c 29 22 20 69 29 29  | (format."\\(?%d:-?[0-9]+\\)".i)) | 
| 3ea0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28    31 20 32 29 20 22 5b 5c 73 5c 74 5d 2b 22 29 0a  | ..............'(1.2)."[\s\t]+"). | 
| 3ec0 |  20 20 22 52 65 67 65 78 70 20 6d 61 74 63 68 69    6e 67 20 70 61 69 72 20 6f 66 20 78 79 20 63 6f  | .."Regexp.matching.pair.of.xy.co | 
| 3ee0 |  6f 72 64 69 6e 61 74 65 73 20 6f 66 20 44 6a 76    75 20 6d 61 70 61 72 65 61 20 70 6f 6c 79 2e 0a  | ordinates.of.Djvu.maparea.poly.. | 
| 3f00 |  53 75 62 73 74 72 69 6e 67 73 20 31 2d 32 3a 20    69 6e 64 69 76 69 64 75 61 6c 20 63 6f 6f 72 64  | Substrings.1-2:.individual.coord | 
| 3f20 |  69 6e 61 74 65 73 2e 22 29 0a 0a 28 64 65 66 76    61 72 20 64 6a 76 75 2d 61 72 65 61 2d 72 65 0a  | inates.")..(defvar.djvu-area-re. | 
| 3f40 |  20 20 28 66 6f 72 6d 61 74 20 22 28 5c 5c 28 3f    31 3a 25 73 5c 5c 29 5b 5c 73 5c 74 5d 2b 25 73  | ..(format."(\\(?1:%s\\)[\s\t]+%s | 
| 3f60 |  5b 29 5c 73 5c 74 5c 6e 5d 22 0a 20 20 20 20 20    20 20 20 20 20 28 72 65 67 65 78 70 2d 6f 70 74  | [)\s\t\n]"...........(regexp-opt | 
| 3f80 |  20 27 28 22 72 65 63 74 22 20 22 6f 76 61 6c 22    20 22 74 65 78 74 22 20 22 6c 69 6e 65 22 20 22  | .'("rect"."oval"."text"."line"." | 
| 3fa0 |  70 6f 6c 79 22 29 29 0a 20 20 20 20 20 20 20 20    20 20 64 6a 76 75 2d 63 6f 6f 72 64 73 2d 72 65  | poly"))...........djvu-coords-re | 
| 3fc0 |  29 0a 20 20 22 52 65 67 65 78 70 20 6d 61 74 63    68 69 6e 67 20 61 20 44 6a 76 75 20 61 72 65 61  | )..."Regexp.matching.a.Djvu.area | 
| 3fe0 |  2e 0a 53 75 62 73 74 72 69 6e 67 20 31 3a 20 61    72 65 61 20 74 79 70 65 2c 20 32 3a 20 63 6f 6f  | ..Substring.1:.area.type,.2:.coo | 
| 4000 |  72 64 69 6e 61 74 65 73 2c 20 33 2d 36 3a 20 69    6e 64 69 76 69 64 75 61 6c 20 63 6f 6f 72 64 69  | rdinates,.3-6:.individual.coordi | 
| 4020 |  6e 61 74 65 73 2e 22 29 0a 0a 28 64 65 66 76 61    72 20 64 6a 76 75 2d 7a 6f 6e 65 2d 72 65 0a 20  | nates.")..(defvar.djvu-zone-re.. | 
| 4040 |  20 28 66 6f 72 6d 61 74 20 22 5b 5c 73 5c 74 5d    2a 28 5c 5c 28 3f 31 3a 25 73 5c 5c 29 5b 5c 73  | .(format."[\s\t]*(\\(?1:%s\\)[\s | 
| 4060 |  5c 74 5d 2b 25 73 5b 5c 73 5c 74 5c 6e 5d 2b 22    20 3b 20 6f 6d 69 74 20 63 6c 6f 73 69 6e 67 20  | \t]+%s[\s\t\n]+".;.omit.closing. | 
| 4080 |  60 29 27 0a 20 20 20 20 20 20 20 20 20 20 28 72    65 67 65 78 70 2d 6f 70 74 20 27 28 22 70 61 67  | `)'...........(regexp-opt.'("pag | 
| 40a0 |  65 22 20 22 63 6f 6c 75 6d 6e 22 20 22 72 65 67    69 6f 6e 22 20 22 70 61 72 61 22 20 22 6c 69 6e  | e"."column"."region"."para"."lin | 
| 40c0 |  65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 22 77 6f 72 64  | e"........................."word | 
| 40e0 |  22 20 22 63 68 61 72 22 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 64 6a 76 75 2d 63 6f 6f 72 64  | "."char"))............djvu-coord | 
| 4100 |  73 2d 72 65 29 0a 20 20 22 52 65 67 65 78 70 20    6d 61 74 63 68 69 6e 67 20 74 68 65 20 62 65 67  | s-re)..."Regexp.matching.the.beg | 
| 4120 |  69 6e 6e 69 6e 67 20 6f 66 20 61 20 44 6a 76 75    20 74 65 78 74 20 7a 6f 6e 65 2e 0a 53 75 62 73  | inning.of.a.Djvu.text.zone..Subs | 
| 4140 |  74 72 69 6e 67 20 31 3a 20 7a 6f 6e 65 20 74 79    70 65 2c 20 32 3a 20 63 6f 6f 72 64 69 6e 61 74  | tring.1:.zone.type,.2:.coordinat | 
| 4160 |  65 73 2c 20 33 2d 36 3a 20 69 6e 64 69 76 69 64    75 61 6c 20 63 6f 6f 72 64 69 6e 61 74 65 73 2e  | es,.3-6:.individual.coordinates. | 
| 4180 |  22 29 0a 0a 28 64 65 66 76 61 72 20 64 6a 76 75    2d 74 65 73 74 20 6e 69 6c 0a 20 20 22 49 66 20  | ")..(defvar.djvu-test.nil..."If. | 
| 41a0 |  6e 6f 6e 2d 6e 69 6c 20 64 6f 20 6e 6f 74 20 70    72 6f 63 65 73 73 20 2f 20 64 65 6c 65 74 65 20  | non-nil.do.not.process./.delete. | 
| 41c0 |  64 6a 76 75 73 65 64 20 73 63 72 69 70 74 73 2e    20 20 55 73 65 66 75 6c 20 66 6f 72 20 74 65 73  | djvused.scripts...Useful.for.tes | 
| 41e0 |  74 69 6e 67 2e 22 29 0a 3b 3b 20 28 73 65 74 71    20 64 6a 76 75 2d 74 65 73 74 20 74 29 20 28 73  | ting.").;;.(setq.djvu-test.t).(s | 
| 4200 |  65 74 71 20 64 6a 76 75 2d 74 65 73 74 20 6e 69    6c 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61  | etq.djvu-test.nil)..(defvar-loca | 
| 4220 |  6c 20 64 6a 76 75 2d 62 75 66 66 65 72 20 6e 69    6c 0a 20 20 22 54 79 70 65 20 6f 66 20 44 6a 76  | l.djvu-buffer.nil..."Type.of.Djv | 
| 4240 |  75 20 62 75 66 66 65 72 2e 22 29 0a 0a 28 64 65    66 76 61 72 20 64 6a 76 75 2d 72 65 63 74 2d 6c  | u.buffer.")..(defvar.djvu-rect-l | 
| 4260 |  69 73 74 20 6e 69 6c 0a 20 20 22 45 78 70 61 6e    64 65 64 20 72 65 63 74 20 6c 69 73 74 20 66 6f  | ist.nil..."Expanded.rect.list.fo | 
| 4280 |  72 20 70 72 6f 70 65 72 74 69 7a 69 6e 67 20 74    68 65 20 52 65 61 64 20 62 75 66 66 65 72 2e 0a  | r.propertizing.the.Read.buffer.. | 
| 42a0 |  54 68 69 73 20 69 73 20 61 20 6c 69 73 74 20 77    69 74 68 20 65 6c 65 6d 65 6e 74 73 20 28 43 4f  | This.is.a.list.with.elements.(CO | 
| 42c0 |  4f 52 44 53 20 55 52 4c 20 54 45 58 54 20 43 4f    4c 4f 52 20 49 44 29 20 73 74 6f 72 65 64 0a 69  | ORDS.URL.TEXT.COLOR.ID).stored.i | 
| 42e0 |  6e 20 60 64 6a 76 75 2d 64 6f 63 2d 72 65 63 74    2d 6c 69 73 74 27 2e 22 29 0a 0a 28 64 65 66 76  | n.`djvu-doc-rect-list'.")..(defv | 
| 4300 |  61 72 20 64 6a 76 75 2d 6c 61 73 74 2d 72 65 63    74 20 6e 69 6c 0a 20 20 22 4c 61 73 74 20 72 65  | ar.djvu-last-rect.nil..."Last.re | 
| 4320 |  63 74 20 75 73 65 64 20 66 6f 72 20 70 72 6f 70    65 72 74 69 7a 69 6e 67 20 74 68 65 20 52 65 61  | ct.used.for.propertizing.the.Rea | 
| 4340 |  64 20 62 75 66 66 65 72 2e 0a 54 68 69 73 20 69    73 20 61 20 6c 69 73 74 20 28 42 45 47 20 45 4e  | d.buffer..This.is.a.list.(BEG.EN | 
| 4360 |  44 20 43 4f 4f 52 44 53 20 55 52 4c 20 54 45 58    54 20 43 4f 4c 4f 52 29 2e 22 29 0a 0a 3b 3b 20  | D.COORDS.URL.TEXT.COLOR).")..;;. | 
| 4380 |  57 65 20 75 73 65 20 76 61 72 69 61 62 6c 65 20    60 64 6a 76 75 2d 72 65 73 6f 6c 76 65 2d 75 72  | We.use.variable.`djvu-resolve-ur | 
| 43a0 |  6c 27 20 61 73 20 61 6e 20 69 6e 74 65 72 6e 61    6c 20 66 6c 61 67 20 77 68 69 6c 65 20 77 65 20  | l'.as.an.internal.flag.while.we. | 
| 43c0 |  75 70 64 61 74 65 0a 3b 3b 20 61 6c 6c 20 69 6e    74 65 72 6e 61 6c 20 55 52 4c 73 20 69 6e 20 61  | update.;;.all.internal.URLs.in.a | 
| 43e0 |  20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 20 76    69 61 20 60 64 6a 76 75 2d 72 65 73 6f 6c 76 65  | .Djvu.document.via.`djvu-resolve | 
| 4400 |  2d 61 6c 6c 2d 75 72 6c 73 27 2e 0a 3b 3b 20 54    68 65 6e 20 77 65 20 75 73 65 20 60 64 6a 76 75  | -all-urls'..;;.Then.we.use.`djvu | 
| 4420 |  2d 64 6f 63 2d 72 65 73 6f 6c 76 65 2d 75 72 6c    27 20 74 6f 20 72 65 6d 65 6d 62 65 72 20 74 68  | -doc-resolve-url'.to.remember.th | 
| 4440 |  69 73 20 73 63 68 65 6d 65 0a 3b 3b 20 61 6e 64    20 66 6f 72 20 61 64 64 69 6e 67 20 6e 65 77 20  | is.scheme.;;.and.for.adding.new. | 
| 4460 |  69 6e 74 65 72 6e 61 6c 20 55 52 4c 73 20 63 6f    6e 73 69 73 74 65 6e 74 20 77 69 74 68 20 74 68  | internal.URLs.consistent.with.th | 
| 4480 |  69 73 20 73 63 68 65 6d 65 2e 0a 28 64 65 66 76    61 72 20 64 6a 76 75 2d 72 65 73 6f 6c 76 65 2d  | is.scheme..(defvar.djvu-resolve- | 
| 44a0 |  75 72 6c 20 6e 69 6c 0a 20 20 22 46 6c 61 67 20    66 6f 72 20 72 65 73 6f 6c 76 69 6e 67 20 69 6e  | url.nil..."Flag.for.resolving.in | 
| 44c0 |  74 65 72 6e 61 6c 20 55 52 4c 73 2e 0a 49 66 20    60 6c 6f 6e 67 27 20 72 65 70 6c 61 63 65 20 73  | ternal.URLs..If.`long'.replace.s | 
| 44e0 |  68 6f 72 74 20 70 61 67 65 20 6e 75 6d 62 65 72    73 20 62 79 20 6c 6f 6e 67 20 46 69 6c 65 49 44  | hort.page.numbers.by.long.FileID | 
| 4500 |  73 2e 0a 49 66 20 60 73 68 6f 72 74 27 20 72 65    70 6c 61 63 65 20 6c 6f 6e 67 20 46 69 6c 65 49  | s..If.`short'.replace.long.FileI | 
| 4520 |  44 73 20 62 79 20 73 68 6f 72 74 20 70 61 67 65    20 6e 75 6d 62 65 72 73 2e 0a 49 66 20 6e 69 6c  | Ds.by.short.page.numbers..If.nil | 
| 4540 |  20 64 6f 20 6e 6f 74 68 69 6e 67 2e 0a 42 69 6e    64 20 74 68 69 73 20 77 69 74 68 20 60 6c 65 74  | .do.nothing..Bind.this.with.`let | 
| 4560 |  27 20 74 6f 20 73 65 6c 65 63 74 20 6f 6e 65 20    6f 66 20 74 68 65 73 65 20 73 63 68 65 6d 65 73  | '.to.select.one.of.these.schemes | 
| 4580 |  2e 22 29 0a 0a 28 64 65 66 76 61 72 20 64 6a 76    75 2d 62 6f 6f 6b 6d 61 72 6b 2d 6c 65 76 65 6c  | .")..(defvar.djvu-bookmark-level | 
| 45a0 |  20 6e 69 6c 0a 20 20 22 43 6f 75 6e 74 65 72 20    66 6f 72 20 62 6f 6f 6b 6d 61 72 6b 20 6c 65 76  | .nil..."Counter.for.bookmark.lev | 
| 45c0 |  65 6c 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 64    6a 76 75 2d 69 6d 61 67 65 2d 6d 6f 64 65 29 20  | el.")..(defvar.djvu-image-mode). | 
| 45e0 |  3b 20 66 75 6c 6c 79 20 64 65 66 69 6e 65 64 20    62 79 20 60 64 65 66 69 6e 65 2d 6d 69 6e 6f 72  | ;.fully.defined.by.`define-minor | 
| 4600 |  2d 6d 6f 64 65 27 20 28 62 75 66 66 65 72 2d 6c    6f 63 61 6c 29 0a 0a 28 64 65 66 76 61 72 20 64  | -mode'.(buffer-local)..(defvar.d | 
| 4620 |  6a 76 75 2d 69 6e 69 74 20 6e 69 6c 0a 20 20 22    4e 6f 6e 2d 6e 69 6c 20 64 75 72 69 6e 67 20 69  | jvu-init.nil..."Non-nil.during.i | 
| 4640 |  6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 6f 66    20 44 6a 76 69 65 77 20 6d 6f 64 65 2e 22 29 0a  | nitialization.of.Djview.mode."). | 
| 4660 |  0a 28 64 65 66 76 61 72 20 64 6a 76 75 2d 63 6f    6c 6f 72 2d 61 74 74 72 69 62 75 74 65 73 20 27  | .(defvar.djvu-color-attributes.' | 
| 4680 |  28 62 6f 72 64 65 72 20 68 69 6c 69 74 65 20 6c    69 6e 65 63 6c 72 20 62 61 63 6b 63 6c 72 20 74  | (border.hilite.lineclr.backclr.t | 
| 46a0 |  65 78 74 63 6c 72 29 0a 20 20 22 4c 69 73 74 20    6f 66 20 63 6f 6c 6f 72 20 61 74 74 72 69 62 75  | extclr)..."List.of.color.attribu | 
| 46c0 |  74 65 73 20 6b 6e 6f 77 6e 20 74 6f 20 44 6a 76    75 2e 20 20 53 65 65 20 64 6a 76 75 73 65 64 28  | tes.known.to.Djvu...See.djvused( | 
| 46e0 |  31 29 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 64    6a 76 75 2d 63 6f 6c 6f 72 2d 72 65 0a 20 20 28  | 1).")..(defvar.djvu-color-re...( | 
| 4700 |  63 6f 6e 63 61 74 20 22 28 22 20 28 72 65 67 65    78 70 2d 6f 70 74 20 28 6d 61 70 63 61 72 20 23  | concat."(".(regexp-opt.(mapcar.# | 
| 4720 |  27 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 64 6a 76    75 2d 63 6f 6c 6f 72 2d 61 74 74 72 69 62 75 74  | 'symbol-name.djvu-color-attribut | 
| 4740 |  65 73 29 20 74 29 0a 20 20 20 20 20 20 20 20 20    20 22 5b 20 5c 74 5c 6e 5d 2b 5c 5c 28 25 73 5c  | es).t)..........."[.\t\n]+\\(%s\ | 
| 4760 |  5c 28 25 73 5b 5b 3a 78 64 69 67 69 74 3a 5d 5d    5b 5b 3a 78 64 69 67 69 74 3a 5d 5d 22 0a 20 20  | \(%s[[:xdigit:]][[:xdigit:]]"... | 
| 4780 |  20 20 20 20 20 20 20 20 22 5b 5b 3a 78 64 69 67    69 74 3a 5d 5d 5b 5b 3a 78 64 69 67 69 74 3a 5d  | ........"[[:xdigit:]][[:xdigit:] | 
| 47a0 |  5d 5b 5b 3a 78 64 69 67 69 74 3a 5d 5d 5b 5b 3a    78 64 69 67 69 74 3a 5d 5d 5c 5c 29 25 73 5c 5c  | ][[:xdigit:]][[:xdigit:]]\\)%s\\ | 
| 47c0 |  29 5b 20 5c 74 5c 6e 5d 2a 29 22 29 0a 20 20 22    46 6f 72 6d 61 74 20 73 74 72 69 6e 67 20 74 6f  | )[.\t\n]*)")..."Format.string.to | 
| 47e0 |  20 63 72 65 61 74 65 20 61 20 72 65 67 75 6c 61    72 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 61 74  | .create.a.regular.expression.mat | 
| 4800 |  63 68 69 6e 67 20 63 6f 6c 6f 72 20 61 74 74 72    69 62 75 74 65 73 2e 22 29 0a 0a 28 64 65 66 76  | ching.color.attributes.")..(defv | 
| 4820 |  61 72 20 64 6a 76 75 2d 62 65 67 2d 6f 62 6a 65    63 74 2d 72 65 0a 20 20 28 63 6f 6e 63 61 74 20  | ar.djvu-beg-object-re...(concat. | 
| 4840 |  22 5e 5b 5c 73 5c 74 5d 2a 28 22 20 28 72 65 67    65 78 70 2d 6f 70 74 20 27 28 22 62 61 63 6b 67  | "^[\s\t]*(".(regexp-opt.'("backg | 
| 4860 |  72 6f 75 6e 64 22 20 22 7a 6f 6f 6d 22 20 22 6d    6f 64 65 22 20 22 61 6c 69 67 6e 22 0a 20 20 20  | round"."zoom"."mode"."align".... | 
| 4880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 48a0 |  20 22 6d 61 70 61 72 65 61 22 20 22 6d 65 74 61    64 61 74 61 22 20 22 78 6d 70 22 20 22 62 6f 6f  | ."maparea"."metadata"."xmp"."boo | 
| 48c0 |  6b 6d 61 72 6b 73 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  | kmarks")........................ | 
| 48e0 |  20 20 20 20 20 20 20 20 20 20 20 74 29 0a 20 20    20 20 20 20 20 20 20 20 22 5c 5c 3e 22 29 0a 20  | ...........t)..........."\\>").. | 
| 4900 |  20 22 52 65 67 65 78 70 20 6d 61 74 63 68 69 6e    67 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20  | ."Regexp.matching.the.beginning. | 
| 4920 |  6f 66 20 61 20 44 6a 76 75 20 6f 62 6a 65 63 74    2e 20 20 53 65 65 20 64 6a 76 75 73 65 64 28 31  | of.a.Djvu.object...See.djvused(1 | 
| 4940 |  29 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 64 6a    76 75 2d 6c 61 73 74 2d 73 65 61 72 63 68 2d 72  | ).")..(defvar.djvu-last-search-r | 
| 4960 |  65 20 6e 69 6c 0a 20 20 22 4c 61 73 74 20 72 65    67 65 78 70 20 75 73 65 64 20 62 79 20 60 64 6a  | e.nil..."Last.regexp.used.by.`dj | 
| 4980 |  76 75 2d 72 65 2d 73 65 61 72 63 68 2d 66 6f 72    77 61 72 64 27 2e 22 29 0a 0a 28 64 65 66 76 61  | vu-re-search-forward'.")..(defva | 
| 49a0 |  72 20 64 6a 76 75 2d 6d 6f 64 69 66 69 65 64 20    6e 69 6c 0a 20 20 22 4c 65 74 2d 62 6f 75 6e 64  | r.djvu-modified.nil..."Let-bound | 
| 49c0 |  20 69 6e 20 60 64 6a 76 75 2d 6d 6f 75 73 65 2d    64 72 61 67 2d 74 72 61 63 6b 2d 61 72 65 61 27  | .in.`djvu-mouse-drag-track-area' | 
| 49e0 |  2e 22 29 0a 0a 3b 3b 20 53 65 65 20 60 65 64 69    66 66 2d 64 65 66 76 61 72 2d 6c 6f 63 61 6c 27  | .")..;;.See.`ediff-defvar-local' | 
| 4a00 |  0a 28 64 65 66 6d 61 63 72 6f 20 64 6a 76 75 2d    64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 28 76 61  | .(defmacro.djvu-defvar-local.(va | 
| 4a20 |  72 20 26 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 20    64 6f 63 29 0a 20 20 22 44 65 66 69 6e 65 20 56  | r.&optional.val.doc)..."Define.V | 
| 4a40 |  41 52 20 61 73 20 61 20 70 65 72 6d 61 6e 65 6e    74 2d 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65  | AR.as.a.permanent-local.variable | 
| 4a60 |  2c 20 61 6e 64 20 72 65 74 75 72 6e 20 56 41 52    2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 64  | ,.and.return.VAR."...(declare.(d | 
| 4a80 |  6f 63 2d 73 74 72 69 6e 67 20 33 29 29 0a 20 20    60 28 70 72 6f 67 6e 0a 20 20 20 20 20 28 64 65  | oc-string.3))...`(progn......(de | 
| 4aa0 |  66 76 61 72 20 2c 76 61 72 20 2c 76 61 6c 20 2c    64 6f 63 29 0a 20 20 20 20 20 28 6d 61 6b 65 2d  | fvar.,var.,val.,doc)......(make- | 
| 4ac0 |  76 61 72 69 61 62 6c 65 2d 62 75 66 66 65 72 2d    6c 6f 63 61 6c 20 27 2c 76 61 72 29 0a 20 20 20  | variable-buffer-local.',var).... | 
| 4ae0 |  20 20 28 70 75 74 20 27 2c 76 61 72 20 27 70 65    72 6d 61 6e 65 6e 74 2d 6c 6f 63 61 6c 20 74 29  | ..(put.',var.'permanent-local.t) | 
| 4b00 |  0a 20 20 20 20 20 2c 76 61 72 29 29 0a 0a 28 64    6a 76 75 2d 64 65 66 76 61 72 2d 6c 6f 63 61 6c  | ......,var))..(djvu-defvar-local | 
| 4b20 |  20 64 6a 76 75 2d 64 6f 63 20 6e 69 6c 0a 20 20    22 54 68 65 20 5c 22 49 44 5c 22 20 6f 66 20 61  | .djvu-doc.nil..."The.\"ID\".of.a | 
| 4b40 |  20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 0a    54 68 69 73 20 69 73 20 61 63 74 75 61 6c 6c 79  | .Djvu.document..This.is.actually | 
| 4b60 |  20 74 68 65 20 52 65 61 64 20 62 75 66 66 65 72    20 61 63 74 69 6e 67 20 61 73 20 74 68 65 20 6d  | .the.Read.buffer.acting.as.the.m | 
| 4b80 |  61 73 74 65 72 20 62 75 66 66 65 72 0a 6f 66 20    74 68 65 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e  | aster.buffer.of.the.Djvu.documen | 
| 4ba0 |  74 2e 20 20 54 68 69 73 20 62 75 66 66 65 72 20    68 6f 6c 64 73 20 61 6c 6c 20 62 75 66 66 65 72  | t...This.buffer.holds.all.buffer | 
| 4bc0 |  2d 6c 6f 63 61 6c 20 76 61 6c 75 65 73 0a 6f 66    20 76 61 72 69 61 62 6c 65 73 20 66 6f 72 20 61  | -local.values.of.variables.for.a | 
| 4be0 |  20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 22    29 0a 0a 3b 3b 20 70 65 72 6d 61 6e 65 6e 74 2d  | .Djvu.document.")..;;.permanent- | 
| 4c00 |  6c 6f 63 61 6c 20 6c 69 6b 65 20 60 62 75 66 66    65 72 2d 66 69 6c 65 2d 6e 61 6d 65 27 0a 28 64  | local.like.`buffer-file-name'.(d | 
| 4c20 |  6a 76 75 2d 64 65 66 76 61 72 2d 6c 6f 63 61 6c    20 64 6a 76 75 2d 64 6f 63 2d 66 69 6c 65 20 6e  | jvu-defvar-local.djvu-doc-file.n | 
| 4c40 |  69 6c 0a 20 20 22 46 69 6c 65 20 6e 61 6d 65 20    6f 66 20 61 20 44 6a 76 75 20 64 6f 63 75 6d 65  | il..."File.name.of.a.Djvu.docume | 
| 4c60 |  6e 74 2e 22 29 0a 0a 28 64 6a 76 75 2d 64 65 66    76 61 72 2d 6c 6f 63 61 6c 20 64 6a 76 75 2d 64  | nt.")..(djvu-defvar-local.djvu-d | 
| 4c80 |  6f 63 2d 74 65 78 74 2d 62 75 66 20 6e 69 6c 0a    20 20 22 54 65 78 74 20 62 75 66 66 65 72 20 6f  | oc-text-buf.nil..."Text.buffer.o | 
| 4ca0 |  66 20 61 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e    74 2e 22 29 0a 0a 3b 3b 20 22 72 65 61 64 22 20  | f.a.Djvu.document.")..;;."read". | 
| 4cc0 |  72 65 66 65 72 73 20 74 6f 20 74 68 65 20 74 65    78 74 2d 6f 6e 6c 79 20 64 69 73 70 6c 61 79 20  | refers.to.the.text-only.display. | 
| 4ce0 |  6f 66 20 64 6a 76 75 20 66 69 6c 65 73 20 69 6e    73 69 64 65 20 65 6d 61 63 73 0a 3b 3b 20 22 76  | of.djvu.files.inside.emacs.;;."v | 
| 4d00 |  69 65 77 22 20 72 65 66 65 72 73 20 74 6f 20 65    78 74 65 72 6e 61 6c 20 67 72 61 70 68 69 63 61  | iew".refers.to.external.graphica | 
| 4d20 |  6c 20 76 69 65 77 65 72 73 20 28 64 65 66 61 75    6c 74 20 64 6a 76 69 65 77 29 0a 0a 28 64 6a 76  | l.viewers.(default.djview)..(djv | 
| 4d40 |  75 2d 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 64    6a 76 75 2d 64 6f 63 2d 72 65 61 64 2d 62 75 66  | u-defvar-local.djvu-doc-read-buf | 
| 4d60 |  20 6e 69 6c 0a 20 20 22 52 65 61 64 20 62 75 66    66 65 72 20 6f 66 20 61 20 44 6a 76 75 20 64 6f  | .nil..."Read.buffer.of.a.Djvu.do | 
| 4d80 |  63 75 6d 65 6e 74 2e 22 29 0a 0a 28 64 6a 76 75    2d 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 64 6a  | cument.")..(djvu-defvar-local.dj | 
| 4da0 |  76 75 2d 64 6f 63 2d 61 6e 6e 6f 74 2d 62 75 66    20 6e 69 6c 0a 20 20 22 41 6e 6e 6f 74 61 74 69  | vu-doc-annot-buf.nil..."Annotati | 
| 4dc0 |  6f 6e 20 62 75 66 66 65 72 20 6f 66 20 61 20 44    6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 22 29 0a  | on.buffer.of.a.Djvu.document."). | 
| 4de0 |  0a 28 64 6a 76 75 2d 64 65 66 76 61 72 2d 6c 6f    63 61 6c 20 64 6a 76 75 2d 64 6f 63 2d 73 68 61  | .(djvu-defvar-local.djvu-doc-sha | 
| 4e00 |  72 65 64 2d 62 75 66 20 6e 69 6c 0a 20 20 22 53    68 61 72 65 64 20 61 6e 6e 6f 74 61 74 69 6f 6e  | red-buf.nil..."Shared.annotation | 
| 4e20 |  20 62 75 66 66 65 72 20 6f 66 20 61 20 44 6a 76    75 20 64 6f 63 75 6d 65 6e 74 2e 22 29 0a 0a 28  | .buffer.of.a.Djvu.document.")..( | 
| 4e40 |  64 6a 76 75 2d 64 65 66 76 61 72 2d 6c 6f 63 61    6c 20 64 6a 76 75 2d 64 6f 63 2d 62 6f 6f 6b 6d  | djvu-defvar-local.djvu-doc-bookm | 
| 4e60 |  61 72 6b 73 2d 62 75 66 20 6e 69 6c 0a 20 20 22    42 6f 6f 6b 6d 61 72 6b 73 20 62 75 66 66 65 72  | arks-buf.nil..."Bookmarks.buffer | 
| 4e80 |  20 6f 66 20 61 20 44 6a 76 75 20 64 6f 63 75 6d    65 6e 74 2e 22 29 0a 0a 28 64 6a 76 75 2d 64 65  | .of.a.Djvu.document.")..(djvu-de | 
| 4ea0 |  66 76 61 72 2d 6c 6f 63 61 6c 20 64 6a 76 75 2d    64 6f 63 2d 6f 75 74 6c 69 6e 65 2d 62 75 66 20  | fvar-local.djvu-doc-outline-buf. | 
| 4ec0 |  6e 69 6c 0a 20 20 22 4f 75 74 6c 69 6e 65 20 62    75 66 66 65 72 20 6f 66 20 61 20 44 6a 76 75 20  | nil..."Outline.buffer.of.a.Djvu. | 
| 4ee0 |  64 6f 63 75 6d 65 6e 74 2e 22 29 0a 0a 28 64 6a    76 75 2d 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20  | document.")..(djvu-defvar-local. | 
| 4f00 |  64 6a 76 75 2d 64 6f 63 2d 76 69 65 77 2d 70 72    6f 63 20 6e 69 6c 0a 20 20 22 4c 69 73 74 20 6f  | djvu-doc-view-proc.nil..."List.o | 
| 4f20 |  66 20 64 6a 76 69 65 77 20 70 72 6f 63 65 73 73    65 73 20 66 6f 72 20 61 20 44 6a 76 75 20 64 6f  | f.djview.processes.for.a.Djvu.do | 
| 4f40 |  63 75 6d 65 6e 74 2e 22 29 0a 0a 28 64 65 66 76    61 72 2d 6c 6f 63 61 6c 20 64 6a 76 75 2d 64 6f  | cument.")..(defvar-local.djvu-do | 
| 4f60 |  63 2d 72 65 73 6f 6c 76 65 2d 75 72 6c 20 6e 69    6c 0a 20 20 22 52 65 73 6f 6c 76 65 20 55 52 4c  | c-resolve-url.nil..."Resolve.URL | 
| 4f80 |  73 20 6f 66 20 61 20 44 6a 76 75 20 64 6f 63 75    6d 65 6e 74 2e 22 29 0a 0a 28 64 65 66 76 61 72  | s.of.a.Djvu.document.")..(defvar | 
| 4fa0 |  2d 6c 6f 63 61 6c 20 64 6a 76 75 2d 64 6f 63 2d    72 65 63 74 2d 6c 69 73 74 20 6e 69 6c 0a 20 20  | -local.djvu-doc-rect-list.nil... | 
| 4fc0 |  22 52 65 63 74 20 6c 69 73 74 20 6f 66 20 61 20    44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 22 29  | "Rect.list.of.a.Djvu.document.") | 
| 4fe0 |  0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20    64 6a 76 75 2d 64 6f 63 2d 68 69 73 74 6f 72 79  | ..(defvar-local.djvu-doc-history | 
| 5000 |  2d 62 61 63 6b 77 61 72 64 20 6e 69 6c 0a 20 20    22 42 61 63 6b 77 61 72 64 20 68 69 73 74 6f 72  | -backward.nil..."Backward.histor | 
| 5020 |  79 20 6f 66 20 61 20 44 6a 76 75 20 64 6f 63 75    6d 65 6e 74 2e 0a 54 68 69 73 20 69 73 20 61 20  | y.of.a.Djvu.document..This.is.a. | 
| 5040 |  73 74 61 63 6b 20 6f 66 20 70 61 67 65 73 20 76    69 73 69 74 65 64 20 70 72 65 76 69 6f 75 73 6c  | stack.of.pages.visited.previousl | 
| 5060 |  79 2e 22 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f    63 61 6c 20 64 6a 76 75 2d 64 6f 63 2d 68 69 73  | y.")..(defvar-local.djvu-doc-his | 
| 5080 |  74 6f 72 79 2d 66 6f 72 77 61 72 64 20 6e 69 6c    0a 20 20 22 46 6f 72 77 61 72 64 20 68 69 73 74  | tory-forward.nil..."Forward.hist | 
| 50a0 |  6f 72 79 20 6f 66 20 61 20 44 6a 76 75 20 64 6f    63 75 6d 65 6e 74 2e 22 29 0a 0a 28 64 65 66 76  | ory.of.a.Djvu.document.")..(defv | 
| 50c0 |  61 72 2d 6c 6f 63 61 6c 20 64 6a 76 75 2d 64 6f    63 2d 70 61 67 65 20 6e 69 6c 0a 20 20 22 43 75  | ar-local.djvu-doc-page.nil..."Cu | 
| 50e0 |  72 72 65 6e 74 20 70 61 67 65 20 6e 75 6d 62 65    72 20 6f 66 20 61 20 44 6a 76 75 20 64 6f 63 75  | rrent.page.number.of.a.Djvu.docu | 
| 5100 |  6d 65 6e 74 2e 22 29 0a 0a 28 64 65 66 76 61 72    2d 6c 6f 63 61 6c 20 64 6a 76 75 2d 64 6f 63 2d  | ment.")..(defvar-local.djvu-doc- | 
| 5120 |  70 61 67 65 6d 61 78 20 6e 69 6c 0a 20 20 22 54    6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 70  | pagemax.nil..."Total.number.of.p | 
| 5140 |  61 67 65 73 20 6f 66 20 61 20 44 6a 76 75 20 64    6f 63 75 6d 65 6e 74 2e 22 29 0a 0a 28 64 65 66  | ages.of.a.Djvu.document.")..(def | 
| 5160 |  76 61 72 2d 6c 6f 63 61 6c 20 64 6a 76 75 2d 64    6f 63 2d 70 61 67 65 2d 69 64 20 6e 69 6c 0a 20  | var-local.djvu-doc-page-id.nil.. | 
| 5180 |  20 22 41 6c 69 73 74 20 6f 66 20 70 61 67 65 20    49 44 73 20 6f 66 20 61 20 44 6a 76 75 20 64 6f  | ."Alist.of.page.IDs.of.a.Djvu.do | 
| 51a0 |  63 75 6d 65 6e 74 2e 0a 45 61 63 68 20 65 6c 65    6d 65 6e 74 20 69 73 20 61 20 63 6f 6e 73 20 70  | cument..Each.element.is.a.cons.p | 
| 51c0 |  61 69 72 20 28 50 41 47 45 2d 4e 55 4d 20 2e 20    46 49 4c 45 2d 49 44 29 2e 22 29 0a 0a 28 64 65  | air.(PAGE-NUM...FILE-ID).")..(de | 
| 51e0 |  66 76 61 72 2d 6c 6f 63 61 6c 20 64 6a 76 75 2d    64 6f 63 2d 70 61 67 65 73 69 7a 65 20 6e 69 6c  | fvar-local.djvu-doc-pagesize.nil | 
| 5200 |  0a 20 20 22 53 69 7a 65 20 6f 66 20 63 75 72 72    65 6e 74 20 70 61 67 65 20 6f 66 20 61 20 44 6a  | ..."Size.of.current.page.of.a.Dj | 
| 5220 |  76 75 20 64 6f 63 75 6d 65 6e 74 2e 22 29 0a 0a    28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 64 6a  | vu.document.")..(defvar-local.dj | 
| 5240 |  76 75 2d 64 6f 63 2d 72 65 61 64 2d 70 6f 73 20    6e 69 6c 0a 20 20 22 54 68 65 20 63 75 72 72 65  | vu-doc-read-pos.nil..."The.curre | 
| 5260 |  6e 74 20 65 64 69 74 69 6e 67 20 70 6f 73 69 74    69 6f 6e 20 69 6e 20 74 68 65 20 52 65 61 64 20  | nt.editing.position.in.the.Read. | 
| 5280 |  62 75 66 66 65 72 20 28 69 6d 61 67 65 20 63 6f    6f 72 64 69 6e 61 74 65 73 29 2e 0a 54 68 69 73  | buffer.(image.coordinates)..This | 
| 52a0 |  20 69 73 20 65 69 74 68 65 72 20 61 20 6c 69 73    74 20 28 58 20 59 29 20 6f 72 20 61 20 6c 69 73  | .is.either.a.list.(X.Y).or.a.lis | 
| 52c0 |  74 20 6f 72 20 76 65 63 74 6f 72 20 28 58 4d 49    4e 20 59 4d 49 4e 20 58 4d 41 58 20 59 4d 41 58  | t.or.vector.(XMIN.YMIN.XMAX.YMAX | 
| 52e0 |  29 2e 0a 55 73 65 64 20 69 6e 20 60 64 6a 76 75    2d 69 6d 61 67 65 2d 6d 6f 64 65 27 20 77 68 65  | )..Used.in.`djvu-image-mode'.whe | 
| 5300 |  6e 20 77 65 20 63 61 6e 6e 6f 74 20 67 6f 20 74    6f 20 74 68 69 73 20 70 6f 73 69 74 69 6f 6e 2e  | n.we.cannot.go.to.this.position. | 
| 5320 |  22 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61    6c 20 64 6a 76 75 2d 64 6f 63 2d 69 6d 61 67 65  | ")..(defvar-local.djvu-doc-image | 
| 5340 |  20 6e 69 6c 0a 20 20 22 49 6d 61 67 65 20 6f 66    20 63 75 72 72 65 6e 74 20 70 61 67 65 20 6f 66  | .nil..."Image.of.current.page.of | 
| 5360 |  20 61 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74    2e 0a 54 68 69 73 20 69 73 20 61 20 6c 69 73 74  | .a.Djvu.document..This.is.a.list | 
| 5380 |  20 28 50 41 47 45 2d 4e 55 4d 20 4d 41 47 4e 49    46 49 43 41 54 49 4f 4e 20 49 4d 41 47 45 29 2e  | .(PAGE-NUM.MAGNIFICATION.IMAGE). | 
| 53a0 |  22 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61    6c 20 64 6a 76 75 2d 64 6f 63 2d 69 6d 61 67 65  | ")..(defvar-local.djvu-doc-image | 
| 53c0 |  2d 68 73 63 72 6f 6c 6c 20 30 0a 20 20 22 4e 75    6d 62 65 72 20 6f 66 20 63 6f 6c 75 6d 6e 73 20  | -hscroll.0..."Number.of.columns. | 
| 53e0 |  62 79 20 77 68 69 63 68 20 61 20 70 61 67 65 20    69 6d 61 67 65 20 69 73 20 73 63 72 6f 6c 6c 65  | by.which.a.page.image.is.scrolle | 
| 5400 |  64 20 66 72 6f 6d 20 6c 65 66 74 20 6d 61 72 67    69 6e 2e 22 29 0a 0a 28 64 65 66 76 61 72 2d 6c  | d.from.left.margin.")..(defvar-l | 
| 5420 |  6f 63 61 6c 20 64 6a 76 75 2d 64 6f 63 2d 69 6d    61 67 65 2d 76 73 63 72 6f 6c 6c 20 30 0a 20 20  | ocal.djvu-doc-image-vscroll.0... | 
| 5440 |  22 41 6d 6f 75 6e 74 20 62 79 20 77 68 69 63 68    20 61 20 70 61 67 65 20 69 6d 61 67 65 20 69 73  | "Amount.by.which.a.page.image.is | 
| 5460 |  20 73 63 72 6f 6c 6c 65 64 20 76 65 72 74 69 63    61 6c 6c 79 2e 22 29 0a 0a 3b 3b 3b 20 48 65 6c  | .scrolled.vertically.")..;;;.Hel | 
| 5480 |  70 65 72 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e    64 20 6d 61 63 72 6f 73 0a 0a 3b 3b 20 46 6f 72  | per.functions.and.macros..;;.For | 
| 54a0 |  20 65 61 63 68 20 44 6a 76 75 20 64 6f 63 75 6d    65 6e 74 20 77 65 20 68 61 76 65 20 73 69 78 20  | .each.Djvu.document.we.have.six. | 
| 54c0 |  62 75 66 66 65 72 73 20 61 73 73 6f 63 69 61 74    65 64 20 77 69 74 68 20 74 68 69 73 20 64 6f 63  | buffers.associated.with.this.doc | 
| 54e0 |  75 6d 65 6e 74 0a 3b 3b 20 28 72 65 61 64 2c 20    74 65 78 74 2c 20 61 6e 6e 6f 74 61 74 69 6f 6e  | ument.;;.(read,.text,.annotation | 
| 5500 |  73 2c 20 73 68 61 72 65 64 20 61 6e 6e 6f 74 61    74 69 6f 6e 73 2c 20 62 6f 6f 6b 6d 61 72 6b 73  | s,.shared.annotations,.bookmarks | 
| 5520 |  20 61 6e 64 20 6f 75 74 6c 69 6e 65 20 62 75 66    66 65 72 73 29 2e 0a 3b 3b 20 54 6f 20 68 61 76  | .and.outline.buffers)..;;.To.hav | 
| 5540 |  65 20 64 6f 63 75 6d 65 6e 74 2d 6c 6f 63 61 6c    20 76 61 72 69 61 62 6c 65 73 2c 20 60 64 6a 76  | e.document-local.variables,.`djv | 
| 5560 |  75 2d 64 6f 63 27 20 64 65 66 69 6e 65 73 20 61    20 6d 61 73 74 65 72 20 62 75 66 66 65 72 0a 3b  | u-doc'.defines.a.master.buffer.; | 
| 5580 |  3b 20 74 68 61 74 20 73 68 61 72 65 73 20 74 68    65 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 76  | ;.that.shares.the.buffer-local.v | 
| 55a0 |  61 6c 75 65 73 20 6f 66 20 69 74 73 20 76 61 72    69 61 62 6c 65 73 20 77 69 74 68 20 74 68 65 20  | alues.of.its.variables.with.the. | 
| 55c0 |  6f 74 68 65 72 20 62 75 66 66 65 72 73 0a 3b 3b    20 76 69 61 20 74 68 65 20 6d 61 63 72 6f 73 20  | other.buffers.;;.via.the.macros. | 
| 55e0 |  60 64 6a 76 75 2d 73 65 74 27 20 61 6e 64 20 60    64 6a 76 75 2d 72 65 66 27 2e 20 20 57 65 20 6d  | `djvu-set'.and.`djvu-ref'...We.m | 
| 5600 |  61 6b 65 20 74 68 65 20 72 65 61 64 20 62 75 66    66 65 72 20 74 68 65 0a 3b 3b 20 6d 61 73 74 65  | ake.the.read.buffer.the.;;.maste | 
| 5620 |  72 20 62 75 66 66 65 72 2e 20 20 54 68 69 73 20    63 68 6f 69 63 65 20 69 73 20 72 61 74 68 65 72  | r.buffer...This.choice.is.rather | 
| 5640 |  20 61 72 62 69 74 72 61 72 79 2e 20 20 54 68 65    20 6d 61 69 6e 20 72 65 61 73 6f 6e 20 66 6f 72  | .arbitrary...The.main.reason.for | 
| 5660 |  0a 3b 3b 20 74 68 69 73 20 63 68 6f 69 63 65 20    69 73 20 74 68 61 74 20 74 68 65 20 72 65 61 64  | .;;.this.choice.is.that.the.read | 
| 5680 |  20 62 75 66 66 65 72 20 69 73 20 75 73 75 61 6c    6c 79 20 74 68 65 20 6d 61 69 6e 20 62 75 66 66  | .buffer.is.usually.the.main.buff | 
| 56a0 |  65 72 20 74 6f 20 77 6f 72 6b 0a 3b 3b 20 77 69    74 68 2e 20 20 53 6f 20 69 74 20 62 65 63 6f 6d  | er.to.work.;;.with...So.it.becom | 
| 56c0 |  65 73 20 65 61 73 69 65 72 20 74 6f 20 69 6e 73    70 65 63 74 20 74 68 65 20 64 6f 63 75 6d 65 6e  | es.easier.to.inspect.the.documen | 
| 56e0 |  74 2d 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65    73 2e 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 6a  | t-local.variables...(defmacro.dj | 
| 5700 |  76 75 2d 73 65 74 20 28 76 61 72 20 76 61 6c 20    26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 29 0a 20  | vu-set.(var.val.&optional.doc).. | 
| 5720 |  20 22 53 65 74 20 56 41 52 27 73 20 76 61 6c 75    65 20 74 6f 20 56 41 4c 20 69 6e 20 44 6a 76 75  | ."Set.VAR's.value.to.VAL.in.Djvu | 
| 5740 |  20 64 6f 63 75 6d 65 6e 74 20 44 4f 43 2c 20 61    6e 64 20 72 65 74 75 72 6e 20 56 41 4c 2e 0a 44  | .document.DOC,.and.return.VAL..D | 
| 5760 |  4f 43 20 64 65 66 61 75 6c 74 73 20 74 6f 20 60    64 6a 76 75 2d 64 6f 63 27 2e 22 0a 20 20 3b 3b  | OC.defaults.to.`djvu-doc'."...;; | 
| 5780 |  20 60 69 6e 74 65 72 6e 27 20 56 41 52 20 6f 6e    6c 79 20 6f 6e 63 65 20 75 70 6f 6e 20 63 6f 6d  | .`intern'.VAR.only.once.upon.com | 
| 57a0 |  70 69 6c 61 74 69 6f 6e 0a 20 20 28 6c 65 74 20    28 28 76 61 72 20 28 69 6e 74 65 72 6e 20 28 66  | pilation...(let.((var.(intern.(f | 
| 57c0 |  6f 72 6d 61 74 20 22 64 6a 76 75 2d 64 6f 63 2d    25 73 22 20 76 61 72 29 29 29 0a 20 20 20 20 20  | ormat."djvu-doc-%s".var)))...... | 
| 57e0 |  20 20 20 28 74 6d 70 76 61 6c 20 28 6d 61 6b 65    2d 73 79 6d 62 6f 6c 20 22 74 6d 70 76 61 6c 22  | ...(tmpval.(make-symbol."tmpval" | 
| 5800 |  29 29 29 0a 20 20 20 20 3b 3b 20 54 68 65 72 65    20 69 73 20 6e 6f 20 65 71 75 69 76 61 6c 65 6e  | ))).....;;.There.is.no.equivalen | 
| 5820 |  74 20 6f 66 20 60 62 75 66 66 65 72 2d 6c 6f 63    61 6c 2d 76 61 6c 75 65 27 20 66 6f 72 20 73 65  | t.of.`buffer-local-value'.for.se | 
| 5840 |  74 74 69 6e 67 20 56 41 52 2e 0a 20 20 20 20 3b    3b 20 54 68 65 72 65 66 6f 72 65 2c 20 77 65 20  | tting.VAR......;;.Therefore,.we. | 
| 5860 |  6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 62 75 66    66 65 72 20 44 4f 43 20 63 75 72 72 65 6e 74 20  | need.to.make.buffer.DOC.current. | 
| 5880 |  62 65 66 6f 72 65 20 77 65 20 63 61 6e 20 73 65    74 20 56 41 52 2e 0a 20 20 20 20 3b 3b 20 42 75  | before.we.can.set.VAR......;;.Bu | 
| 58a0 |  74 20 77 65 20 65 76 61 6c 75 61 74 65 20 56 41    4c 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74  | t.we.evaluate.VAL.in.the.current | 
| 58c0 |  20 62 75 66 66 65 72 20 62 65 66 6f 72 65 20 6d    61 6b 69 6e 67 20 44 4f 43 20 63 75 72 72 65 6e  | .buffer.before.making.DOC.curren | 
| 58e0 |  74 2e 0a 20 20 20 20 60 28 6c 65 74 20 28 28 2c    74 6d 70 76 61 6c 20 2c 76 61 6c 29 29 0a 20 20  | t......`(let.((,tmpval.,val))... | 
| 5900 |  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 6f 72 20 2c 64  | .....(with-current-buffer.(or.,d | 
| 5920 |  6f 63 20 64 6a 76 75 2d 64 6f 63 29 0a 20 20 20    20 20 20 20 20 20 28 73 65 74 20 27 2c 76 61 72  | oc.djvu-doc)..........(set.',var | 
| 5940 |  20 2c 74 6d 70 76 61 6c 29 29 29 29 29 0a 0a 28    64 65 66 6d 61 63 72 6f 20 64 6a 76 75 2d 72 65  | .,tmpval)))))..(defmacro.djvu-re | 
| 5960 |  66 20 28 76 61 72 20 26 6f 70 74 69 6f 6e 61 6c    20 64 6f 63 29 0a 20 20 22 52 65 74 75 72 6e 20  | f.(var.&optional.doc)..."Return. | 
| 5980 |  56 41 52 27 73 20 76 61 6c 75 65 20 69 6e 20 44    6a 76 75 20 64 6f 63 75 6d 65 6e 74 20 44 4f 43  | VAR's.value.in.Djvu.document.DOC | 
| 59a0 |  2e 0a 44 4f 43 20 64 65 66 61 75 6c 74 73 20 74    6f 20 60 64 6a 76 75 2d 64 6f 63 27 2e 22 0a 20  | ..DOC.defaults.to.`djvu-doc'.".. | 
| 59c0 |  20 3b 3b 20 60 69 6e 74 65 72 6e 27 20 56 41 52    20 6f 6e 6c 79 20 6f 6e 63 65 20 75 70 6f 6e 20  | .;;.`intern'.VAR.only.once.upon. | 
| 59e0 |  63 6f 6d 70 69 6c 61 74 69 6f 6e 0a 20 20 28 6c    65 74 20 28 28 76 61 72 20 28 69 6e 74 65 72 6e  | compilation...(let.((var.(intern | 
| 5a00 |  20 28 66 6f 72 6d 61 74 20 22 64 6a 76 75 2d 64    6f 63 2d 25 73 22 20 76 61 72 29 29 29 29 0a 20  | .(format."djvu-doc-%s".var)))).. | 
| 5a20 |  20 20 60 28 62 75 66 66 65 72 2d 6c 6f 63 61 6c    2d 76 61 6c 75 65 20 27 2c 76 61 72 20 28 6f 72  | ..`(buffer-local-value.',var.(or | 
| 5a40 |  20 2c 64 6f 63 20 64 6a 76 75 2d 64 6f 63 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | .,doc.djvu-doc))))..(defun.djvu- | 
| 5a60 |  68 65 61 64 65 72 2d 6c 69 6e 65 20 28 69 64 65    6e 74 69 66 69 65 72 29 0a 20 20 28 6c 69 73 74  | header-line.(identifier)...(list | 
| 5a80 |  20 28 70 72 6f 70 65 72 74 69 7a 65 20 22 20 22    20 27 64 69 73 70 6c 61 79 20 27 28 73 70 61 63  | .(propertize.".".'display.'(spac | 
| 5aa0 |  65 20 3a 61 6c 69 67 6e 2d 74 6f 20 30 29 29 0a    20 20 20 20 20 20 20 20 3b 3b 20 45 6d 61 63 73  | e.:align-to.0)).........;;.Emacs | 
| 5ac0 |  20 3e 3d 20 32 36 3a 20 63 6f 6d 70 61 72 65 20    60 70 72 6f 63 65 64 2d 68 65 61 64 65 72 2d 6c  | .>=.26:.compare.`proced-header-l | 
| 5ae0 |  69 6e 65 27 0a 20 20 20 20 20 20 20 20 28 66 6f    72 6d 61 74 20 22 25 73 20 2d 2d 20 25 73 20 28  | ine'.........(format."%s.--.%s.( | 
| 5b00 |  70 25 64 29 22 20 28 62 75 66 66 65 72 2d 6e 61    6d 65 20 28 64 6a 76 75 2d 72 65 66 20 72 65 61  | p%d)".(buffer-name.(djvu-ref.rea | 
| 5b20 |  64 2d 62 75 66 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 69 64 65 6e 74 69 66 69  | d-buf)).................identifi | 
| 5b40 |  65 72 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67    65 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74  | er.(djvu-ref.page))))..(defsubst | 
| 5b60 |  20 64 6a 76 75 2d 73 75 62 73 74 72 69 6e 67 2d    6e 75 6d 62 65 72 20 28 73 74 72 69 6e 67 20 26  | .djvu-substring-number.(string.& | 
| 5b80 |  6f 70 74 69 6f 6e 61 6c 20 66 72 6f 6d 20 74 6f    20 62 61 73 65 29 0a 20 20 22 50 61 72 73 65 20  | optional.from.to.base)..."Parse. | 
| 5ba0 |  73 75 62 73 74 72 69 6e 67 20 6f 66 20 53 54 52    49 4e 47 20 61 73 20 61 20 64 65 63 69 6d 61 6c  | substring.of.STRING.as.a.decimal | 
| 5bc0 |  20 6e 75 6d 62 65 72 20 61 6e 64 20 72 65 74 75    72 6e 20 74 68 65 20 6e 75 6d 62 65 72 2e 0a 49  | .number.and.return.the.number..I | 
| 5be0 |  66 20 42 41 53 45 2c 20 69 6e 74 65 72 70 72 65    74 20 53 54 52 49 4e 47 20 61 73 20 61 20 6e 75  | f.BASE,.interpret.STRING.as.a.nu | 
| 5c00 |  6d 62 65 72 20 69 6e 20 74 68 61 74 20 62 61 73    65 2e 22 0a 20 20 28 73 74 72 69 6e 67 2d 74 6f  | mber.in.that.base."...(string-to | 
| 5c20 |  2d 6e 75 6d 62 65 72 20 28 73 75 62 73 74 72 69    6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73  | -number.(substring-no-properties | 
| 5c40 |  20 73 74 72 69 6e 67 20 66 72 6f 6d 20 74 6f 29    20 62 61 73 65 29 29 0a 0a 28 64 65 66 73 75 62  | .string.from.to).base))..(defsub | 
| 5c60 |  73 74 20 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75    6d 62 65 72 20 28 6e 75 6d 20 26 6f 70 74 69 6f  | st.djvu-match-number.(num.&optio | 
| 5c80 |  6e 61 6c 20 73 74 72 69 6e 67 20 62 61 73 65 29    0a 20 20 22 52 65 74 75 72 6e 20 73 74 72 69 6e  | nal.string.base)..."Return.strin | 
| 5ca0 |  67 20 6f 66 20 74 65 78 74 20 6d 61 74 63 68 65    64 20 62 79 20 6c 61 73 74 20 73 65 61 72 63 68  | g.of.text.matched.by.last.search | 
| 5cc0 |  2c 20 61 73 20 61 20 6e 75 6d 62 65 72 2e 0a 49    66 20 42 41 53 45 2c 20 69 6e 74 65 72 70 72 65  | ,.as.a.number..If.BASE,.interpre | 
| 5ce0 |  74 20 6d 61 74 63 68 20 61 73 20 61 20 6e 75 6d    62 65 72 20 69 6e 20 74 68 61 74 20 62 61 73 65  | t.match.as.a.number.in.that.base | 
| 5d00 |  2e 22 0a 20 20 28 73 74 72 69 6e 67 2d 74 6f 2d    6e 75 6d 62 65 72 20 28 6d 61 74 63 68 2d 73 74  | ."...(string-to-number.(match-st | 
| 5d20 |  72 69 6e 67 20 6e 75 6d 20 73 74 72 69 6e 67 29    20 62 61 73 65 29 29 0a 0a 28 64 65 66 73 75 62  | ring.num.string).base))..(defsub | 
| 5d40 |  73 74 20 64 6a 76 75 2d 62 75 66 66 65 72 73 20    28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 29 0a  | st.djvu-buffers.(&optional.doc). | 
| 5d60 |  20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74    20 6f 66 20 61 6c 6c 20 62 75 66 66 65 72 73 20  | .."Return.a.list.of.all.buffers. | 
| 5d80 |  66 6f 72 20 44 4f 43 2e 22 0a 20 20 28 6c 69 73    74 20 28 64 6a 76 75 2d 72 65 66 20 72 65 61 64  | for.DOC."...(list.(djvu-ref.read | 
| 5da0 |  2d 62 75 66 20 64 6f 63 29 20 28 64 6a 76 75 2d    72 65 66 20 74 65 78 74 2d 62 75 66 20 64 6f 63  | -buf.doc).(djvu-ref.text-buf.doc | 
| 5dc0 |  29 0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d    72 65 66 20 61 6e 6e 6f 74 2d 62 75 66 20 64 6f  | ).........(djvu-ref.annot-buf.do | 
| 5de0 |  63 29 20 28 64 6a 76 75 2d 72 65 66 20 73 68 61    72 65 64 2d 62 75 66 20 64 6f 63 29 0a 20 20 20  | c).(djvu-ref.shared-buf.doc).... | 
| 5e00 |  20 20 20 20 20 28 64 6a 76 75 2d 72 65 66 20 62    6f 6f 6b 6d 61 72 6b 73 2d 62 75 66 20 64 6f 63  | .....(djvu-ref.bookmarks-buf.doc | 
| 5e20 |  29 20 28 64 6a 76 75 2d 72 65 66 20 6f 75 74 6c    69 6e 65 2d 62 75 66 20 64 6f 63 29 29 29 0a 0a  | ).(djvu-ref.outline-buf.doc))).. | 
| 5e40 |  28 64 65 66 6d 61 63 72 6f 20 64 6a 76 75 2d 61    6c 6c 2d 62 75 66 66 65 72 73 20 28 64 6f 63 20  | (defmacro.djvu-all-buffers.(doc. | 
| 5e60 |  26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 45    76 61 6c 75 61 74 65 20 42 4f 44 59 20 69 6e 20  | &rest.body)..."Evaluate.BODY.in. | 
| 5e80 |  61 6c 6c 20 62 75 66 66 65 72 73 20 6f 66 20 44    6a 76 75 20 44 4f 43 2e 22 0a 20 20 28 64 65 63  | all.buffers.of.Djvu.DOC."...(dec | 
| 5ea0 |  6c 61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29    0a 20 20 60 28 64 6f 6c 69 73 74 20 28 62 75 66  | lare.(indent.1))...`(dolist.(buf | 
| 5ec0 |  20 28 64 6a 76 75 2d 62 75 66 66 65 72 73 20 2c    64 6f 63 29 29 0a 20 20 20 20 20 28 77 69 74 68  | .(djvu-buffers.,doc))......(with | 
| 5ee0 |  2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20    62 75 66 0a 20 20 20 20 20 20 20 2c 40 62 6f 64  | -current-buffer.buf........,@bod | 
| 5f00 |  79 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20    64 6a 76 75 2d 77 69 74 68 2d 74 65 6d 70 2d 66  | y)))..(defmacro.djvu-with-temp-f | 
| 5f20 |  69 6c 65 20 28 66 69 6c 65 20 26 72 65 73 74 20    62 6f 64 79 29 0a 20 20 22 45 76 61 6c 75 61 74  | ile.(file.&rest.body)..."Evaluat | 
| 5f40 |  65 20 42 4f 44 59 20 77 69 74 68 20 74 65 6d 70    20 66 69 6c 65 20 46 49 4c 45 20 64 65 6c 65 74  | e.BODY.with.temp.file.FILE.delet | 
| 5f60 |  65 64 20 61 74 20 74 68 65 20 65 6e 64 2e 0a 50    72 65 73 65 72 76 65 20 46 49 4c 45 20 69 66 20  | ed.at.the.end..Preserve.FILE.if. | 
| 5f80 |  60 64 6a 76 75 2d 74 65 73 74 27 20 69 73 20 6e    6f 6e 2d 6e 69 6c 2e 22 0a 20 20 28 64 65 63 6c  | `djvu-test'.is.non-nil."...(decl | 
| 5fa0 |  61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 20 28    64 65 62 75 67 20 28 73 79 6d 62 6f 6c 70 20 62  | are.(indent.1).(debug.(symbolp.b | 
| 5fc0 |  6f 64 79 29 29 29 0a 20 20 60 28 6c 65 74 20 28    28 2c 66 69 6c 65 20 28 6d 61 6b 65 2d 74 65 6d  | ody)))...`(let.((,file.(make-tem | 
| 5fe0 |  70 2d 66 69 6c 65 20 22 64 6a 76 75 2d 22 29 29    29 0a 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70  | p-file."djvu-")))......(unwind-p | 
| 6000 |  72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 20    28 70 72 6f 67 6e 20 2c 40 62 6f 64 79 29 0a 20  | rotect..........(progn.,@body).. | 
| 6020 |  20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 64 6a    76 75 2d 74 65 73 74 20 28 64 65 6c 65 74 65 2d  | ......(unless.djvu-test.(delete- | 
| 6040 |  66 69 6c 65 20 2c 66 69 6c 65 29 29 29 29 29 0a    0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 73 77 69  | file.,file)))))..(defun.djvu-swi | 
| 6060 |  74 63 68 2d 72 65 61 64 20 28 26 6f 70 74 69 6f    6e 61 6c 20 64 6f 63 20 64 70 6f 73 29 0a 20 20  | tch-read.(&optional.doc.dpos)... | 
| 6080 |  22 53 77 69 74 63 68 20 74 6f 20 44 6a 76 75 20    52 65 61 64 20 62 75 66 66 65 72 2e 22 0a 20 20  | "Switch.to.Djvu.Read.buffer."... | 
| 60a0 |  28 69 6e 74 65 72 61 63 74 69 76 65 20 28 6c 69    73 74 20 6e 69 6c 20 28 64 6a 76 75 2d 64 70 6f  | (interactive.(list.nil.(djvu-dpo | 
| 60c0 |  73 29 29 29 0a 20 20 28 73 77 69 74 63 68 2d 74    6f 2d 62 75 66 66 65 72 20 28 64 6a 76 75 2d 72  | s)))...(switch-to-buffer.(djvu-r | 
| 60e0 |  65 66 20 72 65 61 64 2d 62 75 66 20 64 6f 63 29    29 0a 20 20 28 64 6a 76 75 2d 67 6f 74 6f 2d 72  | ef.read-buf.doc))...(djvu-goto-r | 
| 6100 |  65 61 64 20 64 70 6f 73 29 29 0a 0a 28 64 65 66    75 6e 20 64 6a 76 75 2d 73 77 69 74 63 68 2d 74  | ead.dpos))..(defun.djvu-switch-t | 
| 6120 |  65 78 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64    6f 63 20 64 70 6f 73 29 0a 20 20 22 53 77 69 74  | ext.(&optional.doc.dpos)..."Swit | 
| 6140 |  63 68 20 74 6f 20 44 6a 76 75 20 54 65 78 74 20    62 75 66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65  | ch.to.Djvu.Text.buffer."...(inte | 
| 6160 |  72 61 63 74 69 76 65 20 28 6c 69 73 74 20 6e 69    6c 20 28 64 6a 76 75 2d 64 70 6f 73 29 29 29 0a  | ractive.(list.nil.(djvu-dpos))). | 
| 6180 |  20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66    66 65 72 20 28 64 6a 76 75 2d 72 65 66 20 74 65  | ..(switch-to-buffer.(djvu-ref.te | 
| 61a0 |  78 74 2d 62 75 66 20 64 6f 63 29 29 0a 20 20 28    64 6a 76 75 2d 67 6f 74 6f 2d 64 70 6f 73 20 27  | xt-buf.doc))...(djvu-goto-dpos.' | 
| 61c0 |  77 6f 72 64 20 64 70 6f 73 29 29 0a 0a 28 64 65    66 75 6e 20 64 6a 76 75 2d 73 77 69 74 63 68 2d  | word.dpos))..(defun.djvu-switch- | 
| 61e0 |  61 6e 6e 6f 74 20 28 26 6f 70 74 69 6f 6e 61 6c    20 64 6f 63 20 64 70 6f 73 29 0a 20 20 22 53 77  | annot.(&optional.doc.dpos)..."Sw | 
| 6200 |  69 74 63 68 20 74 6f 20 44 6a 76 75 20 41 6e 6e    6f 74 61 74 69 6f 6e 73 20 62 75 66 66 65 72 2e  | itch.to.Djvu.Annotations.buffer. | 
| 6220 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    20 28 6c 69 73 74 20 6e 69 6c 20 28 64 6a 76 75  | "...(interactive.(list.nil.(djvu | 
| 6240 |  2d 64 70 6f 73 29 29 29 0a 20 20 28 73 77 69 74    63 68 2d 74 6f 2d 62 75 66 66 65 72 20 28 64 6a  | -dpos)))...(switch-to-buffer.(dj | 
| 6260 |  76 75 2d 72 65 66 20 61 6e 6e 6f 74 2d 62 75 66    20 64 6f 63 29 29 0a 20 20 28 69 66 20 28 64 6a  | vu-ref.annot-buf.doc))...(if.(dj | 
| 6280 |  76 75 2d 67 6f 74 6f 2d 64 70 6f 73 20 22 5c 5c    28 3f 3a 72 65 63 74 5c 5c 7c 74 65 78 74 5c 5c  | vu-goto-dpos."\\(?:rect\\|text\\ | 
| 62a0 |  29 22 20 64 70 6f 73 29 0a 20 20 20 20 20 20 3b    3b 20 49 66 20 77 65 20 68 61 76 65 20 6d 61 74  | )".dpos).......;;.If.we.have.mat | 
| 62c0 |  63 68 69 6e 67 20 62 75 66 66 65 72 20 70 6f 73    69 74 69 6f 6e 20 69 6e 20 74 68 65 20 61 6e 6e  | ching.buffer.position.in.the.ann | 
| 62e0 |  6f 74 61 74 69 6f 6e 73 20 62 75 66 66 65 72 2c    0a 20 20 20 20 20 20 3b 3b 20 70 75 74 20 70 6f  | otations.buffer,.......;;.put.po | 
| 6300 |  69 6e 74 20 61 74 20 74 68 65 20 65 6e 64 20 6f    66 20 74 68 65 20 61 6e 6e 6f 74 61 74 69 6f 6e  | int.at.the.end.of.the.annotation | 
| 6320 |  73 20 73 74 72 69 6e 67 2e 0a 20 20 20 20 20 20    28 72 65 2d 73 65 61 72 63 68 2d 62 61 63 6b 77  | s.string........(re-search-backw | 
| 6340 |  61 72 64 20 22 5c 22 22 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 6a 76 75 2d 73 77 69 74 63 68 2d  | ard."\"")))..(defun.djvu-switch- | 
| 6360 |  73 68 61 72 65 64 20 28 26 6f 70 74 69 6f 6e 61    6c 20 64 6f 63 29 0a 20 20 22 53 77 69 74 63 68  | shared.(&optional.doc)..."Switch | 
| 6380 |  20 74 6f 20 44 6a 76 75 20 53 68 61 72 65 64 20    41 6e 6e 6f 74 61 74 69 6f 6e 73 20 62 75 66 66  | .to.Djvu.Shared.Annotations.buff | 
| 63a0 |  65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 29 0a 20 20 28 73 77 69 74 63 68 2d 74  | er."...(interactive)...(switch-t | 
| 63c0 |  6f 2d 62 75 66 66 65 72 20 28 64 6a 76 75 2d 72    65 66 20 73 68 61 72 65 64 2d 62 75 66 20 64 6f  | o-buffer.(djvu-ref.shared-buf.do | 
| 63e0 |  63 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76    75 2d 73 77 69 74 63 68 2d 62 6f 6f 6b 6d 61 72  | c)))..(defun.djvu-switch-bookmar | 
| 6400 |  6b 73 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f    63 20 70 61 67 65 29 0a 20 20 22 53 77 69 74 63  | ks.(&optional.doc.page)..."Switc | 
| 6420 |  68 20 74 6f 20 44 6a 76 75 20 42 6f 6f 6b 6d 61    72 6b 73 20 62 75 66 66 65 72 2e 22 0a 20 20 28  | h.to.Djvu.Bookmarks.buffer."...( | 
| 6440 |  69 6e 74 65 72 61 63 74 69 76 65 20 28 6c 69 73    74 20 6e 69 6c 20 28 69 66 20 28 65 71 20 64 6a  | interactive.(list.nil.(if.(eq.dj | 
| 6460 |  76 75 2d 62 75 66 66 65 72 20 27 6f 75 74 6c 69    6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | vu-buffer.'outline)............. | 
| 6480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 6f 75 74 6c 69 6e 65 2d 70  | .................(djvu-outline-p | 
| 64a0 |  61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | age)............................ | 
| 64c0 |  28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 29 29    29 29 0a 20 20 3b 3b 20 54 72 79 20 74 6f 20 67  | (djvu-ref.page))))...;;.Try.to.g | 
| 64e0 |  6f 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74    20 70 61 67 65 20 69 6e 20 74 68 65 20 62 6f 6f  | o.to.the.current.page.in.the.boo | 
| 6500 |  6b 6d 61 72 6b 73 20 62 75 66 66 65 72 2e 0a 20    20 3b 3b 20 49 66 20 74 68 69 73 20 70 61 67 65  | kmarks.buffer....;;.If.this.page | 
| 6520 |  20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c    20 74 72 79 20 74 6f 20 67 6f 20 74 6f 20 74 68  | .is.not.defined,.try.to.go.to.th | 
| 6540 |  65 20 6e 65 61 72 65 73 74 20 70 72 65 63 65 64    69 6e 67 20 70 61 67 65 2e 0a 20 20 28 73 77 69  | e.nearest.preceding.page....(swi | 
| 6560 |  74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20 28 64    6a 76 75 2d 72 65 66 20 62 6f 6f 6b 6d 61 72 6b  | tch-to-buffer.(djvu-ref.bookmark | 
| 6580 |  73 2d 62 75 66 20 64 6f 63 29 29 0a 20 20 28 77    68 65 6e 20 70 61 67 65 0a 20 20 20 20 28 67 6f  | s-buf.doc))...(when.page.....(go | 
| 65a0 |  74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d    69 6e 29 29 0a 20 20 20 20 28 69 66 20 28 6c 6f  | to-char.(point-min)).....(if.(lo | 
| 65c0 |  6f 6b 69 6e 67 2d 61 74 20 22 28 62 6f 6f 6b 6d    61 72 6b 73 22 29 0a 20 20 20 20 20 20 20 20 28  | oking-at."(bookmarks").........( | 
| 65e0 |  77 68 69 6c 65 20 28 61 6e 64 20 28 3c 20 30 20    70 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20  | while.(and.(<.0.page)........... | 
| 6600 |  20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28    72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | ..........(not.(re-search-forwar | 
| 6620 |  64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72  | d...........................(for | 
| 6640 |  6d 61 74 20 22 5c 22 23 5c 5c 28 25 64 5c 5c 7c    25 73 5c 5c 29 5c 22 22 20 70 61 67 65 0a 20 20  | mat."\"#\\(%d\\|%s\\)\"".page... | 
| 6660 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6680 |  28 63 64 72 20 28 61 73 73 71 20 70 61 67 65 20    28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 2d 69  | (cdr.(assq.page.(djvu-ref.page-i | 
| 66a0 |  64 20 64 6f 63 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  | d.doc))))....................... | 
| 66c0 |  20 20 20 20 6e 69 6c 20 74 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 28 73 65 74 71 20 70 61 67  | ....nil.t)))...........(setq.pag | 
| 66e0 |  65 20 28 31 2d 20 70 61 67 65 29 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 73 77  | e.(1-.page))))))..(defun.djvu-sw | 
| 6700 |  69 74 63 68 2d 6f 75 74 6c 69 6e 65 20 28 26 6f    70 74 69 6f 6e 61 6c 20 64 6f 63 20 70 61 67 65  | itch-outline.(&optional.doc.page | 
| 6720 |  29 0a 20 20 22 53 77 69 74 63 68 20 74 6f 20 44    6a 76 75 20 4f 75 74 6c 69 6e 65 20 62 75 66 66  | )..."Switch.to.Djvu.Outline.buff | 
| 6740 |  65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 20 28 6c 69 73 74 20 6e 69 6c 20 28 69  | er."...(interactive.(list.nil.(i | 
| 6760 |  66 20 28 65 71 20 64 6a 76 75 2d 62 75 66 66 65    72 20 27 62 6f 6f 6b 6d 61 72 6b 73 29 0a 20 20  | f.(eq.djvu-buffer.'bookmarks)... | 
| 6780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75  | ...........................(djvu | 
| 67a0 |  2d 62 6f 6f 6b 6d 61 72 6b 73 2d 70 61 67 65 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -bookmarks-page)................ | 
| 67c0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76    75 2d 72 65 66 20 70 61 67 65 29 29 29 29 0a 20  | ............(djvu-ref.page)))).. | 
| 67e0 |  20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66    65 72 20 28 64 6a 76 75 2d 72 65 66 20 6f 75 74  | .(switch-to-buffer.(djvu-ref.out | 
| 6800 |  6c 69 6e 65 2d 62 75 66 20 64 6f 63 29 29 0a 20    20 28 69 66 20 70 61 67 65 20 28 64 6a 76 75 2d  | line-buf.doc))...(if.page.(djvu- | 
| 6820 |  67 6f 74 6f 2d 6f 75 74 6c 69 6e 65 20 70 61 67    65 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76  | goto-outline.page)))..(defun.djv | 
| 6840 |  75 2d 64 70 6f 73 20 28 26 6f 70 74 69 6f 6e 61    6c 20 64 6f 63 29 0a 20 20 22 44 6a 76 75 20 70  | u-dpos.(&optional.doc)..."Djvu.p | 
| 6860 |  6f 73 69 74 69 6f 6e 20 69 6e 20 63 75 72 72 65    6e 74 20 44 6a 76 75 20 62 75 66 66 65 72 2e 22  | osition.in.current.Djvu.buffer." | 
| 6880 |  0a 20 20 28 63 6f 6e 64 20 28 28 65 71 20 64 6a    76 75 2d 62 75 66 66 65 72 20 27 72 65 61 64 29  | ...(cond.((eq.djvu-buffer.'read) | 
| 68a0 |  0a 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d    72 65 61 64 2d 64 70 6f 73 20 6e 69 6c 20 64 6f  | ..........(djvu-read-dpos.nil.do | 
| 68c0 |  63 29 29 0a 20 20 20 20 20 20 20 20 28 28 65 71    20 64 6a 76 75 2d 62 75 66 66 65 72 20 27 74 65  | c)).........((eq.djvu-buffer.'te | 
| 68e0 |  78 74 29 0a 20 20 20 20 20 20 20 20 20 28 64 6a    76 75 2d 74 65 78 74 2d 64 70 6f 73 20 6e 69 6c  | xt)..........(djvu-text-dpos.nil | 
| 6900 |  20 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 28    28 65 71 20 64 6a 76 75 2d 62 75 66 66 65 72 20  | .doc)).........((eq.djvu-buffer. | 
| 6920 |  27 61 6e 6e 6f 74 29 0a 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 61 6e 6e 6f 74 2d 64 70 6f  | 'annot)..........(djvu-annot-dpo | 
| 6940 |  73 20 6e 69 6c 20 64 6f 63 29 29 29 29 0a 0a 28    64 65 66 75 6e 20 64 6a 76 75 2d 72 65 61 64 2d  | s.nil.doc))))..(defun.djvu-read- | 
| 6960 |  70 61 67 65 20 28 29 0a 20 20 22 52 65 61 64 20    70 61 67 65 20 6e 75 6d 62 65 72 20 69 6e 74 65  | page.()..."Read.page.number.inte | 
| 6980 |  72 61 63 74 69 76 65 6c 79 2e 22 0a 20 20 28 6c    65 74 20 28 28 73 74 72 20 28 72 65 61 64 2d 73  | ractively."...(let.((str.(read-s | 
| 69a0 |  74 72 69 6e 67 20 28 66 6f 72 6d 61 74 20 22 50    61 67 65 20 28 66 2c 20 31 2d 25 64 2c 20 6c 29  | tring.(format."Page.(f,.1-%d,.l) | 
| 69c0 |  3a 20 22 20 28 64 6a 76 75 2d 72 65 66 20 70 61    67 65 6d 61 78 29 29 29 29 29 0a 20 20 20 20 28  | :.".(djvu-ref.pagemax))))).....( | 
| 69e0 |  63 6f 6e 64 20 28 28 73 74 72 69 6e 67 2d 6d 61    74 63 68 20 22 5c 5c 60 66 22 20 73 74 72 29 20  | cond.((string-match."\\`f".str). | 
| 6a00 |  31 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 73    74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60  | 1)...........((string-match."\\` | 
| 6a20 |  6c 22 20 73 74 72 29 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 6d 61 78 29 29 0a 20 20 20 20  | l".str).(djvu-ref.pagemax))..... | 
| 6a40 |  20 20 20 20 20 20 28 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 20 22 5c 5c 60 5b 5b 3a 64 69 67 69  | ......((string-match."\\`[[:digi | 
| 6a60 |  74 3a 5d 5d 2b 5c 5c 27 22 20 73 74 72 29 0a 20    20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e  | t:]]+\\'".str)............(strin | 
| 6a80 |  67 2d 74 6f 2d 6e 75 6d 62 65 72 20 73 74 72 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 74 20 28  | g-to-number.str))...........(t.( | 
| 6aa0 |  75 73 65 72 2d 65 72 72 6f 72 20 22 50 61 67 65    20 60 25 73 27 20 69 6e 76 61 6c 69 64 22 20 73  | user-error."Page.`%s'.invalid".s | 
| 6ac0 |  74 72 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 6e 65 78 74 2d 70 61 67 65 20 28  | tr)))))..(defun.djvu-next-page.( | 
| 6ae0 |  6e 29 0a 20 20 22 47 6f 20 74 6f 20 74 68 65 20    6e 65 78 74 20 70 61 67 65 20 6f 66 20 74 68 69  | n)..."Go.to.the.next.page.of.thi | 
| 6b00 |  73 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | s.Djvu.document."...(interactive | 
| 6b20 |  20 22 70 22 29 0a 20 20 28 64 6a 76 75 2d 67 6f    74 6f 2d 70 61 67 65 20 28 2b 20 28 64 6a 76 75  | ."p")...(djvu-goto-page.(+.(djvu | 
| 6b40 |  2d 72 65 66 20 70 61 67 65 29 20 6e 29 29 29 0a    0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 70 72 65  | -ref.page).n)))..(defun.djvu-pre | 
| 6b60 |  76 2d 70 61 67 65 20 28 6e 29 0a 20 20 22 47 6f    20 74 6f 20 74 68 65 20 70 72 65 76 69 6f 75 73  | v-page.(n)..."Go.to.the.previous | 
| 6b80 |  20 70 61 67 65 20 6f 66 20 74 68 69 73 20 44 6a    76 75 20 64 6f 63 75 6d 65 6e 74 2e 22 0a 20 20  | .page.of.this.Djvu.document."... | 
| 6ba0 |  28 69 6e 74 65 72 61 63 74 69 76 65 20 22 70 22    29 0a 20 20 28 64 6a 76 75 2d 67 6f 74 6f 2d 70  | (interactive."p")...(djvu-goto-p | 
| 6bc0 |  61 67 65 20 28 2d 20 28 64 6a 76 75 2d 72 65 66    20 70 61 67 65 29 20 6e 29 29 29 0a 0a 28 64 65  | age.(-.(djvu-ref.page).n)))..(de | 
| 6be0 |  66 75 6e 20 64 6a 76 75 2d 73 63 72 6f 6c 6c 2d    75 70 2d 63 6f 6d 6d 61 6e 64 20 28 26 6f 70 74  | fun.djvu-scroll-up-command.(&opt | 
| 6c00 |  69 6f 6e 61 6c 20 61 72 67 29 0a 20 20 22 53 63    72 6f 6c 6c 20 74 65 78 74 20 75 70 77 61 72 64  | ional.arg)..."Scroll.text.upward | 
| 6c20 |  20 41 52 47 20 6c 69 6e 65 73 3b 20 6f 72 20 6e    65 61 72 20 66 75 6c 6c 20 73 63 72 65 65 6e 20  | .ARG.lines;.or.near.full.screen. | 
| 6c40 |  69 66 20 6e 6f 20 41 52 47 2e 0a 41 74 20 74 68    65 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20  | if.no.ARG..At.the.bottom.of.the. | 
| 6c60 |  70 61 67 65 2c 20 77 68 65 6e 20 60 64 6a 76 75    2d 63 6f 6e 74 69 6e 75 6f 75 73 27 20 69 73 20  | page,.when.`djvu-continuous'.is. | 
| 6c80 |  6e 6f 6e 2d 6e 69 6c 0a 67 6f 20 74 6f 20 74 68    65 20 6e 65 78 74 20 70 61 67 65 2e 0a 50 72 65  | non-nil.go.to.the.next.page..Pre | 
| 6ca0 |  66 69 78 20 41 52 47 20 6d 61 79 20 74 61 6b 65    20 74 68 65 20 73 61 6d 65 20 76 61 6c 75 65 73  | fix.ARG.may.take.the.same.values | 
| 6cc0 |  20 61 73 20 61 72 67 20 41 52 47 20 6f 66 20 60    73 63 72 6f 6c 6c 2d 75 70 2d 63 6f 6d 6d 61 6e  | .as.arg.ARG.of.`scroll-up-comman | 
| 6ce0 |  64 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 20 22 5e 50 22 29 20 3b 20 73 61 6d 65  | d'."...(interactive."^P").;.same | 
| 6d00 |  20 61 73 20 60 73 63 72 6f 6c 6c 2d 75 70 2d 63    6f 6d 6d 61 6e 64 27 0a 20 20 28 69 66 20 28 61  | .as.`scroll-up-command'...(if.(a | 
| 6d20 |  6e 64 20 64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f    75 73 0a 20 20 20 20 20 20 20 20 20 20 20 28 3d  | nd.djvu-continuous............(= | 
| 6d40 |  20 28 77 69 6e 64 6f 77 2d 65 6e 64 29 20 28 70    6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20  | .(window-end).(point-max))...... | 
| 6d60 |  20 20 20 20 20 20 28 3c 20 28 64 6a 76 75 2d 72    65 66 20 70 61 67 65 29 20 28 64 6a 76 75 2d 72  | ......(<.(djvu-ref.page).(djvu-r | 
| 6d80 |  65 66 20 70 61 67 65 6d 61 78 29 29 29 0a 20 20    20 20 20 20 28 64 6a 76 75 2d 6e 65 78 74 2d 70  | ef.pagemax))).......(djvu-next-p | 
| 6da0 |  61 67 65 20 31 29 0a 20 20 20 20 28 63 6f 6e 64    69 74 69 6f 6e 2d 63 61 73 65 20 6e 69 6c 20 20  | age.1).....(condition-case.nil.. | 
| 6dc0 |  20 20 20 20 20 20 20 20 3b 20 47 72 72 72 2c 20    77 65 20 73 68 6f 75 6c 64 20 6e 6f 74 20 6e 65  | ........;.Grrr,.we.should.not.ne | 
| 6de0 |  65 64 20 74 68 69 73 2c 20 62 75 74 0a 20 20 20    20 20 20 20 20 28 73 63 72 6f 6c 6c 2d 75 70 2d  | ed.this,.but.........(scroll-up- | 
| 6e00 |  63 6f 6d 6d 61 6e 64 20 61 72 67 29 0a 20 20 20    20 20 20 28 65 6e 64 2d 6f 66 2d 62 75 66 66 65  | command.arg).......(end-of-buffe | 
| 6e20 |  72 20 6e 69 6c 29 29 29 29 20 20 20 20 20 3b 20    60 6d 77 68 65 65 6c 2d 73 63 72 6f 6c 6c 27 20  | r.nil)))).....;.`mwheel-scroll'. | 
| 6e40 |  64 6f 65 73 20 6e 6f 74 20 6c 69 6b 65 20 74 68    69 73 2e 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | does.not.like.this...(defun.djvu | 
| 6e60 |  2d 73 63 72 6f 6c 6c 2d 64 6f 77 6e 2d 63 6f 6d    6d 61 6e 64 20 28 26 6f 70 74 69 6f 6e 61 6c 20  | -scroll-down-command.(&optional. | 
| 6e80 |  61 72 67 29 0a 20 20 22 53 63 72 6f 6c 6c 20 74    65 78 74 20 64 6f 77 6e 77 61 72 64 20 41 52 47  | arg)..."Scroll.text.downward.ARG | 
| 6ea0 |  20 6c 69 6e 65 73 3b 20 6f 72 20 6e 65 61 72 20    66 75 6c 6c 20 73 63 72 65 65 6e 20 69 66 20 6e  | .lines;.or.near.full.screen.if.n | 
| 6ec0 |  6f 20 41 52 47 2e 0a 41 74 20 74 68 65 20 74 6f    70 20 6f 66 20 74 68 65 20 70 61 67 65 2c 20 77  | o.ARG..At.the.top.of.the.page,.w | 
| 6ee0 |  68 65 6e 20 60 64 6a 76 75 2d 63 6f 6e 74 69 6e    75 6f 75 73 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c  | hen.`djvu-continuous'.is.non-nil | 
| 6f00 |  0a 67 6f 20 74 6f 20 74 68 65 20 70 72 65 76 69    6f 75 73 20 70 61 67 65 2e 0a 50 72 65 66 69 78  | .go.to.the.previous.page..Prefix | 
| 6f20 |  20 41 52 47 20 6d 61 79 20 74 61 6b 65 20 74 68    65 20 73 61 6d 65 20 76 61 6c 75 65 73 20 61 73  | .ARG.may.take.the.same.values.as | 
| 6f40 |  20 61 72 67 20 41 52 47 20 6f 66 20 60 73 63 72    6f 6c 6c 2d 64 6f 77 6e 2d 63 6f 6d 6d 61 6e 64  | .arg.ARG.of.`scroll-down-command | 
| 6f60 |  27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 20 22 5e 50 22 29 20 3b 20 73 61 6d 65 20  | '."...(interactive."^P").;.same. | 
| 6f80 |  61 73 20 60 73 63 72 6f 6c 6c 2d 64 6f 77 6e 2d    63 6f 6d 6d 61 6e 64 27 0a 20 20 28 69 66 20 28  | as.`scroll-down-command'...(if.( | 
| 6fa0 |  61 6e 64 20 64 6a 76 75 2d 63 6f 6e 74 69 6e 75    6f 75 73 0a 20 20 20 20 20 20 20 20 20 20 20 28  | and.djvu-continuous............( | 
| 6fc0 |  3d 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 77    69 6e 64 6f 77 2d 73 74 61 72 74 29 29 0a 20 20  | =.(point-min).(window-start))... | 
| 6fe0 |  20 20 20 20 20 20 20 20 20 28 3c 20 31 20 28 64    6a 76 75 2d 72 65 66 20 70 61 67 65 29 29 29 0a  | .........(<.1.(djvu-ref.page))). | 
| 7000 |  20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20    20 20 20 20 20 28 64 6a 76 75 2d 70 72 65 76 2d  | ......(progn.........(djvu-prev- | 
| 7020 |  70 61 67 65 20 31 29 0a 20 20 20 20 20 20 20 20    28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e  | page.1).........(goto-char.(poin | 
| 7040 |  74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20    28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69  | t-max)).........(beginning-of-li | 
| 7060 |  6e 65 29 0a 20 20 20 20 20 20 20 20 28 72 65 63    65 6e 74 65 72 20 2d 33 29 29 0a 20 20 20 20 28  | ne).........(recenter.-3)).....( | 
| 7080 |  63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 6e    69 6c 20 20 20 20 20 20 20 20 20 20 20 20 3b 20  | condition-case.nil............;. | 
| 70a0 |  47 72 72 72 2c 20 77 65 20 73 68 6f 75 6c 64 20    6e 6f 74 20 6e 65 65 64 20 74 68 69 73 2c 20 62  | Grrr,.we.should.not.need.this,.b | 
| 70c0 |  75 74 0a 20 20 20 20 20 20 20 20 28 73 63 72 6f    6c 6c 2d 64 6f 77 6e 2d 63 6f 6d 6d 61 6e 64 20  | ut.........(scroll-down-command. | 
| 70e0 |  61 72 67 29 0a 20 20 20 20 20 20 28 62 65 67 69    6e 6e 69 6e 67 2d 6f 66 2d 62 75 66 66 65 72 20  | arg).......(beginning-of-buffer. | 
| 7100 |  6e 69 6c 29 29 29 29 20 3b 20 60 6d 77 68 65 65    6c 2d 73 63 72 6f 6c 6c 27 20 64 6f 65 73 20 6e  | nil)))).;.`mwheel-scroll'.does.n | 
| 7120 |  6f 74 20 6c 69 6b 65 20 74 68 69 73 2e 0a 0a 28    64 65 66 75 6e 20 64 6a 76 75 2d 6e 65 78 74 2d  | ot.like.this...(defun.djvu-next- | 
| 7140 |  6c 69 6e 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20    5f 61 72 67 20 5f 74 72 79 2d 76 73 63 72 6f 6c  | line.(&optional._arg._try-vscrol | 
| 7160 |  6c 29 0a 20 20 22 4d 6f 76 65 20 63 75 72 73 6f    72 20 76 65 72 74 69 63 61 6c 6c 79 20 64 6f 77  | l)..."Move.cursor.vertically.dow | 
| 7180 |  6e 20 41 52 47 20 6c 69 6e 65 73 2e 0a 41 52 47    20 61 6e 64 20 54 52 59 2d 56 53 43 52 4f 4c 4c  | n.ARG.lines..ARG.and.TRY-VSCROLL | 
| 71a0 |  20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 6d    65 61 6e 69 6e 67 20 61 73 20 66 6f 72 20 60 6e  | .have.the.same.meaning.as.for.`n | 
| 71c0 |  65 78 74 2d 6c 69 6e 65 27 2e 0a 41 74 20 74 68    65 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20  | ext-line'..At.the.bottom.of.the. | 
| 71e0 |  70 61 67 65 2c 20 77 68 65 6e 20 60 64 6a 76 75    2d 63 6f 6e 74 69 6e 75 6f 75 73 27 20 69 73 20  | page,.when.`djvu-continuous'.is. | 
| 7200 |  6e 6f 6e 2d 6e 69 6c 2c 0a 67 6f 20 74 6f 20 74    68 65 20 6e 65 78 74 20 70 61 67 65 2e 22 0a 20  | non-nil,.go.to.the.next.page.".. | 
| 7220 |  20 3b 3b 20 54 68 65 20 69 6e 74 65 72 61 63 74    69 76 65 20 73 70 65 63 20 67 69 76 65 73 20 62  | .;;.The.interactive.spec.gives.b | 
| 7240 |  6f 74 68 20 61 72 67 73 20 74 68 65 20 6e 75 6d    65 72 69 63 20 76 61 6c 75 65 0a 20 20 3b 3b 20  | oth.args.the.numeric.value...;;. | 
| 7260 |  6f 66 20 60 63 75 72 72 65 6e 74 2d 70 72 65 66    69 78 2d 61 72 67 27 2e 0a 20 20 28 69 6e 74 65  | of.`current-prefix-arg'....(inte | 
| 7280 |  72 61 63 74 69 76 65 20 22 5e 70 5c 6e 70 22 29    20 3b 20 73 61 6d 65 20 61 73 20 60 6e 65 78 74  | ractive."^p\np").;.same.as.`next | 
| 72a0 |  2d 6c 69 6e 65 27 0a 20 20 28 69 66 20 28 61 6e    64 20 64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f 75  | -line'...(if.(and.djvu-continuou | 
| 72c0 |  73 0a 20 20 20 20 20 20 20 20 20 20 20 28 3d 20    28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69  | s............(=.(line-end-positi | 
| 72e0 |  6f 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 28  | on).(point-max))............(<.( | 
| 7300 |  64 6a 76 75 2d 72 65 66 20 70 61 67 65 29 20 28    64 6a 76 75 2d 72 65 66 20 70 61 67 65 6d 61 78  | djvu-ref.page).(djvu-ref.pagemax | 
| 7320 |  29 29 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d    6e 65 78 74 2d 70 61 67 65 20 31 29 0a 20 20 20  | ))).......(djvu-next-page.1).... | 
| 7340 |  20 28 63 61 6c 6c 2d 69 6e 74 65 72 61 63 74 69    76 65 6c 79 20 27 6e 65 78 74 2d 6c 69 6e 65 29  | .(call-interactively.'next-line) | 
| 7360 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d    70 72 65 76 2d 6c 69 6e 65 20 28 26 6f 70 74 69  | ))..(defun.djvu-prev-line.(&opti | 
| 7380 |  6f 6e 61 6c 20 5f 61 72 67 20 5f 74 72 79 2d 76    73 63 72 6f 6c 6c 29 0a 20 20 22 4d 6f 76 65 20  | onal._arg._try-vscroll)..."Move. | 
| 73a0 |  63 75 72 73 6f 72 20 76 65 72 74 69 63 61 6c 6c    79 20 75 70 20 41 52 47 20 6c 69 6e 65 73 2e 0a  | cursor.vertically.up.ARG.lines.. | 
| 73c0 |  41 52 47 20 61 6e 64 20 54 52 59 2d 56 53 43 52    4f 4c 4c 20 68 61 76 65 20 74 68 65 20 73 61 6d  | ARG.and.TRY-VSCROLL.have.the.sam | 
| 73e0 |  65 20 6d 65 61 6e 69 6e 67 20 61 73 20 66 6f 72    20 60 70 72 65 76 69 6f 75 73 2d 6c 69 6e 65 27  | e.meaning.as.for.`previous-line' | 
| 7400 |  2e 0a 41 74 20 74 68 65 20 74 6f 70 20 6f 66 20    74 68 65 20 70 61 67 65 2c 20 77 68 65 6e 20 60  | ..At.the.top.of.the.page,.when.` | 
| 7420 |  64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f 75 73 27    20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 0a 67 6f 20  | djvu-continuous'.is.non-nil,.go. | 
| 7440 |  74 6f 20 74 68 65 20 70 72 65 76 69 6f 75 73 20    70 61 67 65 2e 22 0a 20 20 3b 3b 20 54 68 65 20  | to.the.previous.page."...;;.The. | 
| 7460 |  69 6e 74 65 72 61 63 74 69 76 65 20 73 70 65 63    20 67 69 76 65 73 20 62 6f 74 68 20 61 72 67 73  | interactive.spec.gives.both.args | 
| 7480 |  20 74 68 65 20 6e 75 6d 65 72 69 63 20 76 61 6c    75 65 0a 20 20 3b 3b 20 6f 66 20 60 63 75 72 72  | .the.numeric.value...;;.of.`curr | 
| 74a0 |  65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 27 2e    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20  | ent-prefix-arg'....(interactive. | 
| 74c0 |  22 5e 70 5c 6e 70 22 29 20 3b 20 73 61 6d 65 20    61 73 20 60 70 72 65 76 69 6f 75 73 2d 6c 69 6e  | "^p\np").;.same.as.`previous-lin | 
| 74e0 |  65 27 0a 20 20 28 69 66 20 28 61 6e 64 20 64 6a    76 75 2d 63 6f 6e 74 69 6e 75 6f 75 73 0a 20 20  | e'...(if.(and.djvu-continuous... | 
| 7500 |  20 20 20 20 20 20 20 20 20 28 3d 20 28 70 6f 69    6e 74 2d 6d 69 6e 29 20 28 6c 69 6e 65 2d 62 65  | .........(=.(point-min).(line-be | 
| 7520 |  67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 3c  | ginning-position))............(< | 
| 7540 |  20 31 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67    65 29 29 29 0a 20 20 20 20 20 20 28 70 72 6f 67  | .1.(djvu-ref.page))).......(prog | 
| 7560 |  6e 0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d    70 72 65 76 2d 70 61 67 65 20 31 29 0a 20 20 20  | n.........(djvu-prev-page.1).... | 
| 7580 |  20 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  | .....(goto-char.(point-max)).... | 
| 75a0 |  20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d    6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20  | .....(beginning-of-line)........ | 
| 75c0 |  20 28 72 65 63 65 6e 74 65 72 20 2d 33 29 29 0a    20 20 20 20 28 63 61 6c 6c 2d 69 6e 74 65 72 61  | .(recenter.-3)).....(call-intera | 
| 75e0 |  63 74 69 76 65 6c 79 20 27 70 72 65 76 69 6f 75    73 2d 6c 69 6e 65 29 29 29 0a 0a 28 64 65 66 75  | ctively.'previous-line)))..(defu | 
| 7600 |  6e 20 64 6a 76 75 2d 68 69 73 74 6f 72 79 2d 62    61 63 6b 77 61 72 64 20 28 29 0a 20 20 22 47 6f  | n.djvu-history-backward.()..."Go | 
| 7620 |  20 62 61 63 6b 77 61 72 64 20 69 6e 20 74 68 65    20 68 69 73 74 6f 72 79 20 6f 66 20 76 69 73 69  | .backward.in.the.history.of.visi | 
| 7640 |  74 65 64 20 70 61 67 65 73 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c  | ted.pages."...(interactive)...(l | 
| 7660 |  65 74 20 28 28 68 69 73 74 6f 72 79 2d 62 61 63    6b 77 61 72 64 20 28 64 6a 76 75 2d 72 65 66 20  | et.((history-backward.(djvu-ref. | 
| 7680 |  68 69 73 74 6f 72 79 2d 62 61 63 6b 77 61 72 64    29 29 0a 20 20 20 20 20 20 20 20 28 68 69 73 74  | history-backward)).........(hist | 
| 76a0 |  6f 72 79 2d 66 6f 72 77 61 72 64 20 28 63 6f 6e    73 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65  | ory-forward.(cons.(djvu-ref.page | 
| 76c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | )............................... | 
| 76e0 |  20 28 64 6a 76 75 2d 72 65 66 20 68 69 73 74 6f    72 79 2d 66 6f 72 77 61 72 64 29 29 29 29 0a 20  | .(djvu-ref.history-forward)))).. | 
| 7700 |  20 20 20 28 75 6e 6c 65 73 73 20 68 69 73 74 6f    72 79 2d 62 61 63 6b 77 61 72 64 0a 20 20 20 20  | ...(unless.history-backward..... | 
| 7720 |  20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 54    68 69 73 20 69 73 20 74 68 65 20 66 69 72 73 74  | ..(user-error."This.is.the.first | 
| 7740 |  20 70 61 67 65 20 79 6f 75 20 6c 6f 6f 6b 65 64    20 61 74 22 29 29 0a 20 20 20 20 28 64 6a 76 75  | .page.you.looked.at")).....(djvu | 
| 7760 |  2d 67 6f 74 6f 2d 70 61 67 65 20 28 63 61 72 20    68 69 73 74 6f 72 79 2d 62 61 63 6b 77 61 72 64  | -goto-page.(car.history-backward | 
| 7780 |  29 29 0a 20 20 20 20 28 64 6a 76 75 2d 73 65 74    20 68 69 73 74 6f 72 79 2d 62 61 63 6b 77 61 72  | )).....(djvu-set.history-backwar | 
| 77a0 |  64 20 28 63 64 72 20 68 69 73 74 6f 72 79 2d 62    61 63 6b 77 61 72 64 29 29 0a 20 20 20 20 28 64  | d.(cdr.history-backward)).....(d | 
| 77c0 |  6a 76 75 2d 73 65 74 20 68 69 73 74 6f 72 79 2d    66 6f 72 77 61 72 64 20 68 69 73 74 6f 72 79 2d  | jvu-set.history-forward.history- | 
| 77e0 |  66 6f 72 77 61 72 64 29 29 29 0a 0a 28 64 65 66    75 6e 20 64 6a 76 75 2d 68 69 73 74 6f 72 79 2d  | forward)))..(defun.djvu-history- | 
| 7800 |  66 6f 72 77 61 72 64 20 28 29 0a 20 20 22 47 6f    20 66 6f 72 77 61 72 64 20 69 6e 20 74 68 65 20  | forward.()..."Go.forward.in.the. | 
| 7820 |  68 69 73 74 6f 72 79 20 6f 66 20 76 69 73 69 74    65 64 20 70 61 67 65 73 2e 22 0a 20 20 28 69 6e  | history.of.visited.pages."...(in | 
| 7840 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65    74 20 28 28 68 69 73 74 6f 72 79 2d 66 6f 72 77  | teractive)...(let.((history-forw | 
| 7860 |  61 72 64 20 28 64 6a 76 75 2d 72 65 66 20 68 69    73 74 6f 72 79 2d 66 6f 72 77 61 72 64 29 29 29  | ard.(djvu-ref.history-forward))) | 
| 7880 |  0a 20 20 20 20 28 75 6e 6c 65 73 73 20 68 69 73    74 6f 72 79 2d 66 6f 72 77 61 72 64 0a 20 20 20  | .....(unless.history-forward.... | 
| 78a0 |  20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22    54 68 69 73 20 69 73 20 74 68 65 20 6c 61 73 74  | ...(user-error."This.is.the.last | 
| 78c0 |  20 70 61 67 65 20 79 6f 75 20 6c 6f 6f 6b 65 64    20 61 74 22 29 29 0a 20 20 20 20 28 64 6a 76 75  | .page.you.looked.at")).....(djvu | 
| 78e0 |  2d 67 6f 74 6f 2d 70 61 67 65 20 28 63 61 72 20    68 69 73 74 6f 72 79 2d 66 6f 72 77 61 72 64 29  | -goto-page.(car.history-forward) | 
| 7900 |  29 0a 20 20 20 20 28 64 6a 76 75 2d 73 65 74 20    68 69 73 74 6f 72 79 2d 66 6f 72 77 61 72 64 20  | ).....(djvu-set.history-forward. | 
| 7920 |  28 63 64 72 20 68 69 73 74 6f 72 79 2d 66 6f 72    77 61 72 64 29 29 29 29 0a 0a 28 64 65 66 75 6e  | (cdr.history-forward))))..(defun | 
| 7940 |  20 64 6a 76 75 2d 6b 69 6c 6c 2d 76 69 65 77 20    28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 20 61  | .djvu-kill-view.(&optional.doc.a | 
| 7960 |  6c 6c 29 0a 20 20 22 4b 69 6c 6c 20 6d 6f 73 74    20 72 65 63 65 6e 74 20 44 6a 76 69 65 77 20 70  | ll)..."Kill.most.recent.Djview.p | 
| 7980 |  72 6f 63 65 73 73 20 66 6f 72 20 44 4f 43 2e 0a    49 66 20 41 4c 4c 20 69 73 20 6e 6f 6e 2d 6e 69  | rocess.for.DOC..If.ALL.is.non-ni | 
| 79a0 |  6c 2c 20 6b 69 6c 6c 20 61 6c 6c 20 44 6a 76 69    65 77 20 70 72 6f 63 65 73 73 65 73 2e 22 0a 20  | l,.kill.all.Djview.processes.".. | 
| 79c0 |  20 28 69 6e 74 65 72 61 63 74 69 76 65 20 28 6c    69 73 74 20 6e 69 6c 20 63 75 72 72 65 6e 74 2d  | .(interactive.(list.nil.current- | 
| 79e0 |  70 72 65 66 69 78 2d 61 72 67 29 29 0a 20 20 28    6c 65 74 20 28 28 70 72 6f 63 2d 6c 69 73 74 20  | prefix-arg))...(let.((proc-list. | 
| 7a00 |  28 64 6a 76 75 2d 72 65 66 20 76 69 65 77 2d 70    72 6f 63 20 64 6f 63 29 29 20 70 72 6f 63 20 6e  | (djvu-ref.view-proc.doc)).proc.n | 
| 7a20 |  70 72 6f 63 2d 6c 69 73 74 29 0a 20 20 20 20 3b    3b 20 43 6c 65 61 6e 20 75 70 20 70 72 6f 63 65  | proc-list).....;;.Clean.up.proce | 
| 7a40 |  73 73 20 6c 69 73 74 0a 20 20 20 20 28 77 68 69    6c 65 20 28 73 65 74 71 20 70 72 6f 63 20 28 70  | ss.list.....(while.(setq.proc.(p | 
| 7a60 |  6f 70 20 70 72 6f 63 2d 6c 69 73 74 29 29 0a 20    20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 65  | op.proc-list)).......(unless.(me | 
| 7a80 |  6d 71 20 28 70 72 6f 63 65 73 73 2d 73 74 61 74    75 73 20 70 72 6f 63 29 20 27 28 65 78 69 74 20  | mq.(process-status.proc).'(exit. | 
| 7aa0 |  73 69 67 6e 61 6c 29 29 0a 20 20 20 20 20 20 20    20 28 70 75 73 68 20 70 72 6f 63 20 6e 70 72 6f  | signal)).........(push.proc.npro | 
| 7ac0 |  63 2d 6c 69 73 74 29 29 29 0a 20 20 20 20 28 73    65 74 71 20 70 72 6f 63 2d 6c 69 73 74 20 28 6e  | c-list))).....(setq.proc-list.(n | 
| 7ae0 |  72 65 76 65 72 73 65 20 6e 70 72 6f 63 2d 6c 69    73 74 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20  | reverse.nproc-list)).....(while. | 
| 7b00 |  28 73 65 74 71 20 70 72 6f 63 20 28 70 6f 70 20    70 72 6f 63 2d 6c 69 73 74 29 29 0a 20 20 20 20  | (setq.proc.(pop.proc-list))..... | 
| 7b20 |  20 20 28 71 75 69 74 2d 70 72 6f 63 65 73 73 20    70 72 6f 63 29 0a 20 20 20 20 20 20 28 64 6a 76  | ..(quit-process.proc).......(djv | 
| 7b40 |  75 2d 73 65 74 20 76 69 65 77 2d 70 72 6f 63 20    70 72 6f 63 2d 6c 69 73 74 29 0a 20 20 20 20 20  | u-set.view-proc.proc-list)...... | 
| 7b60 |  20 28 75 6e 6c 65 73 73 20 61 6c 6c 20 28 73 65    74 71 20 70 72 6f 63 2d 6c 69 73 74 20 6e 69 6c  | .(unless.all.(setq.proc-list.nil | 
| 7b80 |  29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a    76 75 2d 6b 69 6c 6c 2d 64 6f 63 20 28 26 6f 70  | )))))..(defun.djvu-kill-doc.(&op | 
| 7ba0 |  74 69 6f 6e 61 6c 20 64 6f 63 29 0a 20 20 22 4b    69 6c 6c 20 61 6c 6c 20 62 75 66 66 65 72 73 20  | tional.doc)..."Kill.all.buffers. | 
| 7bc0 |  76 69 73 69 74 69 6e 67 20 44 4f 43 2e 0a 54 68    69 73 20 72 65 6c 69 65 73 20 6f 6e 20 60 64 6a  | visiting.DOC..This.relies.on.`dj | 
| 7be0 |  76 75 2d 6b 69 6c 6c 2d 64 6f 63 2d 61 6c 6c 27    20 66 6f 72 20 64 6f 69 6e 67 20 74 68 65 20 72  | vu-kill-doc-all'.for.doing.the.r | 
| 7c00 |  65 61 6c 20 77 6f 72 6b 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 29 0a 20 20 3b 3b 20  | eal.work."...(interactive)...;;. | 
| 7c20 |  60 64 6a 76 75 2d 6b 69 6c 6c 2d 64 6f 63 2d 61    6c 6c 27 20 77 69 6c 6c 20 74 72 79 20 74 6f 20  | `djvu-kill-doc-all'.will.try.to. | 
| 7c40 |  73 61 76 65 20 6f 75 72 20 77 6f 72 6b 20 61 6e    64 20 6b 69 6c 6c 20 61 6c 6c 20 64 6a 76 69 65  | save.our.work.and.kill.all.djvie | 
| 7c60 |  77 0a 20 20 3b 3b 20 70 72 6f 63 65 73 73 65 73    2e 0a 20 20 28 6d 61 70 63 20 23 27 6b 69 6c 6c  | w...;;.processes....(mapc.#'kill | 
| 7c80 |  2d 62 75 66 66 65 72 20 28 64 6a 76 75 2d 62 75    66 66 65 72 73 20 64 6f 63 29 29 29 0a 0a 28 64  | -buffer.(djvu-buffers.doc)))..(d | 
| 7ca0 |  65 66 76 61 72 20 64 6a 76 75 2d 69 6e 2d 6b 69    6c 6c 2d 64 6f 63 20 6e 69 6c 0a 20 20 22 4e 6f  | efvar.djvu-in-kill-doc.nil..."No | 
| 7cc0 |  6e 2d 6e 69 6c 20 69 66 20 77 65 20 61 72 65 20    72 75 6e 6e 69 6e 67 20 60 64 6a 76 75 2d 6b 69  | n-nil.if.we.are.running.`djvu-ki | 
| 7ce0 |  6c 6c 2d 64 6f 63 2d 61 6c 6c 27 2e 22 29 0a 0a    28 64 65 66 75 6e 20 64 6a 76 75 2d 6b 69 6c 6c  | ll-doc-all'.")..(defun.djvu-kill | 
| 7d00 |  2d 64 6f 63 2d 61 6c 6c 20 28 29 0a 20 20 22 4b    69 6c 6c 20 61 6c 6c 20 62 75 66 66 65 72 73 20  | -doc-all.()..."Kill.all.buffers. | 
| 7d20 |  76 69 73 69 74 69 6e 67 20 60 64 6a 76 75 2d 64    6f 63 27 20 65 78 63 65 70 74 20 66 6f 72 20 74  | visiting.`djvu-doc'.except.for.t | 
| 7d40 |  68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65    72 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e  | he.current.buffer..This.function | 
| 7d60 |  20 69 73 20 61 64 64 65 64 20 74 6f 20 60 6b 69    6c 6c 2d 62 75 66 66 65 72 2d 68 6f 6f 6b 27 20  | .is.added.to.`kill-buffer-hook'. | 
| 7d80 |  6f 66 20 61 6c 6c 20 62 75 66 66 65 72 73 20 76    69 73 69 74 69 6e 67 20 60 64 6a 76 75 2d 64 6f  | of.all.buffers.visiting.`djvu-do | 
| 7da0 |  63 27 0a 73 6f 20 74 68 61 74 20 6b 69 6c 6c 69    6e 67 20 74 68 65 20 63 75 72 72 65 6e 74 20 62  | c'.so.that.killing.the.current.b | 
| 7dc0 |  75 66 66 65 72 20 6b 69 6c 6c 73 20 61 6c 6c 20    62 75 66 66 65 72 73 20 76 69 73 69 74 69 6e 67  | uffer.kills.all.buffers.visiting | 
| 7de0 |  20 60 64 6a 76 75 2d 64 6f 63 27 2e 22 0a 20 20    28 75 6e 6c 65 73 73 20 64 6a 76 75 2d 69 6e 2d  | .`djvu-doc'."...(unless.djvu-in- | 
| 7e00 |  6b 69 6c 6c 2d 64 6f 63 0a 20 20 20 20 28 6c 65    74 20 28 28 64 6a 76 75 2d 69 6e 2d 6b 69 6c 6c  | kill-doc.....(let.((djvu-in-kill | 
| 7e20 |  2d 64 6f 63 20 74 29 0a 20 20 20 20 20 20 20 20    20 20 62 75 66 66 65 72 73 29 0a 20 20 20 20 20  | -doc.t)...........buffers)...... | 
| 7e40 |  20 3b 3b 20 53 6f 6d 65 74 69 6d 65 73 20 77 65    20 63 68 6f 6b 65 20 6f 6e 20 62 72 6f 6b 65 6e  | .;;.Sometimes.we.choke.on.broken | 
| 7e60 |  20 64 6a 76 75 20 66 69 6c 65 73 20 73 6f 20 74    68 61 74 20 6d 61 6e 79 20 74 68 69 6e 67 73 0a  | .djvu.files.so.that.many.things. | 
| 7e80 |  20 20 20 20 20 20 3b 3b 20 64 6f 20 6e 6f 74 20    77 6f 72 6b 20 61 6e 79 6d 6f 72 65 20 74 68 65  | ......;;.do.not.work.anymore.the | 
| 7ea0 |  20 77 61 79 20 74 68 65 79 20 73 68 6f 75 6c 64    2e 20 20 41 74 20 6c 65 61 73 74 2c 20 77 65 20  | .way.they.should...At.least,.we. | 
| 7ec0 |  77 61 6e 74 20 74 6f 0a 20 20 20 20 20 20 3b 3b    20 62 65 20 61 62 6c 65 20 74 6f 20 6b 69 6c 6c  | want.to.......;;.be.able.to.kill | 
| 7ee0 |  20 74 68 65 20 72 65 6c 65 76 61 6e 74 20 62 75    66 66 65 72 73 2e 20 20 53 6f 20 64 6f 20 6e 6f  | .the.relevant.buffers...So.do.no | 
| 7f00 |  74 20 62 61 69 6c 20 6f 75 74 20 68 65 72 65 2e    0a 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f  | t.bail.out.here........(conditio | 
| 7f20 |  6e 2d 63 61 73 65 20 6e 69 6c 0a 20 20 20 20 20    20 20 20 20 20 28 6c 65 74 20 28 28 64 6f 63 20  | n-case.nil...........(let.((doc. | 
| 7f40 |  64 6a 76 75 2d 64 6f 63 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 73 65 74 71 20 62 75 66  | djvu-doc)).............(setq.buf | 
| 7f60 |  66 65 72 73 20 28 64 6a 76 75 2d 62 75 66 66 65    72 73 20 64 6f 63 29 29 0a 20 20 20 20 20 20 20  | fers.(djvu-buffers.doc))........ | 
| 7f80 |  20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 65    6d 71 20 6e 69 6c 20 28 6d 61 70 63 61 72 20 23  | .....(unless.(memq.nil.(mapcar.# | 
| 7fa0 |  27 62 75 66 66 65 72 2d 6c 69 76 65 2d 70 20 62    75 66 66 65 72 73 29 29 0a 20 20 20 20 20 20 20  | 'buffer-live-p.buffers))........ | 
| 7fc0 |  20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 73    61 76 65 20 64 6f 63 20 74 29 29 0a 20 20 20 20  | .........(djvu-save.doc.t))..... | 
| 7fe0 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6b 69    6c 6c 2d 76 69 65 77 20 64 6f 63 20 74 29 29 0a  | ........(djvu-kill-view.doc.t)). | 
| 8000 |  20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 6e    69 6c 29 29 0a 20 20 20 20 20 20 3b 3b 20 41 20  | ........(error.nil)).......;;.A. | 
| 8020 |  66 75 6e 63 74 69 6f 6e 20 69 6e 20 60 6b 69 6c    6c 2d 62 75 66 66 65 72 2d 68 6f 6f 6b 27 20 73  | function.in.`kill-buffer-hook'.s | 
| 8040 |  68 6f 75 6c 64 20 6e 6f 74 20 6b 69 6c 6c 20 74    68 65 20 62 75 66 66 65 72 0a 20 20 20 20 20 20  | hould.not.kill.the.buffer....... | 
| 8060 |  3b 3b 20 66 6f 72 20 77 68 69 63 68 20 77 65 20    63 61 6c 6c 65 64 20 74 68 69 73 20 68 6f 6f 6b  | ;;.for.which.we.called.this.hook | 
| 8080 |  20 69 6e 20 74 68 65 20 66 69 72 73 74 20 70 6c    61 63 65 2c 20 73 6f 20 74 68 61 74 0a 20 20 20  | .in.the.first.place,.so.that.... | 
| 80a0 |  20 20 20 3b 3b 20 6f 74 68 65 72 20 66 75 6e 63    74 69 6f 6e 73 20 69 6e 20 74 68 69 73 20 68 6f  | ...;;.other.functions.in.this.ho | 
| 80c0 |  6f 6b 20 63 61 6e 20 64 6f 20 74 68 65 69 72 20    6a 6f 62 2c 20 74 6f 6f 2e 0a 20 20 20 20 20 20  | ok.can.do.their.job,.too........ | 
| 80e0 |  28 6d 61 70 63 20 23 27 6b 69 6c 6c 2d 62 75 66    66 65 72 20 28 64 65 6c 71 20 28 63 75 72 72 65  | (mapc.#'kill-buffer.(delq.(curre | 
| 8100 |  6e 74 2d 62 75 66 66 65 72 29 20 62 75 66 66 65    72 73 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20  | nt-buffer).buffers)))))..(defun. | 
| 8120 |  64 6a 76 75 2d 63 68 61 6e 67 65 2d 6d 61 6a 6f    72 2d 6d 6f 64 65 20 28 29 0a 20 20 22 43 6c 65  | djvu-change-major-mode.()..."Cle | 
| 8140 |  61 6e 20 75 70 20 44 6a 76 75 20 6d 6f 64 65 20    62 75 66 66 65 72 73 20 61 6e 64 20 68 6f 6f 6b  | an.up.Djvu.mode.buffers.and.hook | 
| 8160 |  73 2e 0a 44 6a 76 75 20 6d 6f 64 65 20 70 75 74    73 20 74 68 69 73 20 69 6e 74 6f 20 60 63 68 61  | s..Djvu.mode.puts.this.into.`cha | 
| 8180 |  6e 67 65 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 68    6f 6f 6b 27 2e 22 0a 20 20 28 75 6e 6c 65 73 73  | nge-major-mode-hook'."...(unless | 
| 81a0 |  20 64 6a 76 75 2d 69 6e 69 74 0a 20 20 20 20 28    64 6a 76 75 2d 6b 69 6c 6c 2d 64 6f 63 2d 61 6c  | .djvu-init.....(djvu-kill-doc-al | 
| 81c0 |  6c 29 0a 20 20 20 20 3b 3b 20 54 68 65 73 65 20    6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20  | l).....;;.These.local.variables. | 
| 81e0 |  61 72 65 20 70 65 72 6d 61 6e 65 6e 74 20 6c 6f    63 61 6c 0a 20 20 20 20 28 6b 69 6c 6c 2d 6c 6f  | are.permanent.local.....(kill-lo | 
| 8200 |  63 61 6c 2d 76 61 72 69 61 62 6c 65 20 27 6b 69    6c 6c 2d 62 75 66 66 65 72 2d 68 6f 6f 6b 29 0a  | cal-variable.'kill-buffer-hook). | 
| 8220 |  20 20 20 20 28 6b 69 6c 6c 2d 6c 6f 63 61 6c 2d    76 61 72 69 61 62 6c 65 20 27 64 6a 76 75 2d 64  | ....(kill-local-variable.'djvu-d | 
| 8240 |  6f 63 29 0a 20 20 20 20 28 6b 69 6c 6c 2d 6c 6f    63 61 6c 2d 76 61 72 69 61 62 6c 65 20 27 72 65  | oc).....(kill-local-variable.'re | 
| 8260 |  76 65 72 74 2d 62 75 66 66 65 72 2d 66 75 6e 63    74 69 6f 6e 29 0a 20 20 20 20 28 6b 69 6c 6c 2d  | vert-buffer-function).....(kill- | 
| 8280 |  6c 6f 63 61 6c 2d 76 61 72 69 61 62 6c 65 20 27    77 72 69 74 65 2d 66 69 6c 65 2d 66 75 6e 63 74  | local-variable.'write-file-funct | 
| 82a0 |  69 6f 6e 73 29 0a 20 20 20 20 28 6c 65 74 20 28    28 69 6e 68 69 62 69 74 2d 72 65 61 64 2d 6f 6e  | ions).....(let.((inhibit-read-on | 
| 82c0 |  6c 79 20 74 29 0a 20 20 20 20 20 20 20 20 20 20    28 62 75 66 66 65 72 2d 75 6e 64 6f 2d 6c 69 73  | ly.t)...........(buffer-undo-lis | 
| 82e0 |  74 20 74 29 29 0a 20 20 20 20 20 20 28 69 6e 73    65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74  | t.t)).......(insert-file-content | 
| 8300 |  73 2d 6c 69 74 65 72 61 6c 6c 79 20 62 75 66 66    65 72 2d 66 69 6c 65 2d 6e 61 6d 65 20 74 20 6e  | s-literally.buffer-file-name.t.n | 
| 8320 |  69 6c 20 6e 69 6c 20 74 29 29 0a 20 20 20 20 28    73 65 74 71 20 62 75 66 66 65 72 2d 75 6e 64 6f  | il.nil.t)).....(setq.buffer-undo | 
| 8340 |  2d 6c 69 73 74 20 6e 69 6c 0a 20 20 20 20 20 20    20 20 20 20 62 75 66 66 65 72 2d 72 65 61 64 2d  | -list.nil...........buffer-read- | 
| 8360 |  6f 6e 6c 79 20 28 6e 6f 74 20 28 66 69 6c 65 2d    77 72 69 74 61 62 6c 65 2d 70 20 62 75 66 66 65  | only.(not.(file-writable-p.buffe | 
| 8380 |  72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 73 61  | r-file-name)))))..(defun.djvu-sa | 
| 83a0 |  76 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f    63 20 71 75 65 72 79 29 0a 20 20 22 53 61 76 65  | ve.(&optional.doc.query)..."Save | 
| 83c0 |  20 44 6a 76 75 20 44 4f 43 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 75  | .Djvu.DOC."...(interactive)...(u | 
| 83e0 |  6e 6c 65 73 73 20 64 6f 63 20 28 73 65 74 71 20    64 6f 63 20 64 6a 76 75 2d 64 6f 63 29 29 0a 20  | nless.doc.(setq.doc.djvu-doc)).. | 
| 8400 |  20 28 6c 65 74 20 28 28 61 66 69 6c 65 20 28 61    62 62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e  | .(let.((afile.(abbreviate-file-n | 
| 8420 |  61 6d 65 20 28 64 6a 76 75 2d 72 65 66 20 66 69    6c 65 20 64 6f 63 29 29 29 0a 20 20 20 20 20 20  | ame.(djvu-ref.file.doc)))....... | 
| 8440 |  20 20 28 74 65 78 74 2d 6d 6f 64 69 66 69 65 64    20 20 28 62 75 66 66 65 72 2d 6d 6f 64 69 66 69  | ..(text-modified..(buffer-modifi | 
| 8460 |  65 64 2d 70 20 28 64 6a 76 75 2d 72 65 66 20 74    65 78 74 2d 62 75 66 20 64 6f 63 29 29 29 0a 20  | ed-p.(djvu-ref.text-buf.doc))).. | 
| 8480 |  20 20 20 20 20 20 20 28 61 6e 6e 6f 74 2d 6d 6f    64 69 66 69 65 64 20 28 62 75 66 66 65 72 2d 6d  | .......(annot-modified.(buffer-m | 
| 84a0 |  6f 64 69 66 69 65 64 2d 70 20 28 64 6a 76 75 2d    72 65 66 20 61 6e 6e 6f 74 2d 62 75 66 20 64 6f  | odified-p.(djvu-ref.annot-buf.do | 
| 84c0 |  63 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 68    61 72 65 64 2d 6d 6f 64 69 66 69 65 64 20 28 62  | c))).........(shared-modified.(b | 
| 84e0 |  75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70    20 28 64 6a 76 75 2d 72 65 66 20 73 68 61 72 65  | uffer-modified-p.(djvu-ref.share | 
| 8500 |  64 2d 62 75 66 20 64 6f 63 29 29 29 0a 20 20 20    20 20 20 20 20 28 62 6f 6f 6b 6d 61 72 6b 73 2d  | d-buf.doc))).........(bookmarks- | 
| 8520 |  6d 6f 64 69 66 69 65 64 20 28 62 75 66 66 65 72    2d 6d 6f 64 69 66 69 65 64 2d 70 20 28 64 6a 76  | modified.(buffer-modified-p.(djv | 
| 8540 |  75 2d 72 65 66 20 62 6f 6f 6b 6d 61 72 6b 73 2d    62 75 66 20 64 6f 63 29 29 29 29 0a 20 20 20 20  | u-ref.bookmarks-buf.doc))))..... | 
| 8560 |  28 77 68 65 6e 20 28 61 6e 64 20 28 6f 72 20 74    65 78 74 2d 6d 6f 64 69 66 69 65 64 20 61 6e 6e  | (when.(and.(or.text-modified.ann | 
| 8580 |  6f 74 2d 6d 6f 64 69 66 69 65 64 20 73 68 61 72    65 64 2d 6d 6f 64 69 66 69 65 64 20 62 6f 6f 6b  | ot-modified.shared-modified.book | 
| 85a0 |  6d 61 72 6b 73 2d 6d 6f 64 69 66 69 65 64 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | marks-modified)................( | 
| 85c0 |  6f 72 20 28 61 6e 64 20 28 76 65 72 69 66 79 2d    76 69 73 69 74 65 64 2d 66 69 6c 65 2d 6d 6f 64  | or.(and.(verify-visited-file-mod | 
| 85e0 |  74 69 6d 65 20 64 6f 63 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | time.doc)....................... | 
| 8600 |  20 20 28 6f 72 20 28 6e 6f 74 20 71 75 65 72 79    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..(or.(not.query)............... | 
| 8620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 79    65 73 2d 6f 72 2d 6e 6f 2d 70 20 28 66 6f 72 6d  | ..............(yes-or-no-p.(form | 
| 8640 |  61 74 20 22 53 61 76 65 20 25 73 3f 20 22 20 61    66 69 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20  | at."Save.%s?.".afile))))........ | 
| 8660 |  20 20 20 20 20 20 20 20 20 20 20 20 28 79 65 73    2d 6f 72 2d 6e 6f 2d 70 20 28 66 6f 72 6d 61 74  | ............(yes-or-no-p.(format | 
| 8680 |  20 22 25 73 20 68 61 73 20 63 68 61 6e 67 65 64    20 73 69 6e 63 65 20 76 69 73 69 74 65 64 20 6f  | ."%s.has.changed.since.visited.o | 
| 86a0 |  72 20 73 61 76 65 64 2e 20 20 53 61 76 65 20 61    6e 79 77 61 79 3f 20 22 0a 20 20 20 20 20 20 20  | r.saved...Save.anyway?."........ | 
| 86c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 86e0 |  20 61 66 69 6c 65 29 29 29 29 0a 20 20 20 20 20    20 28 64 6a 76 75 2d 77 69 74 68 2d 74 65 6d 70  | .afile)))).......(djvu-with-temp | 
| 8700 |  2d 66 69 6c 65 20 73 63 72 69 70 74 0a 20 20 20    20 20 20 20 20 28 69 66 20 61 6e 6e 6f 74 2d 6d  | -file.script.........(if.annot-m | 
| 8720 |  6f 64 69 66 69 65 64 20 28 64 6a 76 75 2d 73 61    76 65 2d 61 6e 6e 6f 74 20 73 63 72 69 70 74 20  | odified.(djvu-save-annot.script. | 
| 8740 |  64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 28 69    66 20 73 68 61 72 65 64 2d 6d 6f 64 69 66 69 65  | doc)).........(if.shared-modifie | 
| 8760 |  64 20 28 64 6a 76 75 2d 73 61 76 65 2d 61 6e 6e    6f 74 20 73 63 72 69 70 74 20 64 6f 63 20 74 29  | d.(djvu-save-annot.script.doc.t) | 
| 8780 |  29 0a 20 20 20 20 20 20 20 20 28 69 66 20 74 65    78 74 2d 6d 6f 64 69 66 69 65 64 20 28 64 6a 76  | ).........(if.text-modified.(djv | 
| 87a0 |  75 2d 73 61 76 65 2d 74 65 78 74 20 64 6f 63 20    73 63 72 69 70 74 29 29 20 3b 20 75 70 64 61 74  | u-save-text.doc.script)).;.updat | 
| 87c0 |  65 73 20 52 65 61 64 20 62 75 66 66 65 72 0a 20    20 20 20 20 20 20 20 28 69 66 20 62 6f 6f 6b 6d  | es.Read.buffer.........(if.bookm | 
| 87e0 |  61 72 6b 73 2d 6d 6f 64 69 66 69 65 64 20 28 64    6a 76 75 2d 73 61 76 65 2d 62 6f 6f 6b 6d 61 72  | arks-modified.(djvu-save-bookmar | 
| 8800 |  6b 73 20 73 63 72 69 70 74 20 64 6f 63 29 29 0a    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 64 6a  | ks.script.doc)).........(djvu-dj | 
| 8820 |  76 75 73 65 64 20 64 6f 63 20 6e 69 6c 20 22 2d    66 22 20 73 63 72 69 70 74 20 22 2d 73 22 29 29  | vused.doc.nil."-f".script."-s")) | 
| 8840 |  0a 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20    61 6e 6e 6f 74 2d 6d 6f 64 69 66 69 65 64 20 28  | .......(if.(and.annot-modified.( | 
| 8860 |  6e 6f 74 20 74 65 78 74 2d 6d 6f 64 69 66 69 65    64 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 64  | not.text-modified))...........(d | 
| 8880 |  6a 76 75 2d 69 6e 69 74 2d 72 65 61 64 20 28 64    6a 76 75 2d 72 65 61 64 2d 74 65 78 74 20 64 6f  | jvu-init-read.(djvu-read-text.do | 
| 88a0 |  63 29 20 64 6f 63 29 29 0a 20 20 20 20 20 20 28    64 6a 76 75 2d 61 6c 6c 2d 62 75 66 66 65 72 73  | c).doc)).......(djvu-all-buffers | 
| 88c0 |  20 64 6f 63 0a 20 20 20 20 20 20 20 20 28 73 65    74 2d 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65  | .doc.........(set-buffer-modifie | 
| 88e0 |  64 2d 70 20 6e 69 6c 29 29 29 29 0a 20 20 74 29    20 3b 20 66 6f 72 20 60 77 72 69 74 65 2d 66 69  | d-p.nil))))...t).;.for.`write-fi | 
| 8900 |  6c 65 2d 66 75 6e 63 74 69 6f 6e 27 0a 0a 28 64    65 66 75 6e 20 64 6a 76 75 2d 6d 6f 64 69 66 69  | le-function'..(defun.djvu-modifi | 
| 8920 |  65 64 20 28 29 0a 20 20 22 4d 61 72 6b 20 44 6a    76 75 20 52 65 61 64 20 61 6e 64 20 4f 75 74 6c  | ed.()..."Mark.Djvu.Read.and.Outl | 
| 8940 |  69 6e 65 20 62 75 66 66 65 72 73 20 61 73 20 6d    6f 64 69 66 69 65 64 20 69 66 20 6e 65 63 65 73  | ine.buffers.as.modified.if.neces | 
| 8960 |  73 61 72 79 2e 0a 55 73 65 64 20 69 6e 20 60 70    6f 73 74 2d 63 6f 6d 6d 61 6e 64 2d 68 6f 6f 6b  | sary..Used.in.`post-command-hook | 
| 8980 |  27 20 6f 66 20 74 68 65 20 44 6a 76 75 20 52 65    61 64 2c 20 54 65 78 74 2c 20 41 6e 6e 6f 74 61  | '.of.the.Djvu.Read,.Text,.Annota | 
| 89a0 |  74 69 6f 6e 73 2c 0a 42 6f 6f 6b 6d 61 72 6b 73    20 61 6e 64 20 4f 75 74 6c 69 6e 65 20 62 75 66  | tions,.Bookmarks.and.Outline.buf | 
| 89c0 |  66 65 72 73 2e 22 0a 20 20 28 6c 65 74 20 28 28    6d 6f 64 69 66 69 65 64 20 28 6f 72 20 28 62 75  | fers."...(let.((modified.(or.(bu | 
| 89e0 |  66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 20    28 64 6a 76 75 2d 72 65 66 20 62 6f 6f 6b 6d 61  | ffer-modified-p.(djvu-ref.bookma | 
| 8a00 |  72 6b 73 2d 62 75 66 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  | rks-buf))....................... | 
| 8a20 |  28 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64    2d 70 20 28 64 6a 76 75 2d 72 65 66 20 74 65 78  | (buffer-modified-p.(djvu-ref.tex | 
| 8a40 |  74 2d 62 75 66 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62  | t-buf)).......................(b | 
| 8a60 |  75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70    20 28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f 74  | uffer-modified-p.(djvu-ref.annot | 
| 8a80 |  2d 62 75 66 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75  | -buf)).......................(bu | 
| 8aa0 |  66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 20    28 64 6a 76 75 2d 72 65 66 20 73 68 61 72 65 64  | ffer-modified-p.(djvu-ref.shared | 
| 8ac0 |  2d 62 75 66 29 29 29 29 29 0a 20 20 20 20 28 77    69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66  | -buf))))).....(with-current-buff | 
| 8ae0 |  65 72 20 28 64 6a 76 75 2d 72 65 66 20 72 65 61    64 2d 62 75 66 29 0a 20 20 20 20 20 20 28 73 65  | er.(djvu-ref.read-buf).......(se | 
| 8b00 |  74 2d 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65    64 2d 70 20 6d 6f 64 69 66 69 65 64 29 29 0a 20  | t-buffer-modified-p.modified)).. | 
| 8b20 |  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 64 6a 76 75 2d 72 65  | ...(with-current-buffer.(djvu-re | 
| 8b40 |  66 20 6f 75 74 6c 69 6e 65 2d 62 75 66 29 0a 20    20 20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72  | f.outline-buf).......(set-buffer | 
| 8b60 |  2d 6d 6f 64 69 66 69 65 64 2d 70 20 6d 6f 64 69    66 69 65 64 29 29 29 29 0a 0a 28 64 65 66 75 6e  | -modified-p.modified))))..(defun | 
| 8b80 |  20 64 6a 76 75 2d 71 75 69 74 2d 77 69 6e 64 6f    77 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6b 69 6c  | .djvu-quit-window.(&optional.kil | 
| 8ba0 |  6c 20 64 6f 63 29 0a 20 20 22 51 75 69 74 20 61    6c 6c 20 77 69 6e 64 6f 77 73 20 6f 66 20 44 6a  | l.doc)..."Quit.all.windows.of.Dj | 
| 8bc0 |  76 75 20 64 6f 63 75 6d 65 6e 74 20 44 4f 43 20    61 6e 64 20 62 75 72 79 20 69 74 73 20 62 75 66  | vu.document.DOC.and.bury.its.buf | 
| 8be0 |  66 65 72 73 2e 0a 57 69 74 68 20 70 72 65 66 69    78 20 4b 49 4c 4c 20 6e 6f 6e 2d 6e 69 6c 2c 20  | fers..With.prefix.KILL.non-nil,. | 
| 8c00 |  6b 69 6c 6c 20 74 68 65 20 62 75 66 66 65 72 73    20 69 6e 73 74 65 61 64 20 6f 66 20 62 75 72 79  | kill.the.buffers.instead.of.bury | 
| 8c20 |  69 6e 67 20 74 68 65 6d 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 20 22 50 22 29 0a 20  | ing.them."...(interactive."P").. | 
| 8c40 |  20 28 75 6e 6c 65 73 73 20 64 6f 63 20 28 73 65    74 71 20 64 6f 63 20 64 6a 76 75 2d 64 6f 63 29  | .(unless.doc.(setq.doc.djvu-doc) | 
| 8c60 |  29 0a 20 20 28 64 6f 6c 69 73 74 20 28 62 75 66    20 28 64 6a 76 75 2d 62 75 66 66 65 72 73 20 64  | )...(dolist.(buf.(djvu-buffers.d | 
| 8c80 |  6f 63 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28    77 69 6e 64 6f 77 20 28 67 65 74 2d 62 75 66 66  | oc)).....(let.((window.(get-buff | 
| 8ca0 |  65 72 2d 77 69 6e 64 6f 77 20 62 75 66 20 74 29    29 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 20 28  | er-window.buf.t))).......(cond.( | 
| 8cc0 |  77 69 6e 64 6f 77 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 3b 3b 20 51 75 69 74 74 69 6e 67 20  | window..............;;.Quitting. | 
| 8ce0 |  6f 6e 65 20 44 6a 76 75 20 77 69 6e 64 6f 77 20    6d 61 79 20 62 72 69 6e 67 20 75 70 20 61 67 61  | one.Djvu.window.may.bring.up.aga | 
| 8d00 |  69 6e 20 74 68 65 20 44 6a 76 75 20 77 69 6e 64    6f 77 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | in.the.Djvu.window.............. | 
| 8d20 |  3b 3b 20 6f 66 20 61 6e 6f 74 68 65 72 20 44 6a    76 75 20 62 75 66 66 65 72 20 66 6f 72 20 74 68  | ;;.of.another.Djvu.buffer.for.th | 
| 8d40 |  65 20 73 61 6d 65 20 44 6a 76 75 20 64 6f 63 75    6d 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20  | e.same.Djvu.document............ | 
| 8d60 |  20 20 20 3b 3b 20 53 6f 20 77 65 20 66 69 72 73    74 20 72 65 6d 6f 76 65 20 74 68 65 73 65 20 44  | ...;;.So.we.first.remove.these.D | 
| 8d80 |  6a 76 75 20 62 75 66 66 65 72 73 20 66 72 6f 6d    20 74 68 65 20 6c 69 73 74 0a 20 20 20 20 20 20  | jvu.buffers.from.the.list....... | 
| 8da0 |  20 20 20 20 20 20 20 3b 3b 20 6f 66 20 62 75 66    66 65 72 73 20 70 72 65 76 69 6f 75 73 6c 79 20  | .......;;.of.buffers.previously. | 
| 8dc0 |  64 69 73 70 6c 61 79 65 64 20 69 6e 20 74 68 69    73 20 77 69 6e 64 6f 77 2e 0a 20 20 20 20 20 20  | displayed.in.this.window........ | 
| 8de0 |  20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 72    65 76 2d 62 75 66 66 65 72 73 20 28 77 69 6e 64  | .......(let.((prev-buffers.(wind | 
| 8e00 |  6f 77 2d 70 72 65 76 2d 62 75 66 66 65 72 73 20    77 69 6e 64 6f 77 29 29 29 0a 20 20 20 20 20 20  | ow-prev-buffers.window)))....... | 
| 8e20 |  20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74    20 28 62 20 28 64 6a 76 75 2d 62 75 66 66 65 72  | .........(dolist.(b.(djvu-buffer | 
| 8e40 |  73 20 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70  | s.doc))..................(setq.p | 
| 8e60 |  72 65 76 2d 62 75 66 66 65 72 73 20 28 61 73 73    71 2d 64 65 6c 65 74 65 2d 61 6c 6c 20 62 20 70  | rev-buffers.(assq-delete-all.b.p | 
| 8e80 |  72 65 76 2d 62 75 66 66 65 72 73 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | rev-buffers)))................(s | 
| 8ea0 |  65 74 2d 77 69 6e 64 6f 77 2d 70 72 65 76 2d 62    75 66 66 65 72 73 20 77 69 6e 64 6f 77 20 70 72  | et-window-prev-buffers.window.pr | 
| 8ec0 |  65 76 2d 62 75 66 66 65 72 73 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 71 75 69 74 2d  | ev-buffers))..............(quit- | 
| 8ee0 |  77 69 6e 64 6f 77 20 6b 69 6c 6c 20 77 69 6e 64    6f 77 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | window.kill.window))............ | 
| 8f00 |  20 28 6b 69 6c 6c 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72  | .(kill..............(kill-buffer | 
| 8f20 |  20 62 75 66 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20  | .buf)).............(t........... | 
| 8f40 |  20 20 20 28 62 75 72 79 2d 62 75 66 66 65 72 20    62 75 66 29 29 29 29 29 29 0a 0a 28 64 65 66 75  | ...(bury-buffer.buf))))))..(defu | 
| 8f60 |  6e 20 64 6a 76 75 2d 64 6a 76 75 73 65 64 20 28    64 6f 63 20 62 75 66 66 65 72 20 26 72 65 73 74  | n.djvu-djvused.(doc.buffer.&rest | 
| 8f80 |  20 61 72 67 73 29 0a 20 20 22 50 72 6f 63 65 73    73 20 44 6a 76 75 20 44 4f 43 20 62 79 20 72 75  | .args)..."Process.Djvu.DOC.by.ru | 
| 8fa0 |  6e 6e 69 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e    64 20 64 6a 76 75 73 65 64 20 77 69 74 68 20 41  | nning.the.command.djvused.with.A | 
| 8fc0 |  52 47 53 2e 0a 42 55 46 46 45 52 20 72 65 63 65    69 76 65 73 20 74 68 65 20 70 72 6f 63 65 73 73  | RGS..BUFFER.receives.the.process | 
| 8fe0 |  20 6f 75 74 70 75 74 2c 20 74 20 6d 65 61 6e 73    20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e  | .output,.t.means.current.buffer. | 
| 9000 |  0a 49 66 20 42 55 46 46 45 52 20 69 73 20 6e 69    6c 2c 20 64 69 73 63 61 72 64 20 74 68 65 20 70  | .If.BUFFER.is.nil,.discard.the.p | 
| 9020 |  72 6f 63 65 73 73 20 6f 75 74 70 75 74 2c 20 61    73 73 75 6d 69 6e 67 20 74 68 61 74 0a 74 68 65  | rocess.output,.assuming.that.the | 
| 9040 |  20 70 75 72 70 6f 73 65 20 6f 66 20 63 61 6c 6c    69 6e 67 20 64 6a 76 75 73 65 64 20 69 73 20 74  | .purpose.of.calling.djvused.is.t | 
| 9060 |  6f 20 75 70 64 61 74 65 20 74 68 65 20 44 6a 76    75 20 66 69 6c 65 2e 22 0a 20 20 28 75 6e 6c 65  | o.update.the.Djvu.file."...(unle | 
| 9080 |  73 73 20 64 6f 63 20 28 73 65 74 71 20 64 6f 63    20 64 6a 76 75 2d 64 6f 63 29 29 0a 20 20 28 75  | ss.doc.(setq.doc.djvu-doc))...(u | 
| 90a0 |  6e 6c 65 73 73 20 28 6f 72 20 62 75 66 66 65 72    20 28 66 69 6c 65 2d 77 72 69 74 61 62 6c 65 2d  | nless.(or.buffer.(file-writable- | 
| 90c0 |  70 20 28 64 6a 76 75 2d 72 65 66 20 66 69 6c 65    20 64 6f 63 29 29 29 0a 20 20 20 20 28 75 73 65  | p.(djvu-ref.file.doc))).....(use | 
| 90e0 |  72 2d 65 72 72 6f 72 20 22 46 69 6c 65 20 60 25    73 27 20 6e 6f 74 20 77 72 69 74 61 62 6c 65 22  | r-error."File.`%s'.not.writable" | 
| 9100 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 61 62 62 72 65 76 69 61 74 65 2d 66 69 6c  | .................(abbreviate-fil | 
| 9120 |  65 2d 6e 61 6d 65 20 28 64 6a 76 75 2d 72 65 66    20 66 69 6c 65 20 64 6f 63 29 29 29 29 0a 20 20  | e-name.(djvu-ref.file.doc))))... | 
| 9140 |  28 77 68 65 6e 20 28 6f 72 20 62 75 66 66 65 72    20 28 6e 6f 74 20 64 6a 76 75 2d 74 65 73 74 29  | (when.(or.buffer.(not.djvu-test) | 
| 9160 |  29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 62 75    66 66 65 72 0a 20 20 20 20 20 20 28 64 6a 76 75  | ).....(unless.buffer.......(djvu | 
| 9180 |  2d 62 61 63 6b 75 70 20 64 6f 63 29 29 0a 20 20    20 20 3b 3b 20 57 65 20 63 6f 75 6c 64 20 73 65  | -backup.doc)).....;;.We.could.se | 
| 91a0 |  70 61 72 61 74 65 6c 79 20 70 72 65 73 65 72 76    65 20 74 68 65 20 65 72 72 6f 72 20 73 74 72 65  | parately.preserve.the.error.stre | 
| 91c0 |  61 6d 2e 20 20 59 65 74 20 74 68 69 73 20 6d 75    73 74 20 67 6f 0a 20 20 20 20 3b 3b 20 69 6e 74  | am...Yet.this.must.go.....;;.int | 
| 91e0 |  6f 20 61 20 66 69 6c 65 3b 20 69 74 20 63 61 6e    6e 6f 74 20 67 6f 20 69 6e 74 6f 20 61 20 62 75  | o.a.file;.it.cannot.go.into.a.bu | 
| 9200 |  66 66 65 72 2e 20 20 53 6f 20 77 65 27 64 20 68    61 76 65 20 74 6f 20 63 68 65 63 6b 0a 20 20 20  | ffer...So.we'd.have.to.check.... | 
| 9220 |  20 3b 3b 20 69 6e 20 74 68 65 20 65 6e 64 20 77    68 65 74 68 65 72 20 74 68 65 20 66 69 6c 65 20  | .;;.in.the.end.whether.the.file. | 
| 9240 |  77 61 73 20 6e 6f 6e 2d 65 6d 70 74 79 20 61 6e    64 20 74 68 65 6e 20 64 65 6c 65 74 65 20 69 74  | was.non-empty.and.then.delete.it | 
| 9260 |  2e 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 69 6e    68 69 62 69 74 2d 71 75 69 74 20 74 29 0a 20 20  | ......(let*.((inhibit-quit.t)... | 
| 9280 |  20 20 20 20 20 20 20 20 20 28 63 6f 64 69 6e 67    2d 73 79 73 74 65 6d 2d 66 6f 72 2d 72 65 61 64  | .........(coding-system-for-read | 
| 92a0 |  20 27 75 74 66 2d 38 29 0a 20 20 20 20 20 20 20    20 20 20 20 28 73 74 61 74 75 73 20 28 61 70 70  | .'utf-8)............(status.(app | 
| 92c0 |  6c 79 20 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73    20 22 64 6a 76 75 73 65 64 22 20 6e 69 6c 20 62  | ly.'call-process."djvused".nil.b | 
| 92e0 |  75 66 66 65 72 20 6e 69 6c 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | uffer.nil....................... | 
| 9300 |  20 20 20 20 22 2d 75 22 20 28 64 6a 76 75 2d 72    65 66 20 66 69 6c 65 20 64 6f 63 29 20 61 72 67  | ...."-u".(djvu-ref.file.doc).arg | 
| 9320 |  73 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65    73 73 20 28 7a 65 72 6f 70 20 73 74 61 74 75 73  | s))).......(unless.(zerop.status | 
| 9340 |  29 0a 20 20 20 20 20 20 20 20 28 65 72 72 6f 72    20 22 44 6a 76 75 73 65 64 20 65 72 72 6f 72 20  | ).........(error."Djvused.error. | 
| 9360 |  25 73 20 28 61 72 67 73 3a 20 25 73 29 22 20 73    74 61 74 75 73 20 61 72 67 73 29 29 0a 20 20 20  | %s.(args:.%s)".status.args)).... | 
| 9380 |  20 20 20 28 75 6e 6c 65 73 73 20 62 75 66 66 65    72 0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | ...(unless.buffer.........(djvu- | 
| 93a0 |  61 6c 6c 2d 62 75 66 66 65 72 73 20 64 6f 63 0a    20 20 20 20 20 20 20 20 20 20 28 73 65 74 2d 76  | all-buffers.doc...........(set-v | 
| 93c0 |  69 73 69 74 65 64 2d 66 69 6c 65 2d 6d 6f 64 74    69 6d 65 29 29 29 29 29 29 0a 0a 28 64 65 66 75  | isited-file-modtime))))))..(defu | 
| 93e0 |  6e 20 64 6a 76 75 2d 62 61 63 6b 75 70 20 28 64    6f 63 29 0a 20 20 22 4d 61 6b 65 20 61 20 62 61  | n.djvu-backup.(doc)..."Make.a.ba | 
| 9400 |  63 6b 75 70 20 6f 66 20 74 68 65 20 64 69 73 6b    20 66 69 6c 65 20 66 6f 72 20 44 6a 76 75 20 64  | ckup.of.the.disk.file.for.Djvu.d | 
| 9420 |  6f 63 75 6d 65 6e 74 20 44 4f 43 2c 20 69 66 20    61 70 70 72 6f 70 72 69 61 74 65 2e 22 0a 20 20  | ocument.DOC,.if.appropriate."... | 
| 9440 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 20 64 6f 63 0a 20 20 20 20 28 75 6e  | (with-current-buffer.doc.....(un | 
| 9460 |  6c 65 73 73 20 62 75 66 66 65 72 2d 62 61 63 6b    65 64 2d 75 70 0a 20 20 20 20 20 20 28 6c 65 74  | less.buffer-backed-up.......(let | 
| 9480 |  2a 20 28 28 66 69 6c 65 20 28 64 6a 76 75 2d 72    65 66 20 66 69 6c 65 20 64 6f 63 29 29 0a 20 20  | *.((file.(djvu-ref.file.doc))... | 
| 94a0 |  20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 6c    2d 66 69 6c 65 20 28 66 69 6c 65 2d 63 68 61 73  | ...........(real-file.(file-chas | 
| 94c0 |  65 2d 6c 69 6e 6b 73 20 66 69 6c 65 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 28 76 61 6c  | e-links.file))..............(val | 
| 94e0 |  20 28 62 61 63 6b 75 70 2d 62 75 66 66 65 72 29    29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e  | .(backup-buffer))).........(when | 
| 9500 |  20 62 75 66 66 65 72 2d 62 61 63 6b 65 64 2d 75    70 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 50  | .buffer-backed-up...........;;.P | 
| 9520 |  72 6f 70 61 67 61 74 65 20 74 68 65 20 6e 65 77    73 0a 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | ropagate.the.news...........(djv | 
| 9540 |  75 2d 61 6c 6c 2d 62 75 66 66 65 72 73 20 64 6f    63 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | u-all-buffers.doc.............(s | 
| 9560 |  65 74 71 20 62 75 66 66 65 72 2d 62 61 63 6b 65    64 2d 75 70 20 74 29 29 0a 20 20 20 20 20 20 20  | etq.buffer-backed-up.t))........ | 
| 9580 |  20 20 20 3b 3b 20 48 6f 6e 6f 72 20 60 62 61 63    6b 75 70 2d 62 79 2d 63 6f 70 79 69 6e 67 27 20  | ...;;.Honor.`backup-by-copying'. | 
| 95a0 |  61 6e 64 20 66 72 69 65 6e 64 73 2e 0a 20 20 20    20 20 20 20 20 20 20 3b 3b 20 59 65 74 20 69 66  | and.friends............;;.Yet.if | 
| 95c0 |  20 46 49 4c 45 20 64 6f 65 73 20 6e 6f 74 20 65    78 69 73 74 20 61 6e 79 6d 6f 72 65 20 62 65 63  | .FILE.does.not.exist.anymore.bec | 
| 95e0 |  61 75 73 65 20 60 62 61 63 6b 75 70 2d 62 75 66    66 65 72 27 0a 20 20 20 20 20 20 20 20 20 20 3b  | ause.`backup-buffer'...........; | 
| 9600 |  3b 20 72 65 6e 61 6d 65 64 20 69 74 2c 20 77 65    20 6e 65 65 64 20 74 6f 20 72 65 63 72 65 61 74  | ;.renamed.it,.we.need.to.recreat | 
| 9620 |  65 20 46 49 4c 45 20 66 6f 72 20 64 6a 76 75 73    65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 3b 3b  | e.FILE.for.djvused............;; | 
| 9640 |  20 53 74 72 69 63 74 6c 79 20 73 70 65 61 6b 69    6e 67 2c 20 77 65 20 72 65 63 72 65 61 74 65 20  | .Strictly.speaking,.we.recreate. | 
| 9660 |  52 45 41 4c 2d 46 49 4c 45 20 62 65 63 61 75 73    65 20 74 68 61 74 20 69 73 0a 20 20 20 20 20 20  | REAL-FILE.because.that.is....... | 
| 9680 |  20 20 20 20 3b 3b 20 74 68 65 20 66 69 6c 65 20    74 68 61 74 20 60 62 61 63 6b 75 70 2d 62 75 66  | ....;;.the.file.that.`backup-buf | 
| 96a0 |  66 65 72 27 20 68 61 73 20 72 65 6e 61 6d 65 64    2e 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54  | fer'.has.renamed............;;.T | 
| 96c0 |  68 65 6e 20 77 65 20 61 6c 73 6f 20 75 70 64 61    74 65 20 74 68 65 20 66 69 6c 65 2d 6e 75 6d 62  | hen.we.also.update.the.file-numb | 
| 96e0 |  65 72 20 66 6f 72 20 46 49 4c 45 2e 20 20 59 65    74 20 77 65 0a 20 20 20 20 20 20 20 20 20 20 3b  | er.for.FILE...Yet.we...........; | 
| 9700 |  3b 20 6e 65 65 64 20 6e 6f 74 20 77 6f 72 72 79    20 68 65 72 65 20 61 62 6f 75 74 20 74 68 65 20  | ;.need.not.worry.here.about.the. | 
| 9720 |  6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 74 69 6d    65 20 62 65 63 61 75 73 65 0a 20 20 20 20 20 20  | modification.time.because....... | 
| 9740 |  20 20 20 20 3b 3b 20 77 65 20 63 61 6c 6c 65 64    20 60 64 6a 76 75 2d 62 61 63 6b 75 70 27 20 66  | ....;;.we.called.`djvu-backup'.f | 
| 9760 |  72 6f 6d 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69    6b 65 20 60 64 6a 76 75 2d 64 6a 76 75 73 65 64  | rom.something.like.`djvu-djvused | 
| 9780 |  27 2c 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20    77 68 69 63 68 20 61 6e 79 77 61 79 20 6e 65 65  | ',...........;;.which.anyway.nee | 
| 97a0 |  64 73 20 74 6f 20 75 70 64 61 74 65 20 74 68 65    20 72 65 63 6f 72 64 65 64 20 6d 6f 64 69 66 69  | ds.to.update.the.recorded.modifi | 
| 97c0 |  63 61 74 69 6f 6e 20 74 69 6d 65 2e 0a 20 20 20    20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28  | cation.time............(unless.( | 
| 97e0 |  66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 72 65    61 6c 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20  | file-exists-p.real-file)........ | 
| 9800 |  20 20 20 20 20 28 62 61 63 6b 75 70 2d 62 75 66    66 65 72 2d 63 6f 70 79 20 28 6e 74 68 20 32 20  | .....(backup-buffer-copy.(nth.2. | 
| 9820 |  76 61 6c 29 20 72 65 61 6c 2d 66 69 6c 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | val).real-file.................. | 
| 9840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6e 74 68 20 30 20 76 61 6c 29 20 28 6e 74 68 20  | ...............(nth.0.val).(nth. | 
| 9860 |  31 20 76 61 6c 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 65 74 20 28 28 66 69 6c 65 2d  | 1.val)).............(let.((file- | 
| 9880 |  6e 75 6d 62 65 72 20 28 6e 74 68 63 64 72 20 31    30 20 28 66 69 6c 65 2d 61 74 74 72 69 62 75 74  | number.(nthcdr.10.(file-attribut | 
| 98a0 |  65 73 20 66 69 6c 65 29 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | es.file))))...............(djvu- | 
| 98c0 |  61 6c 6c 2d 62 75 66 66 65 72 73 20 64 6f 63 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | all-buffers.doc................. | 
| 98e0 |  28 73 65 74 71 20 62 75 66 66 65 72 2d 66 69 6c    65 2d 6e 75 6d 62 65 72 20 66 69 6c 65 2d 6e 75  | (setq.buffer-file-number.file-nu | 
| 9900 |  6d 62 65 72 29 29 29 29 29 29 29 29 29 0a 0a 3b    3b 20 54 68 65 20 45 6d 61 63 73 20 6c 69 73 70  | mber)))))))))..;;.The.Emacs.lisp | 
| 9920 |  20 72 65 61 64 65 72 20 67 65 74 73 20 63 6f 6e    66 75 73 65 64 20 62 79 20 74 68 65 20 44 6a 76  | .reader.gets.confused.by.the.Djv | 
| 9940 |  75 20 63 6f 6c 6f 72 20 73 79 6e 74 61 78 20 77    69 74 68 0a 3b 3b 20 73 79 6d 62 6f 6c 73 20 27  | u.color.syntax.with.;;.symbols.' | 
| 9960 |  23 30 30 30 30 30 30 2e 20 20 53 6f 20 77 65 20    74 65 6d 70 6f 72 61 72 69 6c 79 20 63 6f 6e 76  | #000000...So.we.temporarily.conv | 
| 9980 |  65 72 74 20 74 68 65 73 65 20 73 79 6d 62 6f 6c    73 20 74 6f 20 73 74 72 69 6e 67 73 2e 0a 28 64  | ert.these.symbols.to.strings..(d | 
| 99a0 |  65 66 75 6e 20 64 6a 76 75 2d 63 6f 6e 76 65 72    74 2d 68 61 73 68 20 28 26 6f 70 74 69 6f 6e 61  | efun.djvu-convert-hash.(&optiona | 
| 99c0 |  6c 20 72 65 76 65 72 73 65 29 0a 20 20 22 43 6f    6e 76 65 72 74 20 63 6f 6c 6f 72 20 73 79 6d 62  | l.reverse)..."Convert.color.symb | 
| 99e0 |  6f 6c 73 20 23 30 30 30 30 30 30 20 74 6f 20 73    74 72 69 6e 67 73 20 5c 22 23 30 30 30 30 30 30  | ols.#000000.to.strings.\"#000000 | 
| 9a00 |  5c 22 2e 0a 50 65 72 66 6f 72 6d 20 69 6e 76 65    72 73 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69  | \"..Perform.inverse.transformati | 
| 9a20 |  6f 6e 20 69 66 20 52 45 56 45 52 53 45 20 69 73    20 6e 6f 6e 2d 6e 69 6c 2e 22 0a 20 20 28 69 66  | on.if.REVERSE.is.non-nil."...(if | 
| 9a40 |  20 72 65 76 65 72 73 65 0a 20 20 20 20 20 20 28    6c 65 74 20 28 28 72 65 20 28 66 6f 72 6d 61 74  | .reverse.......(let.((re.(format | 
| 9a60 |  20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 72 65 20 22    5c 22 22 20 22 23 22 20 22 5c 22 22 29 29 29 0a  | .djvu-color-re."\""."#"."\""))). | 
| 9a80 |  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 2d 6d 69 6e 29 29 0a  | ........(goto-char.(point-min)). | 
| 9aa0 |  20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28    72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | ........(while.(re-search-forwar | 
| 9ac0 |  64 20 72 65 20 6e 69 6c 20 74 29 0a 20 20 20 20    20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 6d  | d.re.nil.t)...........(replace-m | 
| 9ae0 |  61 74 63 68 20 28 6d 61 74 63 68 2d 73 74 72 69    6e 67 20 33 29 20 6e 69 6c 20 6e 69 6c 20 6e 69  | atch.(match-string.3).nil.nil.ni | 
| 9b00 |  6c 20 32 29 29 29 0a 20 20 20 20 28 6c 65 74 20    28 28 72 65 20 28 66 6f 72 6d 61 74 20 64 6a 76  | l.2))).....(let.((re.(format.djv | 
| 9b20 |  75 2d 63 6f 6c 6f 72 2d 72 65 20 22 23 22 20 22    22 20 22 22 29 29 29 0a 20 20 20 20 20 20 28 67  | u-color-re."#"."".""))).......(g | 
| 9b40 |  6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d    6d 69 6e 29 29 0a 20 20 20 20 20 20 28 77 68 69  | oto-char.(point-min)).......(whi | 
| 9b60 |  6c 65 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f    72 77 61 72 64 20 72 65 20 6e 69 6c 20 74 29 0a  | le.(re-search-forward.re.nil.t). | 
| 9b80 |  20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65    2d 6d 61 74 63 68 20 28 66 6f 72 6d 61 74 20 22  | ........(replace-match.(format." | 
| 9ba0 |  5c 22 25 73 5c 22 22 20 28 6d 61 74 63 68 2d 73    74 72 69 6e 67 20 32 29 29 20 6e 69 6c 20 6e 69  | \"%s\"".(match-string.2)).nil.ni | 
| 9bc0 |  6c 20 6e 69 6c 20 32 29 29 29 29 29 0a 0a 3b 3b    20 57 69 74 68 6f 75 74 20 74 68 69 73 20 6d 61  | l.nil.2)))))..;;.Without.this.ma | 
| 9be0 |  63 72 6f 2c 20 77 65 27 64 20 68 61 76 65 20 74    6f 20 64 65 61 63 74 69 76 61 74 65 20 74 68 65  | cro,.we'd.have.to.deactivate.the | 
| 9c00 |  20 72 65 67 69 6f 6e 20 69 6d 6d 65 64 69 61 74    65 6c 79 2c 0a 3b 3b 20 62 65 66 6f 72 65 20 77  | .region.immediately,.;;.before.w | 
| 9c20 |  65 20 68 61 76 65 20 64 65 63 69 64 65 64 20 77    68 61 74 20 74 6f 20 64 6f 20 77 69 74 68 20 69  | e.have.decided.what.to.do.with.i | 
| 9c40 |  74 2e 20 20 54 68 61 74 20 77 6f 75 6c 64 20 62    65 20 61 6e 6e 6f 79 69 6e 67 2e 0a 3b 3b 20 4f  | t...That.would.be.annoying..;;.O | 
| 9c60 |  72 20 6c 65 61 76 65 20 74 68 65 20 72 65 67 69    6f 6e 20 61 63 74 69 76 65 20 2d 20 65 71 75 61  | r.leave.the.region.active.-.equa | 
| 9c80 |  6c 6c 79 20 61 6e 6e 6f 79 69 6e 67 2e 0a 3b 3b    20 41 6c 73 6f 20 75 73 65 66 75 6c 20 6e 6f 77  | lly.annoying..;;.Also.useful.now | 
| 9ca0 |  3a 20 74 68 65 20 72 65 67 69 6f 6e 20 72 65 6d    61 69 6e 73 20 61 63 74 69 76 65 20 69 66 20 77  | :.the.region.remains.active.if.w | 
| 9cc0 |  65 20 61 62 6f 72 74 20 74 68 65 20 63 6f 6d 6d    61 6e 64 0a 3b 3b 20 70 72 65 6d 61 74 75 72 65  | e.abort.the.command.;;.premature | 
| 9ce0 |  6c 79 2e 0a 28 64 65 66 6d 61 63 72 6f 20 64 6a    76 75 2d 77 69 74 68 2d 72 65 67 69 6f 6e 20 28  | ly..(defmacro.djvu-with-region.( | 
| 9d00 |  72 65 67 69 6f 6e 20 26 72 65 73 74 20 62 6f 64    79 29 0a 20 20 22 50 72 6f 76 69 64 65 20 52 45  | region.&rest.body)..."Provide.RE | 
| 9d20 |  47 49 4f 4e 20 77 68 69 6c 65 20 65 78 65 63 75    74 69 6e 67 20 42 4f 44 59 2c 20 64 65 61 63 74  | GION.while.executing.BODY,.deact | 
| 9d40 |  69 76 61 74 69 6e 67 20 52 45 47 49 4f 4e 20 61    66 74 65 72 77 61 72 64 73 2e 0a 54 68 69 73 20  | ivating.REGION.afterwards..This. | 
| 9d60 |  69 73 20 75 73 65 66 75 6c 20 66 6f 72 20 74 68    65 20 69 6e 74 65 72 61 63 74 69 76 65 20 73 70  | is.useful.for.the.interactive.sp | 
| 9d80 |  65 63 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 6f    70 65 72 61 74 69 6e 67 20 6f 6e 20 52 45 47 49  | ec.of.commands.operating.on.REGI | 
| 9da0 |  4f 4e 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20    28 69 6e 64 65 6e 74 20 31 29 20 28 64 65 62 75  | ON."...(declare.(indent.1).(debu | 
| 9dc0 |  67 20 28 73 79 6d 62 6f 6c 70 20 62 6f 64 79 29    29 29 0a 20 20 60 28 6c 65 74 20 28 28 2c 72 65  | g.(symbolp.body)))...`(let.((,re | 
| 9de0 |  67 69 6f 6e 20 28 6c 65 74 20 28 62 65 67 20 65    6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | gion.(let.(beg.end)............. | 
| 9e00 |  20 20 20 20 20 20 20 20 28 69 66 20 28 75 73 65    2d 72 65 67 69 6f 6e 2d 70 29 0a 20 20 20 20 20  | ........(if.(use-region-p)...... | 
| 9e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 62 65 67 20 28 72 65  | ...................(setq.beg.(re | 
| 9e40 |  67 69 6f 6e 2d 62 65 67 69 6e 6e 69 6e 67 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | gion-beginning)................. | 
| 9e60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e    64 20 28 72 65 67 69 6f 6e 2d 65 6e 64 29 29 0a  | ..............end.(region-end)). | 
| 9e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 73 65 74 71 20 62 65 67 20  | ......................(setq.beg. | 
| 9ea0 |  28 70 6f 69 6e 74 29 20 65 6e 64 20 62 65 67 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (point).end.beg))............... | 
| 9ec0 |  20 20 20 20 20 20 28 73 65 74 71 20 62 65 67 20    28 64 6a 76 75 2d 70 72 6f 70 65 72 74 79 2d 62  | ......(setq.beg.(djvu-property-b | 
| 9ee0 |  65 67 20 62 65 67 20 27 77 6f 72 64 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | eg.beg.'word)................... | 
| 9f00 |  20 20 20 20 20 20 20 20 65 6e 64 20 28 64 6a 76    75 2d 70 72 6f 70 65 72 74 79 2d 65 6e 64 20 65  | ........end.(djvu-property-end.e | 
| 9f20 |  6e 64 20 27 77 6f 72 64 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | nd.'word)).....................( | 
| 9f40 |  63 6f 6e 73 20 62 65 67 20 65 6e 64 29 29 29 29    0a 20 20 20 20 20 28 70 72 6f 67 31 20 28 70 72  | cons.beg.end))))......(prog1.(pr | 
| 9f60 |  6f 67 6e 20 2c 40 62 6f 64 79 29 0a 20 20 20 20    20 20 20 28 69 66 20 28 61 6e 64 20 74 72 61 6e  | ogn.,@body)........(if.(and.tran | 
| 9f80 |  73 69 65 6e 74 2d 6d 61 72 6b 2d 6d 6f 64 65 20    6d 61 72 6b 2d 61 63 74 69 76 65 29 20 28 64 65  | sient-mark-mode.mark-active).(de | 
| 9fa0 |  61 63 74 69 76 61 74 65 2d 6d 61 72 6b 29 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | activate-mark)))))..(defun.djvu- | 
| 9fc0 |  72 65 67 69 6f 6e 2d 73 74 72 69 6e 67 20 28 72    65 67 69 6f 6e 20 26 6f 70 74 69 6f 6e 61 6c 20  | region-string.(region.&optional. | 
| 9fe0 |  6c 69 73 74 29 0a 20 20 22 52 65 74 75 72 6e 20    52 45 47 49 4f 4e 20 6f 66 20 63 75 72 72 65 6e  | list)..."Return.REGION.of.curren | 
| a000 |  74 20 62 75 66 66 65 72 20 61 73 20 73 74 72 69    6e 67 2e 20 20 52 45 47 49 4f 4e 20 69 73 20 61  | t.buffer.as.string...REGION.is.a | 
| a020 |  20 63 6f 6e 73 20 28 42 45 47 20 2e 20 45 4e 44    29 2e 0a 41 70 70 6c 79 20 72 65 70 6c 61 63 65  | .cons.(BEG...END)..Apply.replace | 
| a040 |  6d 65 6e 74 73 20 4c 49 53 54 20 74 6f 20 74 68    65 20 62 75 66 66 65 72 20 73 75 62 73 74 72 69  | ments.LIST.to.the.buffer.substri | 
| a060 |  6e 67 20 64 65 66 69 6e 65 64 20 62 79 20 52 45    47 49 4f 4e 2e 0a 45 61 63 68 20 65 6c 65 6d 65  | ng.defined.by.REGION..Each.eleme | 
| a080 |  6e 74 20 69 6e 20 4c 49 53 54 20 69 73 20 61 20    63 6f 6e 73 20 28 52 45 47 45 58 50 20 2e 20 52  | nt.in.LIST.is.a.cons.(REGEXP...R | 
| a0a0 |  45 50 29 2e 0a 4c 49 53 54 20 64 65 66 61 75 6c    74 73 20 74 6f 20 60 64 6a 76 75 2d 73 74 72 69  | EP)..LIST.defaults.to.`djvu-stri | 
| a0c0 |  6e 67 2d 72 65 70 6c 61 63 65 2d 6c 69 73 74 27    2e 20 20 52 65 74 75 72 6e 20 74 68 65 20 72 65  | ng-replace-list'...Return.the.re | 
| a0e0 |  73 75 6c 74 69 6e 67 20 73 74 72 69 6e 67 2e 22    0a 20 20 28 6c 65 74 20 28 28 73 74 72 69 6e 67  | sulting.string."...(let.((string | 
| a100 |  20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69    6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73  | .(buffer-substring-no-properties | 
| a120 |  20 28 63 61 72 20 72 65 67 69 6f 6e 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(car.region)................... | 
| a140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63  | ..............................(c | 
| a160 |  64 72 20 72 65 67 69 6f 6e 29 29 29 0a 20 20 20    20 20 20 20 20 63 61 73 65 2d 66 6f 6c 64 2d 73  | dr.region))).........case-fold-s | 
| a180 |  65 61 72 63 68 29 0a 20 20 20 20 28 64 6f 6c 69    73 74 20 28 65 6c 74 20 28 6f 72 20 6c 69 73 74  | earch).....(dolist.(elt.(or.list | 
| a1a0 |  20 64 6a 76 75 2d 73 74 72 69 6e 67 2d 72 65 70    6c 61 63 65 2d 6c 69 73 74 29 29 0a 20 20 20 20  | .djvu-string-replace-list))..... | 
| a1c0 |  20 20 28 73 65 74 71 20 73 74 72 69 6e 67 20 28    72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69  | ..(setq.string.(replace-regexp-i | 
| a1e0 |  6e 2d 73 74 72 69 6e 67 20 28 63 61 72 20 65 6c    74 29 20 28 63 64 72 20 65 6c 74 29 20 73 74 72  | n-string.(car.elt).(cdr.elt).str | 
| a200 |  69 6e 67 29 29 29 0a 20 20 20 20 73 74 72 69 6e    67 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | ing))).....string))..(defun.djvu | 
| a220 |  2d 72 65 61 64 2d 73 74 72 69 6e 67 20 28 70 72    6f 6d 70 74 20 72 65 67 69 6f 6e 20 26 6f 70 74  | -read-string.(prompt.region.&opt | 
| a240 |  69 6f 6e 61 6c 20 69 6e 69 74 69 61 6c 2d 69 6e    70 75 74 29 0a 20 20 22 52 65 61 64 20 61 20 73  | ional.initial-input)..."Read.a.s | 
| a260 |  74 72 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 6d    69 6e 69 62 75 66 66 65 72 2c 20 70 72 6f 6d 70  | tring.from.the.minibuffer,.promp | 
| a280 |  74 69 6e 67 20 77 69 74 68 20 73 74 72 69 6e 67    20 50 52 4f 4d 50 54 2e 0a 52 45 47 49 4f 4e 20  | ting.with.string.PROMPT..REGION. | 
| a2a0 |  69 73 20 61 20 63 6f 6e 73 20 28 42 45 47 20 2e    20 45 4e 44 29 20 74 68 61 74 20 64 65 66 69 6e  | is.a.cons.(BEG...END).that.defin | 
| a2c0 |  65 73 20 74 68 65 20 64 65 66 61 75 6c 74 2e 0a    49 66 20 49 4e 49 54 49 41 4c 2d 49 4e 50 55 54  | es.the.default..If.INITIAL-INPUT | 
| a2e0 |  20 69 73 20 6e 6f 6e 2d 6e 69 6c 20 75 73 65 20    73 74 72 69 6e 67 20 66 72 6f 6d 20 52 45 47 49  | .is.non-nil.use.string.from.REGI | 
| a300 |  4f 4e 20 61 73 20 69 6e 69 74 69 61 6c 20 69 6e    70 75 74 2e 22 0a 20 20 28 69 66 20 69 6e 69 74  | ON.as.initial.input."...(if.init | 
| a320 |  69 61 6c 2d 69 6e 70 75 74 0a 20 20 20 20 20 20    3b 3b 20 4d 61 6b 65 20 74 68 65 20 73 74 72 69  | ial-input.......;;.Make.the.stri | 
| a340 |  6e 67 20 69 6e 20 52 45 47 49 4f 4e 20 74 68 65    20 69 6e 69 74 69 61 6c 20 69 6e 70 75 74 2e 0a  | ng.in.REGION.the.initial.input.. | 
| a360 |  20 20 20 20 20 20 28 72 65 61 64 2d 73 74 72 69    6e 67 20 70 72 6f 6d 70 74 20 28 64 6a 76 75 2d  | ......(read-string.prompt.(djvu- | 
| a380 |  72 65 67 69 6f 6e 2d 73 74 72 69 6e 67 20 72 65    67 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20  | region-string.region)........... | 
| a3a0 |  20 20 20 20 20 20 20 20 20 6e 69 6c 20 6e 69 6c    20 64 6a 76 75 2d 69 6e 68 65 72 69 74 2d 69 6e  | .........nil.nil.djvu-inherit-in | 
| a3c0 |  70 75 74 2d 6d 65 74 68 6f 64 29 0a 20 20 20 20    28 72 65 61 64 2d 73 74 72 69 6e 67 20 70 72 6f  | put-method).....(read-string.pro | 
| a3e0 |  6d 70 74 20 6e 69 6c 20 6e 69 6c 20 28 64 6a 76    75 2d 72 65 67 69 6f 6e 2d 73 74 72 69 6e 67 20  | mpt.nil.nil.(djvu-region-string. | 
| a400 |  72 65 67 69 6f 6e 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 64 6a 76 75 2d 69 6e  | region)..................djvu-in | 
| a420 |  68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 74 68    6f 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a  | herit-input-method)))..(defun.dj | 
| a440 |  76 75 2d 69 6e 74 65 72 61 63 74 69 76 65 2d 63    6f 6c 6f 72 20 28 63 6f 6c 6f 72 29 0a 20 20 22  | vu-interactive-color.(color)..." | 
| a460 |  52 65 74 75 72 6e 20 63 6f 6c 6f 72 20 73 70 65    63 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 75  | Return.color.specification.for.u | 
| a480 |  73 65 20 69 6e 20 69 6e 74 65 72 61 63 74 69 76    65 20 63 61 6c 6c 73 2e 0a 54 68 65 20 63 6f 6c  | se.in.interactive.calls..The.col | 
| a4a0 |  6f 72 20 69 73 20 74 68 65 20 4e 74 68 20 65 6c    65 6d 65 6e 74 20 6f 66 20 60 64 6a 76 75 2d 63  | or.is.the.Nth.element.of.`djvu-c | 
| a4c0 |  6f 6c 6f 72 2d 61 6c 69 73 74 27 2e 0a 48 65 72    65 20 4e 20 69 73 20 60 63 75 72 72 65 6e 74 2d  | olor-alist'..Here.N.is.`current- | 
| a4e0 |  70 72 65 66 69 78 2d 61 72 67 27 20 69 66 20 74    68 69 73 20 69 73 20 61 20 6e 6f 6e 2d 6e 65 67  | prefix-arg'.if.this.is.a.non-neg | 
| a500 |  61 74 69 76 65 20 6e 75 6d 62 65 72 2e 0a 4e 20    69 73 20 31 20 2d 20 60 63 75 72 72 65 6e 74 2d  | ative.number..N.is.1.-.`current- | 
| a520 |  70 72 65 66 69 78 2d 61 72 67 27 20 2f 20 34 20    69 66 20 74 68 65 20 70 72 65 66 69 78 20 69 73  | prefix-arg'./.4.if.the.prefix.is | 
| a540 |  20 61 20 63 6f 6e 73 2c 0a 74 68 61 74 20 69 73    2c 20 60 43 2d 75 27 20 79 69 65 6c 64 73 20 4e  | .a.cons,.that.is,.`C-u'.yields.N | 
| a560 |  20 3d 20 30 2e 0a 41 72 67 20 43 4f 4c 4f 52 20    64 65 66 69 6e 65 73 20 74 68 65 20 64 65 66 61  | .=.0..Arg.COLOR.defines.the.defa | 
| a580 |  75 6c 74 20 77 68 65 6e 20 74 68 65 72 65 20 69    73 20 6e 6f 20 70 72 65 66 69 78 20 61 72 67 2e  | ult.when.there.is.no.prefix.arg. | 
| a5a0 |  0a 52 65 74 75 72 6e 20 6e 69 6c 20 69 66 20 60    63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61  | .Return.nil.if.`current-prefix-a | 
| a5c0 |  72 67 27 20 69 73 20 61 20 6e 65 67 61 74 69 76    65 20 6e 75 6d 62 65 72 2e 0a 53 65 65 20 61 6c  | rg'.is.a.negative.number..See.al | 
| a5e0 |  73 6f 20 60 64 6a 76 75 2d 69 6e 74 65 72 61 63    74 69 76 65 2d 63 6f 6c 6f 72 2d 72 65 61 64 27  | so.`djvu-interactive-color-read' | 
| a600 |  2e 22 0a 20 20 28 6c 65 74 20 28 28 63 6f 6c 6e    75 6d 20 28 6f 72 20 28 61 6e 64 20 28 63 6f 6e  | ."...(let.((colnum.(or.(and.(con | 
| a620 |  73 70 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69    78 2d 61 72 67 29 0a 20 20 20 20 20 20 20 20 20  | sp.current-prefix-arg).......... | 
| a640 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 31 2d 20 28 2f 20 28 63 61 72 20 63 75 72 72  | ................(1-.(/.(car.curr | 
| a660 |  65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 29 20    34 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ent-prefix-arg).4)))............ | 
| a680 |  20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 69    6e 74 65 67 65 72 70 20 63 75 72 72 65 6e 74 2d  | .........(and.(integerp.current- | 
| a6a0 |  70 72 65 66 69 78 2d 61 72 67 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | prefix-arg)..................... | 
| a6c0 |  20 20 20 20 20 63 75 72 72 65 6e 74 2d 70 72 65    66 69 78 2d 61 72 67 29 29 29 29 0a 20 20 20 20  | .....current-prefix-arg))))..... | 
| a6e0 |  28 63 6f 6e 64 20 28 28 6e 6f 74 20 63 6f 6c 6e    75 6d 29 20 63 6f 6c 6f 72 29 20 3b 20 75 73 65  | (cond.((not.colnum).color).;.use | 
| a700 |  20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 20    20 20 20 28 28 3e 3d 20 63 6f 6c 6e 75 6d 20 28  | .default...........((>=.colnum.( | 
| a720 |  6c 65 6e 67 74 68 20 64 6a 76 75 2d 63 6f 6c 6f    72 2d 61 6c 69 73 74 29 29 0a 20 20 20 20 20 20  | length.djvu-color-alist))....... | 
| a740 |  20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72    20 22 43 6f 6c 6f 72 20 75 6e 64 65 66 69 6e 65  | .....(user-error."Color.undefine | 
| a760 |  64 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    28 3c 3d 20 30 20 63 6f 6c 6e 75 6d 29 0a 20 20  | d"))...........((<=.0.colnum)... | 
| a780 |  20 20 20 20 20 20 20 20 20 28 63 61 72 20 28 6e    74 68 20 63 6f 6c 6e 75 6d 20 64 6a 76 75 2d 63  | .........(car.(nth.colnum.djvu-c | 
| a7a0 |  6f 6c 6f 72 2d 61 6c 69 73 74 29 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 69 6e  | olor-alist))))))..(defun.djvu-in | 
| a7c0 |  74 65 72 61 63 74 69 76 65 2d 63 6f 6c 6f 72 2d    72 65 61 64 20 28 29 0a 20 20 22 52 65 61 64 20  | teractive-color-read.()..."Read. | 
| a7e0 |  63 6f 6c 6f 72 20 69 6e 74 65 72 61 63 74 69 76    65 6c 79 2e 0a 54 68 65 20 72 65 74 75 72 6e 20  | color.interactively..The.return. | 
| a800 |  76 61 6c 75 65 20 69 73 20 74 68 65 20 63 61 72    20 6f 66 20 61 6e 20 65 6c 65 6d 65 6e 74 20 6f  | value.is.the.car.of.an.element.o | 
| a820 |  66 20 60 64 6a 76 75 2d 63 6f 6c 6f 72 2d 61 6c    69 73 74 27 0a 6f 72 20 6e 69 6c 20 69 66 20 74  | f.`djvu-color-alist'.or.nil.if.t | 
| a840 |  68 65 20 75 73 65 72 20 73 65 6c 65 63 74 73 20    5c 22 74 72 61 6e 73 70 61 72 65 6e 74 5c 22 2e  | he.user.selects.\"transparent\". | 
| a860 |  0a 53 65 65 20 61 6c 73 6f 20 60 64 6a 76 75 2d    69 6e 74 65 72 61 63 74 69 76 65 2d 63 6f 6c 6f  | .See.also.`djvu-interactive-colo | 
| a880 |  72 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 63 6f    6c 6f 72 20 28 63 6f 6d 70 6c 65 74 69 6e 67 2d  | r'."...(let.((color.(completing- | 
| a8a0 |  72 65 61 64 20 22 4e 65 77 20 43 6f 6c 6f 72 3a    20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | read."New.Color:.".............. | 
| a8c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 63 6f 6e 73 20 27 28 22 74 72 61 6e  | ...................(cons.'("tran | 
| a8e0 |  73 70 61 72 65 6e 74 22 29 20 64 6a 76 75 2d 63    6f 6c 6f 72 2d 61 6c 69 73 74 20 29 0a 20 20 20  | sparent").djvu-color-alist.).... | 
| a900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c  | .............................nil | 
| a920 |  20 74 29 29 29 0a 20 20 20 20 20 28 75 6e 6c 65    73 73 20 28 73 74 72 69 6e 67 3d 20 63 6f 6c 6f  | .t)))......(unless.(string=.colo | 
| a940 |  72 20 22 74 72 61 6e 73 70 61 72 65 6e 74 22 29    0a 20 20 20 20 20 20 20 63 6f 6c 6f 72 29 29 29  | r."transparent")........color))) | 
| a960 |  0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 70 61    67 65 2d 75 72 6c 20 28 26 6f 70 74 69 6f 6e 61  | ..(defun.djvu-page-url.(&optiona | 
| a980 |  6c 20 70 61 67 65 20 64 69 72 20 64 6f 63 29 0a    20 20 22 46 6f 72 20 44 6a 76 75 20 44 4f 43 20  | l.page.dir.doc)..."For.Djvu.DOC. | 
| a9a0 |  72 65 74 75 72 6e 20 74 68 65 20 69 6e 74 65 72    6e 61 6c 20 75 72 6c 20 66 6f 72 20 50 41 47 45  | return.the.internal.url.for.PAGE | 
| a9c0 |  2e 0a 54 68 69 73 20 69 73 20 74 68 65 20 69 6e    76 65 72 73 65 20 6f 66 20 60 64 6a 76 75 2d 75  | ..This.is.the.inverse.of.`djvu-u | 
| a9e0 |  72 6c 2d 70 61 67 65 27 2e 22 0a 20 20 28 6c 65    74 20 28 28 70 61 67 65 20 28 6f 72 20 70 61 67  | rl-page'."...(let.((page.(or.pag | 
| aa00 |  65 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65    20 64 6f 63 29 29 29 29 0a 20 20 20 20 28 66 6f  | e.(djvu-ref.page.doc)))).....(fo | 
| aa20 |  72 6d 61 74 20 22 23 25 73 22 20 28 69 66 20 28    65 71 20 27 6c 6f 6e 67 20 28 6f 72 20 64 69 72  | rmat."#%s".(if.(eq.'long.(or.dir | 
| aa40 |  20 28 64 6a 76 75 2d 72 65 66 20 72 65 73 6f 6c    76 65 2d 75 72 6c 20 64 6f 63 29 29 29 0a 20 20  | .(djvu-ref.resolve-url.doc)))... | 
| aa60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 63 64 72 20 28 61 73 73 71 20 70  | ....................(cdr.(assq.p | 
| aa80 |  61 67 65 20 28 64 6a 76 75 2d 72 65 66 20 70 61    67 65 2d 69 64 20 64 6f 63 29 29 29 0a 20 20 20  | age.(djvu-ref.page-id.doc))).... | 
| aaa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 70 61 67 65 29 29 29 29 0a 0a 28 64 65 66 75  | .................page))))..(defu | 
| aac0 |  6e 20 64 6a 76 75 2d 69 6e 74 65 72 61 63 74 69    76 65 2d 75 72 6c 20 28 63 6f 6c 6f 72 29 0a 20  | n.djvu-interactive-url.(color).. | 
| aae0 |  20 22 52 65 74 75 72 6e 20 55 52 4c 20 73 70 65    63 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 75  | ."Return.URL.specification.for.u | 
| ab00 |  73 65 20 69 6e 20 69 6e 74 65 72 61 63 74 69 76    65 20 63 61 6c 6c 73 2e 22 0a 20 20 28 6c 65 74  | se.in.interactive.calls."...(let | 
| ab20 |  20 28 28 66 6d 74 20 28 66 6f 72 6d 61 74 20 22    28 25 73 29 20 55 52 4c 3a 20 22 20 28 6f 72 20  | .((fmt.(format."(%s).URL:.".(or. | 
| ab40 |  63 6f 6c 6f 72 20 22 6e 6f 20 63 6f 6c 6f 72 22    29 29 29 0a 20 20 20 20 20 20 20 20 76 61 6c 29  | color."no.color"))).........val) | 
| ab60 |  0a 20 20 20 20 28 77 68 69 6c 65 20 28 6e 6f 74    20 76 61 6c 29 0a 20 20 20 20 20 20 28 73 65 74  | .....(while.(not.val).......(set | 
| ab80 |  71 20 76 61 6c 20 28 72 65 61 64 2d 73 74 72 69    6e 67 20 66 6d 74 29 29 0a 20 20 20 20 20 20 28  | q.val.(read-string.fmt)).......( | 
| aba0 |  63 6f 6e 64 20 28 28 73 74 72 69 6e 67 2d 6d 61    74 63 68 20 22 5c 5c 60 23 3f 5c 5c 28 5b 30 2d  | cond.((string-match."\\`#?\\([0- | 
| abc0 |  39 5d 2b 5c 5c 29 5c 5c 27 22 20 76 61 6c 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | 9]+\\)\\'".val)..............(se | 
| abe0 |  74 71 20 76 61 6c 20 28 64 6a 76 75 2d 6d 61 74    63 68 2d 6e 75 6d 62 65 72 20 31 20 76 61 6c 29  | tq.val.(djvu-match-number.1.val) | 
| ac00 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28    69 66 20 28 3c 3d 20 31 20 76 61 6c 20 28 64 6a  | )..............(if.(<=.1.val.(dj | 
| ac20 |  76 75 2d 72 65 66 20 70 61 67 65 6d 61 78 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | vu-ref.pagemax))................ | 
| ac40 |  20 20 28 73 65 74 71 20 76 61 6c 20 28 64 6a 76    75 2d 70 61 67 65 2d 75 72 6c 20 76 61 6c 29 29  | ..(setq.val.(djvu-page-url.val)) | 
| ac60 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6d 65 73 73 61 67 65 20 22 50 61 67 65 20 6e  | ................(message."Page.n | 
| ac80 |  75 6d 62 65 72 20 25 64 20 6f 75 74 20 6f 66 20    72 61 6e 67 65 20 28 31 2d 25 64 29 22 0a 20 20  | umber.%d.out.of.range.(1-%d)"... | 
| aca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 76 61 6c 20 28 64 6a 76 75 2d  | ......................val.(djvu- | 
| acc0 |  72 65 66 20 70 61 67 65 6d 61 78 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 69  | ref.pagemax))................(si | 
| ace0 |  74 2d 66 6f 72 20 31 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 61  | t-for.1)................(setq.va | 
| ad00 |  6c 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 28 6e 6f 74 20 28 73 74 72 69  | l.nil))).............((not.(stri | 
| ad20 |  6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60 5b 61 2d    7a 5d 2b 3a 2f 2f 22 20 76 61 6c 29 29 0a 20 20  | ng-match."\\`[a-z]+://".val))... | 
| ad40 |  20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73    61 67 65 20 22 55 52 4c 20 60 25 73 27 20 6e 6f  | ...........(message."URL.`%s'.no | 
| ad60 |  74 20 72 65 63 6f 67 6e 69 7a 65 64 22 20 76 61    6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | t.recognized".val).............. | 
| ad80 |  28 73 69 74 2d 66 6f 72 20 31 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76  | (sit-for.1)..............(setq.v | 
| ada0 |  61 6c 20 6e 69 6c 29 29 29 29 0a 20 20 20 20 76    61 6c 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76  | al.nil)))).....val))..(defun.djv | 
| adc0 |  75 2d 63 6f 6c 6f 72 2d 62 61 63 6b 67 72 6f 75    6e 64 20 28 63 6f 6c 6f 72 20 26 6f 70 74 69 6f  | u-color-background.(color.&optio | 
| ade0 |  6e 61 6c 20 62 61 63 6b 67 72 6f 75 6e 64 20 6f    70 61 63 69 74 79 20 69 6e 76 65 72 74 29 0a 20  | nal.background.opacity.invert).. | 
| ae00 |  20 22 46 6f 72 20 72 67 62 20 43 4f 4c 4f 52 20    61 6e 64 20 42 41 43 4b 47 52 4f 55 4e 44 20 61  | ."For.rgb.COLOR.and.BACKGROUND.a | 
| ae20 |  70 70 6c 79 20 4f 50 41 43 49 54 59 2e 0a 52 65    74 75 72 6e 20 74 68 65 20 6e 65 77 20 72 67 62  | pply.OPACITY..Return.the.new.rgb | 
| ae40 |  20 63 6f 6c 6f 72 20 73 74 72 69 6e 67 2e 0a 49    66 20 42 41 43 4b 47 52 4f 55 4e 44 20 69 73 20  | .color.string..If.BACKGROUND.is. | 
| ae60 |  6e 69 6c 2c 20 75 73 65 20 60 64 6a 76 75 2d 63    6f 6c 6f 72 2d 62 61 63 6b 67 72 6f 75 6e 64 27  | nil,.use.`djvu-color-background' | 
| ae80 |  2e 0a 49 66 20 4f 50 41 43 49 54 59 20 69 73 20    6e 69 6c 2c 20 75 73 65 20 60 64 6a 76 75 2d 6f  | ..If.OPACITY.is.nil,.use.`djvu-o | 
| aea0 |  70 61 63 69 74 79 27 2e 0a 49 66 20 49 4e 56 45    52 54 20 69 73 20 6e 6f 6e 2d 6e 69 6c 20 61 70  | pacity'..If.INVERT.is.non-nil.ap | 
| aec0 |  70 6c 79 20 69 6e 76 65 72 73 65 20 74 72 61 6e    73 66 6f 72 6d 61 74 69 6f 6e 2e 22 0a 20 20 28  | ply.inverse.transformation."...( | 
| aee0 |  77 68 65 6e 20 63 6f 6c 6f 72 0a 20 20 20 20 28    6c 65 74 2a 20 28 28 63 6f 6c 6f 72 20 28 69 66  | when.color.....(let*.((color.(if | 
| af00 |  20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22    5c 5c 60 23 22 20 63 6f 6c 6f 72 29 20 63 6f 6c  | .(string-match."\\`#".color).col | 
| af20 |  6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 63 64 72 20 28 61 73 73  | or.....................(cdr.(ass | 
| af40 |  6f 63 20 63 6f 6c 6f 72 20 64 6a 76 75 2d 63 6f    6c 6f 72 2d 61 6c 69 73 74 29 29 29 29 0a 20 20  | oc.color.djvu-color-alist))))... | 
| af60 |  20 20 20 20 20 20 20 20 20 28 62 61 63 6b 67 72    6f 75 6e 64 20 28 69 66 20 28 61 6e 64 20 62 61  | .........(background.(if.(and.ba | 
| af80 |  63 6b 67 72 6f 75 6e 64 20 28 73 74 72 69 6e 67    2d 6d 61 74 63 68 20 22 5c 5c 60 23 22 20 62 61  | ckground.(string-match."\\`#".ba | 
| afa0 |  63 6b 67 72 6f 75 6e 64 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ckground))...................... | 
| afc0 |  20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ......background................ | 
| afe0 |  20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 28    61 73 73 6f 63 20 28 6f 72 20 62 61 63 6b 67 72  | ..........(cdr.(assoc.(or.backgr | 
| b000 |  6f 75 6e 64 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d    62 61 63 6b 67 72 6f 75 6e 64 29 0a 20 20 20 20  | ound.djvu-color-background)..... | 
| b020 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b040 |  20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 61 6c 69 73    74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | .djvu-color-alist))))........... | 
| b060 |  20 28 61 20 28 2f 20 28 66 6c 6f 61 74 20 28 6f    72 20 6f 70 61 63 69 74 79 20 64 6a 76 75 2d 6f  | .(a.(/.(float.(or.opacity.djvu-o | 
| b080 |  70 61 63 69 74 79 29 29 20 32 30 30 29 29 20 3b    20 66 6f 72 65 67 72 6f 75 6e 64 0a 20 20 20 20  | pacity)).200)).;.foreground..... | 
| b0a0 |  20 20 20 20 20 20 20 28 62 20 28 2d 20 31 20 61    29 29 29 20 3b 20 62 61 63 6b 67 72 6f 75 6e 64  | .......(b.(-.1.a))).;.background | 
| b0c0 |  0a 20 20 20 20 20 20 28 69 66 20 69 6e 76 65 72    74 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d  | .......(if.invert...........(cl- | 
| b0e0 |  66 6c 65 74 20 28 28 6d 69 78 20 28 62 65 67 20    65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20  | flet.((mix.(beg.end)............ | 
| b100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d    61 78 20 30 20 28 6d 69 6e 20 23 78 46 46 0a 20  | ..............(max.0.(min.#xFF.. | 
| b120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b140 |  20 20 20 20 28 72 6f 75 6e 64 20 28 2f 20 28 2d    20 28 64 6a 76 75 2d 73 75 62 73 74 72 69 6e 67  | ....(round.(/.(-.(djvu-substring | 
| b160 |  2d 6e 75 6d 62 65 72 20 63 6f 6c 6f 72 20 62 65    67 20 65 6e 64 20 31 36 29 0a 20 20 20 20 20 20  | -number.color.beg.end.16)....... | 
| b180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b1a0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 62    20 28 64 6a 76 75 2d 73 75 62 73 74 72 69 6e 67  | ............(*.b.(djvu-substring | 
| b1c0 |  2d 6e 75 6d 62 65 72 20 62 61 63 6b 67 72 6f 75    6e 64 20 62 65 67 20 65 6e 64 20 31 36 29 29 29  | -number.background.beg.end.16))) | 
| b1e0 |  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  | ................................ | 
| b200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    61 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20  | ................a))))))......... | 
| b220 |  20 20 20 20 28 66 6f 72 6d 61 74 20 22 23 25 30    32 58 25 30 32 58 25 30 32 58 22 0a 20 20 20 20  | ....(format."#%02X%02X%02X"..... | 
| b240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6d 69 78 20 31 20 33 29 20 28 6d 69 78 20 33  | ................(mix.1.3).(mix.3 | 
| b260 |  20 35 29 20 28 6d 69 78 20 35 20 37 29 29 29 0a    20 20 20 20 20 20 20 20 28 63 6c 2d 66 6c 65 74  | .5).(mix.5.7))).........(cl-flet | 
| b280 |  20 28 28 6d 69 78 20 28 62 65 67 20 65 6e 64 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .((mix.(beg.end)................ | 
| b2a0 |  20 20 20 20 20 20 20 20 28 6d 61 78 20 30 20 28    6d 69 6e 20 23 78 46 46 0a 20 20 20 20 20 20 20  | ........(max.0.(min.#xFF........ | 
| b2c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 72 6f 75  | ............................(rou | 
| b2e0 |  6e 64 20 28 2b 20 28 2a 20 61 20 28 64 6a 76 75    2d 73 75 62 73 74 72 69 6e 67 2d 6e 75 6d 62 65  | nd.(+.(*.a.(djvu-substring-numbe | 
| b300 |  72 20 63 6f 6c 6f 72 20 62 65 67 20 65 6e 64 20    31 36 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | r.color.beg.end.16))............ | 
| b320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b340 |  20 20 28 2a 20 62 20 28 64 6a 76 75 2d 73 75 62    73 74 72 69 6e 67 2d 6e 75 6d 62 65 72 20 62 61  | ..(*.b.(djvu-substring-number.ba | 
| b360 |  63 6b 67 72 6f 75 6e 64 20 62 65 67 20 65 6e 64    20 31 36 29 29 29 29 29 29 29 29 0a 20 20 20 20  | ckground.beg.end.16))))))))..... | 
| b380 |  20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 23    25 30 32 58 25 30 32 58 25 30 32 58 22 0a 20 20  | ......(format."#%02X%02X%02X"... | 
| b3a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6d 69 78 20 31 20 33 29 20 28 6d 69 78 20 33  | ................(mix.1.3).(mix.3 | 
| b3c0 |  20 35 29 20 28 6d 69 78 20 35 20 37 29 29 29 29    29 29 29 0a 0a 3b 3b 3b 20 44 6a 76 75 20 6d 6f  | .5).(mix.5.7)))))))..;;;.Djvu.mo | 
| b3e0 |  64 65 73 0a 0a 28 64 65 66 76 61 72 20 64 6a 76    75 2d 72 65 61 64 2d 6d 6f 64 65 2d 6d 61 70 0a  | des..(defvar.djvu-read-mode-map. | 
| b400 |  20 20 28 6c 65 74 20 28 28 6b 6d 20 28 6d 61 6b    65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29  | ..(let.((km.(make-sparse-keymap) | 
| b420 |  29 29 0a 20 20 20 20 3b 3b 20 60 73 70 65 63 69    61 6c 2d 6d 6f 64 65 2d 6d 61 70 27 0a 20 20 20  | )).....;;.`special-mode-map'.... | 
| b440 |  20 3b 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b    6d 20 22 3f 22 20 27 64 65 73 63 72 69 62 65 2d  | .;.(define-key.km."?".'describe- | 
| b460 |  6d 6f 64 65 29 0a 20 20 20 20 3b 20 28 64 65 66    69 6e 65 2d 6b 65 79 20 6b 6d 20 22 3e 22 20 27  | mode).....;.(define-key.km.">".' | 
| b480 |  65 6e 64 2d 6f 66 2d 62 75 66 66 65 72 29 0a 20    20 20 20 3b 20 28 64 65 66 69 6e 65 2d 6b 65 79  | end-of-buffer).....;.(define-key | 
| b4a0 |  20 6b 6d 20 22 3c 22 20 27 62 65 67 69 6e 6e 69    6e 67 2d 6f 66 2d 62 75 66 66 65 72 29 0a 0a 20  | .km."<".'beginning-of-buffer)... | 
| b4c0 |  20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b    6d 20 5b 72 65 6d 61 70 20 73 63 72 6f 6c 6c 2d  | ...(define-key.km.[remap.scroll- | 
| b4e0 |  75 70 2d 63 6f 6d 6d 61 6e 64 5d 20 20 20 27 64    6a 76 75 2d 73 63 72 6f 6c 6c 2d 75 70 2d 63 6f  | up-command]...'djvu-scroll-up-co | 
| b500 |  6d 6d 61 6e 64 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6b 6d 20 5b 72 65 6d 61 70  | mmand).....(define-key.km.[remap | 
| b520 |  20 73 63 72 6f 6c 6c 2d 64 6f 77 6e 2d 63 6f 6d    6d 61 6e 64 5d 20 27 64 6a 76 75 2d 73 63 72 6f  | .scroll-down-command].'djvu-scro | 
| b540 |  6c 6c 2d 64 6f 77 6e 2d 63 6f 6d 6d 61 6e 64 29    0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79  | ll-down-command).....(define-key | 
| b560 |  20 6b 6d 20 5b 72 65 6d 61 70 20 6e 65 78 74 2d    6c 69 6e 65 5d 20 20 20 20 20 20 20 20 20 20 20  | .km.[remap.next-line]........... | 
| b580 |  27 64 6a 76 75 2d 6e 65 78 74 2d 6c 69 6e 65 29    0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79  | 'djvu-next-line).....(define-key | 
| b5a0 |  20 6b 6d 20 5b 72 65 6d 61 70 20 70 72 65 76 69    6f 75 73 2d 6c 69 6e 65 5d 20 20 20 20 20 20 20  | .km.[remap.previous-line]....... | 
| b5c0 |  27 64 6a 76 75 2d 70 72 65 76 2d 6c 69 6e 65 29    0a 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | 'djvu-prev-line)......(define-ke | 
| b5e0 |  79 20 6b 6d 20 22 69 22 20 20 20 20 20 20 20 20    20 20 20 27 64 6a 76 75 2d 69 6d 61 67 65 2d 74  | y.km."i"...........'djvu-image-t | 
| b600 |  6f 67 67 6c 65 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6b 6d 20 22 76 22 20 20 20  | oggle).....(define-key.km."v"... | 
| b620 |  20 20 20 20 20 20 20 20 27 64 6a 76 75 2d 76 69    65 77 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | ........'djvu-view).....(define- | 
| b640 |  6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 76    22 20 20 20 20 27 64 6a 76 75 2d 76 69 65 77 29  | key.km."\C-c\C-v"....'djvu-view) | 
| b660 |  0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79    20 6b 6d 20 22 6e 22 20 20 20 20 20 20 20 20 20  | .....(define-key.km."n"......... | 
| b680 |  20 20 27 64 6a 76 75 2d 6e 65 78 74 2d 70 61 67    65 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b  | ..'djvu-next-page).....(define-k | 
| b6a0 |  65 79 20 6b 6d 20 22 70 22 20 20 20 20 20 20 20    20 20 20 20 27 64 6a 76 75 2d 70 72 65 76 2d 70  | ey.km."p"...........'djvu-prev-p | 
| b6c0 |  61 67 65 29 0a 20 20 20 20 28 64 65 66 69 6e 65    2d 6b 65 79 20 6b 6d 20 22 67 22 20 20 20 20 20  | age).....(define-key.km."g"..... | 
| b6e0 |  20 20 20 20 20 20 27 64 6a 76 75 2d 67 6f 74 6f    2d 70 61 67 65 29 0a 20 20 20 20 28 64 65 66 69  | ......'djvu-goto-page).....(defi | 
| b700 |  6e 65 2d 6b 65 79 20 6b 6d 20 22 66 22 20 20 20    20 20 20 20 20 20 20 20 27 64 6a 76 75 2d 68 69  | ne-key.km."f"...........'djvu-hi | 
| b720 |  73 74 6f 72 79 2d 66 6f 72 77 61 72 64 29 0a 20    20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b  | story-forward).....(define-key.k | 
| b740 |  6d 20 22 72 22 20 20 20 20 20 20 20 20 20 20 20    27 64 6a 76 75 2d 68 69 73 74 6f 72 79 2d 62 61  | m."r"...........'djvu-history-ba | 
| b760 |  63 6b 77 61 72 64 29 20 3b 20 22 72 65 74 75 72    6e 22 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b  | ckward).;."return".....(define-k | 
| b780 |  65 79 20 6b 6d 20 22 6b 22 20 20 20 20 20 20 20    20 20 20 20 27 64 6a 76 75 2d 6b 69 6c 6c 2d 64  | ey.km."k"...........'djvu-kill-d | 
| b7a0 |  6f 63 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6b 6d 20 22 73 22 20 20 20 20 20 20  | oc).....(define-key.km."s"...... | 
| b7c0 |  20 20 20 20 20 27 64 6a 76 75 2d 73 61 76 65 29    0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79  | .....'djvu-save).....(define-key | 
| b7e0 |  20 6b 6d 20 22 5c 43 2d 78 5c 43 2d 73 22 20 20    20 20 27 64 6a 76 75 2d 73 61 76 65 29 0a 20 20  | .km."\C-x\C-s"....'djvu-save)... | 
| b800 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d    20 22 71 22 20 20 20 20 20 20 20 20 20 20 20 27  | ..(define-key.km."q"...........' | 
| b820 |  64 6a 76 75 2d 71 75 69 74 2d 77 69 6e 64 6f 77    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | djvu-quit-window).....(define-ke | 
| b840 |  79 20 6b 6d 20 22 47 22 20 20 20 20 20 20 20 20    20 20 20 27 64 6a 76 75 2d 72 65 76 65 72 74 2d  | y.km."G"...........'djvu-revert- | 
| b860 |  62 75 66 66 65 72 29 0a 20 20 20 20 28 64 65 66    69 6e 65 2d 6b 65 79 20 6b 6d 20 28 6b 62 64 20  | buffer).....(define-key.km.(kbd. | 
| b880 |  22 43 2d 63 20 43 2d 53 2d 67 22 29 20 27 64 6a    76 75 2d 72 65 76 65 72 74 2d 62 75 66 66 65 72  | "C-c.C-S-g").'djvu-revert-buffer | 
| b8a0 |  29 20 3b 20 5b 3f 5c 43 2d 63 20 3f 5c 43 2d 5c    53 2d 67 5d 0a 0a 20 20 20 20 3b 3b 20 46 6f 72  | ).;.[?\C-c.?\C-\S-g]......;;.For | 
| b8c0 |  20 73 77 69 74 63 68 20 63 6f 6d 6d 61 6e 64 73    20 77 65 20 67 69 76 65 20 73 68 6f 72 74 20 6b  | .switch.commands.we.give.short.k | 
| b8e0 |  65 79 20 62 69 6e 64 69 6e 67 73 2c 0a 20 20 20    20 3b 3b 20 62 75 74 20 66 6f 72 20 63 6f 6e 73  | ey.bindings,.....;;.but.for.cons | 
| b900 |  69 73 74 65 6e 63 79 20 77 65 20 61 6c 73 6f 20    70 72 6f 76 69 64 65 20 74 68 65 20 6c 6f 6e 67  | istency.we.also.provide.the.long | 
| b920 |  20 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 3b 3b    20 75 73 65 64 20 62 79 20 60 64 6a 76 75 2d 73  | .bindings.....;;.used.by.`djvu-s | 
| b940 |  63 72 69 70 74 2d 6d 6f 64 65 27 2e 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20  | cript-mode'......(define-key.km. | 
| b960 |  22 74 22 20 20 20 20 20 20 20 20 20 20 20 27 64    6a 76 75 2d 73 77 69 74 63 68 2d 74 65 78 74 29  | "t"...........'djvu-switch-text) | 
| b980 |  0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79    20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 74 22 20 20  | .....(define-key.km."\C-c\C-t".. | 
| b9a0 |  20 20 27 64 6a 76 75 2d 73 77 69 74 63 68 2d 74    65 78 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | ..'djvu-switch-text).....(define | 
| b9c0 |  2d 6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d    73 22 20 20 20 20 27 64 6a 76 75 2d 72 65 2d 73  | -key.km."\C-c\C-s"....'djvu-re-s | 
| b9e0 |  65 61 72 63 68 2d 66 6f 72 77 61 72 64 29 0a 20    20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b  | earch-forward).....(define-key.k | 
| ba00 |  6d 20 22 5c 4d 2d 2c 22 20 20 20 20 20 20 20 20    27 64 6a 76 75 2d 72 65 2d 73 65 61 72 63 68 2d  | m."\M-,"........'djvu-re-search- | 
| ba20 |  66 6f 72 77 61 72 64 2d 63 6f 6e 74 69 6e 75 65    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | forward-continue).....(define-ke | 
| ba40 |  79 20 6b 6d 20 22 65 65 22 20 20 20 20 20 20 20    20 20 20 27 64 6a 76 75 2d 65 64 69 74 2d 77 6f  | y.km."ee"..........'djvu-edit-wo | 
| ba60 |  72 64 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6b 6d 20 22 65 73 22 20 20 20 20 20  | rd).....(define-key.km."es"..... | 
| ba80 |  20 20 20 20 20 27 64 6a 76 75 2d 73 70 6c 69 74    2d 77 6f 72 64 29 0a 20 20 20 20 28 64 65 66 69  | .....'djvu-split-word).....(defi | 
| baa0 |  6e 65 2d 6b 65 79 20 6b 6d 20 22 65 77 22 20 20    20 20 20 20 20 20 20 20 27 64 6a 76 75 2d 6d 65  | ne-key.km."ew"..........'djvu-me | 
| bac0 |  72 67 65 2d 77 6f 72 64 73 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 65  | rge-words).....(define-key.km."e | 
| bae0 |  6c 22 20 20 20 20 20 20 20 20 20 20 27 64 6a 76    75 2d 6d 65 72 67 65 2d 6c 69 6e 65 73 29 0a 20  | l"..........'djvu-merge-lines).. | 
| bb00 |  20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b    6d 20 22 54 22 20 20 20 20 20 20 20 20 20 20 20  | ...(define-key.km."T"........... | 
| bb20 |  27 64 6a 76 75 2d 74 65 78 74 2d 73 63 72 69 70    74 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b  | 'djvu-text-script).....(define-k | 
| bb40 |  65 79 20 6b 6d 20 22 50 22 20 20 20 20 20 20 20    20 20 20 20 27 64 6a 76 75 2d 70 72 6f 63 65 73  | ey.km."P"...........'djvu-proces | 
| bb60 |  73 2d 73 63 72 69 70 74 29 0a 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 61  | s-script)......(define-key.km."a | 
| bb80 |  22 20 20 20 20 20 20 20 20 20 20 20 27 64 6a 76    75 2d 73 77 69 74 63 68 2d 61 6e 6e 6f 74 29 0a  | "...........'djvu-switch-annot). | 
| bba0 |  20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20    6b 6d 20 22 5c 43 2d 63 5c 43 2d 61 22 20 20 20  | ....(define-key.km."\C-c\C-a"... | 
| bbc0 |  20 27 64 6a 76 75 2d 73 77 69 74 63 68 2d 61 6e    6e 6f 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | .'djvu-switch-annot).....(define | 
| bbe0 |  2d 6b 65 79 20 6b 6d 20 22 53 22 20 20 20 20 20    20 20 20 20 20 20 27 64 6a 76 75 2d 73 77 69 74  | -key.km."S"...........'djvu-swit | 
| bc00 |  63 68 2d 73 68 61 72 65 64 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 28 6b  | ch-shared).....(define-key.km.(k | 
| bc20 |  62 64 20 22 43 2d 63 20 43 2d 53 2d 53 22 29 20    27 64 6a 76 75 2d 73 77 69 74 63 68 2d 73 68 61  | bd."C-c.C-S-S").'djvu-switch-sha | 
| bc40 |  72 65 64 29 0a 20 20 20 20 28 64 65 66 69 6e 65    2d 6b 65 79 20 6b 6d 20 22 68 22 20 20 20 20 20  | red).....(define-key.km."h"..... | 
| bc60 |  20 20 20 20 20 20 27 64 6a 76 75 2d 72 65 63 74    2d 72 65 67 69 6f 6e 29 20 3b 20 68 69 67 68 6c  | ......'djvu-rect-region).;.highl | 
| bc80 |  69 67 68 74 0a 20 20 20 20 28 64 65 66 69 6e 65    2d 6b 65 79 20 6b 6d 20 22 75 22 20 20 20 20 20  | ight.....(define-key.km."u"..... | 
| bca0 |  20 20 20 20 20 20 27 64 6a 76 75 2d 72 65 63 74    2d 72 65 67 69 6f 6e 2d 75 72 6c 29 0a 20 20 20  | ......'djvu-rect-region-url).... | 
| bcc0 |  20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20    22 41 22 20 20 20 20 20 20 20 20 20 20 20 27 64  | .(define-key.km."A"...........'d | 
| bce0 |  6a 76 75 2d 61 6e 6e 6f 74 2d 73 63 72 69 70 74    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | jvu-annot-script).....(define-ke | 
| bd00 |  79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 63 22 20    20 20 20 27 64 6a 76 75 2d 75 70 64 61 74 65 2d  | y.km."\C-c\C-c"....'djvu-update- | 
| bd20 |  63 6f 6c 6f 72 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c  | color).....(define-key.km."\C-c\ | 
| bd40 |  43 2d 75 22 20 20 20 20 27 64 6a 76 75 2d 75 70    64 61 74 65 2d 75 72 6c 29 0a 0a 20 20 20 20 28  | C-u"....'djvu-update-url)......( | 
| bd60 |  64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 6f    22 20 20 20 20 20 20 20 20 20 20 20 27 64 6a 76  | define-key.km."o"...........'djv | 
| bd80 |  75 2d 73 77 69 74 63 68 2d 6f 75 74 6c 69 6e 65    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | u-switch-outline).....(define-ke | 
| bda0 |  79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 6f 22 20    20 20 20 27 64 6a 76 75 2d 73 77 69 74 63 68 2d  | y.km."\C-c\C-o"....'djvu-switch- | 
| bdc0 |  6f 75 74 6c 69 6e 65 29 0a 20 20 20 20 28 64 65    66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 62 22 20  | outline).....(define-key.km."b". | 
| bde0 |  20 20 20 20 20 20 20 20 20 20 27 64 6a 76 75 2d    73 77 69 74 63 68 2d 62 6f 6f 6b 6d 61 72 6b 73  | ..........'djvu-switch-bookmarks | 
| be00 |  29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65    79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 62 22 20  | ).....(define-key.km."\C-c\C-b". | 
| be20 |  20 20 20 27 64 6a 76 75 2d 73 77 69 74 63 68 2d    62 6f 6f 6b 6d 61 72 6b 73 29 0a 20 20 20 20 28  | ...'djvu-switch-bookmarks).....( | 
| be40 |  64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 6c    22 20 20 20 20 20 20 20 20 20 20 20 27 64 6a 76  | define-key.km."l"...........'djv | 
| be60 |  75 2d 6d 61 72 6b 2d 6c 69 6e 65 2d 62 65 67 29    0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79  | u-mark-line-beg).....(define-key | 
| be80 |  20 6b 6d 20 22 42 22 20 20 20 20 20 20 20 20 20    20 20 27 64 6a 76 75 2d 62 6f 6f 6b 6d 61 72 6b  | .km."B"...........'djvu-bookmark | 
| bea0 |  29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65    79 20 6b 6d 20 22 6d 22 20 20 20 20 20 20 20 20  | ).....(define-key.km."m"........ | 
| bec0 |  20 20 20 27 64 6a 76 75 2d 68 69 6d 61 72 6b 29    0a 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | ...'djvu-himark)......(define-ke | 
| bee0 |  79 20 6b 6d 20 22 44 22 20 20 20 20 20 20 20 20    20 20 20 27 64 6a 76 75 2d 64 65 6c 65 74 65 2d  | y.km."D"...........'djvu-delete- | 
| bf00 |  70 61 67 65 29 0a 20 20 20 20 28 64 65 66 69 6e    65 2d 6b 65 79 20 6b 6d 20 22 55 22 20 20 20 20  | page).....(define-key.km."U".... | 
| bf20 |  20 20 20 20 20 20 20 27 64 6a 76 75 2d 72 65 73    6f 6c 76 65 2d 61 6c 6c 2d 75 72 6c 73 29 0a 0a  | .......'djvu-resolve-all-urls).. | 
| bf40 |  20 20 20 20 3b 3b 20 75 6e 75 73 65 64 3a 20 63    20 6a 20 77 20 78 20 79 20 7a 0a 20 20 20 20 6b  | ....;;.unused:.c.j.w.x.y.z.....k | 
| bf60 |  6d 29 0a 20 20 22 4b 65 79 6d 61 70 20 66 6f 72    20 44 6a 76 75 20 52 65 61 64 20 4d 6f 64 65 2e  | m)..."Keymap.for.Djvu.Read.Mode. | 
| bf80 |  0a 54 68 69 73 20 69 73 20 61 20 63 68 69 6c 64    20 6f 66 20 60 73 70 65 63 69 61 6c 2d 6d 6f 64  | .This.is.a.child.of.`special-mod | 
| bfa0 |  65 2d 6d 61 70 27 2e 22 29 0a 0a 28 65 61 73 79    2d 6d 65 6e 75 2d 64 65 66 69 6e 65 0a 20 20 64  | e-map'.")..(easy-menu-define...d | 
| bfc0 |  6a 76 75 2d 72 65 61 64 2d 6d 65 6e 75 20 64 6a    76 75 2d 72 65 61 64 2d 6d 6f 64 65 2d 6d 61 70  | jvu-read-menu.djvu-read-mode-map | 
| bfe0 |  20 22 44 6a 76 75 20 4d 65 6e 75 22 0a 20 20 27    28 22 44 6a 76 75 22 0a 20 20 20 20 5b 22 44 6a  | ."Djvu.Menu"...'("Djvu".....["Dj | 
| c000 |  76 69 65 77 20 46 69 6c 65 22 20 64 6a 76 75 2d    76 69 65 77 20 74 5d 0a 20 20 20 20 5b 22 54 6f  | view.File".djvu-view.t].....["To | 
| c020 |  67 67 6c 65 20 49 6d 61 67 65 20 6d 6f 64 65 22    20 64 6a 76 75 2d 69 6d 61 67 65 2d 74 6f 67 67  | ggle.Image.mode".djvu-image-togg | 
| c040 |  6c 65 20 74 5d 0a 20 20 20 20 5b 22 47 6f 20 74    6f 20 50 61 67 65 22 20 64 6a 76 75 2d 67 6f 74  | le.t].....["Go.to.Page".djvu-got | 
| c060 |  6f 2d 70 61 67 65 20 74 5d 0a 20 20 20 20 5b 22    53 61 76 65 20 44 6f 63 22 20 64 6a 76 75 2d 73  | o-page.t].....["Save.Doc".djvu-s | 
| c080 |  61 76 65 20 74 5d 0a 20 20 20 20 5b 22 52 65 76    65 72 74 20 44 6f 63 22 20 64 6a 76 75 2d 72 65  | ave.t].....["Revert.Doc".djvu-re | 
| c0a0 |  76 65 72 74 2d 62 75 66 66 65 72 20 74 5d 0a 20    20 20 20 22 2d 2d 2d 22 0a 20 20 20 20 5b 22 53  | vert-buffer.t]....."---".....["S | 
| c0c0 |  65 61 72 63 68 20 52 65 67 65 78 70 20 46 6f 72    77 61 72 64 22 20 64 6a 76 75 2d 72 65 2d 73 65  | earch.Regexp.Forward".djvu-re-se | 
| c0e0 |  61 72 63 68 2d 66 6f 72 77 61 72 64 20 74 5d 0a    20 20 20 20 5b 22 43 6f 6e 74 69 6e 75 65 20 53  | arch-forward.t].....["Continue.S | 
| c100 |  65 61 72 63 68 20 52 65 20 46 6f 72 77 61 72 64    22 20 64 6a 76 75 2d 72 65 2d 73 65 61 72 63 68  | earch.Re.Forward".djvu-re-search | 
| c120 |  2d 66 6f 72 77 61 72 64 2d 63 6f 6e 74 69 6e 75    65 20 74 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20  | -forward-continue.t]....."---".. | 
| c140 |  20 20 20 28 22 4f 70 65 72 61 74 65 20 6f 6e 20    74 65 78 74 20 6c 61 79 65 72 22 0a 20 20 20 20  | ...("Operate.on.text.layer"..... | 
| c160 |  20 5b 22 45 64 69 74 20 57 6f 72 64 22 20 64 6a    76 75 2d 65 64 69 74 2d 77 6f 72 64 20 74 5d 0a  | .["Edit.Word".djvu-edit-word.t]. | 
| c180 |  20 20 20 20 20 5b 22 53 70 6c 69 74 20 57 6f 72    64 22 20 64 6a 76 75 2d 73 70 6c 69 74 2d 77 6f  | .....["Split.Word".djvu-split-wo | 
| c1a0 |  72 64 20 74 5d 0a 20 20 20 20 20 5b 22 4d 65 72    67 65 20 57 6f 72 64 73 22 20 64 6a 76 75 2d 6d  | rd.t]......["Merge.Words".djvu-m | 
| c1c0 |  65 72 67 65 2d 77 6f 72 64 73 20 74 5d 0a 20 20    20 20 20 5b 22 4d 65 72 67 65 20 4c 69 6e 65 73  | erge-words.t]......["Merge.Lines | 
| c1e0 |  22 20 64 6a 76 75 2d 6d 65 72 67 65 2d 6c 69 6e    65 73 20 74 5d 0a 20 20 20 20 20 5b 22 53 77 69  | ".djvu-merge-lines.t]......["Swi | 
| c200 |  74 63 68 20 74 6f 20 54 65 78 74 22 20 64 6a 76    75 2d 73 77 69 74 63 68 2d 74 65 78 74 20 74 5d  | tch.to.Text".djvu-switch-text.t] | 
| c220 |  29 0a 20 20 20 20 28 22 4f 70 65 72 61 74 65 20    6f 6e 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20 6c  | ).....("Operate.on.annotations.l | 
| c240 |  61 79 65 72 22 0a 20 20 20 20 20 5b 22 48 69 67    68 6c 69 67 68 74 20 52 65 67 69 6f 6e 22 20 64  | ayer"......["Highlight.Region".d | 
| c260 |  6a 76 75 2d 72 65 63 74 2d 72 65 67 69 6f 6e 20    74 5d 0a 20 20 20 20 20 5b 22 50 61 67 65 20 55  | jvu-rect-region.t]......["Page.U | 
| c280 |  52 4c 20 6f 76 65 72 20 52 65 67 69 6f 6e 22 20    64 6a 76 75 2d 72 65 63 74 2d 72 65 67 69 6f 6e  | RL.over.Region".djvu-rect-region | 
| c2a0 |  2d 75 72 6c 20 74 5d 0a 20 20 20 20 20 5b 22 48    69 6d 61 72 6b 20 52 65 67 69 6f 6e 22 20 64 6a  | -url.t]......["Himark.Region".dj | 
| c2c0 |  76 75 2d 68 69 6d 61 72 6b 20 74 5d 0a 20 20 20    20 20 5b 22 4d 61 72 6b 20 70 6f 69 6e 74 22 20  | vu-himark.t]......["Mark.point". | 
| c2e0 |  64 6a 76 75 2d 6d 61 72 6b 2d 6c 69 6e 65 2d 62    65 67 20 74 5d 0a 20 20 20 20 20 5b 22 55 70 64  | djvu-mark-line-beg.t]......["Upd | 
| c300 |  61 74 65 20 63 6f 6c 6f 72 22 20 64 6a 76 75 2d    75 70 64 61 74 65 2d 63 6f 6c 6f 72 20 74 5d 0a  | ate.color".djvu-update-color.t]. | 
| c320 |  20 20 20 20 20 5b 22 55 70 64 61 74 65 20 75 72    6c 22 20 64 6a 76 75 2d 75 70 64 61 74 65 2d 75  | .....["Update.url".djvu-update-u | 
| c340 |  72 6c 20 74 5d 0a 20 20 20 20 20 5b 22 53 77 69    74 63 68 20 74 6f 20 41 6e 6e 6f 74 61 74 69 6f  | rl.t]......["Switch.to.Annotatio | 
| c360 |  6e 73 22 20 64 6a 76 75 2d 73 77 69 74 63 68 2d    61 6e 6e 6f 74 20 74 5d 0a 20 20 20 20 20 5b 22  | ns".djvu-switch-annot.t]......[" | 
| c380 |  53 77 69 74 63 68 20 74 6f 20 53 68 61 72 65 64    20 41 6e 6e 6f 74 61 74 69 6f 6e 73 22 20 64 6a  | Switch.to.Shared.Annotations".dj | 
| c3a0 |  76 75 2d 73 77 69 74 63 68 2d 73 68 61 72 65 64    20 74 5d 29 0a 20 20 20 20 28 22 4f 70 65 72 61  | vu-switch-shared.t]).....("Opera | 
| c3c0 |  74 65 20 6f 6e 20 62 6f 6f 6b 6d 61 72 6b 73 20    6c 61 79 65 72 22 0a 20 20 20 20 20 5b 22 41 64  | te.on.bookmarks.layer"......["Ad | 
| c3e0 |  64 20 42 6f 6f 6b 6d 61 72 6b 22 20 64 6a 76 75    2d 62 6f 6f 6b 6d 61 72 6b 20 74 5d 0a 20 20 20  | d.Bookmark".djvu-bookmark.t].... | 
| c400 |  20 20 5b 22 53 77 69 74 63 68 20 74 6f 20 42 6f    6f 6b 6d 61 72 6b 73 22 20 64 6a 76 75 2d 73 77  | ..["Switch.to.Bookmarks".djvu-sw | 
| c420 |  69 74 63 68 2d 62 6f 6f 6b 6d 61 72 6b 73 20 74    5d 0a 20 20 20 20 20 5b 22 53 77 69 74 63 68 20  | itch-bookmarks.t]......["Switch. | 
| c440 |  74 6f 20 4f 75 74 6c 69 6e 65 22 20 64 6a 76 75    2d 73 77 69 74 63 68 2d 6f 75 74 6c 69 6e 65 20  | to.Outline".djvu-switch-outline. | 
| c460 |  74 5d 29 0a 20 20 20 20 28 22 45 64 69 74 69 6e    67 20 6d 75 6c 74 69 70 6c 65 20 70 61 67 65 73  | t]).....("Editing.multiple.pages | 
| c480 |  22 0a 20 20 20 20 20 5b 22 52 65 73 6f 6c 76 65    20 69 6e 74 65 72 6e 61 6c 20 55 52 4c 73 22 20  | "......["Resolve.internal.URLs". | 
| c4a0 |  64 6a 76 75 2d 72 65 73 6f 6c 76 65 2d 61 6c 6c    2d 75 72 6c 73 20 74 5d 0a 20 20 20 20 20 5b 22  | djvu-resolve-all-urls.t]......[" | 
| c4c0 |  54 65 78 74 20 61 73 20 53 63 72 69 70 74 22 20    64 6a 76 75 2d 74 65 78 74 2d 73 63 72 69 70 74  | Text.as.Script".djvu-text-script | 
| c4e0 |  20 74 5d 0a 20 20 20 20 20 5b 22 41 6e 6e 6f 74    61 74 69 6f 6e 73 20 61 73 20 53 63 72 69 70 74  | .t]......["Annotations.as.Script | 
| c500 |  22 20 64 6a 76 75 2d 61 6e 6e 6f 74 2d 73 63 72    69 70 74 20 74 5d 0a 20 20 20 20 20 5b 22 50 72  | ".djvu-annot-script.t]......["Pr | 
| c520 |  6f 63 65 73 73 20 44 6a 76 75 73 65 64 20 53 63    72 69 70 74 22 20 64 6a 76 75 2d 70 72 6f 63 65  | ocess.Djvused.Script".djvu-proce | 
| c540 |  73 73 2d 73 63 72 69 70 74 20 74 5d 29 0a 20 20    20 20 28 22 44 65 73 74 72 75 63 74 69 76 65 20  | ss-script.t]).....("Destructive. | 
| c560 |  63 6f 6d 6d 61 6e 64 73 22 0a 20 20 20 20 20 5b    22 44 65 6c 65 74 65 20 63 75 72 72 65 6e 74 20  | commands"......["Delete.current. | 
| c580 |  70 61 67 65 22 20 64 6a 76 75 2d 64 65 6c 65 74    65 2d 70 61 67 65 20 74 5d 0a 20 20 20 20 20 5b  | page".djvu-delete-page.t]......[ | 
| c5a0 |  22 52 65 6d 6f 76 65 20 41 6e 6e 6f 74 20 2f 20    42 6f 6f 6b 6d 61 72 6b 73 22 20 64 6a 76 75 2d  | "Remove.Annot./.Bookmarks".djvu- | 
| c5c0 |  6d 61 6b 65 2d 63 6c 65 61 6e 20 74 5d 29 0a 20    20 20 20 22 2d 2d 2d 22 0a 20 20 20 20 5b 22 51  | make-clean.t])....."---".....["Q | 
| c5e0 |  75 69 74 20 56 69 65 77 69 6e 67 22 20 64 6a 76    75 2d 71 75 69 74 2d 77 69 6e 64 6f 77 20 74 5d  | uit.Viewing".djvu-quit-window.t] | 
| c600 |  0a 20 20 20 20 5b 22 4b 69 6c 6c 20 44 6a 76 75    20 62 75 66 66 65 72 73 22 20 64 6a 76 75 2d 6b  | .....["Kill.Djvu.buffers".djvu-k | 
| c620 |  69 6c 6c 2d 64 6f 63 20 74 5d 29 29 0a 0a 28 64    65 66 76 61 72 20 62 6f 6f 6b 6d 61 72 6b 2d 6d  | ill-doc.t]))..(defvar.bookmark-m | 
| c640 |  61 6b 65 2d 72 65 63 6f 72 64 2d 66 75 6e 63 74    69 6f 6e 29 0a 0a 28 64 65 66 69 6e 65 2d 64 65  | ake-record-function)..(define-de | 
| c660 |  72 69 76 65 64 2d 6d 6f 64 65 20 64 6a 76 75 2d    72 65 61 64 2d 6d 6f 64 65 20 73 70 65 63 69 61  | rived-mode.djvu-read-mode.specia | 
| c680 |  6c 2d 6d 6f 64 65 20 22 44 6a 76 69 65 77 22 0a    20 20 22 4d 6f 64 65 20 66 6f 72 20 72 65 61 64  | l-mode."Djview"..."Mode.for.read | 
| c6a0 |  69 6e 67 20 44 6a 76 75 20 66 69 6c 65 73 2e 22    0a 20 20 28 69 66 20 28 6e 6f 74 20 64 6a 76 75  | ing.Djvu.files."...(if.(not.djvu | 
| c6c0 |  2d 69 6e 69 74 29 0a 20 20 20 20 20 20 28 64 6a    76 75 2d 69 6e 69 74 2d 6d 6f 64 65 29 20 3b 20  | -init).......(djvu-init-mode).;. | 
| c6e0 |  46 6f 72 20 60 64 6f 63 2d 76 69 65 77 2d 74 6f    67 67 6c 65 2d 64 69 73 70 6c 61 79 27 20 61 6e  | For.`doc-view-toggle-display'.an | 
| c700 |  64 20 60 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 73 75    73 70 65 6e 64 27 0a 20 20 20 20 3b 3b 20 54 68  | d.`major-mode-suspend'.....;;.Th | 
| c720 |  65 20 52 65 61 64 20 62 75 66 66 65 72 20 69 73    20 6e 6f 74 20 65 64 69 74 61 62 6c 65 2e 20 20  | e.Read.buffer.is.not.editable... | 
| c740 |  53 6f 20 64 6f 20 6e 6f 74 20 63 72 65 61 74 65    20 61 75 74 6f 2d 73 61 76 65 20 66 69 6c 65 73  | So.do.not.create.auto-save.files | 
| c760 |  2e 0a 20 20 20 20 28 73 65 74 71 20 62 75 66 66    65 72 2d 61 75 74 6f 2d 73 61 76 65 2d 66 69 6c  | ......(setq.buffer-auto-save-fil | 
| c780 |  65 2d 6e 61 6d 65 20 6e 69 6c 20 3b 20 70 65 72    6d 61 6e 65 6e 74 20 62 75 66 66 65 72 2d 6c 6f  | e-name.nil.;.permanent.buffer-lo | 
| c7a0 |  63 61 6c 0a 20 20 20 20 20 20 20 20 20 20 64 6a    76 75 2d 62 75 66 66 65 72 20 27 72 65 61 64 0a  | cal...........djvu-buffer.'read. | 
| c7c0 |  20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72    2d 75 6e 64 6f 2d 6c 69 73 74 20 74 29 0a 20 20  | ..........buffer-undo-list.t)... | 
| c7e0 |  20 20 28 6c 65 74 20 28 28 66 6d 74 20 28 63 6f    6e 63 61 74 20 28 63 61 72 20 28 70 72 6f 70 65  | ..(let.((fmt.(concat.(car.(prope | 
| c800 |  72 74 69 7a 65 64 2d 62 75 66 66 65 72 2d 69 64    65 6e 74 69 66 69 63 61 74 69 6f 6e 20 22 25 73  | rtized-buffer-identification."%s | 
| c820 |  22 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 22 20 20 70 25  | "))........................"..p% | 
| c840 |  64 2f 25 64 22 29 29 29 0a 20 20 20 20 20 20 28    73 65 74 71 20 6d 6f 64 65 2d 6c 69 6e 65 2d 62  | d/%d"))).......(setq.mode-line-b | 
| c860 |  75 66 66 65 72 2d 69 64 65 6e 74 69 66 69 63 61    74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20  | uffer-identification............ | 
| c880 |  20 60 28 32 34 20 28 3a 65 76 61 6c 20 28 66 6f    72 6d 61 74 20 2c 66 6d 74 20 28 62 75 66 66 65  | .`(24.(:eval.(format.,fmt.(buffe | 
| c8a0 |  72 2d 6e 61 6d 65 29 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 29 0a 20 20 20 20 20 20 20 20  | r-name).(djvu-ref.page)......... | 
| c8c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65  | ........................(djvu-re | 
| c8e0 |  66 20 70 61 67 65 6d 61 78 29 29 29 29 29 29 0a    20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20  | f.pagemax)))))).....(setq-local. | 
| c900 |  72 65 76 65 72 74 2d 62 75 66 66 65 72 2d 66 75    6e 63 74 69 6f 6e 20 23 27 64 6a 76 75 2d 72 65  | revert-buffer-function.#'djvu-re | 
| c920 |  76 65 72 74 2d 62 75 66 66 65 72 29 0a 20 20 20    20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 62 6f 6f  | vert-buffer).....(setq-local.boo | 
| c940 |  6b 6d 61 72 6b 2d 6d 61 6b 65 2d 72 65 63 6f 72    64 2d 66 75 6e 63 74 69 6f 6e 20 23 27 64 6a 76  | kmark-make-record-function.#'djv | 
| c960 |  75 2d 62 6f 6f 6b 6d 61 72 6b 2d 6d 61 6b 65 2d    72 65 63 6f 72 64 29 0a 20 20 20 20 28 69 66 20  | u-bookmark-make-record).....(if. | 
| c980 |  28 62 6f 75 6e 64 70 20 27 6d 77 68 65 65 6c 2d    73 63 72 6f 6c 6c 2d 75 70 2d 66 75 6e 63 74 69  | (boundp.'mwheel-scroll-up-functi | 
| c9a0 |  6f 6e 29 20 3b 20 6e 6f 74 20 2d 2d 77 69 74 68    6f 75 74 2d 78 20 62 75 69 6c 64 0a 20 20 20 20  | on).;.not.--without-x.build..... | 
| c9c0 |  20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20    6d 77 68 65 65 6c 2d 73 63 72 6f 6c 6c 2d 75 70  | ....(setq-local.mwheel-scroll-up | 
| c9e0 |  2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | -function.....................(l | 
| ca00 |  61 6d 62 64 61 20 28 26 6f 70 74 69 6f 6e 61 6c    20 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ambda.(&optional.n)............. | 
| ca20 |  20 20 20 20 20 20 20 20 20 20 28 69 66 20 64 6a    76 75 2d 69 6d 61 67 65 2d 6d 6f 64 65 20 28 64  | ..........(if.djvu-image-mode.(d | 
| ca40 |  6a 76 75 2d 69 6d 61 67 65 2d 73 63 72 6f 6c 6c    2d 75 70 20 6e 29 0a 20 20 20 20 20 20 20 20 20  | jvu-image-scroll-up.n).......... | 
| ca60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    64 6a 76 75 2d 73 63 72 6f 6c 6c 2d 75 70 2d 63  | ...............(djvu-scroll-up-c | 
| ca80 |  6f 6d 6d 61 6e 64 20 6e 29 29 29 29 29 0a 20 20    20 20 28 69 66 20 28 62 6f 75 6e 64 70 20 27 6d  | ommand.n))))).....(if.(boundp.'m | 
| caa0 |  77 68 65 65 6c 2d 73 63 72 6f 6c 6c 2d 64 6f 77    6e 2d 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20  | wheel-scroll-down-function)..... | 
| cac0 |  20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20    6d 77 68 65 65 6c 2d 73 63 72 6f 6c 6c 2d 64 6f  | ....(setq-local.mwheel-scroll-do | 
| cae0 |  77 6e 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | wn-function..................... | 
| cb00 |  28 6c 61 6d 62 64 61 20 28 26 6f 70 74 69 6f 6e    61 6c 20 6e 29 0a 20 20 20 20 20 20 20 20 20 20  | (lambda.(&optional.n)........... | 
| cb20 |  20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20    64 6a 76 75 2d 69 6d 61 67 65 2d 6d 6f 64 65 20  | ............(if.djvu-image-mode. | 
| cb40 |  28 64 6a 76 75 2d 69 6d 61 67 65 2d 73 63 72 6f    6c 6c 2d 64 6f 77 6e 20 6e 29 0a 20 20 20 20 20  | (djvu-image-scroll-down.n)...... | 
| cb60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 73 63 72 6f 6c 6c 2d  | ...................(djvu-scroll- | 
| cb80 |  64 6f 77 6e 2d 63 6f 6d 6d 61 6e 64 20 6e 29 29    29 29 29 29 29 0a 0a 28 64 65 66 76 61 72 20 64  | down-command.n)))))))..(defvar.d | 
| cba0 |  6a 76 75 2d 73 63 72 69 70 74 2d 6d 6f 64 65 2d    6d 61 70 0a 20 20 28 6c 65 74 20 28 28 6b 6d 20  | jvu-script-mode-map...(let.((km. | 
| cbc0 |  28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79    6d 61 70 29 29 29 0a 20 20 20 20 28 64 65 66 69  | (make-sparse-keymap))).....(defi | 
| cbe0 |  6e 65 2d 6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c    43 2d 72 22 20 20 20 20 27 64 6a 76 75 2d 73 77  | ne-key.km."\C-c\C-r"....'djvu-sw | 
| cc00 |  69 74 63 68 2d 72 65 61 64 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 5c  | itch-read).....(define-key.km."\ | 
| cc20 |  43 2d 63 5c 43 2d 74 22 20 20 20 20 27 64 6a 76    75 2d 73 77 69 74 63 68 2d 74 65 78 74 29 0a 20  | C-c\C-t"....'djvu-switch-text).. | 
| cc40 |  20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b    6d 20 22 5c 43 2d 63 5c 43 2d 61 22 20 20 20 20  | ...(define-key.km."\C-c\C-a".... | 
| cc60 |  27 64 6a 76 75 2d 73 77 69 74 63 68 2d 61 6e 6e    6f 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | 'djvu-switch-annot).....(define- | 
| cc80 |  6b 65 79 20 6b 6d 20 28 6b 62 64 20 22 43 2d 63    20 43 2d 53 2d 53 22 29 20 27 64 6a 76 75 2d 73  | key.km.(kbd."C-c.C-S-S").'djvu-s | 
| cca0 |  77 69 74 63 68 2d 73 68 61 72 65 64 29 0a 20 20    20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d  | witch-shared).....(define-key.km | 
| ccc0 |  20 22 5c 43 2d 63 5c 43 2d 62 22 20 20 20 20 27    64 6a 76 75 2d 73 77 69 74 63 68 2d 62 6f 6f 6b  | ."\C-c\C-b"....'djvu-switch-book | 
| cce0 |  6d 61 72 6b 73 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c  | marks).....(define-key.km."\C-c\ | 
| cd00 |  43 2d 6f 22 20 20 20 20 27 64 6a 76 75 2d 73 77    69 74 63 68 2d 6f 75 74 6c 69 6e 65 29 0a 20 20  | C-o"....'djvu-switch-outline)... | 
| cd20 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d    20 22 5c 43 2d 63 5c 43 2d 67 22 20 20 20 20 27  | ..(define-key.km."\C-c\C-g"....' | 
| cd40 |  64 6a 76 75 2d 67 6f 74 6f 2d 70 61 67 65 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | djvu-goto-page).....(define-key. | 
| cd60 |  6b 6d 20 22 5c 43 2d 63 5c 43 2d 70 22 20 20 20    20 27 64 6a 76 75 2d 70 72 65 76 2d 70 61 67 65  | km."\C-c\C-p"....'djvu-prev-page | 
| cd80 |  29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65    79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 6e 22 20  | ).....(define-key.km."\C-c\C-n". | 
| cda0 |  20 20 20 27 64 6a 76 75 2d 6e 65 78 74 2d 70 61    67 65 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | ...'djvu-next-page).....(define- | 
| cdc0 |  6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 65    73 22 20 20 20 27 64 6a 76 75 2d 73 70 6c 69 74  | key.km."\C-c\C-es"...'djvu-split | 
| cde0 |  2d 77 6f 72 64 2d 69 6e 74 65 72 6e 61 6c 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | -word-internal).....(define-key. | 
| ce00 |  6b 6d 20 22 5c 43 2d 63 5c 43 2d 65 77 22 20 20    20 27 64 6a 76 75 2d 6d 65 72 67 65 2d 77 6f 72  | km."\C-c\C-ew"...'djvu-merge-wor | 
| ce20 |  64 73 2d 69 6e 74 65 72 6e 61 6c 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20  | ds-internal).....(define-key.km. | 
| ce40 |  22 5c 43 2d 63 5c 43 2d 65 6c 22 20 20 20 27 64    6a 76 75 2d 6d 65 72 67 65 2d 6c 69 6e 65 73 2d  | "\C-c\C-el"...'djvu-merge-lines- | 
| ce60 |  69 6e 74 65 72 6e 61 6c 29 0a 20 20 20 20 28 64    65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 5c 43  | internal).....(define-key.km."\C | 
| ce80 |  2d 63 5c 43 2d 6d 22 20 20 20 20 27 64 6a 76 75    2d 6d 65 72 67 65 2d 6d 61 70 61 72 65 61 73 29  | -c\C-m"....'djvu-merge-mapareas) | 
| cea0 |  0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79    20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 63 22 20 20  | .....(define-key.km."\C-c\C-c".. | 
| cec0 |  20 20 27 64 6a 76 75 2d 75 70 64 61 74 65 2d 63    6f 6c 6f 72 2d 69 6e 74 65 72 6e 61 6c 29 0a 20  | ..'djvu-update-color-internal).. | 
| cee0 |  20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b    6d 20 22 5c 43 2d 63 5c 43 2d 75 22 20 20 20 20  | ...(define-key.km."\C-c\C-u".... | 
| cf00 |  27 64 6a 76 75 2d 75 70 64 61 74 65 2d 75 72 6c    2d 69 6e 74 65 72 6e 61 6c 29 0a 20 20 20 20 28  | 'djvu-update-url-internal).....( | 
| cf20 |  64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 5c    43 2d 63 5c 43 2d 7a 22 20 20 20 20 27 64 6a 76  | define-key.km."\C-c\C-z"....'djv | 
| cf40 |  75 2d 72 65 73 69 7a 65 2d 69 6e 74 65 72 6e 61    6c 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b  | u-resize-internal).....(define-k | 
| cf60 |  65 79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 6c 22    20 20 20 20 27 64 6a 76 75 2d 72 65 6d 6f 76 65  | ey.km."\C-c\C-l"....'djvu-remove | 
| cf80 |  2d 6c 69 6e 65 62 72 65 61 6b 73 2d 69 6e 74 65    72 6e 61 6c 29 0a 20 20 20 20 28 64 65 66 69 6e  | -linebreaks-internal).....(defin | 
| cfa0 |  65 2d 6b 65 79 20 6b 6d 20 22 5c 43 2d 78 5c 43    2d 73 22 20 20 20 20 27 64 6a 76 75 2d 73 61 76  | e-key.km."\C-x\C-s"....'djvu-sav | 
| cfc0 |  65 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b    65 79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 76 22  | e).....(define-key.km."\C-c\C-v" | 
| cfe0 |  20 20 20 20 27 64 6a 76 75 2d 76 69 65 77 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | ....'djvu-view).....(define-key. | 
| d000 |  6b 6d 20 22 5c 43 2d 63 5c 43 2d 71 22 20 20 20    20 27 64 6a 76 75 2d 71 75 69 74 2d 77 69 6e 64  | km."\C-c\C-q"....'djvu-quit-wind | 
| d020 |  6f 77 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 6b  | ow).....(define-key.km."\C-c\C-k | 
| d040 |  22 20 20 20 20 27 64 6a 76 75 2d 6b 69 6c 6c 2d    64 6f 63 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | "....'djvu-kill-doc).....(define | 
| d060 |  2d 6b 65 79 20 6b 6d 20 28 6b 62 64 20 22 43 2d    63 20 43 2d 53 2d 67 22 29 20 27 64 6a 76 75 2d  | -key.km.(kbd."C-c.C-S-g").'djvu- | 
| d080 |  72 65 76 65 72 74 2d 62 75 66 66 65 72 29 20 3b    20 5b 3f 5c 43 2d 63 20 3f 5c 43 2d 5c 53 2d 67  | revert-buffer).;.[?\C-c.?\C-\S-g | 
| d0a0 |  5d 0a 0a 20 20 20 20 6b 6d 29 0a 20 20 22 4b 65    79 6d 61 70 20 66 6f 72 20 44 6a 76 75 20 53 63  | ]......km)..."Keymap.for.Djvu.Sc | 
| d0c0 |  72 69 70 74 20 4d 6f 64 65 2e 0a 54 68 69 73 20    69 73 20 61 20 63 68 69 6c 64 20 6f 66 20 60 6c  | ript.Mode..This.is.a.child.of.`l | 
| d0e0 |  69 73 70 2d 6d 6f 64 65 2d 6d 61 70 27 2e 22 29    0a 0a 28 65 61 73 79 2d 6d 65 6e 75 2d 64 65 66  | isp-mode-map'.")..(easy-menu-def | 
| d100 |  69 6e 65 0a 20 20 64 6a 76 75 2d 61 6e 6e 6f 74    2d 6d 65 6e 75 20 64 6a 76 75 2d 73 63 72 69 70  | ine...djvu-annot-menu.djvu-scrip | 
| d120 |  74 2d 6d 6f 64 65 2d 6d 61 70 20 22 44 6a 76 75    20 4d 65 6e 75 22 0a 20 20 27 28 22 44 6a 76 75  | t-mode-map."Djvu.Menu"...'("Djvu | 
| d140 |  22 0a 20 20 20 20 5b 22 47 6f 20 74 6f 20 50 61    67 65 22 20 64 6a 76 75 2d 67 6f 74 6f 2d 70 61  | ".....["Go.to.Page".djvu-goto-pa | 
| d160 |  67 65 20 74 5d 0a 20 20 20 20 5b 22 53 77 69 74    63 68 20 74 6f 20 52 65 61 64 22 20 64 6a 76 75  | ge.t].....["Switch.to.Read".djvu | 
| d180 |  2d 73 77 69 74 63 68 2d 72 65 61 64 20 74 5d 0a    20 20 20 20 5b 22 53 77 69 74 63 68 20 74 6f 20  | -switch-read.t].....["Switch.to. | 
| d1a0 |  54 65 78 74 22 20 64 6a 76 75 2d 73 77 69 74 63    68 2d 74 65 78 74 20 28 6e 6f 74 20 28 65 71 20  | Text".djvu-switch-text.(not.(eq. | 
| d1c0 |  64 6a 76 75 2d 62 75 66 66 65 72 20 27 74 65 78    74 29 29 5d 0a 20 20 20 20 5b 22 53 77 69 74 63  | djvu-buffer.'text))].....["Switc | 
| d1e0 |  68 20 74 6f 20 41 6e 6e 6f 74 61 74 69 6f 6e 73    22 20 64 6a 76 75 2d 73 77 69 74 63 68 2d 61 6e  | h.to.Annotations".djvu-switch-an | 
| d200 |  6e 6f 74 20 28 6e 6f 74 20 28 65 71 20 64 6a 76    75 2d 62 75 66 66 65 72 20 27 61 6e 6e 6f 74 29  | not.(not.(eq.djvu-buffer.'annot) | 
| d220 |  29 5d 0a 20 20 20 20 5b 22 53 77 69 74 63 68 20    74 6f 20 53 68 61 72 65 64 20 41 6e 6e 6f 74 61  | )].....["Switch.to.Shared.Annota | 
| d240 |  74 69 6f 6e 73 22 20 64 6a 76 75 2d 73 77 69 74    63 68 2d 73 68 61 72 65 64 20 28 6e 6f 74 20 28  | tions".djvu-switch-shared.(not.( | 
| d260 |  65 71 20 64 6a 76 75 2d 62 75 66 66 65 72 20 27    73 68 61 72 65 64 29 29 5d 0a 20 20 20 20 5b 22  | eq.djvu-buffer.'shared))].....[" | 
| d280 |  53 77 69 74 63 68 20 74 6f 20 42 6f 6f 6b 6d 61    72 6b 73 22 20 64 6a 76 75 2d 73 77 69 74 63 68  | Switch.to.Bookmarks".djvu-switch | 
| d2a0 |  2d 62 6f 6f 6b 6d 61 72 6b 73 20 74 5d 0a 20 20    20 20 5b 22 53 77 69 74 63 68 20 74 6f 20 4f 75  | -bookmarks.t].....["Switch.to.Ou | 
| d2c0 |  74 6c 69 6e 65 22 20 64 6a 76 75 2d 73 77 69 74    63 68 2d 6f 75 74 6c 69 6e 65 20 74 5d 0a 20 20  | tline".djvu-switch-outline.t]... | 
| d2e0 |  20 20 5b 22 53 61 76 65 20 44 6f 63 22 20 64 6a    76 75 2d 73 61 76 65 20 74 5d 0a 20 20 20 20 5b  | ..["Save.Doc".djvu-save.t].....[ | 
| d300 |  22 52 65 76 65 72 74 20 44 6f 63 22 20 64 6a 76    75 2d 72 65 76 65 72 74 2d 62 75 66 66 65 72 20  | "Revert.Doc".djvu-revert-buffer. | 
| d320 |  74 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20 20    20 3b 3b 20 54 68 65 73 65 20 63 6f 6d 6d 61 6e  | t]....."---".....;;.These.comman | 
| d340 |  64 73 20 6d 61 6b 65 20 73 65 6e 73 65 20 6f 6e    6c 79 20 69 6e 20 74 68 65 20 61 6e 6e 6f 74 61  | ds.make.sense.only.in.the.annota | 
| d360 |  74 69 6f 6e 73 20 62 75 66 66 65 72 0a 20 20 20    20 5b 22 4d 65 72 67 65 20 4d 61 70 61 72 65 61  | tions.buffer.....["Merge.Maparea | 
| d380 |  73 22 20 64 6a 76 75 2d 6d 65 72 67 65 2d 6d 61    70 61 72 65 61 73 20 28 65 71 20 64 6a 76 75 2d  | s".djvu-merge-mapareas.(eq.djvu- | 
| d3a0 |  62 75 66 66 65 72 20 27 61 6e 6e 6f 74 29 5d 0a    20 20 20 20 5b 22 55 70 64 61 74 65 20 43 6f 6c  | buffer.'annot)].....["Update.Col | 
| d3c0 |  6f 72 22 20 64 6a 76 75 2d 75 70 64 61 74 65 2d    63 6f 6c 6f 72 2d 69 6e 74 65 72 6e 61 6c 20 28  | or".djvu-update-color-internal.( | 
| d3e0 |  65 71 20 64 6a 76 75 2d 62 75 66 66 65 72 20 27    61 6e 6e 6f 74 29 5d 0a 20 20 20 20 5b 22 55 70  | eq.djvu-buffer.'annot)].....["Up | 
| d400 |  64 61 74 65 20 55 52 4c 22 20 64 6a 76 75 2d 75    70 64 61 74 65 2d 75 72 6c 2d 69 6e 74 65 72 6e  | date.URL".djvu-update-url-intern | 
| d420 |  61 6c 20 28 65 71 20 64 6a 76 75 2d 62 75 66 66    65 72 20 27 61 6e 6e 6f 74 29 5d 0a 20 20 20 20  | al.(eq.djvu-buffer.'annot)]..... | 
| d440 |  5b 22 52 65 73 69 7a 65 20 4d 61 70 61 72 65 61    22 20 64 6a 76 75 2d 72 65 73 69 7a 65 2d 69 6e  | ["Resize.Maparea".djvu-resize-in | 
| d460 |  74 65 72 6e 61 6c 20 28 65 71 20 64 6a 76 75 2d    62 75 66 66 65 72 20 27 61 6e 6e 6f 74 29 5d 0a  | ternal.(eq.djvu-buffer.'annot)]. | 
| d480 |  20 20 20 20 5b 22 52 65 6d 6f 76 65 20 4c 69 6e    65 62 72 65 61 6b 73 22 20 64 6a 76 75 2d 72 65  | ....["Remove.Linebreaks".djvu-re | 
| d4a0 |  6d 6f 76 65 2d 6c 69 6e 65 62 72 65 61 6b 73 2d    69 6e 74 65 72 6e 61 6c 20 28 65 71 20 64 6a 76  | move-linebreaks-internal.(eq.djv | 
| d4c0 |  75 2d 62 75 66 66 65 72 20 27 61 6e 6e 6f 74 29    5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20 20 20  | u-buffer.'annot)]....."---"..... | 
| d4e0 |  3b 3b 20 54 68 65 73 65 20 63 6f 6d 6d 61 6e 64    73 20 6d 61 6b 65 20 73 65 6e 73 65 20 6f 6e 6c  | ;;.These.commands.make.sense.onl | 
| d500 |  79 20 69 6e 20 74 68 65 20 74 65 78 74 20 62 75    66 66 65 72 0a 20 20 20 20 5b 22 53 70 6c 69 74  | y.in.the.text.buffer.....["Split | 
| d520 |  20 57 6f 72 64 22 20 64 6a 76 75 2d 73 70 6c 69    74 2d 77 6f 72 64 2d 69 6e 74 65 72 6e 61 6c 20  | .Word".djvu-split-word-internal. | 
| d540 |  28 65 71 20 64 6a 76 75 2d 62 75 66 66 65 72 20    27 74 65 78 74 29 5d 0a 20 20 20 20 5b 22 4d 65  | (eq.djvu-buffer.'text)].....["Me | 
| d560 |  72 67 65 20 57 6f 72 64 73 22 20 64 6a 76 75 2d    6d 65 72 67 65 2d 77 6f 72 64 73 2d 69 6e 74 65  | rge.Words".djvu-merge-words-inte | 
| d580 |  72 6e 61 6c 20 28 65 71 20 64 6a 76 75 2d 62 75    66 66 65 72 20 27 74 65 78 74 29 5d 0a 20 20 20  | rnal.(eq.djvu-buffer.'text)].... | 
| d5a0 |  20 5b 22 4d 65 72 67 65 20 4c 69 6e 65 73 22 20    64 6a 76 75 2d 6d 65 72 67 65 2d 6c 69 6e 65 73  | .["Merge.Lines".djvu-merge-lines | 
| d5c0 |  2d 69 6e 74 65 72 6e 61 6c 20 28 65 71 20 64 6a    76 75 2d 62 75 66 66 65 72 20 27 74 65 78 74 29  | -internal.(eq.djvu-buffer.'text) | 
| d5e0 |  5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20 20 20    5b 22 51 75 69 74 20 44 6a 76 75 22 20 64 6a 76  | ]....."---".....["Quit.Djvu".djv | 
| d600 |  75 2d 71 75 69 74 2d 77 69 6e 64 6f 77 20 74 5d    0a 20 20 20 20 5b 22 4b 69 6c 6c 20 44 6a 76 75  | u-quit-window.t].....["Kill.Djvu | 
| d620 |  20 62 75 66 66 65 72 73 22 20 64 6a 76 75 2d 6b    69 6c 6c 2d 64 6f 63 20 74 5d 29 29 0a 0a 28 64  | .buffers".djvu-kill-doc.t]))..(d | 
| d640 |  65 66 76 61 72 20 64 6a 76 75 2d 66 6f 6e 74 2d    6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 0a 20 20  | efvar.djvu-font-lock-keywords... | 
| d660 |  60 28 28 2c 28 63 6f 6e 63 61 74 20 22 5e 5b 20    5c 74 5d 2a 28 22 0a 20 20 20 20 20 20 20 20 20  | `((,(concat."^[.\t]*(".......... | 
| d680 |  20 20 20 20 20 28 72 65 67 65 78 70 2d 6f 70 74    20 27 28 22 62 61 63 6b 67 72 6f 75 6e 64 22 20  | .....(regexp-opt.'("background". | 
| d6a0 |  22 7a 6f 6f 6d 22 20 22 6d 6f 64 65 22 20 22 61    6c 69 67 6e 22 0a 20 20 20 20 20 20 20 20 20 20  | "zoom"."mode"."align"........... | 
| d6c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 22 6d 61 70 61 72 65 61 22 20 22 6d 65 74  | .................."maparea"."met | 
| d6e0 |  61 64 61 74 61 22 20 22 62 6f 6f 6b 6d 61 72 6b    73 22 20 22 78 6d 70 22 29 0a 20 20 20 20 20 20  | adata"."bookmarks"."xmp")....... | 
| d700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 74 29 29 0a 20 20 20 20 20 31 20 66  | ....................t))......1.f | 
| d720 |  6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64    2d 66 61 63 65 29 0a 20 20 20 20 28 2c 28 63 6f  | ont-lock-keyword-face).....(,(co | 
| d740 |  6e 63 61 74 20 22 5c 5c 28 3f 3a 5b 20 5c 74 5d    2b 5c 5c 7c 5e 5c 5c 7c 28 5c 5c 29 28 22 0a 20  | ncat."\\(?:[.\t]+\\|^\\|(\\)(".. | 
| d760 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65    67 65 78 70 2d 6f 70 74 20 27 28 22 75 72 6c 22  | .............(regexp-opt.'("url" | 
| d780 |  20 22 72 65 63 74 22 20 22 6f 76 61 6c 22 20 22    70 6f 6c 79 22 20 22 74 65 78 74 22 20 22 6c 69  | ."rect"."oval"."poly"."text"."li | 
| d7a0 |  6e 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ne"............................. | 
| d7c0 |  22 6e 6f 6e 65 22 20 22 78 6f 72 22 20 22 62 6f    72 64 65 72 22 20 22 73 68 61 64 6f 77 5f 69 6e  | "none"."xor"."border"."shadow_in | 
| d7e0 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 73  | "............................."s | 
| d800 |  68 61 64 6f 77 5f 6f 75 74 22 20 22 73 68 61 64    6f 77 5f 65 69 6e 22 20 22 73 68 61 64 6f 77 5f  | hadow_out"."shadow_ein"."shadow_ | 
| d820 |  65 6f 75 74 22 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | eout"........................... | 
| d840 |  20 20 22 62 6f 72 64 65 72 5f 61 76 69 73 22 20    22 68 69 6c 69 74 65 22 20 22 6f 70 61 63 69 74  | .."border_avis"."hilite"."opacit | 
| d860 |  79 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | y"............................." | 
| d880 |  61 72 72 6f 77 22 20 22 77 69 64 74 68 22 20 22    6c 69 6e 65 63 6c 72 22 0a 20 20 20 20 20 20 20  | arrow"."width"."lineclr"........ | 
| d8a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 22 62 61 63 6b 63 6c 72 22 20 22  | ....................."backclr"." | 
| d8c0 |  74 65 78 74 63 6c 72 22 20 22 70 75 73 68 70 69    6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | textclr"."pushpin".............. | 
| d8e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22    70 61 67 65 22 20 22 63 6f 6c 75 6d 6e 22 20 22  | ..............."page"."column"." | 
| d900 |  72 65 67 69 6f 6e 22 20 22 70 61 72 61 22 20 22    6c 69 6e 65 22 0a 20 20 20 20 20 20 20 20 20 20  | region"."para"."line"........... | 
| d920 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 22 77 6f 72 64 22 20 22 63 68 61 72 22 29  | .................."word"."char") | 
| d940 |  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 74 29 0a 20 20  | ...........................t)... | 
| d960 |  20 20 20 20 20 20 20 20 20 20 20 20 22 29 22 29    0a 20 20 20 20 20 31 20 66 6f 6e 74 2d 6c 6f 63  | ............")")......1.font-loc | 
| d980 |  6b 2d 66 75 6e 63 74 69 6f 6e 2d 6e 61 6d 65 2d    66 61 63 65 29 0a 20 20 20 20 3b 3b 20 75 72 6c  | k-function-name-face).....;;.url | 
| d9a0 |  0a 20 20 20 20 28 64 6a 76 75 2d 66 6f 6e 74 2d    6c 6f 63 6b 2d 75 72 6c 29 29 0a 20 20 22 46 6f  | .....(djvu-font-lock-url))..."Fo | 
| d9c0 |  6e 74 20 6c 6f 63 6b 20 6b 65 79 77 6f 72 64 73    20 66 6f 72 20 44 6a 76 75 20 62 75 66 66 65 72  | nt.lock.keywords.for.Djvu.buffer | 
| d9e0 |  73 2e 22 29 0a 0a 28 64 65 66 69 6e 65 2d 64 65    72 69 76 65 64 2d 6d 6f 64 65 20 64 6a 76 75 2d  | s.")..(define-derived-mode.djvu- | 
| da00 |  73 63 72 69 70 74 2d 6d 6f 64 65 20 6c 69 73 70    2d 6d 6f 64 65 20 22 44 6a 76 75 20 53 63 72 69  | script-mode.lisp-mode."Djvu.Scri | 
| da20 |  70 74 22 0a 20 20 22 4d 6f 64 65 20 66 6f 72 20    65 64 69 74 69 6e 67 20 44 6a 76 75 20 73 63 72  | pt"..."Mode.for.editing.Djvu.scr | 
| da40 |  69 70 74 73 2e 0a 54 68 65 20 61 6e 6e 6f 74 61    74 69 6f 6e 73 2c 20 73 68 61 72 65 64 20 61 6e  | ipts..The.annotations,.shared.an | 
| da60 |  6e 6f 74 61 74 69 6f 6e 73 20 61 6e 64 20 62 6f    6f 6b 6d 61 72 6b 20 62 75 66 66 65 72 73 20 75  | notations.and.bookmark.buffers.u | 
| da80 |  73 65 20 74 68 69 73 20 6d 6f 64 65 2e 22 0a 20    20 28 69 66 20 28 6e 6f 74 20 64 6a 76 75 2d 69  | se.this.mode."...(if.(not.djvu-i | 
| daa0 |  6e 69 74 29 0a 20 20 20 20 20 20 28 64 6a 76 75    2d 69 6e 69 74 2d 6d 6f 64 65 29 20 3b 20 46 6f  | nit).......(djvu-init-mode).;.Fo | 
| dac0 |  72 20 60 64 6f 63 2d 76 69 65 77 2d 74 6f 67 67    6c 65 2d 64 69 73 70 6c 61 79 27 20 61 6e 64 20  | r.`doc-view-toggle-display'.and. | 
| dae0 |  60 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 73 75 73 70    65 6e 64 27 0a 20 20 20 20 3b 3b 20 46 69 78 6d  | `major-mode-suspend'.....;;.Fixm | 
| db00 |  65 3a 20 77 65 20 73 68 6f 75 6c 64 20 63 72 65    61 74 65 20 61 75 74 6f 2d 73 61 76 65 20 66 69  | e:.we.should.create.auto-save.fi | 
| db20 |  6c 65 73 20 66 6f 72 20 74 68 65 20 73 63 72 69    70 74 20 62 75 66 66 65 72 73 2e 0a 20 20 20 20  | les.for.the.script.buffers...... | 
| db40 |  3b 3b 20 54 68 69 73 20 72 65 71 75 69 72 65 73    20 73 75 69 74 61 62 6c 65 20 6e 61 6d 65 73 20  | ;;.This.requires.suitable.names. | 
| db60 |  66 6f 72 20 74 68 65 20 61 75 74 6f 2d 73 61 76    65 20 66 69 6c 65 73 20 74 68 61 74 20 73 68 6f  | for.the.auto-save.files.that.sho | 
| db80 |  75 6c 64 0a 20 20 20 20 3b 3b 20 62 65 20 64 65    72 69 76 65 64 20 66 72 6f 6d 20 60 62 75 66 66  | uld.....;;.be.derived.from.`buff | 
| dba0 |  65 72 2d 66 69 6c 65 2d 6e 61 6d 65 27 2e 0a 20    20 20 20 28 73 65 74 71 20 62 75 66 66 65 72 2d  | er-file-name'......(setq.buffer- | 
| dbc0 |  61 75 74 6f 2d 73 61 76 65 2d 66 69 6c 65 2d 6e    61 6d 65 20 6e 69 6c 20 3b 20 70 65 72 6d 61 6e  | auto-save-file-name.nil.;.perman | 
| dbe0 |  65 6e 74 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c    0a 20 20 20 20 20 20 20 20 20 20 66 69 6c 6c 2d  | ent.buffer-local...........fill- | 
| dc00 |  63 6f 6c 75 6d 6e 20 64 6a 76 75 2d 66 69 6c 6c    2d 63 6f 6c 75 6d 6e 0a 20 20 20 20 20 20 20 20  | column.djvu-fill-column......... | 
| dc20 |  20 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61    75 6c 74 73 20 27 28 64 6a 76 75 2d 66 6f 6e 74  | ..font-lock-defaults.'(djvu-font | 
| dc40 |  2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 29 29    0a 20 20 20 20 28 6c 65 74 2a 20 28 28 66 6d 74  | -lock-keywords)).....(let*.((fmt | 
| dc60 |  31 20 28 63 61 72 20 28 70 72 6f 70 65 72 74 69    7a 65 64 2d 62 75 66 66 65 72 2d 69 64 65 6e 74  | 1.(car.(propertized-buffer-ident | 
| dc80 |  69 66 69 63 61 74 69 6f 6e 20 22 25 73 22 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 6d  | ification."%s")))............(fm | 
| dca0 |  74 32 20 28 63 6f 6e 63 61 74 20 66 6d 74 31 20    22 20 20 70 25 64 2f 25 64 22 29 29 29 0a 20 20  | t2.(concat.fmt1."..p%d/%d")))... | 
| dcc0 |  20 20 20 20 28 73 65 74 71 20 6d 6f 64 65 2d 6c    69 6e 65 2d 62 75 66 66 65 72 2d 69 64 65 6e 74  | ....(setq.mode-line-buffer-ident | 
| dce0 |  69 66 69 63 61 74 69 6f 6e 0a 20 20 20 20 20 20    20 20 20 20 20 20 60 28 32 34 20 28 3a 65 76 61  | ification.............`(24.(:eva | 
| dd00 |  6c 20 28 69 66 20 64 6a 76 75 2d 64 6f 63 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | l.(if.djvu-doc.................. | 
| dd20 |  20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d    61 74 20 2c 66 6d 74 32 20 28 62 75 66 66 65 72  | ...........(format.,fmt2.(buffer | 
| dd40 |  2d 6e 61 6d 65 29 20 28 64 6a 76 75 2d 72 65 66    20 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 20  | -name).(djvu-ref.page).......... | 
| dd60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75  | ...........................(djvu | 
| dd80 |  2d 72 65 66 20 70 61 67 65 6d 61 78 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -ref.pagemax)).................. | 
| dda0 |  20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74    20 2c 66 6d 74 31 20 28 62 75 66 66 65 72 2d 6e  | .........(format.,fmt1.(buffer-n | 
| ddc0 |  61 6d 65 29 29 29 29 29 29 29 0a 20 20 20 20 28    73 65 74 71 2d 6c 6f 63 61 6c 20 72 65 76 65 72  | ame))))))).....(setq-local.rever | 
| dde0 |  74 2d 62 75 66 66 65 72 2d 66 75 6e 63 74 69 6f    6e 20 23 27 64 6a 76 75 2d 72 65 76 65 72 74 2d  | t-buffer-function.#'djvu-revert- | 
| de00 |  62 75 66 66 65 72 29 0a 20 20 20 20 28 73 65 74    71 2d 6c 6f 63 61 6c 20 62 6f 6f 6b 6d 61 72 6b  | buffer).....(setq-local.bookmark | 
| de20 |  2d 6d 61 6b 65 2d 72 65 63 6f 72 64 2d 66 75 6e    63 74 69 6f 6e 20 23 27 64 6a 76 75 2d 62 6f 6f  | -make-record-function.#'djvu-boo | 
| de40 |  6b 6d 61 72 6b 2d 6d 61 6b 65 2d 72 65 63 6f 72    64 29 29 29 0a 0a 28 64 65 66 76 61 72 20 64 6a  | kmark-make-record)))..(defvar.dj | 
| de60 |  76 75 2d 6f 75 74 6c 69 6e 65 2d 6d 6f 64 65 2d    6d 61 70 0a 20 20 28 6c 65 74 20 28 28 6b 6d 20  | vu-outline-mode-map...(let.((km. | 
| de80 |  28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79    6d 61 70 29 29 29 0a 20 20 20 20 3b 3b 20 60 73  | (make-sparse-keymap))).....;;.`s | 
| dea0 |  70 65 63 69 61 6c 2d 6d 6f 64 65 2d 6d 61 70 27    0a 20 20 20 20 3b 20 28 64 65 66 69 6e 65 2d 6b  | pecial-mode-map'.....;.(define-k | 
| dec0 |  65 79 20 6b 6d 20 22 20 22 20 27 73 63 72 6f 6c    6c 2d 75 70 2d 63 6f 6d 6d 61 6e 64 29 0a 20 20  | ey.km.".".'scroll-up-command)... | 
| dee0 |  20 20 3b 20 28 64 65 66 69 6e 65 2d 6b 65 79 20    6b 6d 20 5b 3f 5c 53 2d 5c 20 5d 20 27 73 63 72  | ..;.(define-key.km.[?\S-\.].'scr | 
| df00 |  6f 6c 6c 2d 64 6f 77 6e 2d 63 6f 6d 6d 61 6e 64    29 0a 20 20 20 20 3b 20 28 64 65 66 69 6e 65 2d  | oll-down-command).....;.(define- | 
| df20 |  6b 65 79 20 6b 6d 20 22 5c 43 2d 3f 22 20 27 73    63 72 6f 6c 6c 2d 64 6f 77 6e 2d 63 6f 6d 6d 61  | key.km."\C-?".'scroll-down-comma | 
| df40 |  6e 64 29 0a 20 20 20 20 3b 20 28 64 65 66 69 6e    65 2d 6b 65 79 20 6b 6d 20 22 3f 22 20 27 64 65  | nd).....;.(define-key.km."?".'de | 
| df60 |  73 63 72 69 62 65 2d 6d 6f 64 65 29 0a 20 20 20    20 3b 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b  | scribe-mode).....;.(define-key.k | 
| df80 |  6d 20 22 3e 22 20 27 65 6e 64 2d 6f 66 2d 62 75    66 66 65 72 29 0a 20 20 20 20 3b 20 28 64 65 66  | m.">".'end-of-buffer).....;.(def | 
| dfa0 |  69 6e 65 2d 6b 65 79 20 6b 6d 20 22 3c 22 20 27    62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 62 75 66  | ine-key.km."<".'beginning-of-buf | 
| dfc0 |  66 65 72 29 0a 0a 20 20 20 20 28 64 65 66 69 6e    65 2d 6b 65 79 20 6b 6d 20 22 76 22 20 20 20 20  | fer)......(define-key.km."v".... | 
| dfe0 |  20 20 20 20 20 20 20 27 64 6a 76 75 2d 76 69 65    77 2d 70 61 67 65 29 0a 20 20 20 20 28 64 65 66  | .......'djvu-view-page).....(def | 
| e000 |  69 6e 65 2d 6b 65 79 20 6b 6d 20 22 5c 43 2d 63    5c 43 2d 76 22 20 20 20 20 27 64 6a 76 75 2d 76  | ine-key.km."\C-c\C-v"....'djvu-v | 
| e020 |  69 65 77 2d 70 61 67 65 29 0a 20 20 20 20 28 64    65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 6e 22  | iew-page).....(define-key.km."n" | 
| e040 |  20 20 20 20 20 20 20 20 20 20 20 27 64 6a 76 75    2d 6e 65 78 74 2d 70 61 67 65 29 0a 20 20 20 20  | ...........'djvu-next-page)..... | 
| e060 |  28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22    70 22 20 20 20 20 20 20 20 20 20 20 20 27 64 6a  | (define-key.km."p"...........'dj | 
| e080 |  76 75 2d 70 72 65 76 2d 70 61 67 65 29 0a 20 20    20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d  | vu-prev-page).....(define-key.km | 
| e0a0 |  20 22 67 22 20 20 20 20 20 20 20 20 20 20 20 27    64 6a 76 75 2d 67 6f 74 6f 2d 70 61 67 65 29 0a  | ."g"...........'djvu-goto-page). | 
| e0c0 |  20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20    6b 6d 20 22 6b 22 20 20 20 20 20 20 20 20 20 20  | ....(define-key.km."k".......... | 
| e0e0 |  20 27 64 6a 76 75 2d 6b 69 6c 6c 2d 64 6f 63 29    0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79  | .'djvu-kill-doc).....(define-key | 
| e100 |  20 6b 6d 20 22 73 22 20 20 20 20 20 20 20 20 20    20 20 27 64 6a 76 75 2d 73 61 76 65 29 0a 20 20  | .km."s"...........'djvu-save)... | 
| e120 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d    20 22 5c 43 2d 78 5c 43 2d 73 22 20 20 20 20 27  | ..(define-key.km."\C-x\C-s"....' | 
| e140 |  64 6a 76 75 2d 73 61 76 65 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 71  | djvu-save).....(define-key.km."q | 
| e160 |  22 20 20 20 20 20 20 20 20 20 20 20 27 64 6a 76    75 2d 71 75 69 74 2d 77 69 6e 64 6f 77 29 0a 20  | "...........'djvu-quit-window).. | 
| e180 |  20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b    6d 20 22 47 22 20 20 20 20 20 20 20 20 20 20 20  | ...(define-key.km."G"........... | 
| e1a0 |  27 64 6a 76 75 2d 72 65 76 65 72 74 2d 62 75 66    66 65 72 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | 'djvu-revert-buffer).....(define | 
| e1c0 |  2d 6b 65 79 20 6b 6d 20 28 6b 62 64 20 22 43 2d    63 20 43 2d 53 2d 67 22 29 20 27 64 6a 76 75 2d  | -key.km.(kbd."C-c.C-S-g").'djvu- | 
| e1e0 |  72 65 76 65 72 74 2d 62 75 66 66 65 72 29 20 3b    20 5b 3f 5c 43 2d 63 20 3f 5c 43 2d 5c 53 2d 67  | revert-buffer).;.[?\C-c.?\C-\S-g | 
| e200 |  5d 0a 0a 20 20 20 20 3b 3b 20 46 6f 72 20 73 77    69 74 63 68 20 63 6f 6d 6d 61 6e 64 73 20 77 65  | ]......;;.For.switch.commands.we | 
| e220 |  20 67 69 76 65 20 73 68 6f 72 74 20 6b 65 79 20    62 69 6e 64 69 6e 67 73 2c 0a 20 20 20 20 3b 3b  | .give.short.key.bindings,.....;; | 
| e240 |  20 62 75 74 20 66 6f 72 20 63 6f 6e 73 69 73 74    65 6e 63 79 20 77 65 20 61 6c 73 6f 20 70 72 6f  | .but.for.consistency.we.also.pro | 
| e260 |  76 69 64 65 20 74 68 65 20 6c 6f 6e 67 20 62 69    6e 64 69 6e 67 73 0a 20 20 20 20 3b 3b 20 75 73  | vide.the.long.bindings.....;;.us | 
| e280 |  65 64 20 62 79 20 60 64 6a 76 75 2d 73 63 72 69    70 74 2d 6d 6f 64 65 27 2e 0a 20 20 20 20 28 64  | ed.by.`djvu-script-mode'......(d | 
| e2a0 |  65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 61 22    20 20 20 20 20 20 20 20 20 20 20 27 64 6a 76 75  | efine-key.km."a"...........'djvu | 
| e2c0 |  2d 73 77 69 74 63 68 2d 61 6e 6e 6f 74 29 0a 20    20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b  | -switch-annot).....(define-key.k | 
| e2e0 |  6d 20 22 5c 43 2d 63 5c 43 2d 61 22 20 20 20 20    27 64 6a 76 75 2d 73 77 69 74 63 68 2d 61 6e 6e  | m."\C-c\C-a"....'djvu-switch-ann | 
| e300 |  6f 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6b 6d 20 22 53 22 20 20 20 20 20 20  | ot).....(define-key.km."S"...... | 
| e320 |  20 20 20 20 20 27 64 6a 76 75 2d 73 77 69 74 63    68 2d 73 68 61 72 65 64 29 0a 20 20 20 20 28 64  | .....'djvu-switch-shared).....(d | 
| e340 |  65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 28 6b 62    64 20 22 43 2d 63 20 43 2d 53 2d 53 22 29 20 27  | efine-key.km.(kbd."C-c.C-S-S").' | 
| e360 |  64 6a 76 75 2d 73 77 69 74 63 68 2d 73 68 61 72    65 64 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | djvu-switch-shared).....(define- | 
| e380 |  6b 65 79 20 6b 6d 20 22 62 22 20 20 20 20 20 20    20 20 20 20 20 27 64 6a 76 75 2d 73 77 69 74 63  | key.km."b"...........'djvu-switc | 
| e3a0 |  68 2d 62 6f 6f 6b 6d 61 72 6b 73 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20  | h-bookmarks).....(define-key.km. | 
| e3c0 |  22 5c 43 2d 63 5c 43 2d 62 22 20 20 20 20 27 64    6a 76 75 2d 73 77 69 74 63 68 2d 62 6f 6f 6b 6d  | "\C-c\C-b"....'djvu-switch-bookm | 
| e3e0 |  61 72 6b 73 29 0a 20 20 20 20 28 64 65 66 69 6e    65 2d 6b 65 79 20 6b 6d 20 22 74 22 20 20 20 20  | arks).....(define-key.km."t".... | 
| e400 |  20 20 20 20 20 20 20 27 64 6a 76 75 2d 73 77 69    74 63 68 2d 74 65 78 74 29 0a 20 20 20 20 28 64  | .......'djvu-switch-text).....(d | 
| e420 |  65 66 69 6e 65 2d 6b 65 79 20 6b 6d 20 22 5c 43    2d 63 5c 43 2d 74 22 20 20 20 20 27 64 6a 76 75  | efine-key.km."\C-c\C-t"....'djvu | 
| e440 |  2d 73 77 69 74 63 68 2d 74 65 78 74 29 0a 20 20    20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6b 6d  | -switch-text).....(define-key.km | 
| e460 |  20 22 72 22 20 20 20 20 20 20 20 20 20 20 20 27    64 6a 76 75 2d 73 77 69 74 63 68 2d 72 65 61 64  | ."r"...........'djvu-switch-read | 
| e480 |  29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65    79 20 6b 6d 20 22 5c 43 2d 63 5c 43 2d 72 22 20  | ).....(define-key.km."\C-c\C-r". | 
| e4a0 |  20 20 20 27 64 6a 76 75 2d 73 77 69 74 63 68 2d    72 65 61 64 29 0a 0a 20 20 20 20 6b 6d 29 0a 20  | ...'djvu-switch-read)......km).. | 
| e4c0 |  20 22 4b 65 79 6d 61 70 20 66 6f 72 20 44 6a 76    75 20 4f 75 74 6c 69 6e 65 20 4d 6f 64 65 2e 0a  | ."Keymap.for.Djvu.Outline.Mode.. | 
| e4e0 |  54 68 69 73 20 69 73 20 61 20 63 68 69 6c 64 20    6f 66 20 60 73 70 65 63 69 61 6c 2d 6d 6f 64 65  | This.is.a.child.of.`special-mode | 
| e500 |  2d 6d 61 70 27 2e 22 29 0a 0a 28 65 61 73 79 2d    6d 65 6e 75 2d 64 65 66 69 6e 65 0a 20 20 64 6a  | -map'.")..(easy-menu-define...dj | 
| e520 |  76 75 2d 6f 75 74 6c 69 6e 65 2d 6d 65 6e 75 20    64 6a 76 75 2d 6f 75 74 6c 69 6e 65 2d 6d 6f 64  | vu-outline-menu.djvu-outline-mod | 
| e540 |  65 2d 6d 61 70 20 22 44 6a 76 75 20 4d 65 6e 75    22 0a 20 20 27 28 22 44 6a 76 75 22 0a 20 20 20  | e-map."Djvu.Menu"...'("Djvu".... | 
| e560 |  20 5b 22 44 6a 76 69 65 77 20 46 69 6c 65 22 20    64 6a 76 75 2d 76 69 65 77 2d 70 61 67 65 20 74  | .["Djview.File".djvu-view-page.t | 
| e580 |  5d 0a 20 20 20 20 5b 22 47 6f 20 74 6f 20 50 61    67 65 22 20 64 6a 76 75 2d 67 6f 74 6f 2d 70 61  | ].....["Go.to.Page".djvu-goto-pa | 
| e5a0 |  67 65 20 74 5d 0a 20 20 20 20 5b 22 53 61 76 65    20 44 6f 63 22 20 64 6a 76 75 2d 73 61 76 65 20  | ge.t].....["Save.Doc".djvu-save. | 
| e5c0 |  74 5d 0a 20 20 20 20 5b 22 52 65 76 65 72 74 20    44 6f 63 22 20 64 6a 76 75 2d 72 65 76 65 72 74  | t].....["Revert.Doc".djvu-revert | 
| e5e0 |  2d 62 75 66 66 65 72 20 74 5d 0a 20 20 20 20 22    2d 2d 2d 22 0a 20 20 20 20 5b 22 53 77 69 74 63  | -buffer.t]....."---".....["Switc | 
| e600 |  68 20 74 6f 20 52 65 61 64 22 20 64 6a 76 75 2d    73 77 69 74 63 68 2d 72 65 61 64 20 74 5d 0a 20  | h.to.Read".djvu-switch-read.t].. | 
| e620 |  20 20 20 5b 22 53 77 69 74 63 68 20 74 6f 20 54    65 78 74 22 20 64 6a 76 75 2d 73 77 69 74 63 68  | ...["Switch.to.Text".djvu-switch | 
| e640 |  2d 74 65 78 74 20 74 5d 0a 20 20 20 20 5b 22 53    77 69 74 63 68 20 74 6f 20 41 6e 6e 6f 74 61 74  | -text.t].....["Switch.to.Annotat | 
| e660 |  69 6f 6e 73 22 20 64 6a 76 75 2d 73 77 69 74 63    68 2d 61 6e 6e 6f 74 20 74 5d 0a 20 20 20 20 5b  | ions".djvu-switch-annot.t].....[ | 
| e680 |  22 53 77 69 74 63 68 20 74 6f 20 53 68 61 72 65    64 20 41 6e 6e 6f 74 61 74 69 6f 6e 73 22 20 64  | "Switch.to.Shared.Annotations".d | 
| e6a0 |  6a 76 75 2d 73 77 69 74 63 68 2d 73 68 61 72 65    64 20 74 5d 0a 20 20 20 20 5b 22 53 77 69 74 63  | jvu-switch-shared.t].....["Switc | 
| e6c0 |  68 20 74 6f 20 42 6f 6f 6b 6d 61 72 6b 73 22 20    64 6a 76 75 2d 73 77 69 74 63 68 2d 62 6f 6f 6b  | h.to.Bookmarks".djvu-switch-book | 
| e6e0 |  6d 61 72 6b 73 20 74 5d 0a 20 20 20 20 22 2d 2d    2d 22 0a 20 20 20 20 5b 22 51 75 69 74 20 56 69  | marks.t]....."---".....["Quit.Vi | 
| e700 |  65 77 69 6e 67 22 20 64 6a 76 75 2d 71 75 69 74    2d 77 69 6e 64 6f 77 20 74 5d 0a 20 20 20 20 5b  | ewing".djvu-quit-window.t].....[ | 
| e720 |  22 4b 69 6c 6c 20 44 6a 76 75 20 62 75 66 66 65    72 73 22 20 64 6a 76 75 2d 6b 69 6c 6c 2d 64 6f  | "Kill.Djvu.buffers".djvu-kill-do | 
| e740 |  63 20 74 5d 29 29 0a 0a 28 64 65 66 69 6e 65 2d    64 65 72 69 76 65 64 2d 6d 6f 64 65 20 64 6a 76  | c.t]))..(define-derived-mode.djv | 
| e760 |  75 2d 6f 75 74 6c 69 6e 65 2d 6d 6f 64 65 20 73    70 65 63 69 61 6c 2d 6d 6f 64 65 20 22 44 6a 76  | u-outline-mode.special-mode."Djv | 
| e780 |  75 20 4f 4c 22 0a 20 20 22 4d 6f 64 65 20 66 6f    72 20 72 65 61 64 69 6e 67 20 74 68 65 20 6f 75  | u.OL"..."Mode.for.reading.the.ou | 
| e7a0 |  74 6c 69 6e 65 20 6f 66 20 44 6a 76 75 20 66 69    6c 65 73 2e 22 0a 20 20 28 69 66 20 28 6e 6f 74  | tline.of.Djvu.files."...(if.(not | 
| e7c0 |  20 64 6a 76 75 2d 69 6e 69 74 29 0a 20 20 20 20    20 20 28 64 6a 76 75 2d 69 6e 69 74 2d 6d 6f 64  | .djvu-init).......(djvu-init-mod | 
| e7e0 |  65 29 20 3b 20 46 6f 72 20 60 64 6f 63 2d 76 69    65 77 2d 74 6f 67 67 6c 65 2d 64 69 73 70 6c 61  | e).;.For.`doc-view-toggle-displa | 
| e800 |  79 27 20 61 6e 64 20 60 6d 61 6a 6f 72 2d 6d 6f    64 65 2d 73 75 73 70 65 6e 64 27 0a 20 20 20 20  | y'.and.`major-mode-suspend'..... | 
| e820 |  3b 3b 20 54 68 65 20 4f 75 74 6c 69 6e 65 20 62    75 66 66 65 72 20 69 73 20 6e 6f 74 20 65 64 69  | ;;.The.Outline.buffer.is.not.edi | 
| e840 |  74 61 62 6c 65 2e 20 20 53 6f 20 64 6f 20 6e 6f    74 20 63 72 65 61 74 65 20 61 75 74 6f 2d 73 61  | table...So.do.not.create.auto-sa | 
| e860 |  76 65 20 66 69 6c 65 73 2e 0a 20 20 20 20 28 73    65 74 71 20 62 75 66 66 65 72 2d 61 75 74 6f 2d  | ve.files......(setq.buffer-auto- | 
| e880 |  73 61 76 65 2d 66 69 6c 65 2d 6e 61 6d 65 20 6e    69 6c 20 3b 20 70 65 72 6d 61 6e 65 6e 74 20 62  | save-file-name.nil.;.permanent.b | 
| e8a0 |  75 66 66 65 72 2d 6c 6f 63 61 6c 0a 20 20 20 20    20 20 20 20 20 20 64 6a 76 75 2d 62 75 66 66 65  | uffer-local...........djvu-buffe | 
| e8c0 |  72 20 27 6f 75 74 6c 69 6e 65 0a 20 20 20 20 20    20 20 20 20 20 62 75 66 66 65 72 2d 75 6e 64 6f  | r.'outline...........buffer-undo | 
| e8e0 |  2d 6c 69 73 74 20 74 29 0a 20 20 20 20 28 6c 65    74 20 28 28 66 6d 74 20 28 63 6f 6e 63 61 74 20  | -list.t).....(let.((fmt.(concat. | 
| e900 |  28 63 61 72 20 28 70 72 6f 70 65 72 74 69 7a 65    64 2d 62 75 66 66 65 72 2d 69 64 65 6e 74 69 66  | (car.(propertized-buffer-identif | 
| e920 |  69 63 61 74 69 6f 6e 20 22 25 73 22 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ication."%s")).................. | 
| e940 |  20 20 20 20 20 20 22 20 20 70 25 64 2f 25 64 22    29 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20  | ......"..p%d/%d"))).......(setq. | 
| e960 |  6d 6f 64 65 2d 6c 69 6e 65 2d 62 75 66 66 65 72    2d 69 64 65 6e 74 69 66 69 63 61 74 69 6f 6e 0a  | mode-line-buffer-identification. | 
| e980 |  20 20 20 20 20 20 20 20 20 20 20 20 60 28 32 34    20 28 3a 65 76 61 6c 20 28 66 6f 72 6d 61 74 20  | ............`(24.(:eval.(format. | 
| e9a0 |  2c 66 6d 74 20 28 62 75 66 66 65 72 2d 6e 61 6d    65 29 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67  | ,fmt.(buffer-name).(djvu-ref.pag | 
| e9c0 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e).............................. | 
| e9e0 |  20 20 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67    65 6d 61 78 29 29 29 29 29 29 0a 20 20 20 20 28  | ...(djvu-ref.pagemax)))))).....( | 
| ea00 |  73 65 74 71 2d 6c 6f 63 61 6c 20 72 65 76 65 72    74 2d 62 75 66 66 65 72 2d 66 75 6e 63 74 69 6f  | setq-local.revert-buffer-functio | 
| ea20 |  6e 20 23 27 64 6a 76 75 2d 72 65 76 65 72 74 2d    62 75 66 66 65 72 29 0a 20 20 20 20 28 73 65 74  | n.#'djvu-revert-buffer).....(set | 
| ea40 |  71 2d 6c 6f 63 61 6c 20 62 6f 6f 6b 6d 61 72 6b    2d 6d 61 6b 65 2d 72 65 63 6f 72 64 2d 66 75 6e  | q-local.bookmark-make-record-fun | 
| ea60 |  63 74 69 6f 6e 20 23 27 64 6a 76 75 2d 62 6f 6f    6b 6d 61 72 6b 2d 6d 61 6b 65 2d 72 65 63 6f 72  | ction.#'djvu-bookmark-make-recor | 
| ea80 |  64 29 29 29 0a 0a 3b 3b 3b 20 47 65 6e 65 72 61    6c 20 53 65 74 75 70 0a 0a 3b 3b 3b 23 23 23 61  | d)))..;;;.General.Setup..;;;###a | 
| eaa0 |  75 74 6f 6c 6f 61 64 0a 28 61 64 64 2d 74 6f 2d    6c 69 73 74 20 27 61 75 74 6f 2d 6d 6f 64 65 2d  | utoload.(add-to-list.'auto-mode- | 
| eac0 |  61 6c 69 73 74 20 27 28 22 5c 5c 2e 64 6a 76 75    5c 5c 27 22 20 2e 20 64 6a 76 75 2d 69 6e 69 74  | alist.'("\\.djvu\\'"...djvu-init | 
| eae0 |  2d 6d 6f 64 65 29 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 64  | -mode))..;;;###autoload.(defun.d | 
| eb00 |  6a 76 75 2d 69 6e 69 74 2d 6d 6f 64 65 20 28 29    0a 20 20 22 44 75 6d 6d 79 20 6d 6f 64 65 20 66  | jvu-init-mode.()..."Dummy.mode.f | 
| eb20 |  6f 72 20 69 6e 69 74 69 61 6c 69 7a 69 6e 67 20    44 6a 76 75 20 6d 6f 64 65 2e 0a 54 68 69 73 20  | or.initializing.Djvu.mode..This. | 
| eb40 |  63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61    6e 20 65 6c 65 6d 65 6e 74 20 66 6f 72 20 60 61  | can.be.used.as.an.element.for.`a | 
| eb60 |  75 74 6f 2d 6d 6f 64 65 2d 61 6c 69 73 74 27 2e    0a 54 68 69 73 20 63 61 6e 20 61 6c 73 6f 20 62  | uto-mode-alist'..This.can.also.b | 
| eb80 |  65 20 75 73 65 64 20 69 66 20 74 68 65 20 63 75    72 72 65 6e 74 20 62 75 66 66 65 72 20 76 69 73  | e.used.if.the.current.buffer.vis | 
| eba0 |  69 74 73 20 61 20 44 6a 76 75 20 66 69 6c 65 0a    75 73 69 6e 67 20 73 6f 6d 65 20 6f 74 68 65 72  | its.a.Djvu.file.using.some.other | 
| ebc0 |  20 6d 6f 64 65 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 64 6a 76 75 2d  | .mode."...(interactive)...(djvu- | 
| ebe0 |  66 69 6e 64 2d 66 69 6c 65 20 62 75 66 66 65 72    2d 66 69 6c 65 2d 6e 61 6d 65 20 6e 69 6c 20 6e  | find-file.buffer-file-name.nil.n | 
| ec00 |  69 6c 20 74 29 29 0a 0a 28 64 65 66 75 6e 20 64    6a 76 75 2d 72 65 61 64 2d 66 69 6c 65 2d 6e 61  | il.t))..(defun.djvu-read-file-na | 
| ec20 |  6d 65 20 28 29 0a 20 20 22 52 65 61 64 20 66 69    6c 65 20 6e 61 6d 65 20 6f 66 20 44 6a 76 75 20  | me.()..."Read.file.name.of.Djvu. | 
| ec40 |  66 69 6c 65 2e 0a 54 68 65 20 6e 75 6d 65 72 69    63 20 76 61 6c 75 65 20 6f 66 20 60 63 75 72 72  | file..The.numeric.value.of.`curr | 
| ec60 |  65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 27 20    69 73 20 74 68 65 20 70 61 67 65 20 6e 75 6d 62  | ent-prefix-arg'.is.the.page.numb | 
| ec80 |  65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 70 61    67 65 20 28 70 72 65 66 69 78 2d 6e 75 6d 65 72  | er."...(let.((page.(prefix-numer | 
| eca0 |  69 63 2d 76 61 6c 75 65 20 63 75 72 72 65 6e 74    2d 70 72 65 66 69 78 2d 61 72 67 29 29 29 0a 20  | ic-value.current-prefix-arg))).. | 
| ecc0 |  20 20 20 3b 3b 20 57 65 20 63 61 6e 6e 6f 74 20    63 72 65 61 74 65 20 61 20 64 6a 76 75 20 66 69  | ...;;.We.cannot.create.a.djvu.fi | 
| ece0 |  6c 65 2e 20 20 54 68 65 20 66 69 6c 65 20 6d 75    73 74 20 65 78 69 73 74 20 77 68 65 6e 20 77 65  | le...The.file.must.exist.when.we | 
| ed00 |  20 6f 70 65 6e 20 69 74 2e 0a 20 20 20 20 28 6c    69 73 74 20 28 72 65 61 64 2d 66 69 6c 65 2d 6e  | .open.it......(list.(read-file-n | 
| ed20 |  61 6d 65 20 22 46 69 6e 64 20 44 6a 76 75 20 66    69 6c 65 3a 20 22 20 6e 69 6c 20 6e 69 6c 20 74  | ame."Find.Djvu.file:.".nil.nil.t | 
| ed40 |  20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .nil...........................( | 
| ed60 |  6c 61 6d 62 64 61 20 28 66 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | lambda.(f)...................... | 
| ed80 |  20 20 20 20 20 20 20 28 6f 72 20 28 65 71 75 61    6c 20 22 64 6a 76 75 22 20 28 66 69 6c 65 2d 6e  | .......(or.(equal."djvu".(file-n | 
| eda0 |  61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e 20 66 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ame-extension.f))............... | 
| edc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 66 69 6c 65 2d 64 69 72 65 63 74 6f 72  | ..................(file-director | 
| ede0 |  79 2d 70 20 66 29 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 70 61 67 65 29 29 29 0a 0a 3b 3b 3b  | y-p.f))))...........page)))..;;; | 
| ee00 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 64 6a 76 75 2d 66 69 6e 64 2d 66 69 6c  | ###autoload.(defun.djvu-find-fil | 
| ee20 |  65 20 28 66 69 6c 65 20 26 6f 70 74 69 6f 6e 61    6c 20 70 61 67 65 20 76 69 65 77 20 6e 6f 73 65  | e.(file.&optional.page.view.nose | 
| ee40 |  6c 65 63 74 20 6e 6f 63 6f 6e 66 69 72 6d 29 0a    20 20 22 52 65 61 64 20 61 6e 64 20 65 64 69 74  | lect.noconfirm)..."Read.and.edit | 
| ee60 |  20 44 6a 76 75 20 46 49 4c 45 20 6f 6e 20 50 41    47 45 2e 20 20 52 65 74 75 72 6e 20 52 65 61 64  | .Djvu.FILE.on.PAGE...Return.Read | 
| ee80 |  20 62 75 66 66 65 72 2e 0a 49 66 20 56 49 45 57    20 69 73 20 6e 6f 6e 2d 6e 69 6c 20 73 74 61 72  | .buffer..If.VIEW.is.non-nil.star | 
| eea0 |  74 20 65 78 74 65 72 6e 61 6c 20 76 69 65 77 65    72 2e 0a 49 66 20 4e 4f 53 45 4c 45 43 54 20 69  | t.external.viewer..If.NOSELECT.i | 
| eec0 |  73 20 6e 6f 6e 2d 6e 69 6c 20 76 69 73 69 74 20    46 49 4c 45 2c 20 62 75 74 20 64 6f 20 6e 6f 74  | s.non-nil.visit.FILE,.but.do.not | 
| eee0 |  20 6d 61 6b 65 20 69 74 20 63 75 72 72 65 6e 74    2e 0a 49 66 20 4e 4f 43 4f 4e 46 49 52 4d 20 69  | .make.it.current..If.NOCONFIRM.i | 
| ef00 |  73 20 6e 6f 6e 2d 6e 69 6c 20 64 6f 6e 27 74 20    61 73 6b 20 66 6f 72 20 63 6f 6e 66 69 72 6d 61  | s.non-nil.don't.ask.for.confirma | 
| ef20 |  74 69 6f 6e 20 77 68 65 6e 20 72 65 76 65 72 74    69 6e 67 20 62 75 66 66 65 72 0a 66 72 6f 6d 20  | tion.when.reverting.buffer.from. | 
| ef40 |  66 69 6c 65 2e 22 0a 20 20 28 69 6e 74 65 72 61    63 74 69 76 65 20 28 64 6a 76 75 2d 72 65 61 64  | file."...(interactive.(djvu-read | 
| ef60 |  2d 66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20 20 28    75 6e 6c 65 73 73 20 70 61 67 65 20 28 73 65 74  | -file-name))...(unless.page.(set | 
| ef80 |  71 20 70 61 67 65 20 31 29 29 0a 20 20 28 73 65    74 71 20 66 69 6c 65 20 28 65 78 70 61 6e 64 2d  | q.page.1))...(setq.file.(expand- | 
| efa0 |  66 69 6c 65 2d 6e 61 6d 65 20 66 69 6c 65 29 29    0a 20 20 3b 3b 20 44 6a 76 75 20 6d 6f 64 65 20  | file-name.file))...;;.Djvu.mode. | 
| efc0 |  6e 65 65 64 73 20 61 20 6c 6f 63 61 6c 20 66 69    6c 65 2e 20 20 49 66 20 46 49 4c 45 20 69 73 20  | needs.a.local.file...If.FILE.is. | 
| efe0 |  6c 6f 63 61 74 65 64 20 6f 6e 20 61 20 72 65 6d    6f 74 65 20 73 79 73 74 65 6d 2c 0a 20 20 3b 3b  | located.on.a.remote.system,...;; | 
| f000 |  20 79 6f 75 20 63 61 6e 20 75 73 65 20 73 6f 6d    65 74 68 69 6e 67 20 6c 69 6b 65 20 60 66 69 6c  | .you.can.use.something.like.`fil | 
| f020 |  65 2d 6c 6f 63 61 6c 2d 63 6f 70 79 27 20 74 6f    20 65 64 69 74 20 46 49 4c 45 2e 0a 20 20 28 69  | e-local-copy'.to.edit.FILE....(i | 
| f040 |  66 20 28 66 69 6c 65 2d 72 65 6d 6f 74 65 2d 70    20 66 69 6c 65 29 0a 20 20 20 20 20 20 28 75 73  | f.(file-remote-p.file).......(us | 
| f060 |  65 72 2d 65 72 72 6f 72 20 22 43 61 6e 6e 6f 74    20 68 61 6e 64 6c 65 20 72 65 6d 6f 74 65 20 44  | er-error."Cannot.handle.remote.D | 
| f080 |  6a 76 75 20 66 69 6c 65 20 60 25 73 27 22 20 66    69 6c 65 29 29 0a 20 20 28 75 6e 6c 65 73 73 20  | jvu.file.`%s'".file))...(unless. | 
| f0a0 |  28 61 6e 64 20 28 66 69 6c 65 2d 72 65 67 75 6c    61 72 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20  | (and.(file-regular-p.file)...... | 
| f0c0 |  20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 2d    72 65 61 64 61 62 6c 65 2d 70 20 66 69 6c 65 29  | ..........(file-readable-p.file) | 
| f0e0 |  29 0a 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f    72 20 22 43 61 6e 6e 6f 74 20 6f 70 65 6e 20 44  | ).....(user-error."Cannot.open.D | 
| f100 |  6a 76 75 20 66 69 6c 65 20 60 25 73 27 22 20 66    69 6c 65 29 29 0a 20 20 28 77 69 74 68 2d 74 65  | jvu.file.`%s'".file))...(with-te | 
| f120 |  6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 28 69    6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65  | mp-buffer.....(insert-file-conte | 
| f140 |  6e 74 73 2d 6c 69 74 65 72 61 6c 6c 79 20 66 69    6c 65 20 6e 69 6c 20 30 20 34 29 0a 20 20 20 20  | nts-literally.file.nil.0.4)..... | 
| f160 |  28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e    74 2d 6d 69 6e 29 29 0a 20 20 20 20 28 75 6e 6c  | (goto-char.(point-min)).....(unl | 
| f180 |  65 73 73 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20    22 5c 5c 60 41 54 26 54 22 29 20 3b 20 6d 61 67  | ess.(looking-at."\\`AT&T").;.mag | 
| f1a0 |  69 63 20 6e 75 6d 62 65 72 20 66 6f 72 20 44 6a    76 75 20 64 6f 63 75 6d 65 6e 74 73 0a 20 20 20  | ic.number.for.Djvu.documents.... | 
| f1c0 |  20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22    60 25 73 27 20 6e 6f 74 20 61 20 44 6a 76 75 20  | ...(user-error."`%s'.not.a.Djvu. | 
| f1e0 |  64 6f 63 75 6d 65 6e 74 22 20 66 69 6c 65 29 29    29 0a 20 20 28 6c 65 74 2a 20 28 28 69 6e 68 69  | document".file)))...(let*.((inhi | 
| f200 |  62 69 74 2d 71 75 69 74 20 74 29 0a 20 20 20 20    20 20 20 20 20 28 62 75 66 2d 62 61 73 65 6e 61  | bit-quit.t)..........(buf-basena | 
| f220 |  6d 65 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f    6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 29  | me.(file-name-nondirectory.file) | 
| f240 |  29 0a 20 20 20 20 20 20 20 20 20 28 66 69 6c 65    2d 74 72 75 65 6e 61 6d 65 20 28 61 62 62 72 65  | )..........(file-truename.(abbre | 
| f260 |  76 69 61 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 20    28 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65 20 66  | viate-file-name.(file-truename.f | 
| f280 |  69 6c 65 29 29 29 0a 20 20 20 20 20 20 20 20 20    28 66 69 6c 65 2d 6e 75 6d 62 65 72 20 28 6e 74  | ile)))..........(file-number.(nt | 
| f2a0 |  68 63 64 72 20 31 30 20 28 66 69 6c 65 2d 61 74    74 72 69 62 75 74 65 73 20 66 69 6c 65 29 29 29  | hcdr.10.(file-attributes.file))) | 
| f2c0 |  0a 20 20 20 20 20 20 20 20 20 28 64 69 72 20 28    66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74  | ..........(dir.(file-name-direct | 
| f2e0 |  6f 72 79 20 66 69 6c 65 29 29 0a 20 20 20 20 20    20 20 20 20 28 72 65 61 64 2d 6f 6e 6c 79 20 28  | ory.file))..........(read-only.( | 
| f300 |  6e 6f 74 20 28 66 69 6c 65 2d 77 72 69 74 61 62    6c 65 2d 70 20 66 69 6c 65 29 29 29 0a 20 20 20  | not.(file-writable-p.file))).... | 
| f320 |  20 20 20 20 20 20 28 64 6f 63 20 28 69 66 20 28    65 71 75 61 6c 20 62 75 66 66 65 72 2d 66 69 6c  | ......(doc.(if.(equal.buffer-fil | 
| f340 |  65 2d 74 72 75 65 6e 61 6d 65 20 66 69 6c 65 2d    74 72 75 65 6e 61 6d 65 29 0a 20 20 20 20 20 20  | e-truename.file-truename)....... | 
| f360 |  20 20 20 20 20 20 20 20 20 20 20 20 28 63 75 72    72 65 6e 74 2d 62 75 66 66 65 72 29 0a 20 20 20  | ............(current-buffer).... | 
| f380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69    6e 64 2d 62 75 66 66 65 72 2d 76 69 73 69 74 69  | .............(find-buffer-visiti | 
| f3a0 |  6e 67 20 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65    29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 6c  | ng.file-truename)))..........(ol | 
| f3c0 |  64 2d 62 75 66 73 20 28 61 6e 64 20 64 6f 63 20    28 62 75 66 66 65 72 2d 6c 6f 63 61 6c 2d 76 61  | d-bufs.(and.doc.(buffer-local-va | 
| f3e0 |  6c 75 65 20 27 64 6a 76 75 2d 64 6f 63 20 64 6f    63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | lue.'djvu-doc.doc).............. | 
| f400 |  20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63    61 72 20 23 27 62 75 66 66 65 72 2d 6c 69 76 65  | ...........(mapcar.#'buffer-live | 
| f420 |  2d 70 20 28 64 6a 76 75 2d 62 75 66 66 65 72 73    20 64 6f 63 29 29 29 29 0a 20 20 20 20 20 20 20  | -p.(djvu-buffers.doc))))........ | 
| f440 |  20 20 28 64 6a 76 75 2d 69 6e 69 74 20 74 29 29    0a 20 20 20 20 3b 3b 20 53 61 6e 69 74 79 20 63  | ..(djvu-init.t)).....;;.Sanity.c | 
| f460 |  68 65 63 6b 2e 20 20 57 65 20 73 68 6f 75 6c 64    20 6e 65 76 65 72 20 6e 65 65 64 20 74 68 69 73  | heck...We.should.never.need.this | 
| f480 |  2e 0a 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64    20 6f 6c 64 2d 62 75 66 73 20 28 6d 65 6d 71 20  | ......(when.(and.old-bufs.(memq. | 
| f4a0 |  6e 69 6c 20 6f 6c 64 2d 62 75 66 73 29 29 0a 20    20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 4b  | nil.old-bufs)).......(message."K | 
| f4c0 |  69 6c 6c 69 6e 67 20 64 61 6e 67 6c 69 6e 67 20    44 6a 76 75 20 62 75 66 66 65 72 73 2e 2e 2e 22  | illing.dangling.Djvu.buffers..." | 
| f4e0 |  29 0a 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 64 6f 63  | ).......(with-current-buffer.doc | 
| f500 |  0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6b    69 6c 6c 2d 64 6f 63 2d 61 6c 6c 29 29 0a 20 20  | .........(djvu-kill-doc-all))... | 
| f520 |  20 20 20 20 28 73 65 74 71 20 6f 6c 64 2d 62 75    66 73 20 6e 69 6c 29 0a 20 20 20 20 20 20 28 6d  | ....(setq.old-bufs.nil).......(m | 
| f540 |  65 73 73 61 67 65 20 22 4b 69 6c 6c 69 6e 67 20    64 61 6e 67 6c 69 6e 67 20 44 6a 76 75 20 62 75  | essage."Killing.dangling.Djvu.bu | 
| f560 |  66 66 65 72 73 2e 2e 2e 44 6f 6e 65 22 29 0a 20    20 20 20 20 20 28 73 69 74 2d 66 6f 72 20 32 29  | ffers...Done").......(sit-for.2) | 
| f580 |  29 0a 20 20 20 20 3b 3b 20 44 6f 20 6e 6f 74 68    69 6e 67 20 69 66 20 77 65 20 61 72 65 20 61 6c  | ).....;;.Do.nothing.if.we.are.al | 
| f5a0 |  72 65 61 64 79 20 76 69 73 69 74 69 6e 67 20 46    49 4c 45 20 73 75 63 68 20 74 68 61 74 20 61 6c  | ready.visiting.FILE.such.that.al | 
| f5c0 |  6c 20 62 75 66 66 65 72 73 0a 20 20 20 20 3b 3b    20 61 72 65 20 70 72 6f 70 65 72 6c 79 20 64 65  | l.buffers.....;;.are.properly.de | 
| f5e0 |  66 69 6e 65 64 20 61 6e 64 20 46 49 4c 45 27 73    20 6d 6f 64 74 69 6d 65 20 6d 61 74 63 68 65 73  | fined.and.FILE's.modtime.matches | 
| f600 |  20 77 68 61 74 20 77 65 20 65 78 70 65 63 74 2e    0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e  | .what.we.expect......(unless.(an | 
| f620 |  64 20 6f 6c 64 2d 62 75 66 73 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20  | d.old-bufs..................(or. | 
| f640 |  28 61 6e 64 20 28 65 71 75 61 6c 20 66 69 6c 65    2d 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20  | (and.(equal.file-number......... | 
| f660 |  20 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 | 
| f680 |  2d 6c 6f 63 61 6c 2d 76 61 6c 75 65 20 27 62 75    66 66 65 72 2d 66 69 6c 65 2d 6e 75 6d 62 65 72  | -local-value.'buffer-file-number | 
| f6a0 |  20 64 6f 63 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  | .doc)).......................... | 
| f6c0 |  20 28 76 65 72 69 66 79 2d 76 69 73 69 74 65 64    2d 66 69 6c 65 2d 6d 6f 64 74 69 6d 65 20 64 6f  | .(verify-visited-file-modtime.do | 
| f6e0 |  63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 61  | c))......................;;.If.a | 
| f700 |  20 66 69 6c 65 20 6f 6e 20 64 69 73 6b 20 61 6e    64 20 61 20 44 6a 76 75 20 73 65 73 73 69 6f 6e  | .file.on.disk.and.a.Djvu.session | 
| f720 |  20 61 72 65 20 6f 75 74 20 6f 66 20 73 79 6e 63    2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .are.out.of.sync,............... | 
| f740 |  20 20 20 20 20 20 20 3b 3b 20 77 65 20 63 61 6e    20 6f 6e 6c 79 20 63 6f 6e 74 69 6e 75 65 20 69  | .......;;.we.can.only.continue.i | 
| f760 |  6e 20 68 61 69 72 79 2c 20 6c 69 6d 69 74 65 64    20 77 61 79 73 20 62 65 63 61 75 73 65 0a 20 20  | n.hairy,.limited.ways.because... | 
| f780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 3b 3b 20 45 6d 61 63 73 20 64 6f 65 73  | ...................;;.Emacs.does | 
| f7a0 |  20 6e 6f 74 20 63 6f 70 79 20 74 68 65 20 63 6f    6e 74 65 6e 74 73 20 6f 66 20 46 49 4c 45 20 69  | .not.copy.the.contents.of.FILE.i | 
| f7c0 |  6e 74 6f 20 61 20 62 75 66 66 65 72 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nto.a.buffer.................... | 
| f7e0 |  20 20 20 3b 3b 20 49 6e 73 74 65 61 64 2c 20 77    65 20 65 6e 74 69 72 65 6c 79 20 72 65 6c 79 20  | ...;;.Instead,.we.entirely.rely. | 
| f800 |  6f 6e 20 64 6a 76 75 73 65 64 2e 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | on.djvused...................... | 
| f820 |  20 28 6e 6f 74 20 28 6f 72 20 6e 6f 63 6f 6e 66    69 72 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(not.(or.noconfirm............. | 
| f840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 79 65 73 2d 6f 72 2d 6e 6f 2d 70 0a 20  | ..................(yes-or-no-p.. | 
| f860 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66  | ..............................(f | 
| f880 |  6f 72 6d 61 74 20 22 52 65 76 65 72 74 20 62 75    66 66 65 72 20 66 72 6f 6d 20 66 69 6c 65 20 25  | ormat."Revert.buffer.from.file.% | 
| f8a0 |  73 3f 20 22 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | s?."............................ | 
| f8c0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76    75 2d 72 65 66 20 66 69 6c 65 20 64 6f 63 29 29  | ............(djvu-ref.file.doc)) | 
| f8e0 |  29 29 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c    65 73 73 20 6f 6c 64 2d 62 75 66 73 0a 20 20 20  | ))))).......(unless.old-bufs.... | 
| f900 |  20 20 20 20 20 28 63 6c 2d 66 6c 65 74 20 28 28    66 75 6e 20 28 6e 29 0a 20 20 20 20 20 20 20 20  | .....(cl-flet.((fun.(n)......... | 
| f920 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 49 6e 73 74 65 61 64 20 6f 66 20 60 67 65  | ...............;;.Instead.of.`ge | 
| f940 |  6e 65 72 61 74 65 2d 6e 65 77 2d 62 75 66 66 65    72 27 2c 20 77 65 20 74 61 6b 65 20 61 20 64 65  | nerate-new-buffer',.we.take.a.de | 
| f960 |  74 6f 75 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 3b 3b 20 76  | tour........................;;.v | 
| f980 |  69 61 20 60 63 72 65 61 74 65 2d 66 69 6c 65 2d    62 75 66 66 65 72 27 20 73 6f 20 74 68 61 74 20  | ia.`create-file-buffer'.so.that. | 
| f9a0 |  75 6e 69 71 75 69 66 79 20 63 61 6e 20 64 6f 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | uniquify.can.do................. | 
| f9c0 |  20 20 20 20 20 20 20 3b 3b 20 69 74 73 20 6a 6f    62 2c 20 74 6f 6f 2e 20 20 49 74 20 64 6f 65 73  | .......;;.its.job,.too...It.does | 
| f9e0 |  20 6e 6f 74 20 6d 61 74 74 65 72 20 74 68 61 74    20 74 68 65 20 61 72 67 20 6f 66 0a 20 20 20 20  | .not.matter.that.the.arg.of..... | 
| fa00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 3b 3b 20 60 63 72 65 61 74 65 2d 66 69  | ...................;;.`create-fi | 
| fa20 |  6c 65 2d 62 75 66 66 65 72 27 20 64 6f 65 73 20    6e 6f 74 20 6d 61 74 63 68 20 60 62 75 66 66 65  | le-buffer'.does.not.match.`buffe | 
| fa40 |  72 2d 66 69 6c 65 2d 6e 61 6d 65 27 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r-file-name'.................... | 
| fa60 |  20 20 20 20 3b 3b 20 62 65 63 61 75 73 65 20 60    75 6e 69 71 75 69 66 79 2d 62 75 66 66 65 72 2d  | ....;;.because.`uniquify-buffer- | 
| fa80 |  66 69 6c 65 2d 6e 61 6d 65 27 20 6f 6e 6c 79 20    63 61 72 65 73 0a 20 20 20 20 20 20 20 20 20 20  | file-name'.only.cares........... | 
| faa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    61 62 6f 75 74 20 44 49 52 2e 0a 20 20 20 20 20  | .............;;.about.DIR....... | 
| fac0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 63 72 65 61 74 65 2d 66 69 6c 65 2d 62  | ..................(create-file-b | 
| fae0 |  75 66 66 65 72 20 3b 20 6e 65 65 64 65 64 20 62    79 20 75 6e 69 71 75 69 66 79 0a 20 20 20 20 20  | uffer.;.needed.by.uniquify...... | 
| fb00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d  | ...................(expand-file- | 
| fb20 |  6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63  | name..........................(c | 
| fb40 |  6f 6e 63 61 74 20 62 75 66 2d 62 61 73 65 6e 61    6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | oncat.buf-basename.............. | 
| fb60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 74 68 20 6e 20 64 6a 76 75 2d  | ....................(nth.n.djvu- | 
| fb80 |  62 75 66 66 65 72 2d 6e 61 6d 65 2d 65 78 74 65    6e 73 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 20  | buffer-name-extensions))........ | 
| fba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 64 69 72 29 29 29 29 0a 20 20 20 20 20 20  | ..................dir))))....... | 
| fbc0 |  20 20 20 20 28 69 66 20 64 6f 63 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 69  | ....(if.doc...............;;.Thi | 
| fbe0 |  73 20 61 70 70 6c 69 65 73 20 69 66 20 60 66 69    6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74  | s.applies.if.`find-file-noselect | 
| fc00 |  27 20 63 72 65 61 74 65 64 20 4f 4c 44 2d 42 55    46 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | '.created.OLD-BUF............... | 
| fc20 |  3b 3b 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 76    69 73 69 74 20 46 49 4c 45 2e 20 20 48 65 6e 63  | ;;.in.order.to.visit.FILE...Henc | 
| fc40 |  65 20 72 65 63 79 63 6c 65 20 4f 4c 44 2d 42 55    46 20 61 73 20 52 65 61 64 0a 20 20 20 20 20 20  | e.recycle.OLD-BUF.as.Read....... | 
| fc60 |  20 20 20 20 20 20 20 20 3b 3b 20 62 75 66 66 65    72 2e 20 20 54 68 69 73 20 61 70 70 6c 69 65 73  | ........;;.buffer...This.applies | 
| fc80 |  20 61 6c 73 6f 20 69 66 20 77 65 20 73 77 69 74    63 68 20 66 72 6f 6d 20 73 6f 6d 65 20 6f 74 68  | .also.if.we.switch.from.some.oth | 
| fca0 |  65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 6d 6f 64 65 20 74 6f 20 44 6a 76 69  | er...............;;.mode.to.Djvi | 
| fcc0 |  65 77 20 6d 6f 64 65 2e 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72  | ew.mode................(with-cur | 
| fce0 |  72 65 6e 74 2d 62 75 66 66 65 72 20 64 6f 63 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rent-buffer.doc................. | 
| fd00 |  28 6c 65 74 20 28 28 69 6e 68 69 62 69 74 2d 72    65 61 64 2d 6f 6e 6c 79 20 74 29 0a 20 20 20 20  | (let.((inhibit-read-only.t)..... | 
| fd20 |  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 75 6e 64 6f 2d 6c  | ..................(buffer-undo-l | 
| fd40 |  69 73 74 20 74 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 65 72 61 73 65  | ist.t))...................(erase | 
| fd60 |  2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | -buffer)).................(setq. | 
| fd80 |  62 75 66 66 65 72 2d 66 69 6c 65 2d 63 6f 64 69    6e 67 2d 73 79 73 74 65 6d 20 27 70 72 65 66 65  | buffer-file-coding-system.'prefe | 
| fda0 |  72 2d 75 74 66 2d 38 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 60 72 65 6e  | r-utf-8).................;;.`ren | 
| fdc0 |  61 6d 65 2d 62 75 66 66 65 72 27 20 6f 62 65 79    73 20 75 6e 69 71 75 69 66 79 2e 0a 20 20 20 20  | ame-buffer'.obeys.uniquify...... | 
| fde0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6e    61 6d 65 2d 62 75 66 66 65 72 20 28 63 6f 6e 63  | ............(rename-buffer.(conc | 
| fe00 |  61 74 20 62 75 66 2d 62 61 73 65 6e 61 6d 65 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | at.buf-basename................. | 
| fe20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6e 74 68 20 30 20 64 6a  | .......................(nth.0.dj | 
| fe40 |  76 75 2d 62 75 66 66 65 72 2d 6e 61 6d 65 2d 65    78 74 65 6e 73 69 6f 6e 73 29 29 0a 20 20 20 20  | vu-buffer-name-extensions))..... | 
| fe60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 74 29 29 0a 20  | ...........................t)).. | 
| fe80 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65    20 6e 65 65 64 20 74 68 69 73 20 77 68 65 6e 20  | ...........;;.We.need.this.when. | 
| fea0 |  6d 69 6d 69 63 6b 69 6e 67 20 60 66 69 6e 64 2d    66 69 6c 65 27 0a 20 20 20 20 20 20 20 20 20 20  | mimicking.`find-file'........... | 
| fec0 |  20 20 3b 3b 20 73 6f 20 74 68 61 74 20 46 49 4c    45 20 64 6f 65 73 20 6e 6f 74 20 79 65 74 20 68  | ..;;.so.that.FILE.does.not.yet.h | 
| fee0 |  61 76 65 20 61 20 62 75 66 66 65 72 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | ave.a.buffer..............(setq. | 
| ff00 |  64 6f 63 20 28 66 75 6e 20 30 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 73 65  | doc.(fun.0)))...........(djvu-se | 
| ff20 |  74 20 72 65 61 64 2d 62 75 66 20 64 6f 63 20 64    6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 28 64  | t.read-buf.doc.doc)...........(d | 
| ff40 |  6a 76 75 2d 73 65 74 20 74 65 78 74 2d 62 75 66    20 28 66 75 6e 20 31 29 20 64 6f 63 29 0a 20 20  | jvu-set.text-buf.(fun.1).doc)... | 
| ff60 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 73 65    74 20 61 6e 6e 6f 74 2d 62 75 66 20 28 66 75 6e  | ........(djvu-set.annot-buf.(fun | 
| ff80 |  20 32 29 20 64 6f 63 29 0a 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 73 65 74 20 73 68 61  | .2).doc)...........(djvu-set.sha | 
| ffa0 |  72 65 64 2d 62 75 66 20 28 66 75 6e 20 33 29 20    64 6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 28  | red-buf.(fun.3).doc)...........( | 
| ffc0 |  64 6a 76 75 2d 73 65 74 20 62 6f 6f 6b 6d 61 72    6b 73 2d 62 75 66 20 28 66 75 6e 20 34 29 20 64  | djvu-set.bookmarks-buf.(fun.4).d | 
| ffe0 |  6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 28 64    6a 76 75 2d 73 65 74 20 6f 75 74 6c 69 6e 65 2d  | oc)...........(djvu-set.outline- | 
| 10000 |  62 75 66 20 28 66 75 6e 20 35 29 20 64 6f 63 29    29 29 0a 20 20 20 20 20 20 3b 3b 20 4f 66 20 63  | buf.(fun.5).doc))).......;;.Of.c | 
| 10020 |  6f 75 72 73 65 2c 20 77 65 20 68 61 76 65 0a 20    20 20 20 20 20 3b 3b 20 60 64 6a 76 75 2d 64 6f  | ourse,.we.have.......;;.`djvu-do | 
| 10040 |  63 2d 72 65 61 64 2d 62 75 66 27 20 3d 20 60 64    6a 76 75 2d 64 6f 63 27 0a 20 20 20 20 20 20 3b  | c-read-buf'.=.`djvu-doc'.......; | 
| 10060 |  3b 20 60 64 6a 76 75 2d 64 6f 63 2d 66 69 6c 65    27 20 3d 20 60 62 75 66 66 65 72 2d 66 69 6c 65  | ;.`djvu-doc-file'.=.`buffer-file | 
| 10080 |  2d 6e 61 6d 65 27 2e 20 20 42 6f 74 68 65 72 3f    0a 20 20 20 20 20 20 3b 3b 20 49 74 20 73 65 65  | -name'...Bother?.......;;.It.see | 
| 100a0 |  6d 73 20 45 6d 61 63 73 20 64 6f 65 73 20 6e 6f    74 20 6c 69 6b 65 20 61 6c 69 61 73 65 73 20 66  | ms.Emacs.does.not.like.aliases.f | 
| 100c0 |  6f 72 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20    76 61 72 69 61 62 6c 65 73 2e 0a 20 20 20 20 20  | or.buffer-local.variables....... | 
| 100e0 |  20 28 64 6a 76 75 2d 73 65 74 20 66 69 6c 65 20    66 69 6c 65 20 64 6f 63 29 0a 20 20 20 20 20 20  | .(djvu-set.file.file.doc)....... | 
| 10100 |  3b 3b 20 57 65 20 63 6f 75 6c 64 20 73 65 74 20    74 68 65 20 72 65 73 6f 6c 76 65 2d 75 72 6c 20  | ;;.We.could.set.the.resolve-url. | 
| 10120 |  66 6c 61 67 20 68 65 75 72 69 73 74 69 63 61 6c    6c 79 2c 20 69 66 20 74 68 65 20 44 6a 76 75 20  | flag.heuristically,.if.the.Djvu. | 
| 10140 |  66 69 6c 65 0a 20 20 20 20 20 20 3b 3b 20 68 61    70 70 65 6e 73 20 74 6f 20 68 61 76 65 20 62 6f  | file.......;;.happens.to.have.bo | 
| 10160 |  6f 6b 6d 61 72 6b 73 20 6f 72 20 69 6e 74 65 72    6e 61 6c 20 75 72 6c 73 20 6f 6e 20 74 68 65 20  | okmarks.or.internal.urls.on.the. | 
| 10180 |  63 75 72 72 65 6e 74 20 70 61 67 65 2e 0a 20 20    20 20 20 20 3b 3b 20 28 64 6a 76 75 2d 73 65 74  | current.page........;;.(djvu-set | 
| 101a0 |  20 72 65 73 6f 6c 76 65 2d 75 72 6c 20 6e 69 6c    20 64 6f 63 29 0a 0a 20 20 20 20 20 20 3b 3b 20  | .resolve-url.nil.doc)........;;. | 
| 101c0 |  28 52 65 2d 29 49 6e 69 74 69 61 6c 69 7a 65 20    61 6c 6c 20 62 75 66 66 65 72 73 2e 0a 20 20 20  | (Re-)Initialize.all.buffers..... | 
| 101e0 |  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 64 6a 76 75 2d 72 65  | ...(with-current-buffer.(djvu-re | 
| 10200 |  66 20 72 65 61 64 2d 62 75 66 20 64 6f 63 29 0a    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65  | f.read-buf.doc).........(djvu-re | 
| 10220 |  61 64 2d 6d 6f 64 65 29 29 0a 20 20 20 20 20 20    28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75  | ad-mode)).......(with-current-bu | 
| 10240 |  66 66 65 72 20 28 64 6a 76 75 2d 72 65 66 20 6f    75 74 6c 69 6e 65 2d 62 75 66 20 64 6f 63 29 0a  | ffer.(djvu-ref.outline-buf.doc). | 
| 10260 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6f 75    74 6c 69 6e 65 2d 6d 6f 64 65 29 29 0a 20 20 20  | ........(djvu-outline-mode)).... | 
| 10280 |  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 64 6a 76 75 2d 72 65  | ...(with-current-buffer.(djvu-re | 
| 102a0 |  66 20 74 65 78 74 2d 62 75 66 20 64 6f 63 29 0a    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 73 63  | f.text-buf.doc).........(djvu-sc | 
| 102c0 |  72 69 70 74 2d 6d 6f 64 65 29 0a 20 20 20 20 20    20 20 20 28 73 65 74 71 20 64 6a 76 75 2d 62 75  | ript-mode).........(setq.djvu-bu | 
| 102e0 |  66 66 65 72 20 27 74 65 78 74 29 29 0a 20 20 20    20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74  | ffer.'text)).......(with-current | 
| 10300 |  2d 62 75 66 66 65 72 20 28 64 6a 76 75 2d 72 65    66 20 61 6e 6e 6f 74 2d 62 75 66 20 64 6f 63 29  | -buffer.(djvu-ref.annot-buf.doc) | 
| 10320 |  0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 73    63 72 69 70 74 2d 6d 6f 64 65 29 0a 20 20 20 20  | .........(djvu-script-mode)..... | 
| 10340 |  20 20 20 20 28 73 65 74 71 20 64 6a 76 75 2d 62    75 66 66 65 72 20 27 61 6e 6e 6f 74 0a 20 20 20  | ....(setq.djvu-buffer.'annot.... | 
| 10360 |  20 20 20 20 20 20 20 20 20 20 20 68 65 61 64 65    72 2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 20 27 28  | ...........header-line-format.'( | 
| 10380 |  3a 65 76 61 6c 20 28 64 6a 76 75 2d 68 65 61 64    65 72 2d 6c 69 6e 65 20 22 70 61 67 65 20 61 6e  | :eval.(djvu-header-line."page.an | 
| 103a0 |  6e 6f 74 61 74 69 6f 6e 73 22 29 29 29 29 0a 20    20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65  | notations")))).......(with-curre | 
| 103c0 |  6e 74 2d 62 75 66 66 65 72 20 28 64 6a 76 75 2d    72 65 66 20 73 68 61 72 65 64 2d 62 75 66 20 64  | nt-buffer.(djvu-ref.shared-buf.d | 
| 103e0 |  6f 63 29 0a 20 20 20 20 20 20 20 20 28 64 6a 76    75 2d 73 63 72 69 70 74 2d 6d 6f 64 65 29 0a 20  | oc).........(djvu-script-mode).. | 
| 10400 |  20 20 20 20 20 20 20 28 73 65 74 71 20 64 6a 76    75 2d 62 75 66 66 65 72 20 27 73 68 61 72 65 64  | .......(setq.djvu-buffer.'shared | 
| 10420 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68    65 61 64 65 72 2d 6c 69 6e 65 2d 66 6f 72 6d 61  | ...............header-line-forma | 
| 10440 |  74 20 27 28 3a 65 76 61 6c 20 28 64 6a 76 75 2d    68 65 61 64 65 72 2d 6c 69 6e 65 20 22 73 68 61  | t.'(:eval.(djvu-header-line."sha | 
| 10460 |  72 65 64 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 22    29 29 29 29 0a 20 20 20 20 20 20 28 77 69 74 68  | red.annotations")))).......(with | 
| 10480 |  2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20    28 64 6a 76 75 2d 72 65 66 20 62 6f 6f 6b 6d 61  | -current-buffer.(djvu-ref.bookma | 
| 104a0 |  72 6b 73 2d 62 75 66 20 64 6f 63 29 0a 20 20 20    20 20 20 20 20 28 64 6a 76 75 2d 73 63 72 69 70  | rks-buf.doc).........(djvu-scrip | 
| 104c0 |  74 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20    28 73 65 74 71 20 64 6a 76 75 2d 62 75 66 66 65  | t-mode).........(setq.djvu-buffe | 
| 104e0 |  72 20 27 62 6f 6f 6b 6d 61 72 6b 73 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 68 65 61 64 65  | r.'bookmarks...............heade | 
| 10500 |  72 2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 20 27 28    3a 65 76 61 6c 20 28 64 6a 76 75 2d 68 65 61 64  | r-line-format.'(:eval.(djvu-head | 
| 10520 |  65 72 2d 6c 69 6e 65 20 22 62 6f 6f 6b 6d 61 72    6b 73 22 29 29 29 29 0a 20 20 20 20 20 20 28 64  | er-line."bookmarks")))).......(d | 
| 10540 |  6a 76 75 2d 61 6c 6c 2d 62 75 66 66 65 72 73 20    64 6f 63 0a 20 20 20 20 20 20 20 20 3b 3b 20 70  | jvu-all-buffers.doc.........;;.p | 
| 10560 |  65 72 6d 61 6e 65 6e 74 20 62 75 66 66 65 72 2d    6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 0a  | ermanent.buffer-local.variables. | 
| 10580 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 6a    76 75 2d 64 6f 63 20 64 6f 63 20 3b 20 70 72 6f  | ........(setq.djvu-doc.doc.;.pro | 
| 105a0 |  70 61 67 61 74 65 20 44 4f 43 20 74 6f 20 61 6c    6c 20 62 75 66 66 65 72 73 0a 20 20 20 20 20 20  | pagate.DOC.to.all.buffers....... | 
| 105c0 |  20 20 20 20 20 20 20 20 62 75 66 66 65 72 2d 66    69 6c 65 2d 6e 61 6d 65 20 66 69 6c 65 0a 20 20  | ........buffer-file-name.file... | 
| 105e0 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41    20 6e 6f 6e 2d 6e 69 6c 20 76 61 6c 75 65 20 6f  | ............;;.A.non-nil.value.o | 
| 10600 |  66 20 60 62 75 66 66 65 72 2d 66 69 6c 65 2d 74    72 75 65 6e 61 6d 65 27 20 65 6e 61 62 6c 65 73  | f.`buffer-file-truename'.enables | 
| 10620 |  20 66 69 6c 65 2d 6c 6f 63 6b 69 6e 67 2c 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | .file-locking,...............;;. | 
| 10640 |  73 65 65 20 63 61 6c 6c 20 6f 66 20 60 6c 6f 63    6b 5f 66 69 6c 65 27 20 69 6e 20 60 70 72 65 70  | see.call.of.`lock_file'.in.`prep | 
| 10660 |  61 72 65 5f 74 6f 5f 6d 6f 64 69 66 79 5f 62 75    66 66 65 72 5f 31 27 0a 20 20 20 20 20 20 20 20  | are_to_modify_buffer_1'......... | 
| 10680 |  20 20 20 20 20 20 62 75 66 66 65 72 2d 66 69 6c    65 2d 74 72 75 65 6e 61 6d 65 20 66 69 6c 65 2d  | ......buffer-file-truename.file- | 
| 106a0 |  74 72 75 65 6e 61 6d 65 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 62 75 66 66 65 72 2d 66 69  | truename...............buffer-fi | 
| 106c0 |  6c 65 2d 6e 75 6d 62 65 72 20 66 69 6c 65 2d 6e    75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20  | le-number.file-number........... | 
| 106e0 |  20 20 20 20 64 65 66 61 75 6c 74 2d 64 69 72 65    63 74 6f 72 79 20 64 69 72 29 0a 20 20 20 20 20  | ....default-directory.dir)...... | 
| 10700 |  20 20 20 3b 3b 20 6f 74 68 65 72 20 62 75 66 66    65 72 2d 6c 6f 63 61 6c 20 73 74 75 66 66 0a 20  | ...;;.other.buffer-local.stuff.. | 
| 10720 |  20 20 20 20 20 20 20 28 73 65 74 71 20 62 75 66    66 65 72 2d 66 69 6c 65 2d 72 65 61 64 2d 6f 6e  | .......(setq.buffer-file-read-on | 
| 10740 |  6c 79 20 72 65 61 64 2d 6f 6e 6c 79 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65  | ly.read-only...............;;.We | 
| 10760 |  20 61 73 73 75 6d 65 20 74 68 61 74 20 61 6c 6c    20 62 75 66 66 65 72 73 20 66 6f 72 20 61 20 44  | .assume.that.all.buffers.for.a.D | 
| 10780 |  6a 76 75 20 64 6f 63 75 6d 65 6e 74 20 68 61 76    65 20 74 68 65 20 73 61 6d 65 0a 20 20 20 20 20  | jvu.document.have.the.same...... | 
| 107a0 |  20 20 20 20 20 20 20 20 20 3b 3b 20 72 65 61 64    2d 6f 6e 6c 79 20 73 74 61 74 75 73 2e 20 20 53  | .........;;.read-only.status...S | 
| 107c0 |  68 6f 75 6c 64 20 77 65 20 61 6c 6c 6f 77 20 64    69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 73 20  | hould.we.allow.different.values. | 
| 107e0 |  66 6f 72 20 74 68 65 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 3b 3b 20 62 75 66 66 65 72 73  | for.the...............;;.buffers | 
| 10800 |  20 6f 66 20 6f 6e 65 20 64 6f 63 75 6d 65 6e 74    3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .of.one.document?............... | 
| 10820 |  3b 3b 20 4f 72 20 64 6f 20 77 65 20 6e 65 65 64    20 61 20 60 64 6a 76 75 2d 72 65 61 64 2d 6f 6e  | ;;.Or.do.we.need.a.`djvu-read-on | 
| 10840 |  6c 79 2d 6d 6f 64 65 27 3f 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 62 75 66 66 65 72 2d 72  | ly-mode'?...............buffer-r | 
| 10860 |  65 61 64 2d 6f 6e 6c 79 20 72 65 61 64 2d 6f 6e    6c 79 29 0a 20 20 20 20 20 20 20 20 28 73 65 74  | ead-only.read-only).........(set | 
| 10880 |  71 2d 6c 6f 63 61 6c 20 77 72 69 74 65 2d 66 69    6c 65 2d 66 75 6e 63 74 69 6f 6e 73 20 23 27 64  | q-local.write-file-functions.#'d | 
| 108a0 |  6a 76 75 2d 73 61 76 65 29 0a 20 20 20 20 20 20    20 20 28 73 65 74 2d 76 69 73 69 74 65 64 2d 66  | jvu-save).........(set-visited-f | 
| 108c0 |  69 6c 65 2d 6d 6f 64 74 69 6d 65 29 0a 20 20 20    20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27  | ile-modtime).........(add-hook.' | 
| 108e0 |  70 6f 73 74 2d 63 6f 6d 6d 61 6e 64 2d 68 6f 6f    6b 20 23 27 64 6a 76 75 2d 6d 6f 64 69 66 69 65  | post-command-hook.#'djvu-modifie | 
| 10900 |  64 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20    20 28 61 64 64 2d 68 6f 6f 6b 20 27 6b 69 6c 6c  | d.nil.t).........(add-hook.'kill | 
| 10920 |  2d 62 75 66 66 65 72 2d 68 6f 6f 6b 20 23 27 64    6a 76 75 2d 6b 69 6c 6c 2d 64 6f 63 2d 61 6c 6c  | -buffer-hook.#'djvu-kill-doc-all | 
| 10940 |  20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20    28 61 64 64 2d 68 6f 6f 6b 20 27 63 68 61 6e 67  | .nil.t).........(add-hook.'chang | 
| 10960 |  65 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 68 6f 6f    6b 20 23 27 64 6a 76 75 2d 63 68 61 6e 67 65 2d  | e-major-mode-hook.#'djvu-change- | 
| 10980 |  6d 61 6a 6f 72 2d 6d 6f 64 65 20 6e 69 6c 20 74    29 29 0a 0a 20 20 20 20 20 20 28 77 69 74 68 2d  | major-mode.nil.t))........(with- | 
| 109a0 |  74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20    20 20 20 20 28 64 6a 76 75 2d 64 6a 76 75 73 65  | temp-buffer.........(djvu-djvuse | 
| 109c0 |  64 20 64 6f 63 20 74 20 22 2d 65 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d.doc.t."-e".................... | 
| 109e0 |  20 20 20 22 63 72 65 61 74 65 2d 73 68 61 72 65    64 2d 61 6e 74 3b 20 70 72 69 6e 74 2d 61 6e 74  | ..."create-shared-ant;.print-ant | 
| 10a00 |  3b 20 6e 3b 20 6c 73 3b 20 70 72 69 6e 74 2d 6f    75 74 6c 69 6e 65 3b 22 29 0a 20 20 20 20 20 20  | ;.n;.ls;.print-outline;")....... | 
| 10a20 |  20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f    69 6e 74 2d 6d 69 6e 29 29 0a 0a 20 20 20 20 20  | ..(goto-char.(point-min))....... | 
| 10a40 |  20 20 20 3b 3b 20 73 68 61 72 65 64 20 61 6e 6e    6f 74 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20  | ...;;.shared.annotations........ | 
| 10a60 |  20 28 73 61 76 65 2d 72 65 73 74 72 69 63 74 69    6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 6e 61  | .(save-restriction...........(na | 
| 10a80 |  72 72 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 0a 20    20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74  | rrow-to-region............(point | 
| 10aa0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    54 68 65 72 65 20 69 73 20 6e 6f 20 64 65 6c 69  | )............;;.There.is.no.deli | 
| 10ac0 |  6d 69 74 65 72 20 69 6e 20 62 65 74 77 65 65 6e    20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 69  | miter.in.between.the.output.stri | 
| 10ae0 |  6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 6f 66 20 6d 75 6c 74 69 70 6c 65 20 64 6a  | ngs............;;.of.multiple.dj | 
| 10b00 |  76 75 73 65 64 20 63 6f 6d 6d 61 6e 64 73 20 69    6e 64 69 63 61 74 69 6e 67 20 73 6f 6d 65 74 68  | vused.commands.indicating.someth | 
| 10b20 |  69 6e 67 20 6c 69 6b 65 0a 20 20 20 20 20 20 20    20 20 20 20 3b 3b 20 74 68 65 20 6c 61 73 74 20  | ing.like............;;.the.last. | 
| 10b40 |  73 68 61 72 65 64 20 61 6e 6e 6f 74 61 74 69 6f    6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b  | shared.annotation.............;; | 
| 10b60 |  20 53 6f 20 77 65 20 73 69 6d 70 6c 79 20 72 65    6c 79 20 6f 6e 20 74 68 65 20 66 61 63 74 20 74  | .So.we.simply.rely.on.the.fact.t | 
| 10b80 |  68 61 74 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20    68 61 76 65 20 61 0a 20 20 20 20 20 20 20 20 20  | hat.annotations.have.a.......... | 
| 10ba0 |  20 20 3b 3b 20 70 61 72 73 61 62 6c 65 20 6c 69    73 70 2d 6c 69 6b 65 20 73 79 6e 74 61 78 20 73  | ..;;.parsable.lisp-like.syntax.s | 
| 10bc0 |  75 72 72 6f 75 6e 64 65 64 20 62 79 20 62 72 61    63 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20  | urrounded.by.braces,............ | 
| 10be0 |  3b 3b 20 77 68 65 72 65 61 73 20 74 68 65 20 6e    65 78 74 20 64 6a 76 75 73 65 64 20 63 6f 6d 6d  | ;;.whereas.the.next.djvused.comm | 
| 10c00 |  61 6e 64 20 69 73 20 60 6e 27 2c 20 74 68 65 20    6f 75 74 70 75 74 0a 20 20 20 20 20 20 20 20 20  | and.is.`n',.the.output.......... | 
| 10c20 |  20 20 3b 3b 20 6f 66 20 77 68 69 63 68 20 69 73    20 61 20 70 6c 61 69 6e 20 6e 75 6d 62 65 72 2e  | ..;;.of.which.is.a.plain.number. | 
| 10c40 |  0a 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76    65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20  | ............(save-excursion..... | 
| 10c60 |  20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20    28 70 72 6f 67 6e 20 28 73 6b 69 70 2d 63 68 61  | .........(while.(progn.(skip-cha | 
| 10c80 |  72 73 2d 66 6f 72 77 61 72 64 20 22 20 5c 74 5c    6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | rs-forward.".\t\n")............. | 
| 10ca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 28 22 29 29  | ...............(looking-at."(")) | 
| 10cc0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 66 6f 72 77 61 72 64 2d 73 65 78 70 29 29 0a  | ................(forward-sexp)). | 
| 10ce0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f    69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20  | .............(point))).......... | 
| 10d00 |  20 28 64 6a 76 75 2d 69 6e 69 74 2d 61 6e 6e 6f    74 20 28 64 6a 76 75 2d 72 65 66 20 73 68 61 72  | .(djvu-init-annot.(djvu-ref.shar | 
| 10d20 |  65 64 2d 62 75 66 20 64 6f 63 29 20 64 6f 63 20    74 29 29 0a 0a 20 20 20 20 20 20 20 20 3b 3b 20  | ed-buf.doc).doc.t))..........;;. | 
| 10d40 |  70 61 67 65 20 6d 61 78 0a 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 73 65 74 20 70 61 67 65 6d  | page.max.........(djvu-set.pagem | 
| 10d60 |  61 78 20 28 72 65 61 64 20 28 63 75 72 72 65 6e    74 2d 62 75 66 66 65 72 29 29 20 64 6f 63 29 0a  | ax.(read.(current-buffer)).doc). | 
| 10d80 |  0a 20 20 20 20 20 20 20 20 3b 3b 20 70 61 67 65    20 69 64 3a 0a 20 20 20 20 20 20 20 20 3b 3b 20  | .........;;.page.id:.........;;. | 
| 10da0 |  54 68 65 20 6f 75 74 70 75 74 20 6c 69 6e 65 73    20 6f 66 20 64 6a 76 75 73 65 64 20 2d 65 20 22  | The.output.lines.of.djvused.-e." | 
| 10dc0 |  6c 73 3b 22 20 63 6f 6e 73 69 73 74 73 20 6f 66    20 73 65 76 65 72 61 6c 20 70 61 72 74 73 0a 20  | ls;".consists.of.several.parts.. | 
| 10de0 |  20 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65    67 65 78 70 20 28 63 6f 6e 63 61 74 20 22 5c 5c  | .......(let.((regexp.(concat."\\ | 
| 10e00 |  28 3f 3a 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 5b    20 5c 74 5d 2b 5c 5c 29 3f 22 20 3b 20 70 61 67  | (?:\\([0-9]+\\)[.\t]+\\)?".;.pag | 
| 10e20 |  65 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e.number........................ | 
| 10e40 |  20 20 20 20 20 20 20 22 5c 5c 28 5b 50 49 41 54    5d 5c 5c 29 5b 20 5c 74 5d 2b 22 20 20 20 20 20  | ......."\\([PIAT]\\)[.\t]+"..... | 
| 10e60 |  20 20 20 20 20 3b 20 66 69 6c 65 20 69 64 65 6e    74 69 66 69 65 72 0a 20 20 20 20 20 20 20 20 20  | .....;.file.identifier.......... | 
| 10e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 22 5c 5c 28 5b 30 2d 39 5d 2b 5c  | ....................."\\([0-9]+\ | 
| 10ea0 |  5c 29 5b 20 5c 74 5d 2b 22 20 20 20 20 20 20 20    20 20 20 3b 20 66 69 6c 65 20 73 69 7a 65 0a 20  | \)[.\t]+"..........;.file.size.. | 
| 10ec0 |  20 20 20 20 20 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  | .............................;;. | 
| 10ee0 |  57 65 20 68 61 76 65 20 61 20 70 72 6f 62 6c 65    6d 20 77 68 65 6e 20 70 61 72 73 69 6e 67 20 74  | We.have.a.problem.when.parsing.t | 
| 10f00 |  68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | he.............................. | 
| 10f20 |  20 3b 3b 20 63 6f 6d 70 6f 6e 65 6e 74 20 66 69    6c 65 20 6e 61 6d 65 20 66 6f 6c 6c 6f 77 65 64  | .;;.component.file.name.followed | 
| 10f40 |  20 62 79 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .by.the.optional................ | 
| 10f60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 70 61 67 65 20 74 69 74 6c 65 3a 20 74 68  | ...............;;.page.title:.th | 
| 10f80 |  65 72 65 20 69 73 20 6e 6f 20 75 6e 61 6d 62 69    67 75 6f 75 73 20 73 65 70 61 72 61 74 6f 72 0a  | ere.is.no.unambiguous.separator. | 
| 10fa0 |  20 20 20 20 20 20 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  | ..............................;; | 
| 10fc0 |  20 69 6e 20 62 65 74 77 65 65 6e 20 74 68 65 20    74 77 6f 2e 20 20 4e 6f 74 65 20 74 68 61 74 20  | .in.between.the.two...Note.that. | 
| 10fe0 |  74 68 65 20 63 6f 6d 70 6f 6e 65 6e 74 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | the.component................... | 
| 11000 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 66    69 6c 65 20 6e 61 6d 65 20 6d 61 79 20 63 6f 6e  | ............;;.file.name.may.con | 
| 11020 |  74 61 69 6e 20 77 68 69 74 65 73 70 61 63 65 20    63 68 61 72 61 63 74 65 72 73 0a 20 20 20 20 20  | tain.whitespace.characters...... | 
| 11040 |  20 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 61 6e 64 20  | .........................;;.and. | 
| 11060 |  69 74 73 20 66 69 6c 65 20 6e 61 6d 65 20 65 78    74 65 6e 73 69 6f 6e 20 69 73 20 6e 6f 74 20 75  | its.file.name.extension.is.not.u | 
| 11080 |  6e 69 71 75 65 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nique........................... | 
| 110a0 |  20 20 20 20 3b 3b 20 28 69 66 20 70 72 65 73 65    6e 74 20 61 74 20 61 6c 6c 29 2e 0a 20 20 20 20  | ....;;.(if.present.at.all)...... | 
| 110c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 5b 5e  | .........................."\\([^ | 
| 110e0 |  3d 5c 6e 5d 2b 5c 5c 29 22 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | =\n]+\\)"....................... | 
| 11100 |  20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 5b 20    5c 74 5d 2b 54 3d 5b 5e 5c 74 5c 6e 5d 2b 5c 5c  | ........"\\(?:[.\t]+T=[^\t\n]+\\ | 
| 11120 |  29 3f 22 20 20 3b 20 74 69 74 6c 65 20 28 6f 70    74 69 6f 6e 61 6c 29 0a 20 20 20 20 20 20 20 20  | )?"..;.title.(optional)......... | 
| 11140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 22 24 22 29 29 20 3b 20 6d 61  | ......................"$")).;.ma | 
| 11160 |  74 63 68 20 61 20 73 69 6e 67 6c 65 20 6c 69 6e    65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tch.a.single.line............... | 
| 11180 |  70 61 67 65 2d 69 64 29 0a 20 20 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 70 72 6f 67 6e  | page-id)...........(while.(progn | 
| 111a0 |  20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f 72    77 61 72 64 20 22 20 5c 74 5c 6e 22 29 0a 20 20  | .(skip-chars-forward.".\t\n")... | 
| 111c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61  | ......................(looking-a | 
| 111e0 |  74 20 72 65 67 65 78 70 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 69 66 20 28 6d 61 74 63  | t.regexp)).............(if.(matc | 
| 11200 |  68 2d 73 74 72 69 6e 67 20 31 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70  | h-string.1).................;;.p | 
| 11220 |  61 67 65 2d 69 64 20 69 73 20 61 6e 20 61 6c 69    73 74 20 77 69 74 68 20 65 6c 65 6d 65 6e 74 73  | age-id.is.an.alist.with.elements | 
| 11240 |  20 28 50 41 47 45 2d 4e 55 4d 20 2e 20 46 49 4c    45 2d 49 44 29 2e 0a 20 20 20 20 20 20 20 20 20  | .(PAGE-NUM...FILE-ID)........... | 
| 11260 |  20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 72 65    6d 61 69 6e 64 65 72 20 6f 66 20 74 68 65 20 63  | .......;;.The.remainder.of.the.c | 
| 11280 |  6f 64 65 20 61 73 73 75 6d 65 73 20 74 68 61 74    20 64 6a 76 75 73 65 64 20 73 65 74 73 20 75 70  | ode.assumes.that.djvused.sets.up | 
| 112a0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 74 68 69 73 20 61 73 73 6f 63 69 61  | .................;;.this.associa | 
| 112c0 |  74 69 6f 6e 20 6c 69 73 74 20 70 72 6f 70 65 72    6c 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | tion.list.properly.............. | 
| 112e0 |  20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20    28 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62  | ....(push.(cons.(djvu-match-numb | 
| 11300 |  65 72 20 31 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  | er.1)........................... | 
| 11320 |  20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20    34 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ..(match-string.4))............. | 
| 11340 |  20 20 20 20 20 20 20 20 20 20 70 61 67 65 2d 69    64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ..........page-id))............. | 
| 11360 |  28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 74 63    68 2d 65 6e 64 20 30 29 29 29 0a 20 20 20 20 20  | (goto-char.(match-end.0)))...... | 
| 11380 |  20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71    20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 6d  | .....(unless.(eq.(djvu-ref.pagem | 
| 113a0 |  61 78 20 64 6f 63 29 20 28 6c 65 6e 67 74 68 20    70 61 67 65 2d 69 64 29 29 0a 20 20 20 20 20 20  | ax.doc).(length.page-id))....... | 
| 113c0 |  20 20 20 20 20 20 28 65 72 72 6f 72 20 22 50 61    67 65 20 69 64 20 6c 69 73 74 20 62 72 6f 6b 65  | ......(error."Page.id.list.broke | 
| 113e0 |  6e 20 25 73 20 2d 20 25 73 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64  | n.%s.-.%s"....................(d | 
| 11400 |  6a 76 75 2d 72 65 66 20 70 61 67 65 6d 61 78 20    64 6f 63 29 20 28 6c 65 6e 67 74 68 20 70 61 67  | jvu-ref.pagemax.doc).(length.pag | 
| 11420 |  65 2d 69 64 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 64 6a 76 75 2d 73 65 74 20 70 61 67 65  | e-id)))...........(djvu-set.page | 
| 11440 |  2d 69 64 20 28 6e 72 65 76 65 72 73 65 20 70 61    67 65 2d 69 64 29 20 64 6f 63 29 29 0a 0a 20 20  | -id.(nreverse.page-id).doc)).... | 
| 11460 |  20 20 20 20 20 20 3b 3b 20 62 6f 6f 6b 6d 61 72    6b 73 0a 20 20 20 20 20 20 20 20 28 73 6b 69 70  | ......;;.bookmarks.........(skip | 
| 11480 |  2d 63 68 61 72 73 2d 66 6f 72 77 61 72 64 20 22    20 5c 74 5c 6e 22 29 0a 20 20 20 20 20 20 20 20  | -chars-forward.".\t\n")......... | 
| 114a0 |  28 77 68 65 6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61    74 20 22 28 62 6f 6f 6b 6d 61 72 6b 73 22 29 0a  | (when.(looking-at."(bookmarks"). | 
| 114c0 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28    28 6f 62 6a 65 63 74 20 28 72 65 61 64 20 28 63  | ..........(let.((object.(read.(c | 
| 114e0 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77  | urrent-buffer)))).............(w | 
| 11500 |  69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 20 28 64 6a 76 75 2d 72 65 66 20 62 6f 6f  | ith-current-buffer.(djvu-ref.boo | 
| 11520 |  6b 6d 61 72 6b 73 2d 62 75 66 20 64 6f 63 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | kmarks-buf.doc)...............(l | 
| 11540 |  65 74 20 28 62 75 66 66 65 72 2d 72 65 61 64 2d    6f 6e 6c 79 29 0a 20 20 20 20 20 20 20 20 20 20  | et.(buffer-read-only)........... | 
| 11560 |  20 20 20 20 20 20 28 65 72 61 73 65 2d 62 75 66    66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ......(erase-buffer)............ | 
| 11580 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 22 28 62    6f 6f 6b 6d 61 72 6b 73 22 29 0a 20 20 20 20 20  | .....(insert."(bookmarks")...... | 
| 115a0 |  20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75    2d 69 6e 73 65 72 74 2d 62 6f 6f 6b 6d 61 72 6b  | ...........(djvu-insert-bookmark | 
| 115c0 |  73 20 28 63 64 72 20 6f 62 6a 65 63 74 29 20 22    20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | s.(cdr.object).".")............. | 
| 115e0 |  20 20 20 20 28 69 6e 73 65 72 74 20 22 29 5c 6e    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....(insert.")\n").............. | 
| 11600 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20  | ...(goto-char.(point-min))...... | 
| 11620 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 2d    62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d  | ...........(set-buffer-modified- | 
| 11640 |  70 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 73 65 74 71 20 62 75 66  | p.nil).................(setq.buf | 
| 11660 |  66 65 72 2d 75 6e 64 6f 2d 6c 69 73 74 20 6e 69    6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | fer-undo-list.nil)))............ | 
| 11680 |  20 28 64 6a 76 75 2d 69 6e 69 74 2d 6f 75 74 6c    69 6e 65 20 28 63 64 72 20 6f 62 6a 65 63 74 29  | .(djvu-init-outline.(cdr.object) | 
| 116a0 |  20 64 6f 63 29 29 29 29 0a 0a 20 20 20 20 20 20    28 64 6a 76 75 2d 69 6e 69 74 2d 70 61 67 65 20  | .doc))))........(djvu-init-page. | 
| 116c0 |  70 61 67 65 20 64 6f 63 29 29 0a 0a 20 20 20 20    28 69 66 20 76 69 65 77 20 28 64 6a 76 75 2d 76  | page.doc))......(if.view.(djvu-v | 
| 116e0 |  69 65 77 20 64 6f 63 29 29 0a 20 20 20 20 28 75    6e 6c 65 73 73 20 6e 6f 73 65 6c 65 63 74 20 28  | iew.doc)).....(unless.noselect.( | 
| 11700 |  73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72    20 28 64 6a 76 75 2d 72 65 66 20 72 65 61 64 2d  | switch-to-buffer.(djvu-ref.read- | 
| 11720 |  62 75 66 20 64 6f 63 29 29 29 0a 20 20 20 20 28    64 6a 76 75 2d 72 65 66 20 72 65 61 64 2d 62 75  | buf.doc))).....(djvu-ref.read-bu | 
| 11740 |  66 20 64 6f 63 29 29 29 0a 0a 28 64 65 66 75 6e    20 64 6a 76 75 2d 72 65 76 65 72 74 2d 62 75 66  | f.doc)))..(defun.djvu-revert-buf | 
| 11760 |  66 65 72 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f    69 67 6e 6f 72 65 2d 61 75 74 6f 20 6e 6f 63 6f  | fer.(&optional._ignore-auto.noco | 
| 11780 |  6e 66 69 72 6d 20 5f 70 72 65 73 65 72 76 65 2d    6d 6f 64 65 73 29 0a 20 20 22 52 65 76 65 72 74  | nfirm._preserve-modes)..."Revert | 
| 117a0 |  20 62 75 66 66 65 72 73 20 66 6f 72 20 74 68 65    20 63 75 72 72 65 6e 74 20 44 6a 76 75 20 64 6f  | .buffers.for.the.current.Djvu.do | 
| 117c0 |  63 75 6d 65 6e 74 2e 0a 4e 6f 74 65 3a 20 44 6a    76 75 20 6d 6f 64 65 20 6e 65 76 65 72 20 76 69  | cument..Note:.Djvu.mode.never.vi | 
| 117e0 |  73 69 74 73 20 74 68 65 20 44 6a 76 75 20 64 6f    63 75 6d 65 6e 74 20 69 6e 20 74 68 65 20 75 73  | sits.the.Djvu.document.in.the.us | 
| 11800 |  75 61 6c 20 45 6d 61 63 73 20 73 65 6e 73 65 20    6f 66 0a 63 6f 70 79 69 6e 67 20 74 68 65 20 63  | ual.Emacs.sense.of.copying.the.c | 
| 11820 |  6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 66    69 6c 65 20 69 6e 74 6f 20 61 20 62 75 66 66 65  | ontents.of.the.file.into.a.buffe | 
| 11840 |  72 20 74 6f 20 6d 61 6e 69 70 75 6c 61 74 65 20    69 74 2e 20 20 49 6e 73 74 65 61 64 2c 0a 64 6a  | r.to.manipulate.it...Instead,.dj | 
| 11860 |  76 75 20 6d 6f 64 65 20 63 6f 6d 70 6c 65 74 65    6c 79 20 72 65 6c 69 65 73 20 6f 6e 20 64 6a 76  | vu.mode.completely.relies.on.djv | 
| 11880 |  75 73 65 64 20 61 6e 64 20 74 68 65 20 66 69 6c    65 20 6f 6e 20 64 69 73 6b 2e 20 20 54 68 65 72  | used.and.the.file.on.disk...Ther | 
| 118a0 |  65 66 6f 72 65 2c 0a 77 65 20 61 72 65 20 69 6e    20 74 72 6f 75 62 6c 65 20 69 66 20 74 68 65 20  | efore,.we.are.in.trouble.if.the. | 
| 118c0 |  66 69 6c 65 20 6f 6e 20 64 69 73 6b 20 68 61 70    70 65 6e 73 20 74 6f 20 62 65 20 6e 6f 74 20 69  | file.on.disk.happens.to.be.not.i | 
| 118e0 |  6e 20 73 79 6e 63 20 61 6e 79 6d 6f 72 65 0a 77    69 74 68 20 77 68 61 74 20 44 6a 76 75 20 6d 6f  | n.sync.anymore.with.what.Djvu.mo | 
| 11900 |  64 65 20 62 65 6c 69 65 76 65 73 20 69 74 20 69    73 2e 20 20 52 65 76 65 72 74 69 6e 67 20 74 68  | de.believes.it.is...Reverting.th | 
| 11920 |  65 20 62 75 66 66 65 72 73 20 66 6f 72 20 74 68    65 20 44 6a 76 75 0a 64 6f 63 75 6d 65 6e 74 20  | e.buffers.for.the.Djvu.document. | 
| 11940 |  69 73 20 75 73 75 61 6c 6c 79 20 74 68 65 20 6f    6e 6c 79 20 77 61 79 20 6f 75 74 2e 22 0a 20 20  | is.usually.the.only.way.out."... | 
| 11960 |  28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20    28 75 6e 6c 65 73 73 20 64 6a 76 75 2d 64 6f 63  | (interactive)...(unless.djvu-doc | 
| 11980 |  20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f    20 64 6a 76 75 2d 64 6f 63 22 29 29 0a 20 20 3b  | .(user-error."No.djvu-doc"))...; | 
| 119a0 |  3b 20 46 6f 72 63 65 20 72 65 76 65 72 73 61 6c    2e 20 20 49 73 20 74 68 65 72 65 20 61 20 62 65  | ;.Force.reversal...Is.there.a.be | 
| 119c0 |  74 74 65 72 20 77 61 79 20 74 6f 20 61 63 68 69    65 76 65 20 74 68 69 73 3f 0a 20 20 3b 3b 20 45  | tter.way.to.achieve.this?...;;.E | 
| 119e0 |  6d 61 63 73 20 77 69 6c 6c 20 61 73 6b 20 61 20    66 65 77 20 71 75 65 73 74 69 6f 6e 73 20 69 66  | macs.will.ask.a.few.questions.if | 
| 11a00 |  20 73 6f 6d 65 20 62 75 66 66 65 72 73 20 61 72    65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 28 77  | .some.buffers.are.modified....(w | 
| 11a20 |  69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 20 64 6a 76 75 2d 64 6f 63 0a 20 20 20 20  | ith-current-buffer.djvu-doc..... | 
| 11a40 |  28 73 65 74 71 20 62 75 66 66 65 72 2d 66 69 6c    65 2d 6e 75 6d 62 65 72 20 6e 69 6c 29 29 0a 20  | (setq.buffer-file-number.nil)).. | 
| 11a60 |  20 28 64 6a 76 75 2d 66 69 6e 64 2d 66 69 6c 65    20 28 64 6a 76 75 2d 72 65 66 20 66 69 6c 65 20  | .(djvu-find-file.(djvu-ref.file. | 
| 11a80 |  64 6a 76 75 2d 64 6f 63 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | djvu-doc)...................(djv | 
| 11aa0 |  75 2d 72 65 66 20 70 61 67 65 20 64 6a 76 75 2d    64 6f 63 29 20 6e 69 6c 20 6e 69 6c 20 6e 6f 63  | u-ref.page.djvu-doc).nil.nil.noc | 
| 11ac0 |  6f 6e 66 69 72 6d 29 29 0a 0a 28 64 65 66 75 6e    20 64 6a 76 75 2d 69 6e 69 74 2d 70 61 67 65 20  | onfirm))..(defun.djvu-init-page. | 
| 11ae0 |  28 26 6f 70 74 69 6f 6e 61 6c 20 70 61 67 65 20    64 6f 63 29 0a 20 20 22 49 6e 69 74 69 61 6c 69  | (&optional.page.doc)..."Initiali | 
| 11b00 |  7a 65 20 50 41 47 45 20 66 6f 72 20 44 6a 76 75    20 44 4f 43 2e 0a 50 41 47 45 20 69 73 20 72 65  | ze.PAGE.for.Djvu.DOC..PAGE.is.re | 
| 11b20 |  2d 69 6e 69 74 69 61 6c 69 7a 65 64 20 69 66 20    77 65 20 61 72 65 20 61 6c 72 65 61 64 79 20 76  | -initialized.if.we.are.already.v | 
| 11b40 |  69 65 77 69 6e 67 20 69 74 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 20 28 6c 69 73 74  | iewing.it."...(interactive.(list | 
| 11b60 |  20 28 64 6a 76 75 2d 72 65 61 64 2d 70 61 67 65    29 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 64 6f  | .(djvu-read-page)))...(unless.do | 
| 11b80 |  63 20 28 73 65 74 71 20 64 6f 63 20 64 6a 76 75    2d 64 6f 63 29 29 0a 20 20 3b 3b 20 4e 6f 20 6e  | c.(setq.doc.djvu-doc))...;;.No.n | 
| 11ba0 |  65 65 64 20 74 6f 20 73 61 76 65 20 69 66 20 6f    6e 6c 79 20 74 68 65 20 62 6f 6f 6b 6d 61 72 6b  | eed.to.save.if.only.the.bookmark | 
| 11bc0 |  73 20 62 75 66 66 65 72 0a 20 20 3b 3b 20 6f 72    20 73 68 61 72 65 64 20 61 6e 6e 6f 74 61 74 69  | s.buffer...;;.or.shared.annotati | 
| 11be0 |  6f 6e 73 20 62 75 66 66 65 72 20 67 6f 74 20 6d    6f 64 69 66 69 65 64 2e 0a 20 20 28 69 66 20 28  | ons.buffer.got.modified....(if.( | 
| 11c00 |  6f 72 20 28 62 75 66 66 65 72 2d 6d 6f 64 69 66    69 65 64 2d 70 20 28 64 6a 76 75 2d 72 65 66 20  | or.(buffer-modified-p.(djvu-ref. | 
| 11c20 |  74 65 78 74 2d 62 75 66 20 64 6f 63 29 29 0a 20    20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72  | text-buf.doc))...........(buffer | 
| 11c40 |  2d 6d 6f 64 69 66 69 65 64 2d 70 20 28 64 6a 76    75 2d 72 65 66 20 61 6e 6e 6f 74 2d 62 75 66 20  | -modified-p.(djvu-ref.annot-buf. | 
| 11c60 |  64 6f 63 29 29 29 0a 20 20 20 20 20 20 28 64 6a    76 75 2d 73 61 76 65 20 64 6f 63 20 74 29 29 0a  | doc))).......(djvu-save.doc.t)). | 
| 11c80 |  20 20 3b 3b 20 57 65 20 70 72 6f 63 65 73 73 20    50 41 47 45 20 75 6e 63 6f 6e 64 69 74 69 6f 6e  | ..;;.We.process.PAGE.uncondition | 
| 11ca0 |  61 6c 6c 79 2c 20 65 76 65 6e 20 69 66 20 69 74    20 65 71 75 61 6c 73 20 74 68 65 20 70 61 67 65  | ally,.even.if.it.equals.the.page | 
| 11cc0 |  0a 20 20 3b 3b 20 63 75 72 72 65 6e 74 6c 79 20    64 69 73 70 6c 61 79 65 64 2e 20 20 4d 6f 73 74  | ...;;.currently.displayed...Most | 
| 11ce0 |  20 6f 66 74 65 6e 2c 20 50 41 47 45 20 65 71 75    61 6c 73 20 74 68 65 20 63 75 72 72 65 6e 74 20  | .often,.PAGE.equals.the.current. | 
| 11d00 |  70 61 67 65 0a 20 20 3b 3b 20 69 66 20 77 65 20    77 61 6e 74 20 74 6f 20 72 65 64 69 73 70 6c 61  | page...;;.if.we.want.to.redispla | 
| 11d20 |  79 20 50 41 47 45 2e 0a 20 20 28 75 6e 6c 65 73    73 20 28 69 6e 74 65 67 65 72 70 20 70 61 67 65  | y.PAGE....(unless.(integerp.page | 
| 11d40 |  29 0a 20 20 20 20 28 73 65 74 71 20 70 61 67 65    20 28 6f 72 20 28 64 6a 76 75 2d 72 65 66 20 70  | ).....(setq.page.(or.(djvu-ref.p | 
| 11d60 |  61 67 65 20 64 6f 63 29 20 31 29 29 29 0a 20 20    28 69 66 20 28 6f 72 20 28 3c 20 70 61 67 65 20  | age.doc).1)))...(if.(or.(<.page. | 
| 11d80 |  31 29 0a 20 20 20 20 20 20 20 20 20 20 28 3c 20    28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 6d 61  | 1)...........(<.(djvu-ref.pagema | 
| 11da0 |  78 20 64 6f 63 29 20 70 61 67 65 29 29 0a 20 20    20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20  | x.doc).page)).......(user-error. | 
| 11dc0 |  22 50 61 67 65 20 60 25 73 27 20 6f 75 74 20 6f    66 20 72 61 6e 67 65 22 20 70 61 67 65 29 29 0a  | "Page.`%s'.out.of.range".page)). | 
| 11de0 |  0a 20 20 28 6c 65 74 20 28 28 69 6e 68 69 62 69    74 2d 71 75 69 74 20 74 29 29 0a 20 20 20 20 28  | ...(let.((inhibit-quit.t)).....( | 
| 11e00 |  69 66 20 28 61 6e 64 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 20 64 6f 63 29 0a 20 20 20 20  | if.(and.(djvu-ref.page.doc)..... | 
| 11e20 |  20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65    71 75 61 6c 20 70 61 67 65 20 28 64 6a 76 75 2d  | .........(not.(equal.page.(djvu- | 
| 11e40 |  72 65 66 20 70 61 67 65 20 64 6f 63 29 29 29 29    0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 73  | ref.page.doc)))).........(djvu-s | 
| 11e60 |  65 74 20 68 69 73 74 6f 72 79 2d 62 61 63 6b 77    61 72 64 20 28 63 6f 6e 73 20 28 64 6a 76 75 2d  | et.history-backward.(cons.(djvu- | 
| 11e80 |  72 65 66 20 70 61 67 65 20 64 6f 63 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ref.page.doc)................... | 
| 11ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65 66  | .......................(djvu-ref | 
| 11ec0 |  20 68 69 73 74 6f 72 79 2d 62 61 63 6b 77 61 72    64 20 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20  | .history-backward.doc))......... | 
| 11ee0 |  20 20 20 20 20 20 20 20 20 20 64 6f 63 29 29 0a    20 20 20 20 28 64 6a 76 75 2d 73 65 74 20 68 69  | ..........doc)).....(djvu-set.hi | 
| 11f00 |  73 74 6f 72 79 2d 66 6f 72 77 61 72 64 20 6e 69    6c 20 64 6f 63 29 0a 20 20 20 20 28 64 6a 76 75  | story-forward.nil.doc).....(djvu | 
| 11f20 |  2d 73 65 74 20 70 61 67 65 20 70 61 67 65 20 64    6f 63 29 0a 20 20 20 20 3b 3b 20 46 69 78 20 6d  | -set.page.page.doc).....;;.Fix.m | 
| 11f40 |  65 3a 20 52 65 73 74 6f 72 65 20 62 75 66 66 65    72 20 70 6f 73 69 74 69 6f 6e 73 20 69 66 20 77  | e:.Restore.buffer.positions.if.w | 
| 11f60 |  65 20 72 65 76 69 73 69 74 20 74 68 65 20 73 61    6d 65 20 70 61 67 65 2e 0a 20 20 20 20 28 64 6a  | e.revisit.the.same.page......(dj | 
| 11f80 |  76 75 2d 73 65 74 20 72 65 61 64 2d 70 6f 73 20    6e 69 6c 20 64 6f 63 29 0a 20 20 20 20 28 77 69  | vu-set.read-pos.nil.doc).....(wi | 
| 11fa0 |  74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20    20 20 20 20 20 28 64 6a 76 75 2d 64 6a 76 75 73  | th-temp-buffer.......(djvu-djvus | 
| 11fc0 |  65 64 20 64 6f 63 20 74 20 22 2d 65 22 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ed.doc.t."-e"................... | 
| 11fe0 |  20 20 28 66 6f 72 6d 61 74 20 22 73 65 6c 65 63    74 20 25 64 3b 20 73 69 7a 65 3b 20 70 72 69 6e  | ..(format."select.%d;.size;.prin | 
| 12000 |  74 2d 74 78 74 3b 20 70 72 69 6e 74 2d 61 6e 74    3b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | t-txt;.print-ant;".............. | 
| 12020 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    64 6a 76 75 2d 72 65 66 20 70 61 67 65 20 64 6f  | ...............(djvu-ref.page.do | 
| 12040 |  63 29 29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f    2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e  | c))).......(goto-char.(point-min | 
| 12060 |  29 29 0a 0a 20 20 20 20 20 20 3b 3b 20 70 61 67    65 20 73 69 7a 65 0a 20 20 20 20 20 20 28 73 6b  | ))........;;.page.size.......(sk | 
| 12080 |  69 70 2d 63 68 61 72 73 2d 66 6f 72 77 61 72 64    20 22 20 5c 74 5c 6e 22 29 0a 20 20 20 20 20 20  | ip-chars-forward.".\t\n")....... | 
| 120a0 |  28 69 66 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20    22 77 69 64 74 68 3d 5c 5c 28 5b 5b 3a 64 69 67  | (if.(looking-at."width=\\([[:dig | 
| 120c0 |  69 74 3a 5d 5d 2b 5c 5c 29 5b 20 5c 74 5d 2b 68    65 69 67 68 74 3d 5c 5c 28 5b 5b 3a 64 69 67 69  | it:]]+\\)[.\t]+height=\\([[:digi | 
| 120e0 |  74 3a 5d 5d 2b 5c 5c 29 5c 5c 28 3f 3a 5b 20 5c    74 5d 2b 72 6f 74 61 74 69 6f 6e 3d 5c 5c 28 5b  | t:]]+\\)\\(?:[.\t]+rotation=\\([ | 
| 12100 |  5b 3a 64 69 67 69 74 3a 5d 5d 2b 5c 5c 29 5c 5c    29 3f 24 22 29 0a 20 20 20 20 20 20 20 20 20 20  | [:digit:]]+\\)\\)?$")........... | 
| 12120 |  28 64 6a 76 75 2d 73 65 74 20 70 61 67 65 73 69    7a 65 20 28 63 6f 6e 73 20 28 64 6a 76 75 2d 6d  | (djvu-set.pagesize.(cons.(djvu-m | 
| 12140 |  61 74 63 68 2d 6e 75 6d 62 65 72 20 31 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | atch-number.1).................. | 
| 12160 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75  | ..................(djvu-match-nu | 
| 12180 |  6d 62 65 72 20 32 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 63  | mber.2)).....................doc | 
| 121a0 |  29 0a 20 20 20 20 20 20 20 20 3b 3b 20 54 68 69    73 20 6d 61 79 20 66 61 69 6c 20 69 66 20 74 68  | ).........;;.This.may.fail.if.th | 
| 121c0 |  65 20 66 69 6c 65 20 6c 69 73 74 20 77 65 20 72    65 61 64 20 70 72 65 76 69 6f 75 73 6c 79 20 63  | e.file.list.we.read.previously.c | 
| 121e0 |  6f 6e 74 61 69 6e 65 64 0a 20 20 20 20 20 20 20    20 3b 3b 20 74 68 75 6d 62 6e 61 69 6c 73 2e 20  | ontained.........;;.thumbnails.. | 
| 12200 |  20 57 65 20 73 68 6f 75 6c 64 20 72 65 61 6c 6c    79 20 69 67 6e 6f 72 65 20 74 68 65 73 65 20 74  | .We.should.really.ignore.these.t | 
| 12220 |  68 75 6d 62 6e 61 69 6c 73 2e 0a 20 20 20 20 20    20 20 20 28 65 72 72 6f 72 20 22 4e 6f 20 70 61  | humbnails..........(error."No.pa | 
| 12240 |  67 65 20 73 69 7a 65 22 29 29 0a 0a 20 20 20 20    20 20 3b 3b 20 52 61 77 20 74 65 78 74 3a 0a 20  | ge.size"))........;;.Raw.text:.. | 
| 12260 |  20 20 20 20 20 3b 3b 20 54 68 69 73 20 69 73 20    65 78 61 63 74 6c 79 20 6f 6e 65 20 6f 62 6a 65  | .....;;.This.is.exactly.one.obje | 
| 12280 |  63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 73    77 61 6c 6c 6f 77 20 69 6e 20 6f 6e 65 20 62 69  | ct.that.we.can.swallow.in.one.bi | 
| 122a0 |  74 65 2e 0a 20 20 20 20 20 20 3b 3b 20 48 65 6e    63 65 20 77 65 20 64 6f 20 74 68 69 73 20 62 65  | te........;;.Hence.we.do.this.be | 
| 122c0 |  66 6f 72 65 20 77 65 20 73 77 61 6c 6c 6f 77 20    74 68 65 20 75 6e 6b 6e 6f 77 6e 20 6e 75 6d 62  | fore.we.swallow.the.unknown.numb | 
| 122e0 |  65 72 20 6f 66 20 61 6e 6e 6f 74 61 74 69 6f 6e    73 2e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63  | er.of.annotations........(goto-c | 
| 12300 |  68 61 72 20 28 6d 61 74 63 68 2d 65 6e 64 20 30    29 29 0a 20 20 20 20 20 20 28 73 6b 69 70 2d 63  | har.(match-end.0)).......(skip-c | 
| 12320 |  68 61 72 73 2d 66 6f 72 77 61 72 64 20 22 20 5c    74 5c 6e 22 29 0a 20 20 20 20 20 20 28 6c 65 74  | hars-forward.".\t\n").......(let | 
| 12340 |  20 28 28 6f 62 6a 65 63 74 20 28 69 66 20 28 6c    6f 6f 6b 69 6e 67 2d 61 74 20 22 28 5c 5c 28 70  | .((object.(if.(looking-at."(\\(p | 
| 12360 |  61 67 65 5c 5c 7c 63 6f 6c 75 6d 6e 5c 5c 7c 72    65 67 69 6f 6e 5c 5c 7c 70 61 72 61 5c 5c 7c 6c  | age\\|column\\|region\\|para\\|l | 
| 12380 |  69 6e 65 5c 5c 7c 77 6f 72 64 5c 5c 7c 63 68 61    72 5c 5c 29 22 29 0a 20 20 20 20 20 20 20 20 20  | ine\\|word\\|char\\)").......... | 
| 123a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75  | ...............(read.(current-bu | 
| 123c0 |  66 66 65 72 29 29 29 29 29 0a 20 20 20 20 20 20    20 20 3b 3b 20 53 65 74 20 75 70 20 61 6e 6e 6f  | ffer))))).........;;.Set.up.anno | 
| 123e0 |  74 61 74 69 6f 6e 73 20 62 75 66 66 65 72 2e 0a    20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20  | tations.buffer..........;;.This. | 
| 12400 |  61 6c 73 6f 20 69 6e 69 74 69 61 6c 69 7a 65 73    20 60 64 6a 76 75 2d 64 6f 63 2d 72 65 63 74 2d  | also.initializes.`djvu-doc-rect- | 
| 12420 |  6c 69 73 74 27 20 74 68 61 74 20 77 65 20 6e 65    65 64 0a 20 20 20 20 20 20 20 20 3b 3b 20 66 6f  | list'.that.we.need.........;;.fo | 
| 12440 |  72 20 70 72 6f 70 65 72 74 69 7a 69 6e 67 20 74    68 65 20 72 65 61 64 20 62 75 66 66 65 72 2e 0a  | r.propertizing.the.read.buffer.. | 
| 12460 |  20 20 20 20 20 20 20 20 28 73 61 76 65 2d 72 65    73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20  | ........(save-restriction....... | 
| 12480 |  20 20 20 20 28 6e 61 72 72 6f 77 2d 74 6f 2d 72    65 67 69 6f 6e 20 28 70 6f 69 6e 74 29 20 28 70  | ....(narrow-to-region.(point).(p | 
| 124a0 |  6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20    20 20 20 20 20 28 64 6a 76 75 2d 69 6e 69 74 2d  | oint-max))...........(djvu-init- | 
| 124c0 |  61 6e 6e 6f 74 20 28 64 6a 76 75 2d 72 65 66 20    61 6e 6e 6f 74 2d 62 75 66 20 64 6f 63 29 20 64  | annot.(djvu-ref.annot-buf.doc).d | 
| 124e0 |  6f 63 29 29 0a 0a 20 20 20 20 20 20 20 20 3b 3b    20 53 65 74 20 75 70 20 74 65 78 74 20 62 75 66  | oc))..........;;.Set.up.text.buf | 
| 12500 |  66 65 72 0a 20 20 20 20 20 20 20 20 28 64 6a 76    75 2d 69 6e 69 74 2d 74 65 78 74 20 6f 62 6a 65  | fer.........(djvu-init-text.obje | 
| 12520 |  63 74 20 64 6f 63 20 74 29 0a 0a 20 20 20 20 20    20 20 20 3b 3b 20 53 65 74 20 75 70 20 72 65 61  | ct.doc.t)..........;;.Set.up.rea | 
| 12540 |  64 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 69 6e 69 74 2d 72 65 61 64  | d.buffer.........(djvu-init-read | 
| 12560 |  20 6f 62 6a 65 63 74 20 64 6f 63 20 74 29 29 29    29 29 0a 0a 28 64 65 66 61 6c 69 61 73 20 27 64  | .object.doc.t)))))..(defalias.'d | 
| 12580 |  6a 76 75 2d 67 6f 74 6f 2d 70 61 67 65 20 27 64    6a 76 75 2d 69 6e 69 74 2d 70 61 67 65 0a 20 20  | jvu-goto-page.'djvu-init-page... | 
| 125a0 |  22 47 6f 74 6f 20 50 41 47 45 20 6f 66 20 44 6a    76 75 20 64 6f 63 75 6d 65 6e 74 20 44 4f 43 2e  | "Goto.PAGE.of.Djvu.document.DOC. | 
| 125c0 |  22 29 0a 0a 28 64 65 66 73 75 62 73 74 20 64 6a    76 75 2d 75 6e 72 65 73 6f 6c 76 65 2d 75 72 6c  | ")..(defsubst.djvu-unresolve-url | 
| 125e0 |  20 28 75 72 6c 29 0a 20 20 22 55 6e 72 65 73 6f    6c 76 65 20 69 6e 74 65 72 6e 61 6c 20 55 52 4c  | .(url)..."Unresolve.internal.URL | 
| 12600 |  2e 0a 54 68 69 73 20 69 73 73 75 65 73 20 61 20    77 61 72 6e 69 6e 67 20 6d 65 73 73 61 67 65 20  | ..This.issues.a.warning.message. | 
| 12620 |  69 66 20 55 52 4c 20 63 61 6e 6e 6f 74 20 62 65    20 72 65 73 6f 6c 76 65 64 2e 0a 59 65 74 20 69  | if.URL.cannot.be.resolved..Yet.i | 
| 12640 |  74 20 64 6f 65 73 20 6e 6f 74 20 74 68 72 6f 77    20 61 6e 20 65 72 72 6f 72 20 74 68 61 74 20 77  | t.does.not.throw.an.error.that.w | 
| 12660 |  6f 75 6c 64 20 70 75 74 20 74 68 65 20 44 6a 76    75 20 64 6f 63 75 6d 65 6e 74 0a 69 6e 74 6f 20  | ould.put.the.Djvu.document.into. | 
| 12680 |  61 6e 20 75 6e 64 65 66 69 6e 65 64 20 73 74 61    74 65 2e 22 0a 20 20 28 6d 65 73 73 61 67 65 20  | an.undefined.state."...(message. | 
| 126a0 |  22 57 61 72 6e 69 6e 67 3a 20 50 61 67 65 20 69    64 20 60 25 73 27 20 62 72 6f 6b 65 6e 22 20 75  | "Warning:.Page.id.`%s'.broken".u | 
| 126c0 |  72 6c 29 0a 20 20 28 73 69 74 2d 66 6f 72 20 31    29 0a 20 20 75 72 6c 29 0a 0a 28 64 65 66 75 6e  | rl)...(sit-for.1)...url)..(defun | 
| 126e0 |  20 64 6a 76 75 2d 72 65 73 6f 6c 76 65 2d 75 72    6c 20 28 75 72 6c 20 26 6f 70 74 69 6f 6e 61 6c  | .djvu-resolve-url.(url.&optional | 
| 12700 |  20 64 6f 63 29 0a 20 20 22 52 65 73 6f 6c 76 65    20 69 6e 74 65 72 6e 61 6c 20 55 52 4c 73 2e 20  | .doc)..."Resolve.internal.URLs.. | 
| 12720 |  20 53 65 65 20 76 61 72 69 61 62 6c 65 20 60 64    6a 76 75 2d 72 65 73 6f 6c 76 65 2d 75 72 6c 27  | .See.variable.`djvu-resolve-url' | 
| 12740 |  2e 22 0a 20 20 28 63 6f 6e 64 20 28 28 65 71 20    27 6c 6f 6e 67 20 64 6a 76 75 2d 72 65 73 6f 6c  | ."...(cond.((eq.'long.djvu-resol | 
| 12760 |  76 65 2d 75 72 6c 29 0a 20 20 20 20 20 20 20 20    20 3b 3b 20 52 65 70 6c 61 63 65 20 70 61 67 65  | ve-url)..........;;.Replace.page | 
| 12780 |  20 6e 75 6d 62 65 72 20 62 79 20 66 69 6c 65 20    69 64 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e  | .number.by.file.id..........(con | 
| 127a0 |  64 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68    20 22 5c 5c 60 23 5b 30 2d 39 5d 2b 5c 5c 27 22  | d.((string-match."\\`#[0-9]+\\'" | 
| 127c0 |  20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 65 74 20 28 28 70 61 67  | .url).................(let.((pag | 
| 127e0 |  65 2d 69 64 20 28 61 73 73 71 20 28 64 6a 76 75    2d 73 75 62 73 74 72 69 6e 67 2d 6e 75 6d 62 65  | e-id.(assq.(djvu-substring-numbe | 
| 12800 |  72 20 75 72 6c 20 31 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r.url.1)........................ | 
| 12820 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64    6a 76 75 2d 72 65 66 20 70 61 67 65 2d 69 64 20  | ..............(djvu-ref.page-id. | 
| 12840 |  64 6f 63 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 69 66 20 70 61  | doc))))...................(if.pa | 
| 12860 |  67 65 2d 69 64 0a 20 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  | ge-id.......................(for | 
| 12880 |  6d 61 74 20 22 23 25 73 22 20 28 63 64 72 20 70    61 67 65 2d 69 64 29 29 0a 20 20 20 20 20 20 20  | mat."#%s".(cdr.page-id))........ | 
| 128a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a    76 75 2d 75 6e 72 65 73 6f 6c 76 65 2d 75 72 6c  | .............(djvu-unresolve-url | 
| 128c0 |  20 75 72 6c 29 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67  | .url))))................((string | 
| 128e0 |  2d 6d 61 74 63 68 20 22 5c 5c 60 23 22 20 75 72    6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | -match."\\`#".url).............. | 
| 12900 |  20 20 20 28 69 66 20 28 72 61 73 73 6f 63 20 28    73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f  | ...(if.(rassoc.(substring-no-pro | 
| 12920 |  70 65 72 74 69 65 73 20 75 72 6c 20 31 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | perties.url.1).................. | 
| 12940 |  20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75    2d 72 65 66 20 70 61 67 65 2d 69 64 20 64 6f 63  | ...........(djvu-ref.page-id.doc | 
| 12960 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 75 72 6c 0a 20 20 20 20 20  | )).....................url...... | 
| 12980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a    76 75 2d 75 6e 72 65 73 6f 6c 76 65 2d 75 72 6c  | .............(djvu-unresolve-url | 
| 129a0 |  20 75 72 6c 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 74 20 75 72 6c 29 29 29  | .url)))................(t.url))) | 
| 129c0 |  20 3b 20 73 6f 6d 65 20 6f 74 68 65 72 20 55 52    4c 0a 20 20 20 20 20 20 20 20 28 28 65 71 20 27  | .;.some.other.URL.........((eq.' | 
| 129e0 |  73 68 6f 72 74 20 64 6a 76 75 2d 72 65 73 6f 6c    76 65 2d 75 72 6c 29 0a 20 20 20 20 20 20 20 20  | short.djvu-resolve-url)......... | 
| 12a00 |  20 3b 3b 20 52 65 70 6c 61 63 65 20 66 69 6c 65    20 69 64 20 62 79 20 70 61 67 65 20 6e 75 6d 62  | .;;.Replace.file.id.by.page.numb | 
| 12a20 |  65 72 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e    64 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68  | er..........(cond.((string-match | 
| 12a40 |  20 22 5c 5c 60 23 5b 30 2d 39 5d 2b 5c 5c 27 22    20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 20 20  | ."\\`#[0-9]+\\'".url)........... | 
| 12a60 |  20 20 20 20 20 20 28 69 66 20 28 61 73 73 71 20    28 64 6a 76 75 2d 73 75 62 73 74 72 69 6e 67 2d  | ......(if.(assq.(djvu-substring- | 
| 12a80 |  6e 75 6d 62 65 72 20 75 72 6c 20 31 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | number.url.1)................... | 
| 12aa0 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 2d 69 64 20 64 6f 63 29 29 0a  | ........(djvu-ref.page-id.doc)). | 
| 12ac0 |  20 20 20 20 20 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  | ....................url......... | 
| 12ae0 |  20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d    75 6e 72 65 73 6f 6c 76 65 2d 75 72 6c 20 75 72  | ..........(djvu-unresolve-url.ur | 
| 12b00 |  6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 28 73 74 72 69 6e 67 2d 6d 61 74  | l)))................((string-mat | 
| 12b20 |  63 68 20 22 5c 5c 60 23 22 20 75 72 6c 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ch."\\`#".url).................( | 
| 12b40 |  6c 65 74 20 28 28 70 61 67 65 2d 69 64 20 28 72    61 73 73 6f 63 20 28 73 75 62 73 74 72 69 6e 67  | let.((page-id.(rassoc.(substring | 
| 12b60 |  2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 75    72 6c 20 31 29 0a 20 20 20 20 20 20 20 20 20 20  | -no-properties.url.1)........... | 
| 12b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a  | .............................(dj | 
| 12ba0 |  76 75 2d 72 65 66 20 70 61 67 65 2d 69 64 20 64    6f 63 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | vu-ref.page-id.doc)))).......... | 
| 12bc0 |  20 20 20 20 20 20 20 20 20 28 69 66 20 70 61 67    65 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20  | .........(if.page-id............ | 
| 12be0 |  20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d    61 74 20 22 23 25 64 22 20 28 63 61 72 20 70 61  | ...........(format."#%d".(car.pa | 
| 12c00 |  67 65 2d 69 64 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | ge-id)).....................(djv | 
| 12c20 |  75 2d 75 6e 72 65 73 6f 6c 76 65 2d 75 72 6c 20    75 72 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20  | u-unresolve-url.url))))......... | 
| 12c40 |  20 20 20 20 20 20 20 28 74 20 22 23 31 22 29 29    29 20 3b 20 73 6f 6d 65 20 6f 74 68 65 72 20 55  | .......(t."#1"))).;.some.other.U | 
| 12c60 |  52 4c 20 28 70 6f 73 73 69 62 6c 79 20 65 6d 70    74 79 20 73 74 72 69 6e 67 29 0a 20 20 20 20 20  | RL.(possibly.empty.string)...... | 
| 12c80 |  20 20 20 28 74 20 3b 20 63 68 65 63 6b 20 77 68    65 74 68 65 72 20 55 52 4c 20 63 61 6e 20 62 65  | ...(t.;.check.whether.URL.can.be | 
| 12ca0 |  20 72 65 73 6f 6c 76 65 64 0a 20 20 20 20 20 20    20 20 20 28 63 6f 6e 64 20 28 28 73 74 72 69 6e  | .resolved..........(cond.((strin | 
| 12cc0 |  67 2d 6d 61 74 63 68 20 22 5c 5c 60 23 5b 30 2d    39 5d 2b 5c 5c 27 22 20 75 72 6c 29 0a 20 20 20  | g-match."\\`#[0-9]+\\'".url).... | 
| 12ce0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66    20 28 61 73 73 71 20 28 64 6a 76 75 2d 73 75 62  | .............(if.(assq.(djvu-sub | 
| 12d00 |  73 74 72 69 6e 67 2d 6e 75 6d 62 65 72 20 75 72    6c 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20  | string-number.url.1)............ | 
| 12d20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    64 6a 76 75 2d 72 65 66 20 70 61 67 65 2d 69 64  | ...............(djvu-ref.page-id | 
| 12d40 |  20 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 75 72 6c 0a 20  | .doc)).....................url.. | 
| 12d60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 75 6e 72 65 73 6f 6c 76 65  | .................(djvu-unresolve | 
| 12d80 |  2d 75 72 6c 20 75 72 6c 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 28 73 74 72  | -url.url)))................((str | 
| 12da0 |  69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60 23 22    20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 20 20  | ing-match."\\`#".url)........... | 
| 12dc0 |  20 20 20 20 20 20 28 69 66 20 28 72 61 73 73 6f    63 20 28 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d  | ......(if.(rassoc.(substring-no- | 
| 12de0 |  70 72 6f 70 65 72 74 69 65 73 20 75 72 6c 20 31    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | properties.url.1)............... | 
| 12e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64    6a 76 75 2d 72 65 66 20 70 61 67 65 2d 69 64 20  | ..............(djvu-ref.page-id. | 
| 12e20 |  64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 75 72 6c 0a 20 20  | doc)).....................url... | 
| 12e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 6a 76 75 2d 75 6e 72 65 73 6f 6c 76 65 2d  | ................(djvu-unresolve- | 
| 12e60 |  75 72 6c 20 75 72 6c 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 74 20 75 72 6c  | url.url)))................(t.url | 
| 12e80 |  29 29 29 29 29 20 3b 20 73 6f 6d 65 20 6f 74 68    65 72 20 55 52 4c 0a 0a 28 64 65 66 75 6e 20 64  | ))))).;.some.other.URL..(defun.d | 
| 12ea0 |  6a 76 75 2d 72 65 73 6f 6c 76 65 2d 61 6c 6c 2d    75 72 6c 73 20 28 64 69 72 20 26 6f 70 74 69 6f  | jvu-resolve-all-urls.(dir.&optio | 
| 12ec0 |  6e 61 6c 20 64 6f 63 29 0a 20 20 22 52 65 73 6f    6c 76 65 20 61 6c 6c 20 69 6e 74 65 72 6e 61 6c  | nal.doc)..."Resolve.all.internal | 
| 12ee0 |  20 55 52 4c 73 20 69 6e 20 44 6a 76 75 20 64 6f    63 75 6d 65 6e 74 20 44 4f 43 2e 22 0a 20 20 28  | .URLs.in.Djvu.document.DOC."...( | 
| 12f00 |  69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 28    6c 69 73 74 20 28 69 6e 74 65 72 6e 20 28 63 6f  | interactive....(list.(intern.(co | 
| 12f20 |  6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 20 22 44    69 72 65 63 74 69 6f 6e 3a 20 22 20 27 28 28 6c  | mpleting-read."Direction:.".'((l | 
| 12f40 |  6f 6e 67 29 20 28 73 68 6f 72 74 29 29 20 6e 69    6c 20 74 29 29 29 29 0a 20 20 28 75 6e 6c 65 73  | ong).(short)).nil.t))))...(unles | 
| 12f60 |  73 20 64 6f 63 20 28 73 65 74 71 20 64 6f 63 20    64 6a 76 75 2d 64 6f 63 29 29 0a 20 20 28 64 6a  | s.doc.(setq.doc.djvu-doc))...(dj | 
| 12f80 |  76 75 2d 73 61 76 65 20 64 6f 63 20 74 29 0a 20    20 28 75 6e 6c 65 73 73 20 28 65 71 20 64 69 72  | vu-save.doc.t)...(unless.(eq.dir | 
| 12fa0 |  20 28 64 6a 76 75 2d 72 65 66 20 72 65 73 6f 6c    76 65 2d 75 72 6c 20 64 6f 63 29 29 0a 20 20 20  | .(djvu-ref.resolve-url.doc)).... | 
| 12fc0 |  20 28 69 66 20 28 64 6a 76 75 2d 6d 6f 64 69 66    69 65 64 29 20 28 75 73 65 72 2d 65 72 72 6f 72  | .(if.(djvu-modified).(user-error | 
| 12fe0 |  20 22 44 6a 76 75 20 66 69 6c 65 20 73 68 6f 75    6c 64 20 62 65 20 73 61 76 65 64 22 29 29 0a 20  | ."Djvu.file.should.be.saved")).. | 
| 13000 |  20 20 20 3b 3b 20 52 65 73 6f 6c 76 65 20 61 6e    6e 6f 74 61 74 69 6f 6e 73 0a 20 20 20 20 28 77  | ...;;.Resolve.annotations.....(w | 
| 13020 |  69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a    20 20 20 20 20 20 28 6c 65 74 20 28 28 70 61 67  | ith-temp-buffer.......(let.((pag | 
| 13040 |  65 2d 69 64 20 28 64 6a 76 75 2d 72 65 66 20 70    61 67 65 2d 69 64 20 64 6f 63 29 29 0a 20 20 20  | e-id.(djvu-ref.page-id.doc)).... | 
| 13060 |  20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 72    65 73 6f 6c 76 65 2d 75 72 6c 20 64 69 72 29 29  | .........(djvu-resolve-url.dir)) | 
| 13080 |  0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 61    6e 6e 6f 74 2d 73 63 72 69 70 74 20 64 6f 63 20  | .........(djvu-annot-script.doc. | 
| 130a0 |  74 29 0a 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 2d 6d 69 6e  | t).........(goto-char.(point-min | 
| 130c0 |  29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 54 68    65 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 65 67 65  | )).........;;.The.following.rege | 
| 130e0 |  78 70 20 69 67 6e 6f 72 65 73 20 65 78 74 65 72    6e 61 6c 20 55 52 4c 73 0a 20 20 20 20 20 20 20  | xp.ignores.external.URLs........ | 
| 13100 |  20 3b 3b 20 77 68 69 63 68 20 64 6f 20 6e 6f 74    20 73 74 61 72 74 20 77 69 74 68 20 22 23 22 2e  | .;;.which.do.not.start.with."#". | 
| 13120 |  0a 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20    28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61  | .........(while.(re-search-forwa | 
| 13140 |  72 64 20 22 5e 28 6d 61 70 61 72 65 61 5b 20 5c    74 5d 2b 5c 22 23 5c 5c 28 5c 5c 28 5b 30 2d 39  | rd."^(maparea[.\t]+\"#\\(\\([0-9 | 
| 13160 |  5d 2b 5c 5c 29 5c 5c 7c 5b 5e 5c 22 5d 2a 5b 5e    30 2d 39 5c 22 5d 5b 5e 5c 22 5d 2a 5c 5c 29 5c  | ]+\\)\\|[^\"]*[^0-9\"][^\"]*\\)\ | 
| 13180 |  22 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20    20 20 20 20 28 6c 65 74 2a 20 28 28 75 72 6c 20  | "".nil.t)...........(let*.((url. | 
| 131a0 |  28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (match-string.1))............... | 
| 131c0 |  20 20 20 28 6e 75 6d 20 28 61 6e 64 20 28 6d 61    74 63 68 2d 73 74 72 69 6e 67 20 32 29 0a 20 20  | ...(num.(and.(match-string.2)... | 
| 131e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6d  | .........................(djvu-m | 
| 13200 |  61 74 63 68 2d 6e 75 6d 62 65 72 20 32 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | atch-number.2)))................ | 
| 13220 |  20 20 72 65 70 6c 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 63 6f 6e 64 20 28 28 65 71 20 64  | ..repl).............(cond.((eq.d | 
| 13240 |  69 72 20 27 6c 6f 6e 67 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66  | ir.'long)....................(if | 
| 13260 |  20 6e 75 6d 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 69 66 20  | .num........................(if. | 
| 13280 |  28 73 65 74 71 20 72 65 70 6c 20 28 63 64 72 20    28 61 73 73 71 20 6e 75 6d 20 70 61 67 65 2d 69  | (setq.repl.(cdr.(assq.num.page-i | 
| 132a0 |  64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d)))............................ | 
| 132c0 |  28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20 72    65 70 6c 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20  | (replace-match.repl.nil.nil.nil. | 
| 132e0 |  31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | 1)..........................(djv | 
| 13300 |  75 2d 75 6e 72 65 73 6f 6c 76 65 2d 75 72 6c 20    75 72 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20  | u-unresolve-url.url))........... | 
| 13320 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65    20 61 6c 72 65 61 64 79 20 68 61 76 65 20 61 20  | ...........;;.We.already.have.a. | 
| 13340 |  6c 6f 6e 67 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 28 75  | long.url......................(u | 
| 13360 |  6e 6c 65 73 73 20 28 72 61 73 73 6f 63 20 75 72    6c 20 70 61 67 65 2d 69 64 29 0a 20 20 20 20 20  | nless.(rassoc.url.page-id)...... | 
| 13380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 64 6a 76 75 2d 75 6e 72 65 73 6f 6c 76  | ..................(djvu-unresolv | 
| 133a0 |  65 2d 75 72 6c 20 75 72 6c 29 29 29 29 0a 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e-url.url))))................... | 
| 133c0 |  20 3b 3b 20 28 65 71 20 64 69 72 20 27 73 68 6f    72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .;;.(eq.dir.'short)............. | 
| 133e0 |  20 20 20 20 20 20 28 6e 75 6d 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b  | ......(num....................;; | 
| 13400 |  20 57 65 20 61 6c 72 65 61 64 79 20 68 61 76 65    20 61 20 73 68 6f 72 74 20 75 72 6c 0a 20 20 20  | .We.already.have.a.short.url.... | 
| 13420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 75 6e 6c 65 73 73 20 28 61 73 73 71 20 6e 75  | ................(unless.(assq.nu | 
| 13440 |  6d 20 70 61 67 65 2d 69 64 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | m.page-id)...................... | 
| 13460 |  28 64 6a 76 75 2d 75 6e 72 65 73 6f 6c 76 65 2d    75 72 6c 20 75 72 6c 29 29 29 0a 20 20 20 20 20  | (djvu-unresolve-url.url)))...... | 
| 13480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 73    65 74 71 20 72 65 70 6c 20 28 63 61 72 20 28 72  | .............((setq.repl.(car.(r | 
| 134a0 |  61 73 73 6f 63 20 75 72 6c 20 70 61 67 65 2d 69    64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | assoc.url.page-id)))............ | 
| 134c0 |  20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65    2d 6d 61 74 63 68 20 28 6e 75 6d 62 65 72 2d 74  | ........(replace-match.(number-t | 
| 134e0 |  6f 2d 73 74 72 69 6e 67 20 72 65 70 6c 29 20 6e    69 6c 20 6e 69 6c 20 6e 69 6c 20 31 29 29 0a 20  | o-string.repl).nil.nil.nil.1)).. | 
| 13500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 74 20 28 64 6a 76 75 2d 75 6e 72 65 73 6f  | .................(t.(djvu-unreso | 
| 13520 |  6c 76 65 2d 75 72 6c 20 75 72 6c 29 29 29 29 29    0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 70  | lve-url.url))))).........(djvu-p | 
| 13540 |  72 6f 63 65 73 73 2d 73 63 72 69 70 74 20 64 6f    63 20 74 29 29 29 0a 0a 20 20 20 20 3b 3b 20 75  | rocess-script.doc.t)))......;;.u | 
| 13560 |  70 64 61 74 65 20 69 6e 74 65 72 6e 61 6c 20 55    52 4c 73 20 6f 66 20 63 75 72 72 65 6e 74 20 70  | pdate.internal.URLs.of.current.p | 
| 13580 |  61 67 65 0a 20 20 20 20 28 77 69 74 68 2d 74 65    6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20  | age.....(with-temp-buffer....... | 
| 135a0 |  28 64 6a 76 75 2d 64 6a 76 75 73 65 64 20 64 6f    63 20 74 20 22 2d 65 22 0a 20 20 20 20 20 20 20  | (djvu-djvused.doc.t."-e"........ | 
| 135c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f    72 6d 61 74 20 22 73 65 6c 65 63 74 20 25 64 3b  | .............(format."select.%d; | 
| 135e0 |  20 70 72 69 6e 74 2d 61 6e 74 3b 22 20 28 64 6a    76 75 2d 72 65 66 20 70 61 67 65 20 64 6f 63 29  | .print-ant;".(djvu-ref.page.doc) | 
| 13600 |  29 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d 69    6e 69 74 2d 61 6e 6e 6f 74 20 28 64 6a 76 75 2d  | )).......(djvu-init-annot.(djvu- | 
| 13620 |  72 65 66 20 61 6e 6e 6f 74 2d 62 75 66 20 64 6f    63 29 20 64 6f 63 29 29 0a 0a 20 20 20 20 3b 3b  | ref.annot-buf.doc).doc))......;; | 
| 13640 |  20 52 65 73 6f 6c 76 65 20 62 6f 6f 6b 6d 61 72    6b 73 0a 20 20 20 20 28 6c 65 74 20 28 28 6f 62  | .Resolve.bookmarks.....(let.((ob | 
| 13660 |  6a 65 63 74 20 28 64 6a 76 75 2d 72 65 61 64 2d    62 6f 6f 6b 6d 61 72 6b 73 20 64 6f 63 29 29 0a  | ject.(djvu-read-bookmarks.doc)). | 
| 13680 |  20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d    72 65 73 6f 6c 76 65 2d 75 72 6c 20 64 69 72 29  | ..........(djvu-resolve-url.dir) | 
| 136a0 |  29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 6f 62    6a 65 63 74 0a 20 20 20 20 20 20 20 20 28 77 69  | ).......(when.object.........(wi | 
| 136c0 |  74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 20 28 64 6a 76 75 2d 72 65 66 20 62 6f 6f 6b  | th-current-buffer.(djvu-ref.book | 
| 136e0 |  6d 61 72 6b 73 2d 62 75 66 20 64 6f 63 29 0a 20    20 20 20 20 20 20 20 20 20 28 65 72 61 73 65 2d  | marks-buf.doc)...........(erase- | 
| 13700 |  62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20    20 20 28 69 6e 73 65 72 74 20 22 28 62 6f 6f 6b  | buffer)...........(insert."(book | 
| 13720 |  6d 61 72 6b 73 22 29 0a 20 20 20 20 20 20 20 20    20 20 28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 62  | marks")...........(djvu-insert-b | 
| 13740 |  6f 6f 6b 6d 61 72 6b 73 20 28 63 64 72 20 6f 62    6a 65 63 74 29 20 22 20 22 29 0a 20 20 20 20 20  | ookmarks.(cdr.object).".")...... | 
| 13760 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 22 29 5c    6e 22 29 29 0a 20 20 20 20 20 20 20 20 28 64 6a  | .....(insert.")\n")).........(dj | 
| 13780 |  76 75 2d 73 61 76 65 20 64 6f 63 29 29 29 0a 20    20 20 20 28 64 6a 76 75 2d 73 65 74 20 72 65 73  | vu-save.doc))).....(djvu-set.res | 
| 137a0 |  6f 6c 76 65 2d 75 72 6c 20 64 69 72 20 64 6f 63    29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | olve-url.dir.doc)))..(defun.djvu | 
| 137c0 |  2d 61 72 65 61 20 28 61 72 65 61 20 26 6f 70 74    69 6f 6e 61 6c 20 62 61 63 6b 29 0a 20 20 22 43  | -area.(area.&optional.back)..."C | 
| 137e0 |  6f 6e 76 65 72 74 20 28 61 72 65 61 20 78 6d 69    6e 20 79 6d 69 6e 20 77 69 64 74 68 20 68 65 69  | onvert.(area.xmin.ymin.width.hei | 
| 13800 |  67 68 74 29 20 74 6f 20 28 61 72 65 61 20 78 6d    69 6e 20 79 6d 69 6e 20 78 6d 61 78 20 79 6d 61  | ght).to.(area.xmin.ymin.xmax.yma | 
| 13820 |  78 29 2e 0a 49 66 20 42 41 43 4b 20 69 73 20 6e    6f 6e 2d 6e 69 6c 20 64 6f 20 69 6e 76 65 72 73  | x)..If.BACK.is.non-nil.do.invers | 
| 13840 |  65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e    2e 22 0a 20 20 28 69 66 20 62 61 63 6b 0a 20 20  | e.transformation."...(if.back... | 
| 13860 |  20 20 20 20 28 6c 65 74 20 28 28 6c 73 74 20 28    6c 69 73 74 20 28 6e 74 68 20 30 20 61 72 65 61  | ....(let.((lst.(list.(nth.0.area | 
| 13880 |  29 20 28 6e 74 68 20 31 20 61 72 65 61 29 20 28    6e 74 68 20 32 20 61 72 65 61 29 0a 20 20 20 20  | ).(nth.1.area).(nth.2.area)..... | 
| 138a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 2d 20 28 6e 74 68 20 33 20 61 72 65  | ...................(-.(nth.3.are | 
| 138c0 |  61 29 20 28 6e 74 68 20 31 20 61 72 65 61 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | a).(nth.1.area))................ | 
| 138e0 |  20 20 20 20 20 20 20 20 28 2d 20 28 6e 74 68 20    34 20 61 72 65 61 29 20 28 6e 74 68 20 32 20 61  | ........(-.(nth.4.area).(nth.2.a | 
| 13900 |  72 65 61 29 29 29 29 29 0a 20 20 20 20 20 20 20    20 3b 3b 20 4f 6e 6c 79 20 66 6f 72 20 62 61 63  | rea))))).........;;.Only.for.bac | 
| 13920 |  6b 20 74 72 61 6e 73 66 6f 72 6d 73 20 77 65 20    6d 69 67 68 74 20 67 65 74 20 61 6e 20 65 72 72  | k.transforms.we.might.get.an.err | 
| 13940 |  6f 72 2e 2e 2e 0a 20 20 20 20 20 20 20 20 28 69    66 20 28 6f 72 20 28 3e 20 30 20 28 6e 74 68 20  | or............(if.(or.(>.0.(nth. | 
| 13960 |  33 20 6c 73 74 29 29 20 28 3e 20 30 20 28 6e 74    68 20 34 20 6c 73 74 29 29 29 0a 20 20 20 20 20  | 3.lst)).(>.0.(nth.4.lst)))...... | 
| 13980 |  20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20    22 41 6e 6e 6f 74 61 74 69 6f 6e 20 61 72 65 61  | .......(message."Annotation.area | 
| 139a0 |  20 64 69 6d 65 6e 73 69 6f 6e 73 20 25 73 2c 20    25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .dimensions.%s,.%s"............. | 
| 139c0 |  20 20 20 20 20 20 20 20 20 28 6e 74 68 20 33 20    6c 73 74 29 20 28 6e 74 68 20 34 20 6c 73 74 29  | .........(nth.3.lst).(nth.4.lst) | 
| 139e0 |  29 29 0a 20 20 20 20 20 20 20 20 6c 73 74 29 0a    20 20 20 20 28 6c 69 73 74 20 28 6e 74 68 20 30  | )).........lst).....(list.(nth.0 | 
| 13a00 |  20 61 72 65 61 29 20 28 6e 74 68 20 31 20 61 72    65 61 29 20 28 6e 74 68 20 32 20 61 72 65 61 29  | .area).(nth.1.area).(nth.2.area) | 
| 13a20 |  0a 20 20 20 20 20 20 20 20 20 20 28 2b 20 28 6e    74 68 20 33 20 61 72 65 61 29 20 28 6e 74 68 20  | ...........(+.(nth.3.area).(nth. | 
| 13a40 |  31 20 61 72 65 61 29 29 0a 20 20 20 20 20 20 20    20 20 20 28 2b 20 28 6e 74 68 20 34 20 61 72 65  | 1.area))...........(+.(nth.4.are | 
| 13a60 |  61 29 20 28 6e 74 68 20 32 20 61 72 65 61 29 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | a).(nth.2.area)))))..(defun.djvu | 
| 13a80 |  2d 76 69 65 77 20 28 26 6f 70 74 69 6f 6e 61 6c    20 64 6f 63 20 6e 65 77 29 0a 20 20 22 28 52 65  | -view.(&optional.doc.new)..."(Re | 
| 13aa0 |  29 53 74 61 72 74 20 44 6a 76 69 65 77 20 66 6f    72 20 44 4f 43 2e 0a 49 66 20 70 72 65 66 69 78  | )Start.Djview.for.DOC..If.prefix | 
| 13ac0 |  20 4e 45 57 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c    20 61 6c 77 61 79 73 20 63 72 65 61 74 65 20 61  | .NEW.is.non-nil,.always.create.a | 
| 13ae0 |  20 6e 65 77 20 44 6a 76 69 65 77 20 70 72 6f 63    65 73 73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | .new.Djview.process."...(interac | 
| 13b00 |  74 69 76 65 20 28 6c 69 73 74 20 6e 69 6c 20 63    75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72  | tive.(list.nil.current-prefix-ar | 
| 13b20 |  67 29 29 0a 20 20 28 69 66 20 28 6e 6f 74 20 28    64 69 73 70 6c 61 79 2d 67 72 61 70 68 69 63 2d  | g))...(if.(not.(display-graphic- | 
| 13b40 |  70 29 29 0a 20 20 20 20 20 20 28 6d 65 73 73 61    67 65 20 22 4e 6f 20 67 72 61 70 68 69 63 20 64  | p)).......(message."No.graphic.d | 
| 13b60 |  69 73 70 6c 61 79 20 61 76 61 69 6c 61 62 6c 65    22 29 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 64  | isplay.available").....(let*.((d | 
| 13b80 |  6f 63 20 28 6f 72 20 64 6f 63 20 64 6a 76 75 2d    64 6f 63 29 29 20 3b 20 6e 65 65 64 65 64 20 62  | oc.(or.doc.djvu-doc)).;.needed.b | 
| 13ba0 |  79 20 70 72 6f 63 65 73 73 2d 73 65 6e 74 69 6e    65 6c 0a 20 20 20 20 20 20 20 20 20 20 20 28 64  | y.process-sentinel............(d | 
| 13bc0 |  70 6f 73 20 28 64 6a 76 75 2d 6d 65 61 6e 2d 64    70 6f 73 20 28 64 6a 76 75 2d 72 65 61 64 2d 64  | pos.(djvu-mean-dpos.(djvu-read-d | 
| 13be0 |  70 6f 73 20 6e 69 6c 20 64 6f 63 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 28 70 78 20 28 2f  | pos.nil.doc)))............(px.(/ | 
| 13c00 |  20 28 66 6c 6f 61 74 20 28 6e 74 68 20 30 20 64    70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 20  | .(float.(nth.0.dpos))........... | 
| 13c20 |  20 20 20 20 20 20 20 20 28 66 6c 6f 61 74 20 28    63 61 72 20 28 64 6a 76 75 2d 72 65 66 20 70 61  | ........(float.(car.(djvu-ref.pa | 
| 13c40 |  67 65 73 69 7a 65 20 64 6f 63 29 29 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 28 70 79 20 28  | gesize.doc)))))............(py.( | 
| 13c60 |  2d 20 31 20 28 2f 20 28 66 6c 6f 61 74 20 28 6e    74 68 20 31 20 64 70 6f 73 29 29 0a 20 20 20 20  | -.1.(/.(float.(nth.1.dpos))..... | 
| 13c80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 66 6c 6f 61 74 20 28 63 64 72 20 28  | ...................(float.(cdr.( | 
| 13ca0 |  64 6a 76 75 2d 72 65 66 20 70 61 67 65 73 69 7a    65 20 64 6f 63 29 29 29 29 29 29 0a 20 20 20 20  | djvu-ref.pagesize.doc))))))..... | 
| 13cc0 |  20 20 20 20 20 20 20 70 72 6f 63 65 73 73 2d 63    6f 6e 6e 65 63 74 69 6f 6e 2d 74 79 70 65 29 20  | .......process-connection-type). | 
| 13ce0 |  20 3b 20 55 73 65 20 61 20 70 69 70 65 2e 0a 20    20 20 20 20 20 28 69 66 20 28 6f 72 20 28 3c 20  | .;.Use.a.pipe........(if.(or.(<. | 
| 13d00 |  70 78 20 30 29 20 28 3c 20 31 20 70 78 29 20 28    3c 20 70 79 20 30 29 20 28 3c 20 31 20 70 79 29  | px.0).(<.1.px).(<.py.0).(<.1.py) | 
| 13d20 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 65 72 72    6f 72 20 22 70 78 3d 25 73 2c 20 70 79 3d 25 73  | )...........(error."px=%s,.py=%s | 
| 13d40 |  20 6f 75 74 20 6f 66 20 72 61 6e 67 65 22 20 70    78 20 70 79 29 29 0a 20 20 20 20 20 20 28 75 6e  | .out.of.range".px.py)).......(un | 
| 13d60 |  6c 65 73 73 20 6e 65 77 20 28 64 6a 76 75 2d 6b    69 6c 6c 2d 76 69 65 77 20 64 6f 63 29 29 0a 20  | less.new.(djvu-kill-view.doc)).. | 
| 13d80 |  20 20 20 20 20 28 6c 65 74 20 28 28 70 72 6f 63    65 73 73 20 28 61 70 70 6c 79 20 27 73 74 61 72  | .....(let.((process.(apply.'star | 
| 13da0 |  74 2d 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64  | t-process....................."d | 
| 13dc0 |  6a 76 69 65 77 22 20 6e 69 6c 20 64 6a 76 75 2d    64 6a 76 69 65 77 2d 63 6f 6d 6d 61 6e 64 0a 20  | jview".nil.djvu-djview-command.. | 
| 13de0 |  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 20 22 2d 70 61 67  | ...................(format."-pag | 
| 13e00 |  65 3d 25 73 22 20 28 63 64 72 20 28 61 73 73 71    20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 20  | e=%s".(cdr.(assq.(djvu-ref.page. | 
| 13e20 |  64 6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | doc)............................ | 
| 13e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65 66  | .......................(djvu-ref | 
| 13e60 |  20 70 61 67 65 2d 69 64 20 64 6f 63 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .page-id.doc))))................ | 
| 13e80 |  20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 2d 73    68 6f 77 70 6f 73 69 74 69 6f 6e 3d 25 30 36 66  | .....(format."-showposition=%06f | 
| 13ea0 |  2c 25 30 36 66 22 20 70 78 20 70 79 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ,%06f".px.py)................... | 
| 13ec0 |  20 20 28 61 70 70 65 6e 64 20 64 6a 76 75 2d 64    6a 76 69 65 77 2d 6f 70 74 69 6f 6e 73 20 28 6c  | ..(append.djvu-djview-options.(l | 
| 13ee0 |  69 73 74 20 28 64 6a 76 75 2d 72 65 66 20 66 69    6c 65 20 64 6f 63 29 29 29 29 29 29 0a 20 20 20  | ist.(djvu-ref.file.doc)))))).... | 
| 13f00 |  20 20 20 20 20 28 73 65 74 2d 70 72 6f 63 65 73    73 2d 73 65 6e 74 69 6e 65 6c 0a 20 20 20 20 20  | .....(set-process-sentinel...... | 
| 13f20 |  20 20 20 20 70 72 6f 63 65 73 73 0a 20 20 20 20    20 20 20 20 20 60 28 6c 61 6d 62 64 61 20 28 70  | ....process..........`(lambda.(p | 
| 13f40 |  72 6f 63 65 73 73 20 65 76 65 6e 74 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20  | rocess.event).............(when. | 
| 13f60 |  28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5e    5c 5c 28 3f 3a 66 69 6e 69 73 68 65 64 5c 5c 7c  | (string-match."^\\(?:finished\\| | 
| 13f80 |  65 78 69 74 65 64 5c 5c 7c 71 75 69 74 5c 5c 7c    6b 69 6c 6c 65 64 5c 5c 7c 74 65 72 6d 69 6e 61  | exited\\|quit\\|killed\\|termina | 
| 13fa0 |  74 65 64 5c 5c 29 22 20 65 76 65 6e 74 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | ted\\)".event)...............;;. | 
| 13fc0 |  54 68 69 73 20 63 6f 64 65 20 72 75 6e 73 20 61    73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e 20 20  | This.code.runs.asynchronously... | 
| 13fe0 |  54 68 65 20 62 75 66 66 65 72 20 44 4f 43 20 6e    65 65 64 20 6e 6f 74 0a 20 20 20 20 20 20 20 20  | The.buffer.DOC.need.not......... | 
| 14000 |  20 20 20 20 20 20 3b 3b 20 62 65 20 61 6c 69 76    65 20 61 6e 79 6d 6f 72 65 20 77 68 65 6e 20 77  | ......;;.be.alive.anymore.when.w | 
| 14020 |  65 20 72 75 6e 20 60 64 6a 76 75 2d 72 65 66 27    20 61 6e 64 20 60 64 6a 76 75 2d 73 65 74 27 2e  | e.run.`djvu-ref'.and.`djvu-set'. | 
| 14040 |  0a 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 2d 6c 69 76 65 2d  | ...............(if.(buffer-live- | 
| 14060 |  70 20 2c 64 6f 63 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | p.,doc)...................(djvu- | 
| 14080 |  73 65 74 20 76 69 65 77 2d 70 72 6f 63 20 28 64    65 6c 71 20 70 72 6f 63 65 73 73 20 28 64 6a 76  | set.view-proc.(delq.process.(djv | 
| 140a0 |  75 2d 72 65 66 20 76 69 65 77 2d 70 72 6f 63 20    2c 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 20  | u-ref.view-proc.,doc)).......... | 
| 140c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 2c 64 6f 63 29 29 0a 20 20 20 20 20 20  | ...................,doc))....... | 
| 140e0 |  20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65    20 22 25 73 20 25 73 3a 20 25 73 22 20 70 72 6f  | ........(message."%s.%s:.%s".pro | 
| 14100 |  63 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 2c 28 61 62  | cess........................,(ab | 
| 14120 |  62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61    6d 65 20 28 64 6a 76 75 2d 72 65 66 20 66 69 6c  | breviate-file-name.(djvu-ref.fil | 
| 14140 |  65 20 64 6f 63 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 65  | e.doc))........................e | 
| 14160 |  76 65 6e 74 29 29 29 29 0a 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 73 65 74 20 76 69 65 77 2d  | vent)))).........(djvu-set.view- | 
| 14180 |  70 72 6f 63 20 28 63 6f 6e 73 20 70 72 6f 63 65    73 73 20 28 64 6a 76 75 2d 72 65 66 20 76 69 65  | proc.(cons.process.(djvu-ref.vie | 
| 141a0 |  77 2d 70 72 6f 63 20 64 6f 63 29 29 20 64 6f 63    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a  | w-proc.doc)).doc)))))..(defun.dj | 
| 141c0 |  76 75 2d 76 69 65 77 2d 70 61 67 65 20 28 70 61    67 65 20 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63  | vu-view-page.(page.&optional.doc | 
| 141e0 |  20 6e 65 77 29 0a 20 20 22 28 52 65 29 53 74 61    72 74 20 44 6a 76 69 65 77 20 6f 6e 20 50 41 47  | .new)..."(Re)Start.Djview.on.PAG | 
| 14200 |  45 20 66 6f 72 20 44 4f 43 2e 0a 49 66 20 70 72    65 66 69 78 20 4e 45 57 20 69 73 20 6e 6f 6e 2d  | E.for.DOC..If.prefix.NEW.is.non- | 
| 14220 |  6e 69 6c 2c 20 61 6c 77 61 79 73 20 63 72 65 61    74 65 20 61 20 6e 65 77 20 44 6a 76 69 65 77 20  | nil,.always.create.a.new.Djview. | 
| 14240 |  70 72 6f 63 65 73 73 2e 22 0a 20 20 28 69 6e 74    65 72 61 63 74 69 76 65 20 28 6c 69 73 74 20 28  | process."...(interactive.(list.( | 
| 14260 |  69 66 20 28 65 71 20 27 6f 75 74 6c 69 6e 65 20    64 6a 76 75 2d 62 75 66 66 65 72 29 0a 20 20 20  | if.(eq.'outline.djvu-buffer).... | 
| 14280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 64 6a 76 75 2d 6f 75 74 6c  | ......................(djvu-outl | 
| 142a0 |  69 6e 65 2d 70 61 67 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  | ine-page)....................... | 
| 142c0 |  20 28 64 6a 76 75 2d 72 65 61 64 2d 70 61 67 65    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(djvu-read-page)).............. | 
| 142e0 |  20 20 20 20 20 20 20 20 6e 69 6c 20 63 75 72 72    65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 29 29  | ........nil.current-prefix-arg)) | 
| 14300 |  0a 20 20 28 64 6a 76 75 2d 67 6f 74 6f 2d 70 61    67 65 20 70 61 67 65 20 64 6f 63 29 0a 20 20 28  | ...(djvu-goto-page.page.doc)...( | 
| 14320 |  64 6a 76 75 2d 76 69 65 77 20 64 6f 63 20 6e 65    77 29 29 0a 0a 3b 3b 3b 20 44 6a 76 75 20 54 65  | djvu-view.doc.new))..;;;.Djvu.Te | 
| 14340 |  78 74 20 6d 6f 64 65 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 72 65 2d 73 65 61 72 63 68 2d 66  | xt.mode..(defun.djvu-re-search-f | 
| 14360 |  6f 72 77 61 72 64 20 28 72 65 67 65 78 70 29 0a    20 20 22 53 65 61 72 63 68 20 66 6f 72 77 61 72  | orward.(regexp)..."Search.forwar | 
| 14380 |  64 20 66 6f 72 20 6d 61 74 63 68 20 66 6f 72 20    52 45 47 45 58 50 2e 0a 53 65 61 72 63 68 20 63  | d.for.match.for.REGEXP..Search.c | 
| 143a0 |  61 73 65 2d 73 65 6e 73 69 74 69 76 69 74 79 20    69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79  | ase-sensitivity.is.determined.by | 
| 143c0 |  20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68    65 20 76 61 72 69 61 62 6c 65 0a 60 63 61 73 65  | .the.value.of.the.variable.`case | 
| 143e0 |  2d 66 6f 6c 64 2d 73 65 61 72 63 68 27 2c 20 77    68 69 63 68 20 73 65 65 2e 0a 54 68 65 20 63 6f  | -fold-search',.which.see..The.co | 
| 14400 |  6d 6d 61 6e 64 20 60 64 6a 76 75 2d 72 65 2d 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 2d 63 6f  | mmand.`djvu-re-search-forward-co | 
| 14420 |  6e 74 69 6e 75 65 27 20 63 6f 6e 74 69 6e 75 65    73 20 74 6f 20 73 65 61 72 63 68 20 66 6f 72 77  | ntinue'.continues.to.search.forw | 
| 14440 |  61 72 64 2e 22 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 20 22 73 53 65 61 72 63 68 20 28 72  | ard."...(interactive."sSearch.(r | 
| 14460 |  65 67 65 78 70 29 3a 20 22 29 0a 20 20 28 73 65    74 71 20 64 6a 76 75 2d 6c 61 73 74 2d 73 65 61  | egexp):.")...(setq.djvu-last-sea | 
| 14480 |  72 63 68 2d 72 65 20 72 65 67 65 78 70 29 0a 20    20 28 6c 65 74 20 28 28 64 6f 63 20 64 6a 76 75  | rch-re.regexp)...(let.((doc.djvu | 
| 144a0 |  2d 64 6f 63 29 29 0a 20 20 20 20 28 77 68 69 6c    65 20 28 6e 6f 74 20 28 6f 72 20 28 72 65 2d 73  | -doc)).....(while.(not.(or.(re-s | 
| 144c0 |  65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 72 65    67 65 78 70 20 6e 69 6c 20 74 29 0a 20 20 20 20  | earch-forward.regexp.nil.t)..... | 
| 144e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 65 71 20 28 64 6a 76 75 2d 72 65 66 20 70 61  | ................(eq.(djvu-ref.pa | 
| 14500 |  67 65 20 64 6f 63 29 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 6d 61 78 20 64 6f 63 29 29 29  | ge.doc).(djvu-ref.pagemax.doc))) | 
| 14520 |  29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d 6e 65    78 74 2d 70 61 67 65 20 31 29 29 29 29 0a 0a 28  | ).......(djvu-next-page.1))))..( | 
| 14540 |  64 65 66 75 6e 20 64 6a 76 75 2d 72 65 2d 73 65    61 72 63 68 2d 66 6f 72 77 61 72 64 2d 63 6f 6e  | defun.djvu-re-search-forward-con | 
| 14560 |  74 69 6e 75 65 20 28 29 0a 20 20 22 43 6f 6e 74    69 6e 75 65 20 73 65 61 72 63 68 20 66 6f 72 77  | tinue.()..."Continue.search.forw | 
| 14580 |  61 72 64 20 66 6f 72 20 6d 61 74 63 68 20 66 6f    72 20 60 64 6a 76 75 2d 6c 61 73 74 2d 73 65 61  | ard.for.match.for.`djvu-last-sea | 
| 145a0 |  72 63 68 2d 72 65 27 2e 22 0a 20 20 28 69 6e 74    65 72 61 63 74 69 76 65 29 0a 20 20 28 64 6a 76  | rch-re'."...(interactive)...(djv | 
| 145c0 |  75 2d 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77    61 72 64 20 64 6a 76 75 2d 6c 61 73 74 2d 73 65  | u-re-search-forward.djvu-last-se | 
| 145e0 |  61 72 63 68 2d 72 65 29 29 0a 0a 3b 3b 20 46 69    78 6d 65 3a 20 4e 65 77 20 63 6f 6d 6d 61 6e 64  | arch-re))..;;.Fixme:.New.command | 
| 14600 |  20 60 64 6a 76 75 2d 69 73 70 65 6c 6c 2d 77 6f    72 64 27 20 61 76 61 69 6c 61 62 6c 65 20 69 6e  | .`djvu-ispell-word'.available.in | 
| 14620 |  20 74 68 65 20 72 65 61 64 20 62 75 66 66 65 72    2e 0a 3b 3b 20 54 6f 20 61 76 6f 69 64 20 72 65  | .the.read.buffer..;;.To.avoid.re | 
| 14640 |  2d 69 6e 76 65 6e 74 69 6e 67 20 74 68 65 20 77    68 65 65 6c 2c 20 74 68 69 73 20 63 6f 6d 6d 61  | -inventing.the.wheel,.this.comma | 
| 14660 |  6e 64 20 73 68 6f 75 6c 64 20 69 6e 68 65 72 69    74 20 73 6f 6d 65 0a 3b 3b 20 66 75 6e 63 74 69  | nd.should.inherit.some.;;.functi | 
| 14680 |  6f 6e 61 6c 69 74 79 20 66 72 6f 6d 20 60 69 73    70 65 6c 6c 2d 77 6f 72 64 27 2e 20 20 55 6e 66  | onality.from.`ispell-word'...Unf | 
| 146a0 |  6f 72 74 75 6e 61 74 65 6c 79 2c 20 74 68 65 20    6c 61 74 74 65 72 20 69 73 20 61 20 72 61 74 68  | ortunately,.the.latter.is.a.rath | 
| 146c0 |  65 72 0a 3b 3b 20 6d 6f 6e 6f 6c 69 74 68 69 63    20 66 75 6e 63 74 69 6f 6e 2c 20 6d 61 6b 69 6e  | er.;;.monolithic.function,.makin | 
| 146e0 |  67 20 69 74 20 64 69 66 66 69 63 75 6c 74 20 74    6f 20 61 64 61 70 74 20 69 73 70 65 6c 6c 20 74  | g.it.difficult.to.adapt.ispell.t | 
| 14700 |  6f 20 6f 75 72 20 6e 65 65 64 73 2e 0a 0a 28 64    65 66 75 6e 20 64 6a 76 75 2d 65 64 69 74 2d 77  | o.our.needs...(defun.djvu-edit-w | 
| 14720 |  6f 72 64 20 28 62 70 6f 73 29 0a 20 20 22 45 64    69 74 20 77 6f 72 64 20 61 74 20 62 75 66 66 65  | ord.(bpos)..."Edit.word.at.buffe | 
| 14740 |  72 20 70 6f 73 69 74 69 6f 6e 20 42 50 4f 53 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | r.position.BPOS."...(interactive | 
| 14760 |  20 22 64 22 29 0a 20 20 28 6c 65 74 2a 20 28 28    6f 6c 64 20 28 62 75 66 66 65 72 2d 73 75 62 73  | ."d")...(let*.((old.(buffer-subs | 
| 14780 |  74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74    69 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20  | tring-no-properties............. | 
| 147a0 |  20 20 20 28 64 6a 76 75 2d 70 72 6f 70 65 72 74    79 2d 62 65 67 20 62 70 6f 73 20 27 77 6f 72 64  | ...(djvu-property-beg.bpos.'word | 
| 147c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 70 72 6f 70 65 72 74 79 2d  | )................(djvu-property- | 
| 147e0 |  65 6e 64 20 62 70 6f 73 20 27 77 6f 72 64 29 29    29 0a 20 20 20 20 20 20 20 20 20 28 6e 65 77 20  | end.bpos.'word)))..........(new. | 
| 14800 |  28 72 65 61 64 2d 73 74 72 69 6e 67 20 28 66 6f    72 6d 61 74 20 22 52 65 70 6c 61 63 65 20 60 25  | (read-string.(format."Replace.`% | 
| 14820 |  73 27 20 77 69 74 68 3a 20 22 20 6f 6c 64 29 20    6f 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20  | s'.with:.".old).old............. | 
| 14840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e    69 6c 20 6e 69 6c 20 64 6a 76 75 2d 69 6e 68 65  | ...............nil.nil.djvu-inhe | 
| 14860 |  72 69 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f 64    29 29 0a 20 20 20 20 20 20 20 20 20 28 64 70 6f  | rit-input-method))..........(dpo | 
| 14880 |  73 20 28 64 6a 76 75 2d 72 65 61 64 2d 64 70 6f    73 20 62 70 6f 73 29 29 29 0a 20 20 20 20 28 77  | s.(djvu-read-dpos.bpos))).....(w | 
| 148a0 |  69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 20 28 64 6a 76 75 2d 72 65 66 20 74 65 78  | ith-current-buffer.(djvu-ref.tex | 
| 148c0 |  74 2d 62 75 66 29 0a 20 20 20 20 20 20 3b 3b 20    41 73 20 77 65 20 6f 70 65 72 61 74 65 20 69 6e  | t-buf).......;;.As.we.operate.in | 
| 148e0 |  20 74 68 65 20 72 61 77 20 74 65 78 74 20 62 75    66 66 65 72 2c 20 77 65 20 6e 65 65 64 20 74 6f  | .the.raw.text.buffer,.we.need.to | 
| 14900 |  20 74 72 61 6e 73 6c 61 74 65 0a 20 20 20 20 20    20 3b 3b 20 4f 4c 44 20 61 6e 64 20 4e 45 57 20  | .translate.......;;.OLD.and.NEW. | 
| 14920 |  69 6e 74 6f 20 74 68 65 20 72 61 77 20 66 6f 72    6d 61 74 20 75 73 69 6e 67 20 60 70 72 69 6e 31  | into.the.raw.format.using.`prin1 | 
| 14940 |  2d 74 6f 2d 73 74 72 69 6e 67 27 2e 0a 20 20 20    20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 20  | -to-string'........(unless.(and. | 
| 14960 |  28 64 6a 76 75 2d 67 6f 74 6f 2d 64 70 6f 73 20    27 77 6f 72 64 20 64 70 6f 73 29 0a 20 20 20 20  | (djvu-goto-dpos.'word.dpos)..... | 
| 14980 |  20 20 20 20 20 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  | ...............(progn........... | 
| 149a0 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 64    6a 76 75 2d 67 6f 74 6f 2d 64 70 6f 73 27 20 70  | ...........;;.`djvu-goto-dpos'.p | 
| 149c0 |  75 74 73 20 75 73 20 70 61 73 74 20 74 68 65 20    66 69 72 73 74 20 71 75 6f 74 65 0a 20 20 20 20  | uts.us.past.the.first.quote..... | 
| 149e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 59 65 74 20 77 65 20 77 61 6e 74 20  | .................;;.Yet.we.want. | 
| 14a00 |  74 6f 20 72 65 70 6c 61 63 65 20 74 68 69 73 20    71 75 6f 74 65 2c 20 74 6f 6f 2e 0a 20 20 20 20  | to.replace.this.quote,.too...... | 
| 14a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 62 61 63 6b 77 61 72 64 2d 63 68 61 72 29  | .................(backward-char) | 
| 14a40 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61  | ......................(looking-a | 
| 14a60 |  74 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20    28 70 72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67  | t.(regexp-quote.(prin1-to-string | 
| 14a80 |  20 6f 6c 64 29 29 29 29 29 0a 20 20 20 20 20 20    20 20 28 65 72 72 6f 72 20 22 60 25 73 27 20 6e  | .old))))).........(error."`%s'.n | 
| 14aa0 |  6f 74 20 66 6f 75 6e 64 22 20 6f 6c 64 29 29 0a    20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 6d  | ot.found".old)).......(replace-m | 
| 14ac0 |  61 74 63 68 20 28 70 72 69 6e 31 2d 74 6f 2d 73    74 72 69 6e 67 20 6e 65 77 29 20 74 20 74 29 29  | atch.(prin1-to-string.new).t.t)) | 
| 14ae0 |  29 0a 20 20 28 64 6a 76 75 2d 73 61 76 65 2d 74    65 78 74 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a  | )...(djvu-save-text))..(defun.dj | 
| 14b00 |  76 75 2d 73 70 6c 69 74 2d 77 6f 72 64 20 28 62    70 6f 73 29 0a 20 20 22 53 70 6c 69 74 20 77 6f  | vu-split-word.(bpos)..."Split.wo | 
| 14b20 |  72 64 20 61 74 20 62 75 66 66 65 72 20 70 6f 73    69 74 69 6f 6e 20 42 50 4f 53 2e 0a 54 68 69 73  | rd.at.buffer.position.BPOS..This | 
| 14b40 |  20 63 6f 6d 6d 61 6e 64 20 6f 70 65 72 61 74 65    73 20 6f 6e 20 74 68 65 20 72 65 61 64 20 62 75  | .command.operates.on.the.read.bu | 
| 14b60 |  66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61    63 74 69 76 65 20 22 64 22 29 0a 20 20 28 6c 65  | ffer."...(interactive."d")...(le | 
| 14b80 |  74 20 28 28 62 65 67 20 28 64 6a 76 75 2d 70 72    6f 70 65 72 74 79 2d 62 65 67 20 62 70 6f 73 20  | t.((beg.(djvu-property-beg.bpos. | 
| 14ba0 |  27 77 6f 72 64 29 29 0a 20 20 20 20 20 20 20 20    28 64 70 6f 73 20 28 64 6a 76 75 2d 72 65 61 64  | 'word)).........(dpos.(djvu-read | 
| 14bc0 |  2d 64 70 6f 73 20 62 70 6f 73 29 29 29 0a 20 20    20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d  | -dpos.bpos))).....(with-current- | 
| 14be0 |  62 75 66 66 65 72 20 28 64 6a 76 75 2d 72 65 66    20 74 65 78 74 2d 62 75 66 29 0a 20 20 20 20 20  | buffer.(djvu-ref.text-buf)...... | 
| 14c00 |  20 28 64 6a 76 75 2d 73 70 6c 69 74 2d 77 6f 72    64 2d 69 6e 74 65 72 6e 61 6c 20 28 64 6a 76 75  | .(djvu-split-word-internal.(djvu | 
| 14c20 |  2d 67 6f 74 6f 2d 64 70 6f 73 20 27 77 6f 72 64    20 64 70 6f 73 29 0a 20 20 20 20 20 20 20 20 20  | -goto-dpos.'word.dpos).......... | 
| 14c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 2d 20 62 70 6f 73 20 62  | .......................(-.bpos.b | 
| 14c60 |  65 67 29 29 29 29 0a 20 20 28 64 6a 76 75 2d 73    61 76 65 2d 74 65 78 74 29 29 0a 0a 28 64 65 66  | eg))))...(djvu-save-text))..(def | 
| 14c80 |  75 6e 20 64 6a 76 75 2d 73 70 6c 69 74 2d 77 6f    72 64 2d 69 6e 74 65 72 6e 61 6c 20 28 77 70 6f  | un.djvu-split-word-internal.(wpo | 
| 14ca0 |  73 20 73 70 6c 69 74 29 0a 20 20 22 53 70 6c 69    74 20 77 6f 72 64 20 61 74 20 70 6f 73 69 74 69  | s.split)..."Split.word.at.positi | 
| 14cc0 |  6f 6e 20 57 50 4f 53 20 61 74 20 63 68 61 72 61    63 74 65 72 20 70 6f 73 69 74 69 6f 6e 20 53 50  | on.WPOS.at.character.position.SP | 
| 14ce0 |  4c 49 54 2e 0a 54 68 69 73 20 63 6f 6d 6d 61 6e    64 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 74 68  | LIT..This.command.operates.on.th | 
| 14d00 |  65 20 74 65 78 74 20 62 75 66 66 65 72 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20  | e.text.buffer."...(interactive.. | 
| 14d20 |  20 20 28 6c 65 74 2a 20 28 28 70 6e 74 20 28 70    6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20  | ..(let*.((pnt.(point)).......... | 
| 14d40 |  20 28 70 70 73 20 28 70 61 72 73 65 2d 70 61 72    74 69 61 6c 2d 73 65 78 70 20 28 6c 69 6e 65 2d  | .(pps.(parse-partial-sexp.(line- | 
| 14d60 |  62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69    6f 6e 29 20 70 6e 74 29 29 29 0a 20 20 20 20 20  | beginning-position).pnt)))...... | 
| 14d80 |  28 75 6e 6c 65 73 73 20 28 6e 74 68 20 33 20 70    70 73 29 20 28 75 73 65 72 2d 65 72 72 6f 72 20  | (unless.(nth.3.pps).(user-error. | 
| 14da0 |  22 50 6f 69 6e 74 20 6e 6f 74 20 69 6e 73 69 64    65 20 73 74 72 69 6e 67 22 29 29 0a 20 20 20 20  | "Point.not.inside.string"))..... | 
| 14dc0 |  20 28 6c 69 73 74 20 70 6e 74 20 28 31 2d 20 28    2d 20 70 6e 74 20 28 6e 74 68 20 38 20 70 70 73  | .(list.pnt.(1-.(-.pnt.(nth.8.pps | 
| 14de0 |  29 29 29 29 29 29 0a 20 20 28 67 6f 74 6f 2d 63    68 61 72 20 77 70 6f 73 29 0a 20 20 28 62 65 67  | ))))))...(goto-char.wpos)...(beg | 
| 14e00 |  69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a    20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f  | inning-of-line)...(skip-chars-fo | 
| 14e20 |  72 77 61 72 64 20 22 20 5c 74 22 29 0a 20 20 28    73 65 74 71 20 77 70 6f 73 20 28 70 6f 69 6e 74  | rward.".\t")...(setq.wpos.(point | 
| 14e40 |  29 29 0a 20 20 28 6c 65 74 20 28 28 69 6e 64 65    6e 74 20 28 62 75 66 66 65 72 2d 73 75 62 73 74  | ))...(let.((indent.(buffer-subst | 
| 14e60 |  72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69    65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ring-no-properties.............. | 
| 14e80 |  20 20 20 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e    69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 20 77 70  | ....(line-beginning-position).wp | 
| 14ea0 |  6f 73 29 29 0a 20 20 20 20 20 20 20 20 77 6f 72    64 29 0a 20 20 20 20 28 63 6f 6e 64 69 74 69 6f  | os)).........word).....(conditio | 
| 14ec0 |  6e 2d 63 61 73 65 20 6e 69 6c 0a 20 20 20 20 20    20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20  | n-case.nil.........(progn....... | 
| 14ee0 |  20 20 20 20 28 73 65 74 71 20 77 6f 72 64 20 28    72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75  | ....(setq.word.(read.(current-bu | 
| 14f00 |  66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 27 77  | ffer)))...........(unless.(eq.'w | 
| 14f20 |  6f 72 64 20 28 63 61 72 20 77 6f 72 64 29 29 20    28 65 72 72 6f 72 20 22 49 6e 76 61 6c 69 64 22  | ord.(car.word)).(error."Invalid" | 
| 14f40 |  29 29 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72    20 28 65 72 72 6f 72 20 22 53 79 6e 74 61 78 20  | ))).......(error.(error."Syntax. | 
| 14f60 |  65 72 72 6f 72 20 69 6e 20 72 61 77 20 74 65 78    74 22 29 29 29 0a 20 20 20 20 28 69 66 20 28 6f  | error.in.raw.text"))).....(if.(o | 
| 14f80 |  72 20 28 3c 20 73 70 6c 69 74 20 31 29 20 28 3c    3d 20 28 6c 65 6e 67 74 68 20 28 6e 74 68 20 35  | r.(<.split.1).(<=.(length.(nth.5 | 
| 14fa0 |  20 77 6f 72 64 29 29 20 73 70 6c 69 74 29 29 0a    20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22  | .word)).split)).........(error." | 
| 14fc0 |  4e 6f 74 68 69 6e 67 20 74 6f 20 73 70 6c 69 74    22 29 29 0a 20 20 20 20 28 64 65 6c 65 74 65 2d  | Nothing.to.split")).....(delete- | 
| 14fe0 |  72 65 67 69 6f 6e 20 77 70 6f 73 20 28 70 6f 69    6e 74 29 29 0a 20 20 20 20 3b 3b 20 54 6f 20 73  | region.wpos.(point)).....;;.To.s | 
| 15000 |  70 6c 69 74 20 74 68 65 20 62 6f 75 6e 64 69 6e    67 20 62 6f 78 20 68 6f 72 69 7a 6f 6e 74 61 6c  | plit.the.bounding.box.horizontal | 
| 15020 |  6c 79 2c 20 77 65 20 74 61 6b 65 20 74 68 65 20    66 72 61 63 74 69 6f 6e 0a 20 20 20 20 3b 3b 20  | ly,.we.take.the.fraction.....;;. | 
| 15040 |  6f 66 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66    20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 65  | of.the.number.of.characters.in.e | 
| 15060 |  61 63 68 20 66 72 61 67 6d 65 6e 74 2e 20 20 54    68 69 73 20 73 63 68 65 6d 65 0a 20 20 20 20 3b  | ach.fragment...This.scheme.....; | 
| 15080 |  3b 20 69 73 20 6f 6e 6c 79 20 61 70 70 72 6f 78    69 6d 61 74 65 2c 20 62 75 74 20 69 74 20 69 73  | ;.is.only.approximate,.but.it.is | 
| 150a0 |  20 62 65 74 74 65 72 20 74 68 61 6e 20 6e 6f 74    68 69 6e 67 2e 0a 20 20 20 20 28 6c 65 74 20 28  | .better.than.nothing......(let.( | 
| 150c0 |  28 66 72 61 63 20 28 72 6f 75 6e 64 20 28 2a 20    28 2f 20 28 66 6c 6f 61 74 20 73 70 6c 69 74 29  | (frac.(round.(*.(/.(float.split) | 
| 150e0 |  20 28 6c 65 6e 67 74 68 20 28 6e 74 68 20 35 20    77 6f 72 64 29 29 29 0a 20 20 20 20 20 20 20 20  | .(length.(nth.5.word)))......... | 
| 15100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 2d 20 28 6e 74 68 20 33 20 77 6f 72 64  | ..................(-.(nth.3.word | 
| 15120 |  29 20 28 6e 74 68 20 31 20 77 6f 72 64 29 29 29    29 29 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d  | ).(nth.1.word)))))).......(djvu- | 
| 15140 |  69 6e 73 65 72 74 2d 74 65 78 74 20 28 6c 69 73    74 20 27 77 6f 72 64 20 28 6e 74 68 20 31 20 77  | insert-text.(list.'word.(nth.1.w | 
| 15160 |  6f 72 64 29 20 28 6e 74 68 20 32 20 77 6f 72 64    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ord).(nth.2.word)............... | 
| 15180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 2b 20 28 6e 74 68 20 31 20 77 6f 72 64 29 20  | ................(+.(nth.1.word). | 
| 151a0 |  66 72 61 63 29 20 28 6e 74 68 20 34 20 77 6f 72    64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | frac).(nth.4.word).............. | 
| 151c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 75 62 73 74 72 69 6e 67 20 28 6e 74 68  | .................(substring.(nth | 
| 151e0 |  20 35 20 77 6f 72 64 29 20 30 20 73 70 6c 69 74    29 29 20 22 22 29 0a 20 20 20 20 20 20 28 69 6e  | .5.word).0.split))."").......(in | 
| 15200 |  73 65 72 74 20 22 5c 6e 22 20 69 6e 64 65 6e 74    29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d 69 6e  | sert."\n".indent).......(djvu-in | 
| 15220 |  73 65 72 74 2d 74 65 78 74 20 28 6c 69 73 74 20    27 77 6f 72 64 20 28 2b 20 28 6e 74 68 20 31 20  | sert-text.(list.'word.(+.(nth.1. | 
| 15240 |  77 6f 72 64 29 20 66 72 61 63 20 31 29 20 28 6e    74 68 20 32 20 77 6f 72 64 29 0a 20 20 20 20 20  | word).frac.1).(nth.2.word)...... | 
| 15260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6e 74 68 20 33 20  | .........................(nth.3. | 
| 15280 |  77 6f 72 64 29 20 28 6e 74 68 20 34 20 77 6f 72    64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | word).(nth.4.word).............. | 
| 152a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 75 62 73 74 72 69 6e 67 20 28 6e 74 68  | .................(substring.(nth | 
| 152c0 |  20 35 20 77 6f 72 64 29 20 73 70 6c 69 74 29 29    20 22 22 29 29 29 29 0a 0a 28 64 65 66 75 6e 20  | .5.word).split)).""))))..(defun. | 
| 152e0 |  64 6a 76 75 2d 6d 65 72 67 65 2d 77 6f 72 64 73    20 28 62 65 67 20 65 6e 64 29 0a 20 20 22 4d 65  | djvu-merge-words.(beg.end)..."Me | 
| 15300 |  72 67 65 20 77 6f 72 64 73 20 62 65 74 77 65 65    6e 20 70 6f 73 69 74 69 6f 6e 73 20 42 45 47 20  | rge.words.between.positions.BEG. | 
| 15320 |  61 6e 64 20 45 4e 44 2e 0a 54 68 69 73 20 63 6f    6d 6d 61 6e 64 20 6f 70 65 72 61 74 65 73 20 6f  | and.END..This.command.operates.o | 
| 15340 |  6e 20 74 68 65 20 72 65 61 64 20 62 75 66 66 65    72 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | n.the.read.buffer."...(interacti | 
| 15360 |  76 65 20 22 72 22 29 0a 20 20 28 6c 65 74 20 28    28 62 70 6f 73 20 28 64 6a 76 75 2d 72 65 61 64  | ve."r")...(let.((bpos.(djvu-read | 
| 15380 |  2d 64 70 6f 73 20 62 65 67 29 29 0a 20 20 20 20    20 20 20 20 28 65 70 6f 73 20 28 64 6a 76 75 2d  | -dpos.beg)).........(epos.(djvu- | 
| 153a0 |  72 65 61 64 2d 64 70 6f 73 20 28 31 2d 20 65 6e    64 29 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d  | read-dpos.(1-.end)))).....(with- | 
| 153c0 |  63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28    64 6a 76 75 2d 72 65 66 20 74 65 78 74 2d 62 75  | current-buffer.(djvu-ref.text-bu | 
| 153e0 |  66 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d 6d    65 72 67 65 2d 77 6f 72 64 73 2d 69 6e 74 65 72  | f).......(djvu-merge-words-inter | 
| 15400 |  6e 61 6c 20 28 64 6a 76 75 2d 67 6f 74 6f 2d 64    70 6f 73 20 27 77 6f 72 64 20 62 70 6f 73 29 0a  | nal.(djvu-goto-dpos.'word.bpos). | 
| 15420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 15440 |  20 28 64 6a 76 75 2d 67 6f 74 6f 2d 64 70 6f 73    20 27 77 6f 72 64 20 65 70 6f 73 29 29 29 29 0a  | .(djvu-goto-dpos.'word.epos)))). | 
| 15460 |  20 20 28 64 6a 76 75 2d 73 61 76 65 2d 74 65 78    74 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | ..(djvu-save-text))..(defun.djvu | 
| 15480 |  2d 6d 65 72 67 65 2d 77 6f 72 64 73 2d 69 6e 74    65 72 6e 61 6c 20 28 62 65 67 20 65 6e 64 29 0a  | -merge-words-internal.(beg.end). | 
| 154a0 |  20 20 22 4d 65 72 67 65 20 77 6f 72 64 73 20 62    65 74 77 65 65 6e 20 70 6f 73 69 74 69 6f 6e 73  | .."Merge.words.between.positions | 
| 154c0 |  20 42 45 47 20 61 6e 64 20 45 4e 44 2e 0a 54 68    69 73 20 63 6f 6d 6d 61 6e 64 20 6f 70 65 72 61  | .BEG.and.END..This.command.opera | 
| 154e0 |  74 65 73 20 6f 6e 20 74 68 65 20 74 65 78 74 20    62 75 66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65  | tes.on.the.text.buffer."...(inte | 
| 15500 |  72 61 63 74 69 76 65 20 22 72 22 29 0a 20 20 28    6c 65 74 20 28 77 6f 72 64 73 29 0a 20 20 20 20  | ractive."r")...(let.(words)..... | 
| 15520 |  28 67 6f 74 6f 2d 63 68 61 72 20 65 6e 64 29 0a    20 20 20 20 28 69 66 20 28 62 6f 6c 70 29 20 28  | (goto-char.end).....(if.(bolp).( | 
| 15540 |  73 65 74 71 20 65 6e 64 20 28 31 2d 20 65 6e 64    29 29 29 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68  | setq.end.(1-.end))).....(goto-ch | 
| 15560 |  61 72 20 62 65 67 29 0a 20 20 20 20 28 62 65 67    69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a  | ar.beg).....(beginning-of-line). | 
| 15580 |  20 20 20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d    66 6f 72 77 61 72 64 20 22 20 5c 74 22 29 0a 20  | ....(skip-chars-forward.".\t").. | 
| 155a0 |  20 20 20 28 73 65 74 71 20 62 65 67 20 28 70 6f    69 6e 74 29 29 0a 20 20 20 20 28 77 68 69 6c 65  | ...(setq.beg.(point)).....(while | 
| 155c0 |  20 28 3c 20 28 70 6f 69 6e 74 29 20 65 6e 64 29    0a 20 20 20 20 20 20 28 70 75 73 68 20 28 72 65  | .(<.(point).end).......(push.(re | 
| 155e0 |  61 64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 29 29 20 77 6f 72 64 73 29 0a 20 20 20 20  | ad.(current-buffer)).words)..... | 
| 15600 |  20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 27 77    6f 72 64 20 28 63 61 61 72 20 77 6f 72 64 73 29  | ..(unless.(eq.'word.(caar.words) | 
| 15620 |  29 0a 20 20 20 20 20 20 20 20 28 65 72 72 6f 72    20 22 53 79 6e 74 61 78 20 65 72 72 6f 72 20 69  | ).........(error."Syntax.error.i | 
| 15640 |  6e 20 72 61 77 20 74 65 78 74 22 29 29 29 0a 20    20 20 20 28 64 65 6c 65 74 65 2d 72 65 67 69 6f  | n.raw.text"))).....(delete-regio | 
| 15660 |  6e 20 62 65 67 20 28 70 6f 69 6e 74 29 29 0a 20    20 20 20 28 6c 65 74 20 28 28 6f 62 6a 65 63 74  | n.beg.(point)).....(let.((object | 
| 15680 |  20 28 61 70 70 6c 79 20 27 6c 69 73 74 20 27 77    6f 72 64 20 30 20 30 20 30 20 30 20 28 6e 72 65  | .(apply.'list.'word.0.0.0.0.(nre | 
| 156a0 |  76 65 72 73 65 20 77 6f 72 64 73 29 29 29 29 0a    20 20 20 20 20 20 28 64 6a 76 75 2d 74 65 78 74  | verse.words)))).......(djvu-text | 
| 156c0 |  2d 7a 6f 6e 65 20 6f 62 6a 65 63 74 20 30 20 28    6d 61 6b 65 2d 76 65 63 74 6f 72 20 33 20 6e 69  | -zone.object.0.(make-vector.3.ni | 
| 156e0 |  6c 29 29 0a 20 20 20 20 20 20 28 73 65 74 63 64    72 20 28 6e 74 68 63 64 72 20 34 20 6f 62 6a 65  | l)).......(setcdr.(nthcdr.4.obje | 
| 15700 |  63 74 29 20 28 6c 69 73 74 20 28 6d 61 70 63 6f    6e 63 61 74 20 28 6c 61 6d 62 64 61 20 28 77 29  | ct).(list.(mapconcat.(lambda.(w) | 
| 15720 |  20 28 6e 74 68 20 35 20 77 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(nth.5.w))..................... | 
| 15740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 74  | .............................(nt | 
| 15760 |  68 63 64 72 20 35 20 6f 62 6a 65 63 74 29 20 22    22 29 29 29 0a 20 20 20 20 20 20 28 64 6a 76 75  | hcdr.5.object).""))).......(djvu | 
| 15780 |  2d 69 6e 73 65 72 74 2d 74 65 78 74 20 6f 62 6a    65 63 74 20 22 22 29 29 29 0a 20 20 28 75 6e 64  | -insert-text.object."")))...(und | 
| 157a0 |  6f 2d 62 6f 75 6e 64 61 72 79 29 29 0a 0a 28 64    65 66 75 6e 20 64 6a 76 75 2d 6d 65 72 67 65 2d  | o-boundary))..(defun.djvu-merge- | 
| 157c0 |  6c 69 6e 65 73 20 28 62 65 67 20 65 6e 64 29 0a    20 20 22 4d 65 72 67 65 20 6c 69 6e 65 73 20 62  | lines.(beg.end)..."Merge.lines.b | 
| 157e0 |  65 74 77 65 65 6e 20 70 6f 73 69 74 69 6f 6e 73    20 42 45 47 20 61 6e 64 20 45 4e 44 2e 0a 54 68  | etween.positions.BEG.and.END..Th | 
| 15800 |  69 73 20 63 6f 6d 6d 61 6e 64 20 6f 70 65 72 61    74 65 73 20 6f 6e 20 74 68 65 20 72 65 61 64 20  | is.command.operates.on.the.read. | 
| 15820 |  62 75 66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 20 22 72 22 29 0a 20 20 3b  | buffer."...(interactive."r")...; | 
| 15840 |  3b 20 53 6f 6d 65 74 69 6d 65 73 20 77 65 20 68    61 76 65 20 62 6f 75 6e 64 69 6e 67 20 62 6f 78  | ;.Sometimes.we.have.bounding.box | 
| 15860 |  65 73 20 74 68 61 74 20 61 72 65 20 73 63 72 65    77 65 64 20 75 70 20 28 65 2e 67 2e 2c 20 61 20  | es.that.are.screwed.up.(e.g.,.a. | 
| 15880 |  62 62 6f 78 0a 20 20 3b 3b 20 66 6f 72 20 42 45    47 20 74 68 61 74 20 65 76 65 6e 20 69 6e 63 6c  | bbox...;;.for.BEG.that.even.incl | 
| 158a0 |  75 64 65 73 20 45 4e 44 29 2e 20 20 54 68 65 6e    20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66  | udes.END)...Then.the.following.f | 
| 158c0 |  61 69 6c 73 20 61 6e 64 20 77 65 20 63 61 6e 0a    20 20 3b 3b 20 6d 65 72 65 6c 79 20 72 75 6e 20  | ails.and.we.can...;;.merely.run. | 
| 158e0 |  60 64 6a 76 75 2d 6d 65 72 67 65 2d 6c 69 6e 65    73 2d 69 6e 74 65 72 6e 61 6c 27 20 69 6e 20 74  | `djvu-merge-lines-internal'.in.t | 
| 15900 |  68 65 20 74 65 78 74 20 62 75 66 66 65 72 2e 0a    20 20 28 6c 65 74 20 28 28 62 70 6f 73 20 28 64  | he.text.buffer....(let.((bpos.(d | 
| 15920 |  6a 76 75 2d 72 65 61 64 2d 64 70 6f 73 20 62 65    67 29 29 0a 20 20 20 20 20 20 20 20 28 65 70 6f  | jvu-read-dpos.beg)).........(epo | 
| 15940 |  73 20 28 64 6a 76 75 2d 72 65 61 64 2d 64 70 6f    73 20 28 31 2d 20 65 6e 64 29 29 29 29 0a 20 20  | s.(djvu-read-dpos.(1-.end))))... | 
| 15960 |  20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d    62 75 66 66 65 72 20 28 64 6a 76 75 2d 72 65 66  | ..(with-current-buffer.(djvu-ref | 
| 15980 |  20 74 65 78 74 2d 62 75 66 29 0a 20 20 20 20 20    20 28 64 6a 76 75 2d 6d 65 72 67 65 2d 6c 69 6e  | .text-buf).......(djvu-merge-lin | 
| 159a0 |  65 73 2d 69 6e 74 65 72 6e 61 6c 20 28 64 6a 76    75 2d 67 6f 74 6f 2d 64 70 6f 73 20 27 77 6f 72  | es-internal.(djvu-goto-dpos.'wor | 
| 159c0 |  64 20 62 70 6f 73 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d.bpos)......................... | 
| 159e0 |  20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 67    6f 74 6f 2d 64 70 6f 73 20 27 77 6f 72 64 20 65  | .........(djvu-goto-dpos.'word.e | 
| 15a00 |  70 6f 73 29 29 29 29 0a 20 20 28 64 6a 76 75 2d    73 61 76 65 2d 74 65 78 74 29 29 0a 0a 28 64 65  | pos))))...(djvu-save-text))..(de | 
| 15a20 |  66 75 6e 20 64 6a 76 75 2d 6d 65 72 67 65 2d 6c    69 6e 65 73 2d 69 6e 74 65 72 6e 61 6c 20 28 62  | fun.djvu-merge-lines-internal.(b | 
| 15a40 |  65 67 20 65 6e 64 29 0a 20 20 22 4d 65 72 67 65    20 6c 69 6e 65 73 20 62 65 74 77 65 65 6e 20 70  | eg.end)..."Merge.lines.between.p | 
| 15a60 |  6f 73 69 74 69 6f 6e 73 20 42 45 47 20 61 6e 64    20 45 4e 44 2e 0a 54 68 69 73 20 63 6f 6d 6d 61  | ositions.BEG.and.END..This.comma | 
| 15a80 |  6e 64 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 74    68 65 20 74 65 78 74 20 62 75 66 66 65 72 2e 22  | nd.operates.on.the.text.buffer." | 
| 15aa0 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20    22 72 22 29 0a 20 20 3b 3b 20 43 61 6c 63 75 6c  | ...(interactive."r")...;;.Calcul | 
| 15ac0 |  61 74 65 20 70 72 6f 70 65 72 20 76 61 6c 75 65    20 6f 66 20 45 4e 44 0a 20 20 28 67 6f 74 6f 2d  | ate.proper.value.of.END...(goto- | 
| 15ae0 |  63 68 61 72 20 65 6e 64 29 0a 20 20 28 75 6e 6c    65 73 73 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20  | char.end)...(unless.(looking-at. | 
| 15b00 |  22 5b 20 5c 74 5d 2a 28 77 6f 72 64 20 22 29 0a    20 20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 62  | "[.\t]*(word.").....(re-search-b | 
| 15b20 |  61 63 6b 77 61 72 64 20 22 5e 5b 20 5c 74 5d 2a    28 77 6f 72 64 20 22 29 29 0a 20 20 28 66 6f 72  | ackward."^[.\t]*(word."))...(for | 
| 15b40 |  77 61 72 64 2d 73 65 78 70 29 0a 20 20 28 73 65    74 71 20 65 6e 64 20 28 70 6f 69 6e 74 29 29 0a  | ward-sexp)...(setq.end.(point)). | 
| 15b60 |  20 20 3b 3b 20 43 61 6c 63 75 6c 61 74 65 20 70    72 6f 70 65 72 20 76 61 6c 75 65 20 6f 66 20 42  | ..;;.Calculate.proper.value.of.B | 
| 15b80 |  45 47 0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    62 65 67 29 0a 20 20 28 75 6e 6c 65 73 73 20 28  | EG...(goto-char.beg)...(unless.( | 
| 15ba0 |  6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 20 5c 74    5d 2a 28 77 6f 72 64 20 22 29 0a 20 20 20 20 28  | looking-at."[.\t]*(word.").....( | 
| 15bc0 |  72 65 2d 73 65 61 72 63 68 2d 62 61 63 6b 77 61    72 64 20 22 5e 5b 20 5c 74 5d 2a 28 77 6f 72 64  | re-search-backward."^[.\t]*(word | 
| 15be0 |  20 22 29 29 0a 20 20 28 73 6b 69 70 2d 63 68 61    72 73 2d 66 6f 72 77 61 72 64 20 22 20 5c 74 22  | ."))...(skip-chars-forward.".\t" | 
| 15c00 |  29 0a 20 20 28 73 65 74 71 20 62 65 67 20 28 70    6f 69 6e 74 29 29 0a 20 20 28 75 6e 6c 65 73 73  | )...(setq.beg.(point))...(unless | 
| 15c20 |  20 28 3c 20 62 65 67 20 65 6e 64 29 20 28 75 73    65 72 2d 65 72 72 6f 72 20 22 4e 6f 74 68 69 6e  | .(<.beg.end).(user-error."Nothin | 
| 15c40 |  67 20 74 6f 20 6d 65 72 67 65 22 29 29 0a 20 20    3b 3b 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  | g.to.merge"))...;;.The.following | 
| 15c60 |  20 66 61 69 6c 73 20 69 66 20 74 68 65 20 7a 6f    6e 65 20 6c 65 76 65 6c 73 20 6f 66 20 74 68 65  | .fails.if.the.zone.levels.of.the | 
| 15c80 |  20 6c 69 6e 65 73 20 77 65 20 77 61 6e 74 20 74    6f 20 6d 65 72 67 65 0a 20 20 3b 3b 20 61 72 65  | .lines.we.want.to.merge...;;.are | 
| 15ca0 |  20 64 69 66 66 65 72 65 6e 74 2e 20 20 46 6f 72    20 65 78 61 6d 70 6c 65 3a 0a 20 20 3b 3b 20 28  | .different...For.example:...;;.( | 
| 15cc0 |  6c 69 6e 65 20 58 20 58 20 58 20 58 0a 20 20 3b    3b 20 20 28 77 6f 72 64 20 58 20 58 20 58 20 58  | line.X.X.X.X...;;..(word.X.X.X.X | 
| 15ce0 |  20 73 74 72 69 6e 67 29 0a 20 20 3b 3b 20 20 28    77 6f 72 64 20 58 20 58 20 58 20 58 20 73 74 72  | .string)...;;..(word.X.X.X.X.str | 
| 15d00 |  69 6e 67 29 29 0a 20 20 3b 3b 20 28 70 61 72 61    20 58 20 58 20 58 20 58 0a 20 20 3b 3b 20 20 28  | ing))...;;.(para.X.X.X.X...;;..( | 
| 15d20 |  6c 69 6e 65 20 58 20 58 20 58 20 58 0a 20 20 3b    3b 20 20 20 28 77 6f 72 64 20 58 20 58 20 58 20  | line.X.X.X.X...;;...(word.X.X.X. | 
| 15d40 |  58 20 73 74 72 69 6e 67 29 0a 20 20 3b 3b 20 20    20 28 77 6f 72 64 20 58 20 58 20 58 20 58 20 73  | X.string)...;;...(word.X.X.X.X.s | 
| 15d60 |  74 72 69 6e 67 29 29 29 0a 20 20 28 61 74 6f 6d    69 63 2d 63 68 61 6e 67 65 2d 67 72 6f 75 70 0a  | tring)))...(atomic-change-group. | 
| 15d80 |  20 20 20 20 28 73 61 76 65 2d 72 65 73 74 72 69    63 74 69 6f 6e 0a 20 20 20 20 20 20 28 6e 61 72  | ....(save-restriction.......(nar | 
| 15da0 |  72 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 20 62 65    67 20 65 6e 64 29 0a 20 20 20 20 20 20 28 6d 61  | row-to-region.beg.end).......(ma | 
| 15dc0 |  70 63 20 28 6c 61 6d 62 64 61 20 28 7a 6f 6e 65    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | pc.(lambda.(zone)............... | 
| 15de0 |  28 67 6f 74 6f 2d 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  | (goto-char.(point-min))......... | 
| 15e00 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 20    28 66 6f 72 6d 61 74 20 22 29 5b 5c 6e 5c 74 5c  | ......(let.((re.(format.")[\n\t\ | 
| 15e20 |  73 5d 2b 28 25 73 20 25 73 22 20 7a 6f 6e 65 20    64 6a 76 75 2d 63 6f 6f 72 64 73 2d 72 65 29 29  | s]+(%s.%s".zone.djvu-coords-re)) | 
| 15e40 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 77 68 69 6c 65 20 28 72 65 2d 73 65 61  | ).................(while.(re-sea | 
| 15e60 |  72 63 68 2d 66 6f 72 77 61 72 64 20 72 65 20 6e    69 6c 20 74 29 0a 20 20 20 20 20 20 20 20 20 20  | rch-forward.re.nil.t)........... | 
| 15e80 |  20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65    2d 6d 61 74 63 68 20 22 22 29 29 29 29 0a 20 20  | ........(replace-match.""))))... | 
| 15ea0 |  20 20 20 20 20 20 20 20 20 20 27 28 22 63 6f 6c    75 6d 6e 22 20 22 72 65 67 69 6f 6e 22 20 22 70  | ..........'("column"."region"."p | 
| 15ec0 |  61 72 61 22 20 22 6c 69 6e 65 22 29 29 0a 20 20    20 20 20 20 3b 3b 20 43 68 65 63 6b 20 74 68 61  | ara"."line")).......;;.Check.tha | 
| 15ee0 |  74 20 77 65 20 67 6f 74 20 77 68 61 74 20 77 65    20 77 61 6e 74 2e 0a 20 20 20 20 20 20 28 67 6f  | t.we.got.what.we.want........(go | 
| 15f00 |  74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d    69 6e 29 29 0a 20 20 20 20 20 20 28 77 68 69 6c  | to-char.(point-min)).......(whil | 
| 15f20 |  65 20 28 3e 20 28 70 6f 69 6e 74 2d 6d 61 78 29    20 28 70 72 6f 67 6e 20 28 73 6b 69 70 2d 63 68  | e.(>.(point-max).(progn.(skip-ch | 
| 15f40 |  61 72 73 2d 66 6f 72 77 61 72 64 20 22 5c 6e 5c    74 5c 73 22 29 20 28 70 6f 69 6e 74 29 29 29 0a  | ars-forward."\n\t\s").(point))). | 
| 15f60 |  20 20 20 20 20 20 20 20 28 69 66 20 28 6c 6f 6f    6b 69 6e 67 2d 61 74 20 22 28 77 6f 72 64 20 22  | ........(if.(looking-at."(word." | 
| 15f80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66    6f 72 77 61 72 64 2d 73 65 78 70 29 20 3b 20 6d  | ).............(forward-sexp).;.m | 
| 15fa0 |  61 79 20 73 69 67 6e 61 6c 20 60 73 63 61 6e 2d    65 72 72 6f 72 27 0a 20 20 20 20 20 20 20 20 20  | ay.signal.`scan-error'.......... | 
| 15fc0 |  20 28 65 72 72 6f 72 20 22 53 79 6e 74 61 78 20    65 72 72 6f 72 3a 20 63 61 6e 6e 6f 74 20 6d 65  | .(error."Syntax.error:.cannot.me | 
| 15fe0 |  72 67 65 22 29 29 29 29 29 29 0a 0a 28 64 65 66    75 6e 20 64 6a 76 75 2d 69 6e 69 74 2d 74 65 78  | rge"))))))..(defun.djvu-init-tex | 
| 16000 |  74 20 28 6f 62 6a 65 63 74 20 26 6f 70 74 69 6f    6e 61 6c 20 64 6f 63 20 72 65 73 65 74 29 0a 20  | t.(object.&optional.doc.reset).. | 
| 16020 |  20 22 49 6e 69 74 69 61 6c 69 7a 65 20 54 65 78    74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 77 69  | ."Initialize.Text.buffer."...(wi | 
| 16040 |  74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 20 28 64 6a 76 75 2d 72 65 66 20 74 65 78 74  | th-current-buffer.(djvu-ref.text | 
| 16060 |  2d 62 75 66 20 64 6f 63 29 0a 20 20 20 20 28 6c    65 74 20 28 28 64 70 6f 73 20 28 75 6e 6c 65 73  | -buf.doc).....(let.((dpos.(unles | 
| 16080 |  73 20 72 65 73 65 74 20 28 64 6a 76 75 2d 74 65    78 74 2d 64 70 6f 73 20 6e 69 6c 20 64 6f 63 29  | s.reset.(djvu-text-dpos.nil.doc) | 
| 160a0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 62 75 66    66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79 29 0a 20  | ))...........buffer-read-only).. | 
| 160c0 |  20 20 20 20 20 28 65 72 61 73 65 2d 62 75 66 66    65 72 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d  | .....(erase-buffer).......(djvu- | 
| 160e0 |  69 6e 73 65 72 74 2d 74 65 78 74 20 6f 62 6a 65    63 74 20 22 22 29 0a 20 20 20 20 20 20 28 69 6e  | insert-text.object."").......(in | 
| 16100 |  73 65 72 74 20 22 5c 6e 22 29 0a 20 20 20 20 20    20 28 69 66 20 28 6e 6f 74 20 72 65 73 65 74 29  | sert."\n").......(if.(not.reset) | 
| 16120 |  0a 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75    2d 67 6f 74 6f 2d 64 70 6f 73 20 27 77 6f 72 64  | ...........(djvu-goto-dpos.'word | 
| 16140 |  20 64 70 6f 73 29 0a 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  | .dpos).........(goto-char.(point | 
| 16160 |  2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 28    73 65 74 2d 62 75 66 66 65 72 2d 6d 6f 64 69 66  | -min)).........(set-buffer-modif | 
| 16180 |  69 65 64 2d 70 20 6e 69 6c 29 0a 20 20 20 20 20    20 20 20 28 73 65 74 71 20 62 75 66 66 65 72 2d  | ied-p.nil).........(setq.buffer- | 
| 161a0 |  75 6e 64 6f 2d 6c 69 73 74 20 6e 69 6c 29 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | undo-list.nil)))))..(defun.djvu- | 
| 161c0 |  69 6e 73 65 72 74 2d 74 65 78 74 20 28 6f 62 6a    65 63 74 20 69 6e 64 65 6e 74 29 0a 20 20 22 49  | insert-text.(object.indent)..."I | 
| 161e0 |  6e 73 65 72 74 20 4f 42 4a 45 43 54 20 69 6e 74    6f 20 44 6a 76 75 20 74 65 78 74 20 62 75 66 66  | nsert.OBJECT.into.Djvu.text.buff | 
| 16200 |  65 72 20 72 65 63 75 72 73 69 76 65 6c 79 20 75    73 69 6e 67 20 69 6e 64 65 6e 74 61 74 69 6f 6e  | er.recursively.using.indentation | 
| 16220 |  20 49 4e 44 45 4e 54 2e 22 0a 20 20 28 77 68 65    6e 20 6f 62 6a 65 63 74 0a 20 20 20 20 28 69 6e  | .INDENT."...(when.object.....(in | 
| 16240 |  73 65 72 74 20 69 6e 64 65 6e 74 20 22 28 22 0a    20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70  | sert.indent."(".............(map | 
| 16260 |  63 6f 6e 63 61 74 20 23 27 70 72 69 6e 31 2d 74    6f 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20  | concat.#'prin1-to-string........ | 
| 16280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 69 73 74 20 28 6e 74 68 20 30 20 6f 62 6a  | ................(list.(nth.0.obj | 
| 162a0 |  65 63 74 29 20 28 6e 74 68 20 31 20 6f 62 6a 65    63 74 29 20 28 6e 74 68 20 32 20 6f 62 6a 65 63  | ect).(nth.1.object).(nth.2.objec | 
| 162c0 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t).............................. | 
| 162e0 |  28 6e 74 68 20 33 20 6f 62 6a 65 63 74 29 20 28    6e 74 68 20 34 20 6f 62 6a 65 63 74 29 29 0a 20  | (nth.3.object).(nth.4.object)).. | 
| 16300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 22 20 22 29 29 0a 20 20 20 20  | ......................"."))..... | 
| 16320 |  28 6c 65 74 20 28 28 74 61 69 6c 20 28 6e 74 68    63 64 72 20 35 20 6f 62 6a 65 63 74 29 29 0a 20  | (let.((tail.(nthcdr.5.object)).. | 
| 16340 |  20 20 20 20 20 20 20 20 20 28 69 6e 64 65 6e 74    20 28 63 6f 6e 63 61 74 20 69 6e 64 65 6e 74 20  | .........(indent.(concat.indent. | 
| 16360 |  22 20 22 29 29 29 0a 20 20 20 20 20 20 28 69 66    20 28 73 74 72 69 6e 67 70 20 28 63 61 72 20 74  | "."))).......(if.(stringp.(car.t | 
| 16380 |  61 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20    28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 20  | ail))...........(insert.(format. | 
| 163a0 |  22 20 25 53 29 22 20 28 63 61 72 20 74 61 69 6c    29 29 29 0a 20 20 20 20 20 20 20 20 28 64 6f 6c  | ".%S)".(car.tail))).........(dol | 
| 163c0 |  69 73 74 20 28 65 6c 74 20 74 61 69 6c 29 0a 20    20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74  | ist.(elt.tail)...........(insert | 
| 163e0 |  20 22 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 74 65  | ."\n")...........(djvu-insert-te | 
| 16400 |  78 74 20 65 6c 74 20 69 6e 64 65 6e 74 29 29 0a    20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20  | xt.elt.indent)).........(insert. | 
| 16420 |  22 29 22 29 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 64 6a 76 75 2d 74 65 78 74 2d 64 70 6f 73 20  | ")")))))..(defun.djvu-text-dpos. | 
| 16440 |  28 26 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74    20 64 6f 63 29 0a 20 20 22 52 65 74 75 72 6e 20  | (&optional.point.doc)..."Return. | 
| 16460 |  44 6a 76 75 20 70 6f 73 69 74 69 6f 6e 20 6f 66    20 50 4f 49 4e 54 20 69 6e 20 44 6a 76 75 20 74  | Djvu.position.of.POINT.in.Djvu.t | 
| 16480 |  65 78 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28    77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66  | ext.buffer."...(with-current-buf | 
| 164a0 |  66 65 72 20 28 64 6a 76 75 2d 72 65 66 20 74 65    78 74 2d 62 75 66 20 64 6f 63 29 0a 20 20 20 20  | fer.(djvu-ref.text-buf.doc)..... | 
| 164c0 |  28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a    20 20 20 20 20 20 28 69 66 20 70 6f 69 6e 74 20  | (save-excursion.......(if.point. | 
| 164e0 |  28 67 6f 74 6f 2d 63 68 61 72 20 70 6f 69 6e 74    29 29 0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e  | (goto-char.point)).......(beginn | 
| 16500 |  69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20    20 20 20 28 6c 65 74 20 28 7a 6f 6e 65 29 0a 20  | ing-of-line).......(let.(zone).. | 
| 16520 |  20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6e    6f 74 20 28 6f 72 20 28 73 65 74 71 20 7a 6f 6e  | .......(while.(not.(or.(setq.zon | 
| 16540 |  65 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 64 6a    76 75 2d 7a 6f 6e 65 2d 72 65 29 29 0a 20 20 20  | e.(looking-at.djvu-zone-re)).... | 
| 16560 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 62 6f 62 70 29 29 29 0a 20 20  | .....................(bobp)))... | 
| 16580 |  20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64    2d 6c 69 6e 65 20 2d 31 29 29 0a 20 20 20 20 20  | ........(forward-line.-1))...... | 
| 165a0 |  20 20 20 28 69 66 20 7a 6f 6e 65 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20  | ...(if.zone.............(mapcar. | 
| 165c0 |  23 27 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d    62 65 72 20 27 28 33 20 34 20 35 20 36 29 29 29  | #'djvu-match-number.'(3.4.5.6))) | 
| 165e0 |  29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76    75 2d 72 65 61 64 2d 74 65 78 74 20 28 26 6f 70  | ))))..(defun.djvu-read-text.(&op | 
| 16600 |  74 69 6f 6e 61 6c 20 64 6f 63 29 0a 20 20 22 52    65 61 64 20 74 65 78 74 20 6f 66 20 61 20 44 6a  | tional.doc)..."Read.text.of.a.Dj | 
| 16620 |  76 75 20 64 6f 63 75 6d 65 6e 74 20 66 72 6f 6d    20 74 65 78 74 20 62 75 66 66 65 72 2e 22 0a 20  | vu.document.from.text.buffer.".. | 
| 16640 |  20 28 6c 65 74 20 28 6f 62 6a 65 63 74 29 0a 20    20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74  | .(let.(object).....(with-current | 
| 16660 |  2d 62 75 66 66 65 72 20 28 64 6a 76 75 2d 72 65    66 20 74 65 78 74 2d 62 75 66 20 64 6f 63 29 0a  | -buffer.(djvu-ref.text-buf.doc). | 
| 16680 |  20 20 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 28 73  | ......(save-excursion.........(s | 
| 166a0 |  61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a    20 20 20 20 20 20 20 20 20 20 28 77 69 64 65 6e  | ave-restriction...........(widen | 
| 166c0 |  29 0a 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 2d 6d 69  | )...........(goto-char.(point-mi | 
| 166e0 |  6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 75    6e 6c 65 73 73 20 28 65 6f 62 70 29 0a 20 20 20  | n))...........(unless.(eobp).... | 
| 16700 |  20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 69 74    69 6f 6e 2d 63 61 73 65 20 6e 69 6c 0a 20 20 20  | .........(condition-case.nil.... | 
| 16720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 6f 62 6a 65 63 74 20 28 72 65 61 64 20  | .............(setq.object.(read. | 
| 16740 |  28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | (current-buffer))).............. | 
| 16760 |  20 28 65 72 72 6f 72 20 28 65 72 72 6f 72 20 22    53 79 6e 74 61 78 20 65 72 72 6f 72 20 69 6e 20  | .(error.(error."Syntax.error.in. | 
| 16780 |  72 61 77 20 74 65 78 74 22 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 73 6b 69 70 2d 63  | raw.text"))).............(skip-c | 
| 167a0 |  68 61 72 73 2d 66 6f 72 77 61 72 64 20 22 20 5c    74 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20  | hars-forward.".\t\n")........... | 
| 167c0 |  20 20 3b 3b 20 57 65 20 73 68 6f 75 6c 64 20 68    61 76 65 20 73 77 61 6c 6c 6f 77 65 64 20 61 6c  | ..;;.We.should.have.swallowed.al | 
| 167e0 |  6c 20 72 61 77 20 74 65 78 74 2e 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20  | l.raw.text..............(unless. | 
| 16800 |  28 65 6f 62 70 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 65 72 72 6f 72 20 22 53 79 6e  | (eobp)...............(error."Syn | 
| 16820 |  74 61 78 20 65 72 72 6f 72 20 69 6e 20 72 61 77    20 74 65 78 74 20 28 65 6e 64 20 6f 66 20 62 75  | tax.error.in.raw.text.(end.of.bu | 
| 16840 |  66 66 65 72 29 22 29 29 29 29 29 29 0a 20 20 20    20 6f 62 6a 65 63 74 29 29 0a 0a 28 64 65 66 75  | ffer)")))))).....object))..(defu | 
| 16860 |  6e 20 64 6a 76 75 2d 73 61 76 65 2d 74 65 78 74    20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 20  | n.djvu-save-text.(&optional.doc. | 
| 16880 |  73 63 72 69 70 74 29 0a 20 20 22 53 61 76 65 20    74 65 78 74 20 6f 66 20 74 68 65 20 44 6a 76 75  | script)..."Save.text.of.the.Djvu | 
| 168a0 |  20 64 6f 63 75 6d 65 6e 74 20 44 4f 43 2e 20 20    54 68 69 73 20 75 70 64 61 74 65 73 20 74 68 65  | .document.DOC...This.updates.the | 
| 168c0 |  20 52 65 61 64 20 62 75 66 66 65 72 20 66 6f 72    20 44 4f 43 2e 0a 44 4f 43 20 64 65 66 61 75 6c  | .Read.buffer.for.DOC..DOC.defaul | 
| 168e0 |  74 73 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e    74 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e  | ts.to.the.current.Djvu.document. | 
| 16900 |  0a 49 66 20 53 43 52 49 50 54 20 69 73 20 6e 6f    6e 2d 6e 69 6c 2c 20 64 75 6d 70 20 74 68 65 20  | .If.SCRIPT.is.non-nil,.dump.the. | 
| 16920 |  74 65 78 74 20 62 75 66 66 65 72 20 69 6e 74 6f    20 74 68 65 20 64 6a 76 75 73 65 64 20 73 63 72  | text.buffer.into.the.djvused.scr | 
| 16940 |  69 70 74 20 66 69 6c 65 20 53 43 52 49 50 54 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | ipt.file.SCRIPT."...(interactive | 
| 16960 |  29 0a 20 20 28 75 6e 6c 65 73 73 20 64 6f 63 20    28 73 65 74 71 20 64 6f 63 20 64 6a 76 75 2d 64  | )...(unless.doc.(setq.doc.djvu-d | 
| 16980 |  6f 63 29 29 0a 20 20 28 6c 65 74 20 28 28 6f 62    6a 65 63 74 31 20 28 64 6a 76 75 2d 72 65 61 64  | oc))...(let.((object1.(djvu-read | 
| 169a0 |  2d 74 65 78 74 20 64 6f 63 29 29 0a 20 20 20 20    20 20 20 20 28 6f 62 6a 65 63 74 32 20 28 64 6a  | -text.doc)).........(object2.(dj | 
| 169c0 |  76 75 2d 72 65 61 64 2d 74 65 78 74 20 64 6f 63    29 29 29 20 3b 20 74 72 75 65 20 72 65 63 75 72  | vu-read-text.doc))).;.true.recur | 
| 169e0 |  73 69 76 65 20 63 6f 70 79 20 6f 66 20 4f 42 4a    45 43 54 31 0a 20 20 20 20 3b 3b 20 52 65 2d 69  | sive.copy.of.OBJECT1.....;;.Re-i | 
| 16a00 |  6e 69 74 69 61 6c 69 7a 69 6e 67 20 74 68 65 20    74 65 78 74 20 62 75 66 66 65 72 20 62 6c 6f 77  | nitializing.the.text.buffer.blow | 
| 16a20 |  73 20 75 70 20 74 68 65 20 75 6e 64 6f 20 6c 69    73 74 20 6f 66 20 74 68 69 73 20 62 75 66 66 65  | s.up.the.undo.list.of.this.buffe | 
| 16a40 |  72 2e 0a 20 20 20 20 3b 3b 20 54 68 69 73 20 73    74 65 70 20 69 73 20 6f 6e 6c 79 20 6e 65 65 64  | r......;;.This.step.is.only.need | 
| 16a60 |  65 64 20 69 66 20 77 65 20 63 68 61 6e 67 65 64    20 74 68 65 20 74 65 78 74 20 7a 6f 6e 65 73 20  | ed.if.we.changed.the.text.zones. | 
| 16a80 |  28 65 2e 67 2e 2c 20 77 68 65 6e 0a 20 20 20 20    3b 3b 20 6d 65 72 67 69 6e 67 20 6c 69 6e 65 73  | (e.g.,.when.....;;.merging.lines | 
| 16aa0 |  29 2e 20 20 53 6f 20 77 65 20 63 68 65 63 6b 20    77 68 65 74 68 65 72 20 60 64 6a 76 75 2d 74 65  | )...So.we.check.whether.`djvu-te | 
| 16ac0 |  78 74 2d 7a 6f 6e 65 27 20 68 61 73 20 63 68 61    6e 67 65 64 0a 20 20 20 20 3b 3b 20 4f 42 4a 45  | xt-zone'.has.changed.....;;.OBJE | 
| 16ae0 |  43 54 2e 20 20 46 6f 72 20 74 68 69 73 2c 20 69    74 20 69 73 20 65 61 73 69 65 72 20 74 6f 20 72  | CT...For.this,.it.is.easier.to.r | 
| 16b00 |  65 61 64 20 4f 42 4a 45 43 54 20 74 77 69 63 65    20 74 68 61 6e 20 63 6f 70 79 69 6e 67 20 69 74  | ead.OBJECT.twice.than.copying.it | 
| 16b20 |  0a 20 20 20 20 3b 3b 20 72 65 63 75 72 73 69 76    65 6c 79 2e 0a 20 20 20 20 28 64 6a 76 75 2d 74  | .....;;.recursively......(djvu-t | 
| 16b40 |  65 78 74 2d 7a 6f 6e 65 20 6f 62 6a 65 63 74 31    20 30 20 28 6d 61 6b 65 2d 76 65 63 74 6f 72 20  | ext-zone.object1.0.(make-vector. | 
| 16b60 |  37 20 6e 69 6c 29 29 0a 20 20 20 20 28 75 6e 6c    65 73 73 20 28 65 71 75 61 6c 20 6f 62 6a 65 63  | 7.nil)).....(unless.(equal.objec | 
| 16b80 |  74 31 20 6f 62 6a 65 63 74 32 29 0a 20 20 20 20    20 20 28 64 6a 76 75 2d 69 6e 69 74 2d 74 65 78  | t1.object2).......(djvu-init-tex | 
| 16ba0 |  74 20 6f 62 6a 65 63 74 31 20 64 6f 63 29 29 0a    20 20 20 20 3b 3b 20 55 70 64 61 74 65 20 72 65  | t.object1.doc)).....;;.Update.re | 
| 16bc0 |  61 64 20 62 75 66 66 65 72 2e 20 20 57 65 20 64    6f 20 74 68 69 73 20 65 76 65 6e 20 69 66 20 74  | ad.buffer...We.do.this.even.if.t | 
| 16be0 |  68 65 20 74 65 78 74 20 62 75 66 66 65 72 20 69    73 20 6e 6f 74 0a 20 20 20 20 3b 3b 20 6d 6f 64  | he.text.buffer.is.not.....;;.mod | 
| 16c00 |  69 66 69 65 64 2c 20 61 73 20 77 65 20 6d 61 79    20 68 61 76 65 20 75 6e 64 6f 6e 65 20 61 20 63  | ified,.as.we.may.have.undone.a.c | 
| 16c20 |  68 61 6e 67 65 20 69 6e 20 74 68 65 20 74 65 78    74 20 62 75 66 66 65 72 20 74 68 61 74 0a 20 20  | hange.in.the.text.buffer.that... | 
| 16c40 |  20 20 3b 3b 20 70 72 65 76 69 6f 75 73 6c 79 20    70 72 6f 70 61 67 61 74 65 64 20 61 6c 73 6f 20  | ..;;.previously.propagated.also. | 
| 16c60 |  69 6e 74 6f 20 74 68 65 20 72 65 61 64 20 62 75    66 66 65 72 2e 20 20 54 68 65 20 52 65 61 64 20  | into.the.read.buffer...The.Read. | 
| 16c80 |  62 75 66 66 65 72 0a 20 20 20 20 3b 3b 20 68 61    73 20 6e 6f 20 75 6e 64 6f 20 6c 69 73 74 2e 0a  | buffer.....;;.has.no.undo.list.. | 
| 16ca0 |  20 20 20 20 28 64 6a 76 75 2d 69 6e 69 74 2d 72    65 61 64 20 6f 62 6a 65 63 74 31 20 64 6f 63 29  | ....(djvu-init-read.object1.doc) | 
| 16cc0 |  0a 20 20 20 20 3b 3b 20 49 74 20 69 73 20 61 20    62 69 74 20 6f 66 20 61 20 68 61 63 6b 20 74 6f  | .....;;.It.is.a.bit.of.a.hack.to | 
| 16ce0 |  20 75 73 65 20 74 68 69 73 20 63 6f 6d 6d 61 6e    64 20 66 6f 72 20 74 77 6f 20 72 61 74 68 65 72  | .use.this.command.for.two.rather | 
| 16d00 |  20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 3b    3b 20 70 75 72 70 6f 73 65 73 2e 20 20 42 75 74  | .different.....;;.purposes...But | 
| 16d20 |  20 77 65 20 64 6f 20 6e 6f 74 20 77 61 6e 74 20    74 6f 20 72 65 61 64 20 4f 42 4a 45 43 54 20 6f  | .we.do.not.want.to.read.OBJECT.o | 
| 16d40 |  6e 65 20 6d 6f 72 65 20 74 69 6d 65 2e 0a 20 20    20 20 28 69 66 20 73 63 72 69 70 74 0a 20 20 20  | ne.more.time......(if.script.... | 
| 16d60 |  20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d    62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20  | .....(with-temp-buffer.......... | 
| 16d80 |  20 28 73 65 74 71 20 62 75 66 66 65 72 2d 66 69    6c 65 2d 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d  | .(setq.buffer-file-coding-system | 
| 16da0 |  20 27 75 74 66 2d 38 29 0a 20 20 20 20 20 20 20    20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d  | .'utf-8)...........(insert.(form | 
| 16dc0 |  61 74 20 22 73 65 6c 65 63 74 20 25 64 5c 6e 72    65 6d 6f 76 65 2d 74 78 74 5c 6e 73 65 74 2d 74  | at."select.%d\nremove-txt\nset-t | 
| 16de0 |  78 74 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | xt\n"........................... | 
| 16e00 |  28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 20 64    6f 63 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | (djvu-ref.page.doc)))........... | 
| 16e20 |  28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 74 65 78    74 20 6f 62 6a 65 63 74 31 20 22 22 29 0a 20 20  | (djvu-insert-text.object1."")... | 
| 16e40 |  20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20    22 5c 6e 2e 5c 6e 22 29 20 3b 20 73 65 65 20 64  | ........(insert."\n.\n").;.see.d | 
| 16e60 |  6a 76 75 73 65 64 20 63 6f 6d 6d 61 6e 64 20 73    65 74 2d 74 78 74 0a 20 20 20 20 20 20 20 20 20  | jvused.command.set-txt.......... | 
| 16e80 |  20 28 77 72 69 74 65 2d 72 65 67 69 6f 6e 20 6e    69 6c 20 6e 69 6c 20 73 63 72 69 70 74 20 74 20  | .(write-region.nil.nil.script.t. | 
| 16ea0 |  30 29 29 29 29 29 20 3b 20 61 70 70 65 6e 64 20    74 6f 20 53 43 52 49 50 54 0a 0a 28 64 65 66 75  | 0))))).;.append.to.SCRIPT..(defu | 
| 16ec0 |  6e 20 64 6a 76 75 2d 74 65 78 74 2d 7a 6f 6e 65    20 28 6f 62 6a 65 63 74 20 64 65 70 74 68 20 7a  | n.djvu-text-zone.(object.depth.z | 
| 16ee0 |  6f 6e 65 73 29 0a 20 20 22 45 76 61 6c 75 61 74    65 20 5a 4f 4e 45 53 20 66 6f 72 20 74 65 78 74  | ones)..."Evaluate.ZONES.for.text | 
| 16f00 |  20 4f 42 4a 45 43 54 20 72 65 63 75 72 73 69 76    65 6c 79 2e 0a 54 68 69 73 20 72 65 61 72 72 61  | .OBJECT.recursively..This.rearra | 
| 16f20 |  6e 67 65 73 20 74 68 65 20 74 61 69 6c 20 6f 66    20 4f 42 4a 45 43 54 20 64 65 73 74 72 75 63 74  | nges.the.tail.of.OBJECT.destruct | 
| 16f40 |  69 76 65 6c 79 2e 0a 42 72 61 6e 63 68 65 73 20    6f 66 20 4f 42 4a 45 43 54 20 74 68 61 74 20 70  | ively..Branches.of.OBJECT.that.p | 
| 16f60 |  6f 69 6e 74 20 74 6f 20 65 6d 70 74 79 20 73 74    72 69 6e 67 73 20 61 72 65 20 72 65 6d 6f 76 65  | oint.to.empty.strings.are.remove | 
| 16f80 |  64 2e 22 0a 20 20 28 69 66 20 28 73 74 72 69 6e    67 70 20 28 6e 74 68 20 35 20 6f 62 6a 65 63 74  | d."...(if.(stringp.(nth.5.object | 
| 16fa0 |  29 29 0a 20 20 20 20 20 20 3b 3b 20 57 65 20 73    65 74 20 5a 4f 4e 45 53 20 6f 6e 6c 79 20 69 66  | )).......;;.We.set.ZONES.only.if | 
| 16fc0 |  20 77 65 20 68 61 76 65 20 73 6f 6d 65 74 68 69    6e 67 20 6e 6f 6e 74 72 69 76 69 61 6c 0a 20 20  | .we.have.something.nontrivial... | 
| 16fe0 |  20 20 20 20 28 63 6f 6e 64 20 28 28 6e 6f 74 20    28 65 71 75 61 6c 20 22 22 20 28 6e 74 68 20 35  | ....(cond.((not.(equal."".(nth.5 | 
| 17000 |  20 6f 62 6a 65 63 74 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 28 61 73 65 74 20 7a 6f  | .object)))..............(aset.zo | 
| 17020 |  6e 65 73 20 64 65 70 74 68 20 28 76 65 63 74 6f    72 20 28 6e 74 68 20 31 20 6f 62 6a 65 63 74 29  | nes.depth.(vector.(nth.1.object) | 
| 17040 |  20 28 6e 74 68 20 32 20 6f 62 6a 65 63 74 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(nth.2.object)................. | 
| 17060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6e 74 68 20 33 20 6f 62  | .......................(nth.3.ob | 
| 17080 |  6a 65 63 74 29 20 28 6e 74 68 20 34 20 6f 62 6a    65 63 74 29 29 29 29 0a 20 20 20 20 20 20 20 20  | ject).(nth.4.object))))......... | 
| 170a0 |  20 20 20 20 28 28 7a 65 72 6f 70 20 64 65 70 74    68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....((zerop.depth).............. | 
| 170c0 |  28 73 65 74 63 64 72 20 6f 62 6a 65 63 74 20 28    6c 69 73 74 20 30 20 30 20 30 20 30 20 22 22 29  | (setcdr.object.(list.0.0.0.0."") | 
| 170e0 |  29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 64    65 70 74 68 31 20 28 31 2b 20 64 65 70 74 68 29  | ))).....(let.((depth1.(1+.depth) | 
| 17100 |  29 0a 20 20 20 20 20 20 20 20 20 20 7a 6f 6e 65    20 72 65 6d 6f 76 65 29 0a 20 20 20 20 20 20 28  | )...........zone.remove).......( | 
| 17120 |  61 73 65 74 20 7a 6f 6e 65 73 20 64 65 70 74 68    20 6e 69 6c 29 0a 20 20 20 20 20 20 28 64 6f 6c  | aset.zones.depth.nil).......(dol | 
| 17140 |  69 73 74 20 28 65 6c 74 20 28 6e 74 68 63 64 72    20 35 20 6f 62 6a 65 63 74 29 29 0a 20 20 20 20  | ist.(elt.(nthcdr.5.object))..... | 
| 17160 |  20 20 20 20 28 61 73 65 74 20 7a 6f 6e 65 73 20    64 65 70 74 68 31 20 6e 69 6c 29 0a 20 20 20 20  | ....(aset.zones.depth1.nil)..... | 
| 17180 |  20 20 20 20 28 64 6a 76 75 2d 74 65 78 74 2d 7a    6f 6e 65 20 65 6c 74 20 64 65 70 74 68 31 20 7a  | ....(djvu-text-zone.elt.depth1.z | 
| 171a0 |  6f 6e 65 73 29 0a 20 20 20 20 20 20 20 20 28 6c    65 74 20 28 28 7a 6f 6e 65 31 20 28 61 72 65 66  | ones).........(let.((zone1.(aref | 
| 171c0 |  20 7a 6f 6e 65 73 20 64 65 70 74 68 31 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64  | .zones.depth1)))...........(cond | 
| 171e0 |  20 28 28 6e 6f 74 20 7a 6f 6e 65 31 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b  | .((not.zone1)..................; | 
| 17200 |  3b 20 45 4c 54 20 68 61 73 20 6e 6f 20 5a 4f 4e    45 31 20 62 65 63 61 75 73 65 20 69 74 20 70 6f  | ;.ELT.has.no.ZONE1.because.it.po | 
| 17220 |  69 6e 74 73 20 74 6f 20 61 6e 20 65 6d 70 74 79    20 73 74 72 69 6e 67 2e 0a 20 20 20 20 20 20 20  | ints.to.an.empty.string......... | 
| 17240 |  20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20    65 6c 74 20 72 65 6d 6f 76 65 29 29 0a 20 20 20  | ..........(push.elt.remove)).... | 
| 17260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 73    65 74 71 20 7a 6f 6e 65 20 28 61 72 65 66 20 7a  | .............((setq.zone.(aref.z | 
| 17280 |  6f 6e 65 73 20 64 65 70 74 68 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61  | ones.depth))..................(a | 
| 172a0 |  73 65 74 20 7a 6f 6e 65 20 30 20 28 6d 69 6e 20    28 61 72 65 66 20 7a 6f 6e 65 20 30 29 20 28 61  | set.zone.0.(min.(aref.zone.0).(a | 
| 172c0 |  72 65 66 20 7a 6f 6e 65 31 20 30 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ref.zone1.0))).................. | 
| 172e0 |  28 61 73 65 74 20 7a 6f 6e 65 20 31 20 28 6d 69    6e 20 28 61 72 65 66 20 7a 6f 6e 65 20 31 29 20  | (aset.zone.1.(min.(aref.zone.1). | 
| 17300 |  28 61 72 65 66 20 7a 6f 6e 65 31 20 31 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (aref.zone1.1)))................ | 
| 17320 |  20 20 28 61 73 65 74 20 7a 6f 6e 65 20 32 20 28    6d 61 78 20 28 61 72 65 66 20 7a 6f 6e 65 20 32  | ..(aset.zone.2.(max.(aref.zone.2 | 
| 17340 |  29 20 28 61 72 65 66 20 7a 6f 6e 65 31 20 32 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ).(aref.zone1.2))).............. | 
| 17360 |  20 20 20 20 28 61 73 65 74 20 7a 6f 6e 65 20 33    20 28 6d 61 78 20 28 61 72 65 66 20 7a 6f 6e 65  | ....(aset.zone.3.(max.(aref.zone | 
| 17380 |  20 33 29 20 28 61 72 65 66 20 7a 6f 6e 65 31 20    33 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | .3).(aref.zone1.3))))........... | 
| 173a0 |  20 20 20 20 20 20 28 74 20 28 61 73 65 74 20 7a    6f 6e 65 73 20 64 65 70 74 68 20 7a 6f 6e 65 31  | ......(t.(aset.zones.depth.zone1 | 
| 173c0 |  29 29 29 29 29 0a 20 20 20 20 20 20 28 69 66 20    72 65 6d 6f 76 65 0a 20 20 20 20 20 20 20 20 20  | ))))).......(if.remove.......... | 
| 173e0 |  20 28 6c 65 74 20 28 28 74 61 69 6c 20 28 6e 74    68 63 64 72 20 34 20 6f 62 6a 65 63 74 29 29 29  | .(let.((tail.(nthcdr.4.object))) | 
| 17400 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f    6c 69 73 74 20 28 65 6c 74 20 72 65 6d 6f 76 65  | .............(dolist.(elt.remove | 
| 17420 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 60 64 65 6c 71 27 20 72 65 6d 6f 76 65  | )...............;;.`delq'.remove | 
| 17440 |  73 20 61 6c 6c 20 6f 63 63 75 72 65 6e 63 65 73    20 6f 66 20 45 4c 54 20 66 72 6f 6d 20 54 41 49  | s.all.occurences.of.ELT.from.TAI | 
| 17460 |  4c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 65 74 63 64 72 20 74 61 69 6c 20 28 64  | L................(setcdr.tail.(d | 
| 17480 |  65 6c 71 20 65 6c 74 20 28 63 64 72 20 74 61 69    6c 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 63  | elq.elt.(cdr.tail)))))).......(c | 
| 174a0 |  6f 6e 64 20 28 28 73 65 74 71 20 7a 6f 6e 65 20    28 61 72 65 66 20 7a 6f 6e 65 73 20 64 65 70 74  | ond.((setq.zone.(aref.zones.dept | 
| 174c0 |  68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 65 74 63 64 72 20 6f 62 6a 65 63 74 20  | h))..............(setcdr.object. | 
| 174e0 |  28 61 70 70 65 6e 64 20 28 6d 61 70 63 61 72 20    23 27 69 64 65 6e 74 69 74 79 20 7a 6f 6e 65 29  | (append.(mapcar.#'identity.zone) | 
| 17500 |  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  | ................................ | 
| 17520 |  20 20 20 20 20 28 6e 74 68 63 64 72 20 35 20 6f    62 6a 65 63 74 29 29 29 29 0a 20 20 20 20 20 20  | .....(nthcdr.5.object))))....... | 
| 17540 |  20 20 20 20 20 20 28 28 7a 65 72 6f 70 20 64 65    70 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ......((zerop.depth)............ | 
| 17560 |  20 20 28 73 65 74 63 64 72 20 6f 62 6a 65 63 74    20 28 6c 69 73 74 20 30 20 30 20 30 20 30 20 22  | ..(setcdr.object.(list.0.0.0.0." | 
| 17580 |  22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20  | "))).............(t............. | 
| 175a0 |  20 28 73 65 74 63 64 72 20 6f 62 6a 65 63 74 20    6e 69 6c 29 29 29 29 29 29 0a 0a 28 64 65 66 75  | .(setcdr.object.nil))))))..(defu | 
| 175c0 |  6e 20 64 6a 76 75 2d 73 63 72 69 70 74 2d 62 75    66 66 65 72 20 28 62 75 66 66 65 72 29 0a 20 20  | n.djvu-script-buffer.(buffer)... | 
| 175e0 |  22 52 65 74 75 72 6e 20 62 75 66 66 65 72 20 66    6f 72 20 64 6a 76 75 20 73 63 72 69 70 74 2e 0a  | "Return.buffer.for.djvu.script.. | 
| 17600 |  74 20 6d 65 61 6e 73 20 63 75 72 72 65 6e 74 20    62 75 66 66 65 72 2c 20 6e 69 6c 20 6d 65 61 6e  | t.means.current.buffer,.nil.mean | 
| 17620 |  73 20 60 64 6a 76 75 2d 73 63 72 69 70 74 2d 62    75 66 66 65 72 27 2e 22 0a 20 20 28 69 66 20 28  | s.`djvu-script-buffer'."...(if.( | 
| 17640 |  65 71 20 74 20 62 75 66 66 65 72 29 0a 20 20 20    20 20 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66  | eq.t.buffer).......(current-buff | 
| 17660 |  65 72 29 0a 20 20 20 20 28 67 65 74 2d 62 75 66    66 65 72 2d 63 72 65 61 74 65 20 28 6f 72 20 62  | er).....(get-buffer-create.(or.b | 
| 17680 |  75 66 66 65 72 20 64 6a 76 75 2d 73 63 72 69 70    74 2d 62 75 66 66 65 72 29 29 29 29 0a 0a 28 64  | uffer.djvu-script-buffer))))..(d | 
| 176a0 |  65 66 75 6e 20 64 6a 76 75 2d 74 65 78 74 2d 73    63 72 69 70 74 20 28 26 6f 70 74 69 6f 6e 61 6c  | efun.djvu-text-script.(&optional | 
| 176c0 |  20 64 6f 63 20 62 75 66 66 65 72 20 70 61 67 65    20 64 69 73 70 6c 61 79 29 0a 20 20 22 43 72 65  | .doc.buffer.page.display)..."Cre | 
| 176e0 |  61 74 65 20 64 6a 76 75 73 65 64 20 73 63 72 69    70 74 20 66 6f 72 20 63 6f 6d 70 6c 65 74 65 20  | ate.djvused.script.for.complete. | 
| 17700 |  74 65 78 74 20 6c 61 79 65 72 20 6f 66 20 44 4f    43 20 69 6e 20 42 55 46 46 45 52 2e 0a 49 66 20  | text.layer.of.DOC.in.BUFFER..If. | 
| 17720 |  70 72 65 66 69 78 20 50 41 47 45 20 69 73 20 6e    6f 6e 2d 6e 69 6c 20 63 72 65 61 74 65 20 69 6e  | prefix.PAGE.is.non-nil.create.in | 
| 17740 |  73 74 65 61 64 20 73 63 72 69 70 74 20 66 6f 72    20 6f 6e 6c 79 20 70 61 67 65 20 50 41 47 45 2e  | stead.script.for.only.page.PAGE. | 
| 17760 |  0a 42 55 46 46 45 52 20 64 65 66 61 75 6c 74 73    20 74 6f 20 60 64 6a 76 75 2d 73 63 72 69 70 74  | .BUFFER.defaults.to.`djvu-script | 
| 17780 |  2d 62 75 66 66 65 72 27 2e 20 20 49 66 20 42 55    46 46 45 52 20 69 73 20 74 20 75 73 65 20 63 75  | -buffer'...If.BUFFER.is.t.use.cu | 
| 177a0 |  72 72 65 6e 74 20 62 75 66 66 65 72 2e 0a 0a 59    6f 75 20 63 61 6e 20 65 64 69 74 20 74 68 65 20  | rrent.buffer...You.can.edit.the. | 
| 177c0 |  74 65 78 74 20 73 63 72 69 70 74 20 69 6e 20 42    55 46 46 45 52 2e 20 20 41 66 74 65 72 77 61 72  | text.script.in.BUFFER...Afterwar | 
| 177e0 |  64 73 20 79 6f 75 20 63 61 6e 20 72 65 2d 61 70    70 6c 79 0a 74 68 69 73 20 73 63 72 69 70 74 20  | ds.you.can.re-apply.this.script. | 
| 17800 |  75 73 69 6e 67 20 60 64 6a 76 75 2d 70 72 6f 63    65 73 73 2d 73 63 72 69 70 74 27 2e 20 20 54 68  | using.`djvu-process-script'...Th | 
| 17820 |  69 73 20 63 6f 64 65 20 77 69 6c 6c 20 6e 6f 74    20 28 63 61 6e 6e 6f 74 29 20 63 68 65 63 6b 0a  | is.code.will.not.(cannot).check. | 
| 17840 |  77 68 65 74 68 65 72 20 74 68 65 20 65 64 69 74    65 64 20 73 63 72 69 70 74 20 69 73 20 6d 65 61  | whether.the.edited.script.is.mea | 
| 17860 |  6e 69 6e 67 66 75 6c 20 66 6f 72 20 44 4f 43 2e    20 20 55 73 65 20 61 74 20 79 6f 75 72 20 6f 77  | ningful.for.DOC...Use.at.your.ow | 
| 17880 |  6e 20 72 69 73 6b 2e 0a 59 6f 75 20 67 65 74 20    77 68 61 74 20 79 6f 75 20 77 61 6e 74 2e 22 0a  | n.risk..You.get.what.you.want.". | 
| 178a0 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 28    6c 69 73 74 20 6e 69 6c 20 6e 69 6c 20 28 69 66  | ..(interactive.(list.nil.nil.(if | 
| 178c0 |  20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d    61 72 67 20 28 64 6a 76 75 2d 72 65 66 20 70 61  | .current-prefix-arg.(djvu-ref.pa | 
| 178e0 |  67 65 29 29 20 74 29 29 0a 20 20 28 6c 65 74 20    28 28 64 6f 63 20 28 6f 72 20 64 6f 63 20 64 6a  | ge)).t))...(let.((doc.(or.doc.dj | 
| 17900 |  76 75 2d 64 6f 63 29 29 0a 20 20 20 20 20 20 20    20 28 62 75 66 66 65 72 20 28 64 6a 76 75 2d 73  | vu-doc)).........(buffer.(djvu-s | 
| 17920 |  63 72 69 70 74 2d 62 75 66 66 65 72 20 62 75 66    66 65 72 29 29 29 0a 20 20 20 20 28 64 6a 76 75  | cript-buffer.buffer))).....(djvu | 
| 17940 |  2d 73 61 76 65 20 64 6f 63 20 74 29 0a 20 20 20    20 3b 3b 20 50 75 74 20 74 68 69 73 20 69 6e 20  | -save.doc.t).....;;.Put.this.in. | 
| 17960 |  61 20 73 65 70 61 72 61 74 65 20 62 75 66 66 65    72 21 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72  | a.separate.buffer!.....(with-cur | 
| 17980 |  72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66    65 72 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28  | rent-buffer.buffer.......(let.(( | 
| 179a0 |  62 75 66 66 65 72 2d 75 6e 64 6f 2d 6c 69 73 74    20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | buffer-undo-list.t)............. | 
| 179c0 |  28 64 6a 76 75 2d 69 6e 69 74 20 74 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72  | (djvu-init.t).............buffer | 
| 179e0 |  2d 72 65 61 64 2d 6f 6e 6c 79 29 0a 20 20 20 20    20 20 20 20 28 64 6a 76 75 2d 73 63 72 69 70 74  | -read-only).........(djvu-script | 
| 17a00 |  2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 28    65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20  | -mode).........(erase-buffer)... | 
| 17a20 |  20 20 20 20 20 20 3b 3b 20 41 6c 77 61 79 73 20    63 72 65 61 74 65 20 61 20 73 65 6c 66 2d 63 6f  | ......;;.Always.create.a.self-co | 
| 17a40 |  6e 74 61 69 6e 65 64 20 64 6a 76 75 73 65 64 20    73 63 72 69 70 74 2e 0a 20 20 20 20 20 20 20 20  | ntained.djvused.script.......... | 
| 17a60 |  28 69 66 20 70 61 67 65 20 28 69 6e 73 65 72 74    20 28 66 6f 72 6d 61 74 20 22 73 65 6c 65 63 74  | (if.page.(insert.(format."select | 
| 17a80 |  20 5c 22 25 73 5c 22 20 23 20 70 61 67 65 20 25    64 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20  | .\"%s\".#.page.%d\n"............ | 
| 17aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 63 64 72 20 28 61 73 73 71  | ......................(cdr.(assq | 
| 17ac0 |  20 70 61 67 65 20 28 64 6a 76 75 2d 72 65 66 20    70 61 67 65 2d 69 64 20 64 6f 63 29 29 29 0a 20  | .page.(djvu-ref.page-id.doc))).. | 
| 17ae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 17b00 |  70 61 67 65 29 29 29 0a 20 20 20 20 20 20 20 20    28 64 6a 76 75 2d 64 6a 76 75 73 65 64 20 64 6f  | page))).........(djvu-djvused.do | 
| 17b20 |  63 20 74 20 22 2d 65 22 20 28 66 6f 72 6d 61 74    20 22 73 65 6c 65 63 74 20 25 73 3b 20 6f 75 74  | c.t."-e".(format."select.%s;.out | 
| 17b40 |  70 75 74 2d 74 78 74 3b 22 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | put-txt;"....................... | 
| 17b60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6f 72 20 70 61 67 65 20 22 22 29 29  | ...................(or.page."")) | 
| 17b80 |  29 0a 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 2d 6d 69 6e 29  | ).........(goto-char.(point-min) | 
| 17ba0 |  29 29 0a 20 20 20 20 20 20 28 73 65 74 2d 62 75    66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 20  | )).......(set-buffer-modified-p. | 
| 17bc0 |  6e 69 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71    20 62 75 66 66 65 72 2d 75 6e 64 6f 2d 6c 69 73  | nil).......(setq.buffer-undo-lis | 
| 17be0 |  74 20 6e 69 6c 29 29 0a 20 20 20 20 28 69 66 20    64 69 73 70 6c 61 79 20 28 73 77 69 74 63 68 2d  | t.nil)).....(if.display.(switch- | 
| 17c00 |  74 6f 2d 62 75 66 66 65 72 20 62 75 66 66 65 72    29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76  | to-buffer.buffer))))..(defun.djv | 
| 17c20 |  75 2d 70 72 6f 63 65 73 73 2d 73 63 72 69 70 74    20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 20  | u-process-script.(&optional.doc. | 
| 17c40 |  62 75 66 66 65 72 20 6f 62 65 79 2d 72 65 73 74    72 69 63 74 69 6f 6e 73 29 0a 20 20 22 46 6f 72  | buffer.obey-restrictions)..."For | 
| 17c60 |  20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 20 44    4f 43 20 61 70 70 6c 79 20 74 68 65 20 64 6a 76  | .Djvu.document.DOC.apply.the.djv | 
| 17c80 |  75 73 65 64 20 73 63 72 69 70 74 20 69 6e 20 42    55 46 46 45 52 2e 0a 55 73 65 20 61 74 20 79 6f  | used.script.in.BUFFER..Use.at.yo | 
| 17ca0 |  75 72 20 6f 77 6e 20 72 69 73 6b 2e 20 20 59 6f    75 20 67 65 74 20 77 68 61 74 20 79 6f 75 20 77  | ur.own.risk...You.get.what.you.w | 
| 17cc0 |  61 6e 74 2e 20 20 54 68 69 73 20 63 6f 64 65 20    64 6f 65 73 20 6e 6f 74 20 28 63 61 6e 6e 6f 74  | ant...This.code.does.not.(cannot | 
| 17ce0 |  29 0a 63 68 65 63 6b 20 77 68 65 74 68 65 72 20    74 68 65 20 73 63 72 69 70 74 20 69 73 20 6d 65  | ).check.whether.the.script.is.me | 
| 17d00 |  61 6e 69 6e 67 66 75 6c 2e 20 20 55 6e 6c 65 73    73 20 70 72 65 66 69 78 20 4f 42 45 59 2d 52 45  | aningful...Unless.prefix.OBEY-RE | 
| 17d20 |  53 54 52 49 43 54 49 4f 4e 53 0a 69 73 20 6e 6f    6e 2d 6e 69 6c 2c 20 74 68 72 6f 77 20 61 6e 20  | STRICTIONS.is.non-nil,.throw.an. | 
| 17d40 |  65 72 72 6f 72 20 69 66 20 42 55 46 46 45 52 20    69 73 20 6e 61 72 72 6f 77 65 64 2e 0a 44 4f 43  | error.if.BUFFER.is.narrowed..DOC | 
| 17d60 |  20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 68 65    20 63 75 72 72 65 6e 74 20 44 6a 76 75 20 64 6f  | .defaults.to.the.current.Djvu.do | 
| 17d80 |  63 75 6d 65 6e 74 2e 0a 42 55 46 46 45 52 20 64    65 66 61 75 6c 74 73 20 74 6f 20 60 64 6a 76 75  | cument..BUFFER.defaults.to.`djvu | 
| 17da0 |  2d 73 63 72 69 70 74 2d 62 75 66 66 65 72 27 2e    20 20 49 66 20 42 55 46 46 45 52 20 69 73 20 74  | -script-buffer'...If.BUFFER.is.t | 
| 17dc0 |  2c 20 75 73 65 20 63 75 72 72 65 6e 74 20 62 75    66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61  | ,.use.current.buffer."...(intera | 
| 17de0 |  63 74 69 76 65 20 28 6c 69 73 74 20 6e 69 6c 20    6e 69 6c 20 63 75 72 72 65 6e 74 2d 70 72 65 66  | ctive.(list.nil.nil.current-pref | 
| 17e00 |  69 78 2d 61 72 67 29 29 0a 20 20 28 6c 65 74 20    28 28 64 6f 63 20 28 6f 72 20 64 6f 63 20 64 6a  | ix-arg))...(let.((doc.(or.doc.dj | 
| 17e20 |  76 75 2d 64 6f 63 29 29 29 0a 20 20 20 20 28 75    6e 6c 65 73 73 20 64 6f 63 20 28 75 73 65 72 2d  | vu-doc))).....(unless.doc.(user- | 
| 17e40 |  65 72 72 6f 72 20 22 4e 6f 20 44 6a 76 75 20 64    6f 63 22 29 29 0a 20 20 20 20 28 64 6a 76 75 2d  | error."No.Djvu.doc")).....(djvu- | 
| 17e60 |  73 61 76 65 20 64 6f 63 20 74 29 0a 20 20 20 20    28 64 6a 76 75 2d 77 69 74 68 2d 74 65 6d 70 2d  | save.doc.t).....(djvu-with-temp- | 
| 17e80 |  66 69 6c 65 20 73 63 72 69 70 74 0a 20 20 20 20    20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d  | file.script.......(with-current- | 
| 17ea0 |  62 75 66 66 65 72 20 28 64 6a 76 75 2d 73 63 72    69 70 74 2d 62 75 66 66 65 72 20 62 75 66 66 65  | buffer.(djvu-script-buffer.buffe | 
| 17ec0 |  72 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 49 66    20 42 55 46 46 45 52 20 69 73 20 6e 61 72 72 6f  | r).........;;.If.BUFFER.is.narro | 
| 17ee0 |  77 65 64 2c 20 77 65 20 70 72 6f 63 65 73 73 20    6f 6e 6c 79 20 74 68 69 73 20 70 61 72 74 2e 0a  | wed,.we.process.only.this.part.. | 
| 17f00 |  20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20    28 6f 72 20 6f 62 65 79 2d 72 65 73 74 72 69 63  | ........(unless.(or.obey-restric | 
| 17f20 |  74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c  | tions.....................(equal | 
| 17f40 |  20 28 73 61 76 65 2d 72 65 73 74 72 69 63 74 69    6f 6e 20 3b 20 6e 6f 74 20 6e 61 72 72 6f 77 65  | .(save-restriction.;.not.narrowe | 
| 17f60 |  64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | d..............................( | 
| 17f80 |  77 69 64 65 6e 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | widen).......................... | 
| 17fa0 |  20 20 20 20 28 2d 20 28 70 6f 69 6e 74 2d 6d 61    78 29 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 29  | ....(-.(point-max).(point-min))) | 
| 17fc0 |  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 2d 20 28  | ............................(-.( | 
| 17fe0 |  70 6f 69 6e 74 2d 6d 61 78 29 20 28 70 6f 69 6e    74 2d 6d 69 6e 29 29 29 29 0a 20 20 20 20 20 20  | point-max).(point-min))))....... | 
| 18000 |  20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20    22 53 63 72 69 70 74 20 62 75 66 66 65 72 20 6e  | ....(user-error."Script.buffer.n | 
| 18020 |  61 72 72 6f 77 65 64 22 29 29 0a 20 20 20 20 20    20 20 20 28 6c 65 74 20 28 28 62 75 66 66 65 72  | arrowed")).........(let.((buffer | 
| 18040 |  2d 66 69 6c 65 2d 63 6f 64 69 6e 67 2d 73 79 73    74 65 6d 20 27 75 74 66 2d 38 29 29 0a 20 20 20  | -file-coding-system.'utf-8)).... | 
| 18060 |  20 20 20 20 20 20 20 28 77 72 69 74 65 2d 72 65    67 69 6f 6e 20 6e 69 6c 20 6e 69 6c 20 73 63 72  | .......(write-region.nil.nil.scr | 
| 18080 |  69 70 74 20 6e 69 6c 20 30 29 29 29 0a 20 20 20    20 20 20 28 64 6a 76 75 2d 64 6a 76 75 73 65 64  | ipt.nil.0))).......(djvu-djvused | 
| 180a0 |  20 64 6f 63 20 6e 69 6c 20 22 2d 66 22 20 73 63    72 69 70 74 20 22 2d 73 22 29 29 0a 20 20 20 20  | .doc.nil."-f".script."-s"))..... | 
| 180c0 |  3b 3b 20 52 65 64 69 73 70 6c 61 79 0a 20 20 20    20 28 64 6a 76 75 2d 69 6e 69 74 2d 70 61 67 65  | ;;.Redisplay.....(djvu-init-page | 
| 180e0 |  20 6e 69 6c 20 64 6f 63 29 29 29 0a 0a 3b 3b 3b    20 44 6a 76 75 20 52 65 61 64 20 6d 6f 64 65 0a  | .nil.doc)))..;;;.Djvu.Read.mode. | 
| 18100 |  0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 69 6e 69    74 2d 72 65 61 64 20 28 6f 62 6a 65 63 74 20 26  | .(defun.djvu-init-read.(object.& | 
| 18120 |  6f 70 74 69 6f 6e 61 6c 20 64 6f 63 20 72 65 73    65 74 29 0a 20 20 28 77 69 74 68 2d 63 75 72 72  | optional.doc.reset)...(with-curr | 
| 18140 |  65 6e 74 2d 62 75 66 66 65 72 20 28 64 6a 76 75    2d 72 65 66 20 72 65 61 64 2d 62 75 66 20 64 6f  | ent-buffer.(djvu-ref.read-buf.do | 
| 18160 |  63 29 0a 20 20 20 20 28 6c 65 74 20 28 28 64 6a    76 75 2d 72 65 63 74 2d 6c 69 73 74 20 28 64 6a  | c).....(let.((djvu-rect-list.(dj | 
| 18180 |  76 75 2d 72 65 66 20 72 65 63 74 2d 6c 69 73 74    20 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 20  | vu-ref.rect-list.doc)).......... | 
| 181a0 |  20 28 64 70 6f 73 20 28 75 6e 6c 65 73 73 20 72    65 73 65 74 20 28 64 6a 76 75 2d 72 65 61 64 2d  | .(dpos.(unless.reset.(djvu-read- | 
| 181c0 |  64 70 6f 73 20 6e 69 6c 20 64 6f 63 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72  | dpos.nil.doc)))...........buffer | 
| 181e0 |  2d 72 65 61 64 2d 6f 6e 6c 79 20 64 6a 76 75 2d    6c 61 73 74 2d 72 65 63 74 29 0a 20 20 20 20 20  | -read-only.djvu-last-rect)...... | 
| 18200 |  20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29 0a    20 20 20 20 20 20 28 64 6a 76 75 2d 69 6e 73 65  | .(erase-buffer).......(djvu-inse | 
| 18220 |  72 74 2d 72 65 61 64 20 6f 62 6a 65 63 74 29 0a    20 20 20 20 20 20 28 64 6a 76 75 2d 69 6e 73 65  | rt-read.object).......(djvu-inse | 
| 18240 |  72 74 2d 72 65 61 64 2d 70 72 6f 70 29 0a 20 20    20 20 20 20 28 69 66 20 72 65 73 65 74 0a 20 20  | rt-read-prop).......(if.reset... | 
| 18260 |  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 2d 6d 69 6e 29 29 0a  | ........(goto-char.(point-min)). | 
| 18280 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 67 6f    74 6f 2d 72 65 61 64 20 64 70 6f 73 29 29 29 0a  | ........(djvu-goto-read.dpos))). | 
| 182a0 |  20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72 2d    6d 6f 64 69 66 69 65 64 2d 70 20 6e 69 6c 29 0a  | ....(set-buffer-modified-p.nil). | 
| 182c0 |  20 20 20 20 28 73 65 74 71 20 62 75 66 66 65 72    2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 0a 20 20  | ....(setq.buffer-read-only.t)... | 
| 182e0 |  20 20 28 69 66 20 64 6a 76 75 2d 69 6d 61 67 65    2d 6d 6f 64 65 20 28 64 6a 76 75 2d 69 6d 61 67  | ..(if.djvu-image-mode.(djvu-imag | 
| 18300 |  65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a    76 75 2d 69 6e 73 65 72 74 2d 72 65 61 64 20 28  | e))))..(defun.djvu-insert-read.( | 
| 18320 |  6f 62 6a 65 63 74 29 0a 20 20 22 44 69 73 70 6c    61 79 20 74 65 78 74 20 4f 42 4a 45 43 54 20 72  | object)..."Display.text.OBJECT.r | 
| 18340 |  65 63 75 72 73 69 76 65 6c 79 2e 22 0a 20 20 28    6c 65 74 20 28 28 6f 70 6f 69 6e 74 20 28 70 6f  | ecursively."...(let.((opoint.(po | 
| 18360 |  69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 28 74    61 69 6c 20 28 6e 74 68 63 64 72 20 35 20 6f 62  | int)).........(tail.(nthcdr.5.ob | 
| 18380 |  6a 65 63 74 29 29 29 0a 20 20 20 20 28 69 66 20    28 73 74 72 69 6e 67 70 20 28 63 61 72 20 74 61  | ject))).....(if.(stringp.(car.ta | 
| 183a0 |  69 6c 29 29 0a 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 28 69  | il)).........(progn...........(i | 
| 183c0 |  6e 73 65 72 74 20 28 63 61 72 20 74 61 69 6c 29    29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 50  | nsert.(car.tail))...........;;.P | 
| 183e0 |  72 6f 70 65 72 74 69 7a 65 20 74 68 65 20 72 65    61 64 20 62 75 66 66 65 72 20 61 63 63 6f 72 64  | ropertize.the.read.buffer.accord | 
| 18400 |  69 6e 67 20 74 6f 20 60 64 6a 76 75 2d 72 65 63    74 2d 6c 69 73 74 27 0a 20 20 20 20 20 20 20 20  | ing.to.`djvu-rect-list'......... | 
| 18420 |  20 20 28 69 66 20 64 6a 76 75 2d 72 65 63 74 2d    6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20  | ..(if.djvu-rect-list............ | 
| 18440 |  20 20 20 28 6c 65 74 20 28 3b 3b 20 54 72 79 20    6c 61 73 74 20 72 65 63 74 20 66 69 72 73 74 2e  | ...(let.(;;.Try.last.rect.first. | 
| 18460 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 72 65 63 74 2d 6c 69 73 74 20  | .....................(rect-list. | 
| 18480 |  28 69 66 20 64 6a 76 75 2d 6c 61 73 74 2d 72 65    63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | (if.djvu-last-rect.............. | 
| 184a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 63 6f 6e 73 20 28 6e 74 68  | ......................(cons.(nth | 
| 184c0 |  63 64 72 20 32 20 64 6a 76 75 2d 6c 61 73 74 2d    72 65 63 74 29 20 64 6a 76 75 2d 72 65 63 74 2d  | cdr.2.djvu-last-rect).djvu-rect- | 
| 184e0 |  6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | list)........................... | 
| 18500 |  20 20 20 20 20 20 20 64 6a 76 75 2d 72 65 63 74    2d 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20  | .......djvu-rect-list))......... | 
| 18520 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 43    65 6e 74 65 72 20 70 6f 73 69 74 69 6f 6e 20 6f  | ............;;.Center.position.o | 
| 18540 |  66 20 63 75 72 72 65 6e 74 20 6f 62 6a 65 63 74    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | f.current.object................ | 
| 18560 |  20 20 20 20 20 28 78 20 28 2f 20 28 2b 20 28 6e    74 68 20 31 20 6f 62 6a 65 63 74 29 20 28 6e 74  | .....(x.(/.(+.(nth.1.object).(nt | 
| 18580 |  68 20 33 20 6f 62 6a 65 63 74 29 29 20 32 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | h.3.object)).2))................ | 
| 185a0 |  20 20 20 20 20 28 79 20 28 2f 20 28 2b 20 28 6e    74 68 20 32 20 6f 62 6a 65 63 74 29 20 28 6e 74  | .....(y.(/.(+.(nth.2.object).(nt | 
| 185c0 |  68 20 34 20 6f 62 6a 65 63 74 29 29 20 32 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | h.4.object)).2))................ | 
| 185e0 |  20 20 20 20 20 72 65 63 74 20 63 6f 6f 72 64 73    20 66 6f 75 6e 64 29 0a 20 20 20 20 20 20 20 20  | .....rect.coords.found)......... | 
| 18600 |  20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28    73 65 74 71 20 72 65 63 74 20 28 70 6f 70 20 72  | ........(while.(setq.rect.(pop.r | 
| 18620 |  65 63 74 2d 6c 69 73 74 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | ect-list))...................(se | 
| 18640 |  74 71 20 63 6f 6f 72 64 73 20 28 63 61 72 20 72    65 63 74 29 29 0a 20 20 20 20 20 20 20 20 20 20  | tq.coords.(car.rect))........... | 
| 18660 |  20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61    6e 64 20 28 3c 20 28 6e 74 68 20 30 20 63 6f 6f  | ........(when.(and.(<.(nth.0.coo | 
| 18680 |  72 64 73 29 20 78 20 28 6e 74 68 20 32 20 63 6f    6f 72 64 73 29 29 0a 20 20 20 20 20 20 20 20 20  | rds).x.(nth.2.coords)).......... | 
| 186a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 3c 20 28 6e 74 68 20 31 20 63 6f  | ....................(<.(nth.1.co | 
| 186c0 |  6f 72 64 73 29 20 79 20 28 6e 74 68 20 33 20 63    6f 6f 72 64 73 29 29 29 0a 20 20 20 20 20 20 20  | ords).y.(nth.3.coords)))........ | 
| 186e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 72 65 63 74 2d 6c 69 73 74 20 6e 69 6c  | .............(setq.rect-list.nil | 
| 18700 |  20 66 6f 75 6e 64 20 74 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69  | .found.t).....................(i | 
| 18720 |  66 20 28 65 71 75 61 6c 20 28 63 64 72 20 72 65    63 74 29 20 28 6e 74 68 63 64 72 20 33 20 64 6a  | f.(equal.(cdr.rect).(nthcdr.3.dj | 
| 18740 |  76 75 2d 6c 61 73 74 2d 72 65 63 74 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | vu-last-rect)).................. | 
| 18760 |  20 20 20 20 20 20 20 28 73 65 74 71 20 64 6a 76    75 2d 6c 61 73 74 2d 72 65 63 74 0a 20 20 20 20  | .......(setq.djvu-last-rect..... | 
| 18780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20  | ..........................(cons. | 
| 187a0 |  28 63 61 72 20 64 6a 76 75 2d 6c 61 73 74 2d 72    65 63 74 29 20 28 63 6f 6e 73 20 28 70 6f 69 6e  | (car.djvu-last-rect).(cons.(poin | 
| 187c0 |  74 29 20 72 65 63 74 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t).rect)))...................... | 
| 187e0 |  20 28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 72 65    61 64 2d 70 72 6f 70 29 0a 20 20 20 20 20 20 20  | .(djvu-insert-read-prop)........ | 
| 18800 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    73 65 74 71 20 64 6a 76 75 2d 6c 61 73 74 2d 72  | ...............(setq.djvu-last-r | 
| 18820 |  65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ect............................. | 
| 18840 |  28 63 6f 6e 73 20 6f 70 6f 69 6e 74 20 28 63 6f    6e 73 20 28 70 6f 69 6e 74 29 20 72 65 63 74 29  | (cons.opoint.(cons.(point).rect) | 
| 18860 |  29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 66 6f  | ))))).................(unless.fo | 
| 18880 |  75 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 64 6a 76 75 2d 69 6e 73 65  | und...................(djvu-inse | 
| 188a0 |  72 74 2d 72 65 61 64 2d 70 72 6f 70 29 29 29 29    29 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28  | rt-read-prop))))).......(let*.(( | 
| 188c0 |  6f 62 6a 20 28 63 61 61 72 20 74 61 69 6c 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | obj.(caar.tail))..............(s | 
| 188e0 |  65 70 20 28 63 6f 6e 64 20 28 28 65 71 20 27 6c    69 6e 65 20 6f 62 6a 29 20 22 5c 6e 22 29 0a 20  | ep.(cond.((eq.'line.obj)."\n").. | 
| 18900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 28 65 71 20 27 77 6f 72  | .......................((eq.'wor | 
| 18920 |  64 20 6f 62 6a 29 20 22 5c 73 22 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d.obj)."\s").................... | 
| 18940 |  20 20 20 20 20 28 28 65 71 20 27 63 68 61 72 20    6f 62 6a 29 20 6e 69 6c 29 0a 20 20 20 20 20 20  | .....((eq.'char.obj).nil)....... | 
| 18960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 74 20 22 5c 6e 5c 6e 22 29 29 29 0a 20  | ..................(t."\n\n"))).. | 
| 18980 |  20 20 20 20 20 20 20 20 20 20 20 20 65 6c 74 29    0a 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20  | ............elt).........(while. | 
| 189a0 |  28 73 65 74 71 20 65 6c 74 20 28 70 6f 70 20 74    61 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20  | (setq.elt.(pop.tail))........... | 
| 189c0 |  28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 72 65 61    64 20 65 6c 74 29 0a 20 20 20 20 20 20 20 20 20  | (djvu-insert-read.elt).......... | 
| 189e0 |  20 28 69 66 20 28 61 6e 64 20 73 65 70 20 74 61    69 6c 29 20 28 69 6e 73 65 72 74 20 73 65 70 29  | .(if.(and.sep.tail).(insert.sep) | 
| 18a00 |  29 29 29 29 0a 20 20 20 20 28 70 75 74 2d 74 65    78 74 2d 70 72 6f 70 65 72 74 79 20 6f 70 6f 69  | )))).....(put-text-property.opoi | 
| 18a20 |  6e 74 20 28 70 6f 69 6e 74 29 20 28 63 61 72 20    6f 62 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20  | nt.(point).(car.object)......... | 
| 18a40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    76 65 63 74 6f 72 20 28 6e 74 68 20 31 20 6f 62  | ...............(vector.(nth.1.ob | 
| 18a60 |  6a 65 63 74 29 20 28 6e 74 68 20 32 20 6f 62 6a    65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ject).(nth.2.object)............ | 
| 18a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 74 68 20 33 20 6f 62 6a 65 63  | ....................(nth.3.objec | 
| 18aa0 |  74 29 20 28 6e 74 68 20 34 20 6f 62 6a 65 63 74    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a  | t).(nth.4.object)))))..(defun.dj | 
| 18ac0 |  76 75 2d 69 6e 73 65 72 74 2d 72 65 61 64 2d 70    72 6f 70 20 28 29 0a 20 20 22 50 72 6f 70 65 72  | vu-insert-read-prop.()..."Proper | 
| 18ae0 |  74 69 7a 65 20 52 65 61 64 20 62 75 66 66 65 72    20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 61 6e  | tize.Read.buffer.according.to.an | 
| 18b00 |  6e 6f 74 61 74 69 6f 6e 73 2e 22 0a 20 20 28 77    68 65 6e 20 64 6a 76 75 2d 6c 61 73 74 2d 72 65  | notations."...(when.djvu-last-re | 
| 18b20 |  63 74 0a 20 20 20 20 28 6c 65 74 20 28 28 62 65    67 20 28 6e 74 68 20 30 20 64 6a 76 75 2d 6c 61  | ct.....(let.((beg.(nth.0.djvu-la | 
| 18b40 |  73 74 2d 72 65 63 74 29 29 0a 20 20 20 20 20 20    20 20 20 20 28 65 6e 64 20 28 6e 74 68 20 31 20  | st-rect))...........(end.(nth.1. | 
| 18b60 |  64 6a 76 75 2d 6c 61 73 74 2d 72 65 63 74 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 66 61 63 65  | djvu-last-rect))...........(face | 
| 18b80 |  20 60 28 66 61 63 65 20 28 3a 62 61 63 6b 67 72    6f 75 6e 64 20 2c 28 6e 74 68 20 35 20 64 6a 76  | .`(face.(:background.,(nth.5.djv | 
| 18ba0 |  75 2d 6c 61 73 74 2d 72 65 63 74 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | u-last-rect).................... | 
| 18bc0 |  20 20 20 20 20 3b 3b 20 60 6d 61 6b 65 2d 62 75    74 74 6f 6e 27 20 70 75 74 73 20 61 20 60 62 75  | .....;;.`make-button'.puts.a.`bu | 
| 18be0 |  74 74 6f 6e 27 20 6f 76 65 72 6c 61 79 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tton'.overlay................... | 
| 18c00 |  20 20 20 20 20 20 3b 3b 20 74 68 61 74 20 6f 76    65 72 72 69 64 65 73 20 3a 66 6f 72 65 67 72 6f  | ......;;.that.overrides.:foregro | 
| 18c20 |  75 6e 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3a 66 6f  | und..........................:fo | 
| 18c40 |  72 65 67 72 6f 75 6e 64 20 2c 28 72 65 61 64 61    62 6c 65 2d 66 6f 72 65 67 72 6f 75 6e 64 2d 63  | reground.,(readable-foreground-c | 
| 18c60 |  6f 6c 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 20  | olor............................ | 
| 18c80 |  20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20    35 20 64 6a 76 75 2d 6c 61 73 74 2d 72 65 63 74  | ...........(nth.5.djvu-last-rect | 
| 18ca0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 68 65 6c 70 2d  | )))........................help- | 
| 18cc0 |  65 63 68 6f 20 2c 28 6e 74 68 20 34 20 64 6a 76    75 2d 6c 61 73 74 2d 72 65 63 74 29 29 29 29 0a  | echo.,(nth.4.djvu-last-rect)))). | 
| 18ce0 |  20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28 65    71 20 74 20 64 6a 76 75 2d 72 65 61 64 2d 70 72  | ......(if.(or.(eq.t.djvu-read-pr | 
| 18d00 |  6f 70 2d 6e 65 77 6c 69 6e 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28  | op-newline)...............(and.( | 
| 18d20 |  6e 75 6d 62 65 72 70 20 64 6a 76 75 2d 72 65 61    64 2d 70 72 6f 70 2d 6e 65 77 6c 69 6e 65 29 0a  | numberp.djvu-read-prop-newline). | 
| 18d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69  | ...................(save-excursi | 
| 18d60 |  6f 6e 0a 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 63 68  | on......................(goto-ch | 
| 18d80 |  61 72 20 62 65 67 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65  | ar.beg)......................(re | 
| 18da0 |  2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20    22 5c 6e 2b 22 20 65 6e 64 20 74 20 64 6a 76 75  | -search-forward."\n+".end.t.djvu | 
| 18dc0 |  2d 72 65 61 64 2d 70 72 6f 70 2d 6e 65 77 6c 69    6e 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | -read-prop-newline)))).......... | 
| 18de0 |  20 28 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65    72 74 69 65 73 20 62 65 67 20 65 6e 64 20 66 61  | .(add-text-properties.beg.end.fa | 
| 18e00 |  63 65 29 0a 20 20 20 20 20 20 20 20 28 73 61 76    65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20  | ce).........(save-excursion..... | 
| 18e20 |  20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72    20 62 65 67 29 0a 20 20 20 20 20 20 20 20 20 20  | ......(goto-char.beg)........... | 
| 18e40 |  28 77 68 69 6c 65 20 28 72 65 2d 73 65 61 72 63    68 2d 66 6f 72 77 61 72 64 20 22 5b 5e 5c 6e 5d  | (while.(re-search-forward."[^\n] | 
| 18e60 |  2b 22 20 65 6e 64 20 74 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 61 64 64 2d 74 65 78 74 2d  | +".end.t).............(add-text- | 
| 18e80 |  70 72 6f 70 65 72 74 69 65 73 20 28 6d 61 74 63    68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 20 28  | properties.(match-beginning.0).( | 
| 18ea0 |  6d 61 74 63 68 2d 65 6e 64 20 30 29 20 66 61 63    65 29 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c  | match-end.0).face)))).......(unl | 
| 18ec0 |  65 73 73 20 28 65 71 75 61 6c 20 22 22 20 28 6e    74 68 20 33 20 64 6a 76 75 2d 6c 61 73 74 2d 72  | ess.(equal."".(nth.3.djvu-last-r | 
| 18ee0 |  65 63 74 29 29 0a 20 20 20 20 20 20 20 20 3b 3b    20 55 73 65 20 60 6d 61 6b 65 2d 62 75 74 74 6f  | ect)).........;;.Use.`make-butto | 
| 18f00 |  6e 27 20 69 6e 73 74 65 61 64 20 6f 66 20 60 6d    61 6b 65 2d 74 65 78 74 2d 62 75 74 74 6f 6e 27  | n'.instead.of.`make-text-button' | 
| 18f20 |  20 62 65 63 61 75 73 65 20 61 20 66 61 63 65 0a    20 20 20 20 20 20 20 20 3b 3b 20 63 61 6e 20 68  | .because.a.face.........;;.can.h | 
| 18f40 |  69 64 65 20 61 20 74 65 78 74 20 62 75 74 74 6f    6e 2e 0a 20 20 20 20 20 20 20 20 28 6d 61 6b 65  | ide.a.text.button..........(make | 
| 18f60 |  2d 62 75 74 74 6f 6e 20 62 65 67 20 65 6e 64 20    3a 74 79 70 65 20 27 64 6a 76 75 2d 75 72 6c 0a  | -button.beg.end.:type.'djvu-url. | 
| 18f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 27 68 65 6c 70 2d 65 63 68 6f 20  | .....................'help-echo. | 
| 18fa0 |  28 66 6f 72 6d 61 74 20 22 6d 6f 75 73 65 2d 32    2c 20 52 45 54 3a 20 75 72 6c 20 60 25 73 27 25  | (format."mouse-2,.RET:.url.`%s'% | 
| 18fc0 |  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 20 20 20 20 20  | s".............................. | 
| 18fe0 |  20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20    33 20 64 6a 76 75 2d 6c 61 73 74 2d 72 65 63 74  | ...........(nth.3.djvu-last-rect | 
| 19000 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | )............................... | 
| 19020 |  20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65    71 75 61 6c 20 22 22 20 28 6e 74 68 20 34 20 64  | ..........(if.(equal."".(nth.4.d | 
| 19040 |  6a 76 75 2d 6c 61 73 74 2d 72 65 63 74 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | jvu-last-rect))................. | 
| 19060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 22 22 0a 20  | ............................"".. | 
| 19080 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 190a0 |  20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74    20 22 5c 6e 25 73 22 20 28 6e 74 68 20 34 20 64  | .........(format."\n%s".(nth.4.d | 
| 190c0 |  6a 76 75 2d 6c 61 73 74 2d 72 65 63 74 29 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | jvu-last-rect))))............... | 
| 190e0 |  20 20 20 20 20 20 20 27 64 6a 76 75 2d 61 72 67    73 20 28 6c 69 73 74 20 28 6e 74 68 20 33 20 64  | .......'djvu-args.(list.(nth.3.d | 
| 19100 |  6a 76 75 2d 6c 61 73 74 2d 72 65 63 74 29 29 29    29 29 0a 20 20 20 20 28 73 65 74 71 20 64 6a 76  | jvu-last-rect))))).....(setq.djv | 
| 19120 |  75 2d 6c 61 73 74 2d 72 65 63 74 20 6e 69 6c 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | u-last-rect.nil)))..(defun.djvu- | 
| 19140 |  72 65 61 64 2d 64 70 6f 73 20 28 26 6f 70 74 69    6f 6e 61 6c 20 70 6f 69 6e 74 20 64 6f 63 29 0a  | read-dpos.(&optional.point.doc). | 
| 19160 |  20 20 22 52 65 74 75 72 6e 20 44 6a 76 75 20 70    6f 73 69 74 69 6f 6e 20 6f 66 20 50 4f 49 4e 54  | .."Return.Djvu.position.of.POINT | 
| 19180 |  20 69 6e 20 44 6a 76 75 20 52 65 61 64 20 62 75    66 66 65 72 2e 0a 54 68 69 73 20 69 73 20 65 69  | .in.Djvu.Read.buffer..This.is.ei | 
| 191a0 |  74 68 65 72 20 61 20 6c 69 73 74 20 28 58 4d 49    4e 20 59 4d 49 4e 20 58 4d 41 58 20 59 4d 41 58  | ther.a.list.(XMIN.YMIN.XMAX.YMAX | 
| 191c0 |  29 20 6f 72 20 28 58 20 59 29 2e 22 0a 20 20 28    77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66  | ).or.(X.Y)."...(with-current-buf | 
| 191e0 |  66 65 72 20 28 64 6a 76 75 2d 72 65 66 20 72 65    61 64 2d 62 75 66 20 64 6f 63 29 0a 20 20 20 20  | fer.(djvu-ref.read-buf.doc)..... | 
| 19200 |  28 63 6f 6e 64 20 28 28 61 6e 64 20 64 6a 76 75    2d 69 6d 61 67 65 2d 6d 6f 64 65 0a 20 20 20 20  | (cond.((and.djvu-image-mode..... | 
| 19220 |  20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76    75 2d 72 65 66 20 72 65 61 64 2d 70 6f 73 20 64  | ............(djvu-ref.read-pos.d | 
| 19240 |  6f 63 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    28 28 3d 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20  | oc)))...........((=.(point-min). | 
| 19260 |  28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 3b 3b 20 41 6e 20 65 6d  | (point-max))............;;.An.em | 
| 19280 |  70 74 79 20 64 6a 76 75 20 70 61 67 65 20 67 69    76 65 73 20 75 73 20 73 6f 6d 65 74 68 69 6e 67  | pty.djvu.page.gives.us.something | 
| 192a0 |  20 6c 69 6b 65 20 28 70 61 67 65 20 30 20 30 20    30 20 30 20 22 22 29 0a 20 20 20 20 20 20 20 20  | .like.(page.0.0.0.0."")......... | 
| 192c0 |  20 20 20 3b 3b 20 54 61 6b 65 20 74 68 65 20 63    65 6e 74 65 72 20 6f 66 20 61 6e 20 65 6d 70 74  | ...;;.Take.the.center.of.an.empt | 
| 192e0 |  79 20 70 61 67 65 0a 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 73 74 20 28 2f 20 28 63 61 72 20  | y.page............(list.(/.(car. | 
| 19300 |  28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 73 69    7a 65 20 64 6f 63 29 29 20 32 29 0a 20 20 20 20  | (djvu-ref.pagesize.doc)).2)..... | 
| 19320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 2f 20    28 63 64 72 20 28 64 6a 76 75 2d 72 65 66 20 70  | .............(/.(cdr.(djvu-ref.p | 
| 19340 |  61 67 65 73 69 7a 65 20 64 6f 63 29 29 20 32 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 28 74 0a  | agesize.doc)).2)))...........(t. | 
| 19360 |  20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65    73 73 20 70 6f 69 6e 74 0a 20 20 20 20 20 20 20  | ...........(unless.point........ | 
| 19380 |  20 20 20 20 20 20 28 73 65 74 71 20 70 6f 69 6e    74 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20  | ......(setq.point.(point)))..... | 
| 193a0 |  20 20 20 20 20 20 20 3b 3b 20 54 68 69 6e 67 73    20 67 65 74 20 72 61 74 68 65 72 20 63 6f 6d 70  | .......;;.Things.get.rather.comp | 
| 193c0 |  6c 69 63 61 74 65 64 20 69 66 20 74 68 65 20 74    65 78 74 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e  | licated.if.the.text.does.not.con | 
| 193e0 |  74 61 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 73 65 70 61 72 61 74 65 20 77 6f 72 64  | tain............;;.separate.word | 
| 19400 |  73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 28 6f    72 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70  | s.............(or.(get-text-prop | 
| 19420 |  65 72 74 79 20 70 6f 69 6e 74 20 27 77 6f 72 64    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | erty.point.'word)............... | 
| 19440 |  20 28 61 6e 64 20 28 3c 20 31 20 70 6f 69 6e 74    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(and.(<.1.point)............... | 
| 19460 |  20 20 20 20 20 20 28 67 65 74 2d 74 65 78 74 2d    70 72 6f 70 65 72 74 79 20 28 31 2d 20 70 6f 69  | ......(get-text-property.(1-.poi | 
| 19480 |  6e 74 29 20 27 77 6f 72 64 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 65  | nt).'word))................;;.Se | 
| 194a0 |  61 72 63 68 20 62 61 63 6b 77 61 72 64 20 62 65    63 61 75 73 65 20 6d 6f 72 65 20 6f 66 74 65 6e  | arch.backward.because.more.often | 
| 194c0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 70 6f 69 6e 74 20 69 73 20 61 74 20 74  | ................;;.point.is.at.t | 
| 194e0 |  68 65 20 65 6e 64 20 6f 66 20 72 65 67 69 6f 6e    20 77 65 20 6f 70 65 72 61 74 65 64 20 6f 6e 0a  | he.end.of.region.we.operated.on. | 
| 19500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 65 74 20 28 28 70 6f 73 20 28 70 72 65 76 69  | ...............(let.((pos.(previ | 
| 19520 |  6f 75 73 2d 73 69 6e 67 6c 65 2d 70 72 6f 70 65    72 74 79 2d 63 68 61 6e 67 65 0a 20 20 20 20 20  | ous-single-property-change...... | 
| 19540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 70 6f 69 6e 74 20 27 77 6f 72  | ......................point.'wor | 
| 19560 |  64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 61 6e 64 20 70 6f 73 20 28  | d)))..................(and.pos.( | 
| 19580 |  67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74    79 20 28 31 2d 20 70 6f 73 29 20 27 77 6f 72 64  | get-text-property.(1-.pos).'word | 
| 195a0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 69 73 74 20 28 2f 20 28 63 61 72  | )))................(list.(/.(car | 
| 195c0 |  20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 73    69 7a 65 20 64 6f 63 29 29 20 32 29 0a 20 20 20  | .(djvu-ref.pagesize.doc)).2).... | 
| 195e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 2f 20 28 63 64 72 20 28 64 6a 76 75 2d  | ..................(/.(cdr.(djvu- | 
| 19600 |  72 65 66 20 70 61 67 65 73 69 7a 65 20 64 6f 63    29 29 20 32 29 29 29 29 29 29 29 0a 0a 28 64 65  | ref.pagesize.doc)).2)))))))..(de | 
| 19620 |  66 75 6e 20 64 6a 76 75 2d 6d 65 61 6e 2d 64 70    6f 73 20 28 64 70 6f 73 29 0a 20 20 22 46 6f 72  | fun.djvu-mean-dpos.(dpos)..."For | 
| 19640 |  20 44 6a 76 75 20 70 6f 73 69 74 69 6f 6e 20 44    50 4f 53 20 72 65 74 75 72 6e 20 6d 65 61 6e 20  | .Djvu.position.DPOS.return.mean. | 
| 19660 |  63 6f 6f 72 64 69 6e 61 74 65 73 20 28 58 20 59    29 2e 0a 44 50 4f 53 20 69 73 20 61 20 6c 69 73  | coordinates.(X.Y)..DPOS.is.a.lis | 
| 19680 |  74 20 6f 72 20 76 65 63 74 6f 72 20 28 58 4d 49    4e 20 59 4d 49 4e 20 58 4d 41 58 20 59 4d 41 58  | t.or.vector.(XMIN.YMIN.XMAX.YMAX | 
| 196a0 |  29 2e 22 0a 20 20 28 69 66 20 28 65 6c 74 20 64    70 6f 73 20 32 29 0a 20 20 20 20 20 20 28 6c 69  | )."...(if.(elt.dpos.2).......(li | 
| 196c0 |  73 74 20 28 2f 20 28 2b 20 28 65 6c 74 20 64 70    6f 73 20 30 29 20 28 65 6c 74 20 64 70 6f 73 20  | st.(/.(+.(elt.dpos.0).(elt.dpos. | 
| 196e0 |  32 29 29 20 32 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 2f 20 28 2b 20 28 65 6c 74 20 64 70  | 2)).2).............(/.(+.(elt.dp | 
| 19700 |  6f 73 20 31 29 20 28 65 6c 74 20 64 70 6f 73 20    33 29 29 20 32 29 29 0a 20 20 20 20 64 70 6f 73  | os.1).(elt.dpos.3)).2)).....dpos | 
| 19720 |  29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 64 6a    76 75 2d 64 69 73 74 20 28 77 69 64 74 68 20 68  | ))..(defsubst.djvu-dist.(width.h | 
| 19740 |  65 69 67 68 74 29 0a 20 20 28 2b 20 28 2a 20 77    69 64 74 68 20 77 69 64 74 68 29 20 28 2a 20 68  | eight)...(+.(*.width.width).(*.h | 
| 19760 |  65 69 67 68 74 20 68 65 69 67 68 74 29 29 29 0a    0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 67 6f 74  | eight.height)))..(defun.djvu-got | 
| 19780 |  6f 2d 64 70 6f 73 20 28 6f 62 6a 65 63 74 20 64    70 6f 73 29 0a 20 20 22 47 6f 20 74 6f 20 4f 42  | o-dpos.(object.dpos)..."Go.to.OB | 
| 197a0 |  4a 45 43 54 20 61 74 20 70 6f 73 69 74 69 6f 6e    20 44 50 4f 53 20 69 6e 20 74 68 65 20 74 65 78  | JECT.at.position.DPOS.in.the.tex | 
| 197c0 |  74 20 6f 72 20 61 6e 6e 6f 74 61 74 69 6f 6e 20    62 75 66 66 65 72 2e 0a 49 66 20 66 6f 75 6e 64  | t.or.annotation.buffer..If.found | 
| 197e0 |  2c 20 72 65 74 75 72 6e 20 63 6f 72 72 65 73 70    6f 6e 64 69 6e 67 20 62 75 66 66 65 72 20 70 6f  | ,.return.corresponding.buffer.po | 
| 19800 |  73 69 74 69 6f 6e 2e 0a 4f 74 68 65 72 77 69 73    65 2c 20 64 6f 20 6e 6f 74 68 69 6e 67 20 61 6e  | sition..Otherwise,.do.nothing.an | 
| 19820 |  64 20 72 65 74 75 72 6e 20 6e 69 6c 2e 22 0a 20    20 3b 3b 20 54 68 69 73 20 63 6f 64 65 20 72 65  | d.return.nil."...;;.This.code.re | 
| 19840 |  6c 69 65 73 20 6f 6e 20 74 68 65 20 66 61 63 74    20 74 68 61 74 20 77 65 20 68 61 76 65 20 61 6c  | lies.on.the.fact.that.we.have.al | 
| 19860 |  6c 20 63 6f 6f 72 64 69 6e 61 74 65 73 0a 20 20    3b 3b 20 69 6e 20 74 68 65 20 66 6f 72 6d 61 74  | l.coordinates...;;.in.the.format | 
| 19880 |  20 28 78 6d 69 6e 20 79 6d 69 6e 20 78 6d 61 78    20 79 6d 61 78 29 20 69 6e 73 74 65 61 64 20 6f  | .(xmin.ymin.xmax.ymax).instead.o | 
| 198a0 |  66 20 74 68 65 20 66 6f 72 6d 61 74 0a 20 20 3b    3b 20 28 78 6d 69 6e 20 79 6d 69 6e 20 77 69 64  | f.the.format...;;.(xmin.ymin.wid | 
| 198c0 |  74 68 20 68 65 69 67 68 74 29 20 75 73 65 64 20    62 79 20 64 6a 76 75 73 65 64 20 66 6f 72 20 6d  | th.height).used.by.djvused.for.m | 
| 198e0 |  61 70 61 72 65 61 20 61 6e 6e 6f 74 61 74 69 6f    6e 73 2e 0a 20 20 28 63 6f 6e 64 20 28 28 6e 6f  | aparea.annotations....(cond.((no | 
| 19900 |  74 20 64 70 6f 73 29 20 6e 69 6c 29 20 3b 20 44    50 4f 53 20 69 73 20 6e 69 6c 2c 20 64 6f 20 6e  | t.dpos).nil).;.DPOS.is.nil,.do.n | 
| 19920 |  6f 74 68 69 6e 67 2c 20 72 65 74 75 72 6e 20 6e    69 6c 0a 0a 20 20 20 20 20 20 20 20 28 28 65 6c  | othing,.return.nil..........((el | 
| 19940 |  74 20 64 70 6f 73 20 32 29 20 3b 20 44 50 4f 53    20 69 73 20 61 20 6c 69 73 74 20 6f 72 20 76 65  | t.dpos.2).;.DPOS.is.a.list.or.ve | 
| 19960 |  63 74 6f 72 20 28 58 4d 49 4e 20 59 4d 49 4e 20    58 4d 41 58 20 59 4d 41 58 29 0a 20 20 20 20 20  | ctor.(XMIN.YMIN.XMAX.YMAX)...... | 
| 19980 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20  | ....(goto-char.(point-min))..... | 
| 199a0 |  20 20 20 20 20 28 6f 72 20 28 72 65 2d 73 65 61    72 63 68 2d 66 6f 72 77 61 72 64 20 28 66 6f 72  | .....(or.(re-search-forward.(for | 
| 199c0 |  6d 61 74 20 22 5c 5c 3c 25 73 5c 5c 3e 5b 20 5c    74 5c 6e 5d 2b 25 73 5c 5c 28 5b 20 5c 74 5c 6e  | mat."\\<%s\\>[.\t\n]+%s\\([.\t\n | 
| 199e0 |  5d 2b 5c 22 5c 5c 29 3f 22 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ]+\"\\)?"....................... | 
| 19a00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 6f 62 6a 65 63 74 0a 20 20 20 20 20 20 20  | ..................object........ | 
| 19a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 19a40 |  20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 6e 75    6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 64  | .(mapconcat.#'number-to-string.d | 
| 19a60 |  70 6f 73 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | pos............................. | 
| 19a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 22 5b 20 5c 74 5c 6e 5d 2b  | ......................."[.\t\n]+ | 
| 19aa0 |  22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | "))............................. | 
| 19ac0 |  20 20 20 20 6e 69 6c 20 74 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 3b 3b 20 74 72 79 20 61  | ....nil.t)..............;;.try.a | 
| 19ae0 |  67 61 69 6e 2c 20 75 73 69 6e 67 20 74 68 65 20    6d 65 61 6e 20 76 61 6c 75 65 20 6f 66 20 44 50  | gain,.using.the.mean.value.of.DP | 
| 19b00 |  4f 53 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 6a 76 75 2d 67 6f 74 6f 2d 64 70 6f 73 20  | OS..............(djvu-goto-dpos. | 
| 19b20 |  6f 62 6a 65 63 74 20 28 64 6a 76 75 2d 6d 65 61    6e 2d 64 70 6f 73 20 64 70 6f 73 29 29 29 29 0a  | object.(djvu-mean-dpos.dpos)))). | 
| 19b40 |  0a 20 20 20 20 20 20 20 20 28 74 20 3b 20 44 50    4f 53 20 69 73 20 61 20 6c 69 73 74 20 28 58 20  | .........(t.;.DPOS.is.a.list.(X. | 
| 19b60 |  59 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 4c    6f 6f 6b 20 66 6f 72 20 4f 42 4a 45 43 54 20 77  | Y)..........;;.Look.for.OBJECT.w | 
| 19b80 |  69 74 68 20 65 69 74 68 65 72 0a 20 20 20 20 20    20 20 20 20 3b 3b 20 2d 20 44 50 4f 53 20 69 6e  | ith.either..........;;.-.DPOS.in | 
| 19ba0 |  73 69 64 65 20 4f 42 4a 45 43 54 20 2d 3e 20 65    78 61 63 74 20 6d 61 74 63 68 0a 20 20 20 20 20  | side.OBJECT.->.exact.match...... | 
| 19bc0 |  20 20 20 20 3b 3b 20 2d 20 4f 42 4a 45 43 54 20    6e 65 61 72 65 73 74 20 74 6f 20 44 50 4f 53 20  | ....;;.-.OBJECT.nearest.to.DPOS. | 
| 19be0 |  2d 3e 20 61 70 70 72 6f 78 69 6d 61 74 65 20 6d    61 74 63 68 0a 20 20 20 20 20 20 20 20 20 3b 3b  | ->.approximate.match..........;; | 
| 19c00 |  20 54 68 65 20 6c 61 74 74 65 72 20 61 6c 77 61    79 73 20 73 75 63 63 65 65 64 73 2e 0a 20 20 20  | .The.latter.always.succeeds..... | 
| 19c20 |  20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 72 65    20 28 66 6f 72 6d 61 74 20 22 5c 5c 3c 25 73 5c  | ......(let*.((re.(format."\\<%s\ | 
| 19c40 |  5c 3e 5b 20 5c 74 5c 6e 5d 2b 25 73 5c 5c 28 5b    20 5c 74 5c 6e 5d 2b 5c 22 5c 5c 29 3f 22 0a 20  | \>[.\t\n]+%s\\([.\t\n]+\"\\)?".. | 
| 19c60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 6f 62 6a 65 63  | ...........................objec | 
| 19c80 |  74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d  | t.............................(m | 
| 19ca0 |  61 70 63 6f 6e 63 61 74 20 23 27 69 64 65 6e 74    69 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20  | apconcat.#'identity............. | 
| 19cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65  | ...........................(make | 
| 19ce0 |  2d 6c 69 73 74 20 34 20 22 5c 5c 28 5b 5b 3a 64    69 67 69 74 3a 5d 5d 2b 5c 5c 29 22 29 0a 20 20  | -list.4."\\([[:digit:]]+\\)")... | 
| 19d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 19d20 |  20 20 20 20 20 22 5b 20 5c 74 5c 6e 5d 2b 22 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....."[.\t\n]+"))).............. | 
| 19d40 |  20 20 20 28 78 20 28 6e 74 68 20 30 20 64 70 6f    73 29 29 20 28 79 20 28 6e 74 68 20 31 20 64 70  | ...(x.(nth.0.dpos)).(y.(nth.1.dp | 
| 19d60 |  6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 78 32 20 28 2d 20 28 2a 20 32  | os)).................(x2.(-.(*.2 | 
| 19d80 |  20 78 29 29 29 20 28 79 32 20 28 2d 20 28 2a 20    32 20 79 29 29 29 0a 20 20 20 20 20 20 20 20 20  | .x))).(y2.(-.(*.2.y))).......... | 
| 19da0 |  20 20 20 20 20 20 20 28 67 6f 6f 64 2d 64 69 73    74 20 28 2a 20 34 20 28 64 6a 76 75 2d 64 69 73  | .......(good-dist.(*.4.(djvu-dis | 
| 19dc0 |  74 20 28 63 61 72 20 28 64 6a 76 75 2d 72 65 66    20 70 61 67 65 73 69 7a 65 29 29 0a 20 20 20 20  | t.(car.(djvu-ref.pagesize))..... | 
| 19de0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 19e00 |  20 20 20 20 20 20 20 28 63 64 72 20 28 64 6a 76    75 2d 72 65 66 20 70 61 67 65 73 69 7a 65 29 29  | .......(cdr.(djvu-ref.pagesize)) | 
| 19e20 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 67 6f 6f 64 2d 70 6e 74 20 28 70  | ))).................(good-pnt.(p | 
| 19e40 |  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 20 20 70 6e 74 20 64  | oint-min)).................pnt.d | 
| 19e60 |  69 73 74 29 0a 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  | ist)............(goto-char.(poin | 
| 19e80 |  74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28  | t-min))............(while.(and.( | 
| 19ea0 |  6e 6f 74 20 28 7a 65 72 6f 70 20 67 6f 6f 64 2d    64 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20  | not.(zerop.good-dist)).......... | 
| 19ec0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73    65 74 71 20 70 6e 74 20 28 72 65 2d 73 65 61 72  | ..............(setq.pnt.(re-sear | 
| 19ee0 |  63 68 2d 66 6f 72 77 61 72 64 20 72 65 20 6e 69    6c 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20  | ch-forward.re.nil.t))).......... | 
| 19f00 |  20 20 20 20 28 6c 65 74 20 28 28 78 6d 69 6e 20    28 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62  | ....(let.((xmin.(djvu-match-numb | 
| 19f20 |  65 72 20 31 29 29 20 28 79 6d 69 6e 20 28 64 6a    76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20  | er.1)).(ymin.(djvu-match-number. | 
| 19f40 |  32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 78 6d 61 78 20 28 64 6a  | 2))....................(xmax.(dj | 
| 19f60 |  76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20    33 29 29 20 28 79 6d 61 78 20 28 64 6a 76 75 2d  | vu-match-number.3)).(ymax.(djvu- | 
| 19f80 |  6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 34 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | match-number.4)))............... | 
| 19fa0 |  20 28 69 66 20 28 61 6e 64 20 28 3c 3d 20 78 6d    69 6e 20 78 20 78 6d 61 78 29 20 28 3c 3d 20 79  | .(if.(and.(<=.xmin.x.xmax).(<=.y | 
| 19fc0 |  6d 69 6e 20 79 20 79 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  | min.y.ymax)).................... | 
| 19fe0 |  28 73 65 74 71 20 67 6f 6f 64 2d 64 69 73 74 20    30 20 67 6f 6f 64 2d 70 6e 74 20 70 6e 74 29 20  | (setq.good-dist.0.good-pnt.pnt). | 
| 1a000 |  3b 20 65 78 61 63 74 20 6d 61 74 63 68 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ;.exact.match..................( | 
| 1a020 |  73 65 74 71 20 64 69 73 74 20 28 64 6a 76 75 2d    64 69 73 74 20 28 2b 20 78 6d 69 6e 20 78 6d 61  | setq.dist.(djvu-dist.(+.xmin.xma | 
| 1a040 |  78 20 78 32 29 20 28 2b 20 79 6d 69 6e 20 79 6d    61 78 20 79 32 29 29 29 0a 20 20 20 20 20 20 20  | x.x2).(+.ymin.ymax.y2)))........ | 
| 1a060 |  20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 3c    20 64 69 73 74 20 67 6f 6f 64 2d 64 69 73 74 29  | ..........(if.(<.dist.good-dist) | 
| 1a080 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 73 65 74 71 20 67 6f 6f 64  | ......................(setq.good | 
| 1a0a0 |  2d 70 6e 74 20 70 6e 74 20 67 6f 6f 64 2d 64 69    73 74 20 64 69 73 74 29 29 29 29 29 20 3b 20 61  | -pnt.pnt.good-dist.dist))))).;.a | 
| 1a0c0 |  70 70 72 6f 78 69 6d 61 74 65 20 6d 61 74 63 68    0a 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74  | pproximate.match............(got | 
| 1a0e0 |  6f 2d 63 68 61 72 20 67 6f 6f 64 2d 70 6e 74 29    0a 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20  | o-char.good-pnt)............(if. | 
| 1a100 |  28 2f 3d 20 67 6f 6f 64 2d 70 6e 74 20 28 70 6f    69 6e 74 2d 6d 69 6e 29 29 20 67 6f 6f 64 2d 70  | (/=.good-pnt.(point-min)).good-p | 
| 1a120 |  6e 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 67 6f 74 6f 2d 72 65 61 64 20 28  | nt)))))..(defun.djvu-goto-read.( | 
| 1a140 |  26 6f 70 74 69 6f 6e 61 6c 20 64 70 6f 73 29 0a    20 20 22 47 6f 20 74 6f 20 62 75 66 66 65 72 20  | &optional.dpos)..."Go.to.buffer. | 
| 1a160 |  70 6f 73 69 74 69 6f 6e 20 69 6e 20 52 65 61 64    20 62 75 66 66 65 72 20 63 6f 72 72 65 73 70 6f  | position.in.Read.buffer.correspo | 
| 1a180 |  6e 64 69 6e 67 20 74 6f 20 44 6a 76 75 20 70 6f    73 69 74 69 6f 6e 20 44 50 4f 53 2e 0a 52 65 74  | nding.to.Djvu.position.DPOS..Ret | 
| 1a1a0 |  75 72 6e 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e    67 20 62 75 66 66 65 72 20 70 6f 73 69 74 69 6f  | urn.corresponding.buffer.positio | 
| 1a1c0 |  6e 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 64 6a 76 75  | n."...(with-current-buffer.(djvu | 
| 1a1e0 |  2d 72 65 66 20 72 65 61 64 2d 62 75 66 29 0a 20    20 20 20 28 63 6f 6e 64 20 28 64 6a 76 75 2d 69  | -ref.read-buf).....(cond.(djvu-i | 
| 1a200 |  6d 61 67 65 2d 6d 6f 64 65 0a 20 20 20 20 20 20    20 20 20 20 20 28 64 6a 76 75 2d 73 65 74 20 72  | mage-mode............(djvu-set.r | 
| 1a220 |  65 61 64 2d 70 6f 73 20 64 70 6f 73 29 0a 20 20    20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d  | ead-pos.dpos)............(point- | 
| 1a240 |  6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20    28 28 6e 6f 74 20 64 70 6f 73 29 20 6e 69 6c 29  | min))...........((not.dpos).nil) | 
| 1a260 |  20 3b 20 44 50 4f 53 20 69 73 20 6e 69 6c 2c 20    64 6f 20 6e 6f 74 68 69 6e 67 2c 20 72 65 74 75  | .;.DPOS.is.nil,.do.nothing,.retu | 
| 1a280 |  72 6e 20 6e 69 6c 0a 0a 20 20 20 20 20 20 20 20    20 20 28 28 65 6c 74 20 64 70 6f 73 20 32 29 20  | rn.nil............((elt.dpos.2). | 
| 1a2a0 |  3b 20 44 50 4f 53 20 69 73 20 61 20 6c 69 73 74    20 6f 72 20 76 65 63 74 6f 72 20 28 58 4d 49 4e  | ;.DPOS.is.a.list.or.vector.(XMIN | 
| 1a2c0 |  20 59 4d 49 4e 20 58 4d 41 58 20 59 4d 41 58 29    0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 47  | .YMIN.XMAX.YMAX)............;;.G | 
| 1a2e0 |  6f 20 74 6f 20 74 68 65 20 62 75 66 66 65 72 20    70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20  | o.to.the.buffer.position.of.the. | 
| 1a300 |  66 69 72 73 74 20 77 6f 72 64 20 69 6e 73 69 64    65 20 44 50 4f 53 2e 0a 20 20 20 20 20 20 20 20  | first.word.inside.DPOS.......... | 
| 1a320 |  20 20 20 28 6c 65 74 20 28 28 70 6e 74 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20  | ...(let.((pnt.(point-min))...... | 
| 1a340 |  20 20 20 20 20 20 20 20 20 20 20 20 28 78 6d 69    6e 20 28 65 6c 74 20 64 70 6f 73 20 30 29 29 20  | ............(xmin.(elt.dpos.0)). | 
| 1a360 |  28 79 6d 69 6e 20 28 65 6c 74 20 64 70 6f 73 20    31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | (ymin.(elt.dpos.1))............. | 
| 1a380 |  20 20 20 20 20 28 78 6d 61 78 20 28 65 6c 74 20    64 70 6f 73 20 32 29 29 20 28 79 6d 61 78 20 28  | .....(xmax.(elt.dpos.2)).(ymax.( | 
| 1a3a0 |  65 6c 74 20 64 70 6f 73 20 33 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 6f  | elt.dpos.3))..................wo | 
| 1a3c0 |  72 64 20 64 6f 6e 65 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72  | rd.done)..............(goto-char | 
| 1a3e0 |  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 28 77 68 69 6c  | .(point-min))..............(whil | 
| 1a400 |  65 20 28 70 72 6f 67 6e 20 3b 20 44 6f 20 77 68    69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20  | e.(progn.;.Do.while............. | 
| 1a420 |  20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20    64 6f 6e 65 0a 20 20 20 20 20 20 20 20 20 20 20  | ..........(setq.done............ | 
| 1a440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 61 6e 64 20 28 73 65 74 71 20 77 6f 72 64  | .................(and.(setq.word | 
| 1a460 |  20 28 64 6a 76 75 2d 6d 65 61 6e 2d 64 70 6f 73    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(djvu-mean-dpos................ | 
| 1a480 |  20 20 20 20 20 20 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 67  | ..............................(g | 
| 1a4a0 |  65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79    20 70 6e 74 20 27 77 6f 72 64 29 29 29 0a 20 20  | et-text-property.pnt.'word)))... | 
| 1a4c0 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 1a4e0 |  3c 3d 20 78 6d 69 6e 20 28 6e 74 68 20 30 20 77    6f 72 64 29 20 78 6d 61 78 29 0a 20 20 20 20 20  | <=.xmin.(nth.0.word).xmax)...... | 
| 1a500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 3c 3d 20  | ............................(<=. | 
| 1a520 |  79 6d 69 6e 20 28 6e 74 68 20 31 20 77 6f 72 64    29 20 79 6d 61 78 29 29 29 0a 20 20 20 20 20 20  | ymin.(nth.1.word).ymax)))....... | 
| 1a540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 61 6e 64 20 28 6e 6f 74 20 64 6f 6e 65 29 0a  | ................(and.(not.done). | 
| 1a560 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71  | ...........................(setq | 
| 1a580 |  20 70 6e 74 20 28 6e 65 78 74 2d 73 69 6e 67 6c    65 2d 70 72 6f 70 65 72 74 79 2d 63 68 61 6e 67  | .pnt.(next-single-property-chang | 
| 1a5a0 |  65 20 70 6e 74 20 27 77 6f 72 64 29 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69  | e.pnt.'word)))))..............(i | 
| 1a5c0 |  66 20 64 6f 6e 65 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68  | f.done..................(goto-ch | 
| 1a5e0 |  61 72 20 70 6e 74 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 3b 3b 20 74 72 79 20 61 67  | ar.pnt)................;;.try.ag | 
| 1a600 |  61 69 6e 2c 20 75 73 69 6e 67 20 74 68 65 20 6d    65 61 6e 20 76 61 6c 75 65 20 6f 66 20 44 50 4f  | ain,.using.the.mean.value.of.DPO | 
| 1a620 |  53 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 67 6f 74 6f 2d 72 65 61 64  | S................(djvu-goto-read | 
| 1a640 |  20 28 64 6a 76 75 2d 6d 65 61 6e 2d 64 70 6f 73    20 64 70 6f 73 29 29 29 29 29 0a 0a 20 20 20 20  | .(djvu-mean-dpos.dpos)))))...... | 
| 1a660 |  20 20 20 20 20 20 28 74 20 3b 20 44 50 4f 53 20    69 73 20 61 20 6c 69 73 74 20 28 58 20 59 29 0a  | ......(t.;.DPOS.is.a.list.(X.Y). | 
| 1a680 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4c 6f    6f 6b 20 66 6f 72 20 77 6f 72 64 20 77 69 74 68  | ...........;;.Look.for.word.with | 
| 1a6a0 |  20 65 69 74 68 65 72 0a 20 20 20 20 20 20 20 20    20 20 20 3b 3b 20 2d 20 44 50 4f 53 20 69 6e 73  | .either............;;.-.DPOS.ins | 
| 1a6c0 |  69 64 65 20 77 6f 72 64 20 2d 3e 20 65 78 61 63    74 20 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20  | ide.word.->.exact.match......... | 
| 1a6e0 |  20 20 20 3b 3b 20 2d 20 77 6f 72 64 20 6e 65 61    72 65 73 74 20 74 6f 20 44 50 4f 53 20 2d 3e 20  | ...;;.-.word.nearest.to.DPOS.->. | 
| 1a700 |  61 70 70 72 6f 78 69 6d 61 74 65 20 6d 61 74 63    68 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | approximate.match............;;. | 
| 1a720 |  54 68 65 20 6c 61 74 74 65 72 20 61 6c 77 61 79    73 20 73 75 63 63 65 65 64 73 2e 0a 20 20 20 20  | The.latter.always.succeeds...... | 
| 1a740 |  20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 78    20 28 6e 74 68 20 30 20 64 70 6f 73 29 29 20 28  | .......(let*.((x.(nth.0.dpos)).( | 
| 1a760 |  79 20 28 6e 74 68 20 31 20 64 70 6f 73 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | y.(nth.1.dpos))................. | 
| 1a780 |  20 20 28 78 32 20 28 2d 20 28 2a 20 32 20 78 29    29 29 20 28 79 32 20 28 2d 20 28 2a 20 32 20 79  | ..(x2.(-.(*.2.x))).(y2.(-.(*.2.y | 
| 1a7a0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 67 6f 6f 64 2d 64 69 73 74  | )))...................(good-dist | 
| 1a7c0 |  20 28 2a 20 34 20 28 64 6a 76 75 2d 64 69 73 74    20 28 63 61 72 20 28 64 6a 76 75 2d 72 65 66 20  | .(*.4.(djvu-dist.(car.(djvu-ref. | 
| 1a7e0 |  70 61 67 65 73 69 7a 65 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | pagesize))...................... | 
| 1a800 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 63 64 72 20 28 64 6a  | ........................(cdr.(dj | 
| 1a820 |  76 75 2d 72 65 66 20 70 61 67 65 73 69 7a 65 29    29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | vu-ref.pagesize)))))............ | 
| 1a840 |  20 20 20 20 20 20 20 28 70 6e 74 20 28 70 6f 69    6e 74 2d 6d 69 6e 29 29 20 28 67 6f 6f 64 2d 70  | .......(pnt.(point-min)).(good-p | 
| 1a860 |  6e 74 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 20 20  | nt.(point-min))................. | 
| 1a880 |  20 20 77 6f 72 64 20 64 69 73 74 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d  | ..word.dist)..............(goto- | 
| 1a8a0 |  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 28  | char.(point-min))..............( | 
| 1a8c0 |  77 68 69 6c 65 20 28 70 72 6f 67 6e 20 3b 20 44    6f 20 77 68 69 6c 65 0a 20 20 20 20 20 20 20 20  | while.(progn.;.Do.while......... | 
| 1a8e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77    68 65 6e 20 28 73 65 74 71 20 77 6f 72 64 20 28  | ..............(when.(setq.word.( | 
| 1a900 |  67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74    79 20 70 6e 74 20 27 77 6f 72 64 29 29 0a 20 20  | get-text-property.pnt.'word))... | 
| 1a920 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28  | ......................(if.(and.( | 
| 1a940 |  3c 3d 20 28 61 72 65 66 20 77 6f 72 64 20 30 29    20 78 20 28 61 72 65 66 20 77 6f 72 64 20 32 29  | <=.(aref.word.0).x.(aref.word.2) | 
| 1a960 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | )............................... | 
| 1a980 |  20 20 20 28 3c 3d 20 28 61 72 65 66 20 77 6f 72    64 20 31 29 20 79 20 28 61 72 65 66 20 77 6f 72  | ...(<=.(aref.word.1).y.(aref.wor | 
| 1a9a0 |  64 20 33 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d.3))).......................... | 
| 1a9c0 |  20 20 20 28 73 65 74 71 20 67 6f 6f 64 2d 64 69    73 74 20 30 20 67 6f 6f 64 2d 70 6e 74 20 70 6e  | ...(setq.good-dist.0.good-pnt.pn | 
| 1a9e0 |  74 29 20 3b 20 65 78 61 63 74 20 6d 61 74 63 68    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t).;.exact.match................ | 
| 1aa00 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 64 69 73 74 20 28 64 6a 76 75 2d 64 69 73 74  | ...........(setq.dist.(djvu-dist | 
| 1aa20 |  20 28 2b 20 28 61 72 65 66 20 77 6f 72 64 20 30    29 20 28 61 72 65 66 20 77 6f 72 64 20 32 29 20  | .(+.(aref.word.0).(aref.word.2). | 
| 1aa40 |  78 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | x2)............................. | 
| 1aa60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 2b 20 28 61 72 65 66 20 77 6f 72  | ....................(+.(aref.wor | 
| 1aa80 |  64 20 31 29 20 28 61 72 65 66 20 77 6f 72 64 20    33 29 20 79 32 29 29 29 0a 20 20 20 20 20 20 20  | d.1).(aref.word.3).y2)))........ | 
| 1aaa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 28 3c 20 64 69 73 74 20 67  | ...................(if.(<.dist.g | 
| 1aac0 |  6f 6f 64 2d 64 69 73 74 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ood-dist)....................... | 
| 1aae0 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 6f    6f 64 2d 70 6e 74 20 70 6e 74 20 67 6f 6f 64 2d  | ........(setq.good-pnt.pnt.good- | 
| 1ab00 |  64 69 73 74 20 64 69 73 74 29 29 29 29 20 3b 20    61 70 70 72 6f 78 69 6d 61 74 65 20 6d 61 74 63  | dist.dist)))).;.approximate.matc | 
| 1ab20 |  68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 61 6e 64 20 28 6e 6f  | h.......................(and.(no | 
| 1ab40 |  74 20 28 7a 65 72 6f 70 20 67 6f 6f 64 2d 64 69    73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | t.(zerop.good-dist))............ | 
| 1ab60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 73 65 74 71 20 70 6e 74 20 28 6e 65 78 74 2d  | ................(setq.pnt.(next- | 
| 1ab80 |  73 69 6e 67 6c 65 2d 70 72 6f 70 65 72 74 79 2d    63 68 61 6e 67 65 20 70 6e 74 20 27 77 6f 72 64  | single-property-change.pnt.'word | 
| 1aba0 |  29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 67 6f  | )))))..............(goto-char.go | 
| 1abc0 |  6f 64 2d 70 6e 74 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 28 69 66 20 28 2f 3d 20 67 6f 6f  | od-pnt)..............(if.(/=.goo | 
| 1abe0 |  64 2d 70 6e 74 20 28 70 6f 69 6e 74 2d 6d 69 6e    29 29 20 67 6f 6f 64 2d 70 6e 74 29 29 29 29 29  | d-pnt.(point-min)).good-pnt))))) | 
| 1ac00 |  29 0a 0a 3b 3b 3b 20 44 6a 76 75 20 41 6e 6e 6f    74 61 74 69 6f 6e 20 6d 6f 64 65 0a 0a 28 64 65  | )..;;;.Djvu.Annotation.mode..(de | 
| 1ac20 |  66 75 6e 20 64 6a 76 75 2d 69 6e 69 74 2d 61 6e    6e 6f 74 20 28 62 75 66 20 64 6f 63 20 26 6f 70  | fun.djvu-init-annot.(buf.doc.&op | 
| 1ac40 |  74 69 6f 6e 61 6c 20 73 68 61 72 65 64 29 0a 20    20 22 49 6e 69 74 69 61 6c 69 7a 65 20 41 6e 6e  | tional.shared)..."Initialize.Ann | 
| 1ac60 |  6f 74 61 74 69 6f 6e 73 20 62 75 66 66 65 72 20    42 55 46 20 6f 66 20 44 6a 76 75 20 64 6f 63 75  | otations.buffer.BUF.of.Djvu.docu | 
| 1ac80 |  6d 65 6e 74 20 44 4f 43 2e 0a 53 48 41 52 45 44    20 73 68 6f 75 6c 64 20 62 65 20 6e 6f 6e 2d 6e  | ment.DOC..SHARED.should.be.non-n | 
| 1aca0 |  69 6c 20 66 6f 72 20 61 20 53 68 61 72 65 64 20    41 6e 6e 6f 74 61 74 69 6f 6e 73 20 62 75 66 66  | il.for.a.Shared.Annotations.buff | 
| 1acc0 |  65 72 2e 22 0a 20 20 28 64 6a 76 75 2d 63 6f 6e    76 65 72 74 2d 68 61 73 68 29 0a 20 20 28 67 6f  | er."...(djvu-convert-hash)...(go | 
| 1ace0 |  74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d    69 6e 29 29 0a 20 20 28 6c 65 74 20 28 6f 62 6a  | to-char.(point-min))...(let.(obj | 
| 1ad00 |  65 63 74 20 61 6c 69 73 74 29 0a 20 20 20 20 28    77 68 69 6c 65 20 28 70 72 6f 67 6e 20 28 73 6b  | ect.alist).....(while.(progn.(sk | 
| 1ad20 |  69 70 2d 63 68 61 72 73 2d 66 6f 72 77 61 72 64    20 22 20 5c 74 5c 6e 22 29 20 28 6e 6f 74 20 28  | ip-chars-forward.".\t\n").(not.( | 
| 1ad40 |  65 6f 62 70 29 29 29 0a 20 20 20 20 20 20 28 62    65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65  | eobp))).......(beginning-of-line | 
| 1ad60 |  29 0a 20 20 20 20 20 20 28 69 66 20 28 6c 6f 6f    6b 69 6e 67 2d 61 74 20 64 6a 76 75 2d 62 65 67  | ).......(if.(looking-at.djvu-beg | 
| 1ad80 |  2d 6f 62 6a 65 63 74 2d 72 65 29 0a 20 20 20 20    20 20 20 20 20 20 28 70 75 73 68 20 28 72 65 61  | -object-re)...........(push.(rea | 
| 1ada0 |  64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 29 29 20 6f 62 6a 65 63 74 29 0a 20 20 20 20  | d.(current-buffer)).object)..... | 
| 1adc0 |  20 20 20 20 28 65 72 72 6f 72 20 22 55 6e 6b 6e    6f 77 6e 20 61 6e 6e 6f 74 61 74 69 6f 6e 20 60  | ....(error."Unknown.annotation.` | 
| 1ade0 |  25 73 27 22 20 28 62 75 66 66 65 72 2d 73 75 62    73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72  | %s'".(buffer-substring-no-proper | 
| 1ae00 |  74 69 65 73 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ties............................ | 
| 1ae20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    70 6f 69 6e 74 29 20 28 6c 69 6e 65 2d 65 6e 64  | ...............(point).(line-end | 
| 1ae40 |  2d 70 6f 73 69 74 69 6f 6e 29 29 29 29 29 0a 0a    20 20 20 20 28 64 6f 6c 69 73 74 20 28 65 6c 74  | -position)))))......(dolist.(elt | 
| 1ae60 |  20 6f 62 6a 65 63 74 29 0a 20 20 20 20 20 20 28    69 66 20 28 6e 6f 74 20 28 65 71 20 27 6d 61 70  | .object).......(if.(not.(eq.'map | 
| 1ae80 |  61 72 65 61 20 28 63 61 72 20 65 6c 74 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68  | area.(car.elt)))...........(push | 
| 1aea0 |  20 65 6c 74 20 61 6c 69 73 74 29 0a 20 20 20 20    20 20 20 20 3b 3b 20 54 6f 20 73 69 6d 70 6c 69  | .elt.alist).........;;.To.simpli | 
| 1aec0 |  66 79 20 74 68 65 20 65 64 69 74 69 6e 67 20 6f    66 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 2c 20 69  | fy.the.editing.of.annotations,.i | 
| 1aee0 |  64 65 6e 74 69 66 79 20 72 65 63 74 20 6d 61 70    61 72 65 61 73 0a 20 20 20 20 20 20 20 20 3b 3b  | dentify.rect.mapareas.........;; | 
| 1af00 |  20 73 68 61 72 69 6e 67 20 74 68 65 20 73 61 6d    65 20 74 65 78 74 20 73 74 72 69 6e 67 2e 0a 20  | .sharing.the.same.text.string... | 
| 1af20 |  20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 65    71 20 27 72 65 63 74 20 28 63 61 72 20 28 6e 74  | .......(cond.((eq.'rect.(car.(nt | 
| 1af40 |  68 20 33 20 65 6c 74 29 29 29 20 3b 20 72 65 63    74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | h.3.elt))).;.rect............... | 
| 1af60 |  20 28 6c 65 74 20 28 28 61 72 65 61 20 28 64 6a    76 75 2d 61 72 65 61 20 28 6e 74 68 20 33 20 65  | .(let.((area.(djvu-area.(nth.3.e | 
| 1af80 |  6c 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 65 29 0a 20 20  | lt)))......................e)... | 
| 1afa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 52 65 6d 6f 76 65 20 61 72 65 61 20 64 65  | ...............;;.Remove.area.de | 
| 1afc0 |  73 74 72 75 63 74 69 76 65 6c 79 2e 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | structively...................(s | 
| 1afe0 |  65 74 63 64 72 20 28 6e 74 68 63 64 72 20 32 20    65 6c 74 29 20 28 6e 74 68 63 64 72 20 34 20 65  | etcdr.(nthcdr.2.elt).(nthcdr.4.e | 
| 1b000 |  6c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 3b 3b 20 54 68 65 20 6e 65 77  | lt))..................;;.The.new | 
| 1b020 |  20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 61 6c 69    73 74 20 61 72 65 20 63 6f 6e 73 20 63 65 6c 6c  | .elements.of.alist.are.cons.cell | 
| 1b040 |  73 2c 20 77 68 65 72 65 20 74 68 65 20 63 61 72    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | s,.where.the.car................ | 
| 1b060 |  20 20 3b 3b 20 69 73 20 74 68 65 20 6d 61 70 61    72 65 61 20 77 69 74 68 6f 75 74 20 61 72 65 61  | ..;;.is.the.maparea.without.area | 
| 1b080 |  2c 20 61 6e 64 20 74 68 65 20 63 64 72 20 69 73    20 74 68 65 20 6c 69 73 74 0a 20 20 20 20 20 20  | ,.and.the.cdr.is.the.list....... | 
| 1b0a0 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 66    20 61 72 65 61 73 2e 20 20 45 76 65 6e 20 69 66  | ...........;;.of.areas...Even.if | 
| 1b0c0 |  20 77 65 20 68 61 76 65 20 6a 75 73 74 20 61 6e    20 65 6d 70 74 79 20 73 74 72 69 6e 67 2c 0a 20  | .we.have.just.an.empty.string,.. | 
| 1b0e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 77 65 20 73 74 69 6c 6c 20 77 61 6e 74  | ................;;.we.still.want | 
| 1b100 |  20 74 6f 20 6d 61 73 73 61 67 65 20 74 68 65 20    61 72 65 61 2e 0a 20 20 20 20 20 20 20 20 20 20  | .to.massage.the.area............ | 
| 1b120 |  20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28    73 74 72 69 6e 67 3d 20 22 22 20 28 6e 74 68 20  | .......(if.(or.(string=."".(nth. | 
| 1b140 |  32 20 65 6c 74 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 2.elt))......................... | 
| 1b160 |  20 28 6e 6f 74 20 28 73 65 74 71 20 65 20 28 61    73 73 6f 63 20 65 6c 74 20 61 6c 69 73 74 29 29  | .(not.(setq.e.(assoc.elt.alist)) | 
| 1b180 |  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 70 75 73 68 20 28 63  | ))......................(push.(c | 
| 1b1a0 |  6f 6e 73 20 65 6c 74 20 28 6c 69 73 74 20 61 72    65 61 29 29 20 61 6c 69 73 74 29 0a 20 20 20 20  | ons.elt.(list.area)).alist)..... | 
| 1b1c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    73 65 74 63 64 72 20 65 20 28 63 6f 6e 73 20 61  | ...............(setcdr.e.(cons.a | 
| 1b1e0 |  72 65 61 20 28 63 64 72 20 65 29 29 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | rea.(cdr.e))))))...............( | 
| 1b200 |  28 6d 65 6d 71 20 28 63 61 72 20 28 6e 74 68 20    33 20 65 6c 74 29 29 20 27 28 74 65 78 74 20 6f  | (memq.(car.(nth.3.elt)).'(text.o | 
| 1b220 |  76 61 6c 29 29 20 3b 20 6d 61 70 61 72 65 61 73    20 74 65 78 74 2c 20 6f 76 61 6c 0a 20 20 20 20  | val)).;.mapareas.text,.oval..... | 
| 1b240 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 63    61 72 20 28 6e 74 68 63 64 72 20 33 20 65 6c 74  | ...........(setcar.(nthcdr.3.elt | 
| 1b260 |  29 20 28 64 6a 76 75 2d 61 72 65 61 20 28 6e 74    68 20 33 20 65 6c 74 29 29 29 0a 20 20 20 20 20  | ).(djvu-area.(nth.3.elt)))...... | 
| 1b280 |  20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20    65 6c 74 20 61 6c 69 73 74 29 29 0a 20 20 20 20  | ..........(push.elt.alist))..... | 
| 1b2a0 |  20 20 20 20 20 20 20 20 20 20 28 74 20 28 70 75    73 68 20 65 6c 74 20 61 6c 69 73 74 29 29 29 29  | ..........(t.(push.elt.alist)))) | 
| 1b2c0 |  29 0a 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 73    68 61 72 65 64 0a 20 20 20 20 20 20 28 6c 65 74  | )......(unless.shared.......(let | 
| 1b2e0 |  20 28 28 69 64 20 30 29 20 72 65 63 74 2d 6c 69    73 74 29 0a 20 20 20 20 20 20 20 20 28 64 6f 6c  | .((id.0).rect-list).........(dol | 
| 1b300 |  69 73 74 20 28 65 6c 74 20 61 6c 69 73 74 29 0a    20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20  | ist.(elt.alist)...........(when. | 
| 1b320 |  28 63 6f 6e 73 70 20 28 63 61 72 20 65 6c 74 29    29 20 3b 20 6d 61 70 61 72 65 61 20 72 65 63 74  | (consp.(car.elt)).;.maparea.rect | 
| 1b340 |  20 61 6e 64 20 6f 76 61 6c 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 73 65 74 71 20 69 64 20 28  | .and.oval.............(setq.id.( | 
| 1b360 |  31 2b 20 69 64 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 70 75 73 68 20 28 64 6a 76 75 2d  | 1+.id)).............(push.(djvu- | 
| 1b380 |  72 65 63 74 2d 65 6c 74 20 65 6c 74 20 69 64 29    20 72 65 63 74 2d 6c 69 73 74 29 29 29 0a 20 20  | rect-elt.elt.id).rect-list)))... | 
| 1b3a0 |  20 20 20 20 20 20 28 64 6a 76 75 2d 73 65 74 20    72 65 63 74 2d 6c 69 73 74 20 28 61 70 70 6c 79  | ......(djvu-set.rect-list.(apply | 
| 1b3c0 |  20 27 6e 63 6f 6e 63 20 72 65 63 74 2d 6c 69 73    74 29 20 64 6f 63 29 29 29 0a 0a 20 20 20 20 3b  | .'nconc.rect-list).doc)))......; | 
| 1b3e0 |  3b 20 50 72 65 74 74 79 20 70 72 69 6e 74 20 61    6e 6e 6f 74 61 74 69 6f 6e 73 2e 0a 20 20 20 20  | ;.Pretty.print.annotations...... | 
| 1b400 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 20 62 75 66 0a 20 20 20 20 20 20 28  | (with-current-buffer.buf.......( | 
| 1b420 |  6c 65 74 20 28 28 73 74 61 6e 64 61 72 64 2d 6f    75 74 70 75 74 20 28 63 75 72 72 65 6e 74 2d 62  | let.((standard-output.(current-b | 
| 1b440 |  75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 62 75 66 66 65 72 2d 72 65 61 64 2d  | uffer)).............buffer-read- | 
| 1b460 |  6f 6e 6c 79 29 0a 20 20 20 20 20 20 20 20 28 65    72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20  | only).........(erase-buffer).... | 
| 1b480 |  20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 65 6c    74 20 61 6c 69 73 74 29 0a 20 20 20 20 20 20 20  | .....(dolist.(elt.alist)........ | 
| 1b4a0 |  20 20 20 28 63 6f 6e 64 20 28 28 63 6f 6e 73 70    20 28 63 61 72 20 65 6c 74 29 29 20 3b 20 6d 61  | ...(cond.((consp.(car.elt)).;.ma | 
| 1b4c0 |  70 61 72 65 61 20 77 69 74 68 20 6c 69 73 74 20    6f 66 20 61 72 65 61 73 0a 20 20 20 20 20 20 20  | parea.with.list.of.areas........ | 
| 1b4e0 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28    28 63 20 28 63 61 72 20 65 6c 74 29 29 29 0a 20  | ..........(let.((c.(car.elt))).. | 
| 1b500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61  | ..................(insert.(forma | 
| 1b520 |  74 20 22 28 6d 61 70 61 72 65 61 20 25 53 5c 6e    20 25 53 5c 6e 20 28 22 0a 20 20 20 20 20 20 20  | t."(maparea.%S\n.%S\n.("........ | 
| 1b540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | ............................(djv | 
| 1b560 |  75 2d 72 65 73 6f 6c 76 65 2d 75 72 6c 20 28 6e    74 68 20 31 20 63 29 20 64 6f 63 29 20 28 6e 74  | u-resolve-url.(nth.1.c).doc).(nt | 
| 1b580 |  68 20 32 20 63 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  | h.2.c))......................... | 
| 1b5a0 |  20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27    70 72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67 20  | ...(mapconcat.#'prin1-to-string. | 
| 1b5c0 |  28 63 64 72 20 65 6c 74 29 20 22 5c 6e 20 20 22    29 20 22 29 5c 6e 20 22 20 3b 20 72 65 63 74 20  | (cdr.elt)."\n..").")\n.".;.rect. | 
| 1b5e0 |  61 6e 64 20 6f 76 61 6c 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | and.oval........................ | 
| 1b600 |  20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23    27 70 72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67  | ....(mapconcat.#'prin1-to-string | 
| 1b620 |  20 28 6e 74 68 63 64 72 20 33 20 63 29 20 22 20    22 29 20 3b 20 72 65 73 74 0a 20 20 20 20 20 20  | .(nthcdr.3.c).".").;.rest....... | 
| 1b640 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 22 29 22 29 29 29 0a 20 20 20 20  | .....................")")))..... | 
| 1b660 |  20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71    20 27 6d 65 74 61 64 61 74 61 20 28 63 61 72 20  | ............((eq.'metadata.(car. | 
| 1b680 |  65 6c 74 29 29 20 3b 20 6d 65 74 61 64 61 74 61    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | elt)).;.metadata................ | 
| 1b6a0 |  20 20 28 69 6e 73 65 72 74 20 22 28 6d 65 74 61    64 61 74 61 22 29 0a 20 20 20 20 20 20 20 20 20  | ..(insert."(metadata").......... | 
| 1b6c0 |  20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20    28 65 6e 74 72 79 20 28 63 64 72 20 65 6c 74 29  | ........(dolist.(entry.(cdr.elt) | 
| 1b6e0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f  | )....................(insert.(fo | 
| 1b700 |  72 6d 61 74 20 22 5c 6e 20 28 25 73 20 25 53 29    22 20 28 63 61 72 20 65 6e 74 72 79 29 20 28 63  | rmat."\n.(%s.%S)".(car.entry).(c | 
| 1b720 |  61 64 72 20 65 6e 74 72 79 29 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | adr.entry))))..................( | 
| 1b740 |  69 6e 73 65 72 74 20 22 29 22 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e  | insert.")")).................((n | 
| 1b760 |  6f 74 20 28 65 71 20 27 6d 61 70 61 72 65 61 20    28 63 61 72 20 65 6c 74 29 29 29 20 3b 20 6e 6f  | ot.(eq.'maparea.(car.elt))).;.no | 
| 1b780 |  20 6d 61 70 61 72 65 61 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 70 72 69 6e 31  | .maparea..................(prin1 | 
| 1b7a0 |  20 65 6c 74 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 28 6d 65 6d 71 20 28 63  | .elt)).................((memq.(c | 
| 1b7c0 |  61 72 20 28 6e 74 68 20 33 20 65 6c 74 29 29 20    27 28 74 65 78 74 20 6f 76 61 6c 20 6c 69 6e 65  | ar.(nth.3.elt)).'(text.oval.line | 
| 1b7e0 |  20 70 6f 6c 79 29 29 20 3b 20 6d 61 70 61 72 65    61 20 74 65 78 74 2c 20 6f 76 61 6c 2c 20 6c 69  | .poly)).;.maparea.text,.oval,.li | 
| 1b800 |  6e 65 2c 20 70 6f 6c 79 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72  | ne,.poly..................(inser | 
| 1b820 |  74 20 28 66 6f 72 6d 61 74 20 22 28 6d 61 70 61    72 65 61 20 25 53 5c 6e 20 25 53 5c 6e 20 22 20  | t.(format."(maparea.%S\n.%S\n.". | 
| 1b840 |  28 6e 74 68 20 31 20 65 6c 74 29 20 28 6e 74 68    20 32 20 65 6c 74 29 29 0a 20 20 20 20 20 20 20  | (nth.1.elt).(nth.2.elt))........ | 
| 1b860 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 70  | ..................(mapconcat.#'p | 
| 1b880 |  72 69 6e 31 2d 74 6f 2d 73 74 72 69 6e 67 20 28    6e 74 68 63 64 72 20 33 20 65 6c 74 29 20 22 20  | rin1-to-string.(nthcdr.3.elt).". | 
| 1b8a0 |  22 29 20 3b 20 72 65 73 74 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ").;.rest....................... | 
| 1b8c0 |  20 20 20 22 29 22 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 74 20 28 65 72 72  | ...")")).................(t.(err | 
| 1b8e0 |  6f 72 20 22 44 6a 76 75 20 6d 61 70 61 72 65 61    20 25 73 20 75 6e 64 65 66 69 6e 65 64 22 20 28  | or."Djvu.maparea.%s.undefined".( | 
| 1b900 |  63 61 72 20 28 6e 74 68 20 33 20 65 6c 74 29 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69  | car.(nth.3.elt)))))...........(i | 
| 1b920 |  6e 73 65 72 74 20 22 5c 6e 5c 6e 22 29 29 0a 20    20 20 20 20 20 20 20 28 64 6a 76 75 2d 63 6f 6e  | nsert."\n\n")).........(djvu-con | 
| 1b940 |  76 65 72 74 2d 68 61 73 68 20 74 29 29 0a 20 20    20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28  | vert-hash.t)).......(goto-char.( | 
| 1b960 |  70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20    20 20 28 73 65 74 2d 62 75 66 66 65 72 2d 6d 6f  | point-min)).......(set-buffer-mo | 
| 1b980 |  64 69 66 69 65 64 2d 70 20 6e 69 6c 29 0a 20 20    20 20 20 20 28 73 65 74 71 20 62 75 66 66 65 72  | dified-p.nil).......(setq.buffer | 
| 1b9a0 |  2d 75 6e 64 6f 2d 6c 69 73 74 20 6e 69 6c 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | -undo-list.nil))))..(defun.djvu- | 
| 1b9c0 |  72 65 63 74 2d 65 6c 74 20 28 72 65 63 74 20 69    64 29 0a 20 20 22 46 6f 72 20 72 65 63 74 20 52  | rect-elt.(rect.id)..."For.rect.R | 
| 1b9e0 |  45 43 54 20 64 65 66 69 6e 65 20 65 6e 74 72 79    20 66 6f 72 20 60 64 6a 76 75 2d 72 65 63 74 2d  | ECT.define.entry.for.`djvu-rect- | 
| 1ba00 |  6c 69 73 74 27 20 75 73 69 6e 67 20 49 44 2e 22    0a 20 20 28 6c 65 74 2a 20 28 28 6d 61 70 61 72  | list'.using.ID."...(let*.((mapar | 
| 1ba20 |  65 61 20 28 63 61 72 20 72 65 63 74 29 29 0a 20    20 20 20 20 20 20 20 20 28 75 72 6c 20 28 6e 74  | ea.(car.rect))..........(url.(nt | 
| 1ba40 |  68 20 31 20 6d 61 70 61 72 65 61 29 29 0a 20 20    20 20 20 20 20 20 20 28 74 65 78 74 20 28 6e 74  | h.1.maparea))..........(text.(nt | 
| 1ba60 |  68 20 32 20 6d 61 70 61 72 65 61 29 29 0a 20 20    20 20 20 20 20 20 20 28 63 6f 6c 6f 72 20 28 64  | h.2.maparea))..........(color.(d | 
| 1ba80 |  6a 76 75 2d 63 6f 6c 6f 72 2d 62 61 63 6b 67 72    6f 75 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20  | jvu-color-background............ | 
| 1baa0 |  20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 6e 74    68 20 31 20 28 61 73 73 6f 63 20 27 68 69 6c 69  | ......(cond.((nth.1.(assoc.'hili | 
| 1bac0 |  74 65 20 6d 61 70 61 72 65 61 29 29 29 20 3b 20    55 73 65 20 63 6f 6c 6f 72 20 69 66 20 70 6f 73  | te.maparea))).;.Use.color.if.pos | 
| 1bae0 |  73 69 62 6c 65 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75  | sible.........................(u | 
| 1bb00 |  72 6c 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 75 72    6c 29 20 3b 20 77 65 20 68 61 76 65 20 61 20 55  | rl.djvu-color-url).;.we.have.a.U | 
| 1bb20 |  52 4c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 74 20 64 6a 76  | RL........................(t.djv | 
| 1bb40 |  75 2d 63 6f 6c 6f 72 2d 68 69 67 68 6c 69 67 68    74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | u-color-highlight))............. | 
| 1bb60 |  20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6e  | .....nil..................(or.(n | 
| 1bb80 |  74 68 20 31 20 28 61 73 73 6f 63 20 27 6f 70 61    63 69 74 79 20 6d 61 70 61 72 65 61 29 29 0a 20  | th.1.(assoc.'opacity.maparea)).. | 
| 1bba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 64 6a 76 75 2d 6f 70 61 63 69 74 79  | ....................djvu-opacity | 
| 1bbc0 |  29 29 29 29 0a 20 20 20 20 3b 3b 20 49 66 20 6d    75 6c 74 69 70 6c 65 20 61 6e 6e 6f 74 61 74 69  | )))).....;;.If.multiple.annotati | 
| 1bbe0 |  6f 6e 73 20 64 69 66 66 65 72 20 6f 6e 6c 79 20    69 6e 20 74 68 65 20 41 52 45 41 73 2c 20 69 74  | ons.differ.only.in.the.AREAs,.it | 
| 1bc00 |  20 69 73 20 61 73 73 75 6d 65 64 0a 20 20 20 20    3b 3b 20 74 68 61 74 20 74 68 65 79 20 62 65 6c  | .is.assumed.....;;.that.they.bel | 
| 1bc20 |  6f 6e 67 20 74 6f 67 65 74 68 65 72 2c 20 73 6f    20 74 68 61 74 20 74 68 65 79 20 61 72 65 20 63  | ong.together,.so.that.they.are.c | 
| 1bc40 |  6f 6c 6c 61 70 73 65 64 20 69 6e 20 74 68 65 0a    20 20 20 20 3b 3b 20 61 6e 6e 6f 74 61 74 69 6f  | ollapsed.in.the.....;;.annotatio | 
| 1bc60 |  6e 73 20 62 75 66 66 65 72 20 61 6e 64 20 74 68    65 69 72 20 74 65 78 74 20 70 72 6f 70 65 72 74  | ns.buffer.and.their.text.propert | 
| 1bc80 |  69 65 73 20 69 6e 20 74 68 65 20 52 65 61 64 20    62 75 66 66 65 72 0a 20 20 20 20 3b 3b 20 61 72  | ies.in.the.Read.buffer.....;;.ar | 
| 1bca0 |  65 20 6d 65 72 67 65 64 20 61 63 72 6f 73 73 20    77 6f 72 64 20 62 6f 75 6e 64 61 72 69 65 73 2e  | e.merged.across.word.boundaries. | 
| 1bcc0 |  20 20 54 68 69 73 20 69 73 20 75 73 75 61 6c 6c    79 20 4f 4b 20 77 68 65 6e 20 55 52 4c 0a 20 20  | ..This.is.usually.OK.when.URL... | 
| 1bce0 |  20 20 3b 3b 20 61 6e 64 20 54 45 58 54 20 61 72    65 20 6e 6f 6e 2d 65 6d 70 74 79 20 73 74 72 69  | ..;;.and.TEXT.are.non-empty.stri | 
| 1bd00 |  6e 67 73 2e 20 20 42 75 74 20 77 65 20 64 6f 20    6e 6f 74 20 63 6f 6c 6c 61 70 73 65 20 73 75 63  | ngs...But.we.do.not.collapse.suc | 
| 1bd20 |  68 20 65 6e 74 72 69 65 73 0a 20 20 20 20 3b 3b    20 69 6e 20 74 68 65 20 61 6e 6e 6f 74 61 74 69  | h.entries.....;;.in.the.annotati | 
| 1bd40 |  6f 6e 73 20 62 75 66 66 65 72 20 69 66 20 55 52    4c 20 61 6e 64 20 54 45 58 54 20 61 72 65 20 65  | ons.buffer.if.URL.and.TEXT.are.e | 
| 1bd60 |  6d 70 74 79 20 73 74 72 69 6e 67 73 2e 0a 20 20    20 20 3b 3b 20 54 6f 20 61 63 68 69 65 76 65 20  | mpty.strings......;;.To.achieve. | 
| 1bd80 |  74 68 65 20 73 61 6d 65 20 77 69 74 68 20 74 65    78 74 20 70 72 6f 70 65 72 74 69 65 73 20 69 6e  | the.same.with.text.properties.in | 
| 1bda0 |  20 74 68 65 20 52 65 61 64 20 62 75 66 66 65 72    2c 20 77 65 20 61 64 64 0a 20 20 20 20 3b 3b 20  | .the.Read.buffer,.we.add.....;;. | 
| 1bdc0 |  74 68 65 20 65 78 74 72 61 20 65 6c 65 6d 65 6e    74 20 49 44 20 74 6f 20 74 68 65 20 65 6c 65 6d  | the.extra.element.ID.to.the.elem | 
| 1bde0 |  65 6e 74 73 20 6f 66 20 60 64 6a 76 75 2d 72 65    63 74 2d 6c 69 73 74 27 2e 0a 20 20 20 20 28 6d  | ents.of.`djvu-rect-list'......(m | 
| 1be00 |  61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 61    72 65 61 29 0a 20 20 20 20 20 20 20 20 20 20 20  | apcar.(lambda.(area)............ | 
| 1be20 |  20 20 20 28 6c 69 73 74 20 28 63 64 72 20 61 72    65 61 29 20 75 72 6c 20 74 65 78 74 20 63 6f 6c  | ...(list.(cdr.area).url.text.col | 
| 1be40 |  6f 72 20 69 64 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 63 64 72 20 72 65 63 74 29 29 29  | or.id)).............(cdr.rect))) | 
| 1be60 |  29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 66    6f 6e 74 2d 6c 6f 63 6b 2d 75 72 6c 20 28 62 6f  | )..(defun.djvu-font-lock-url.(bo | 
| 1be80 |  75 6e 64 29 0a 20 20 28 6c 65 74 20 28 28 70 6e    74 20 28 70 6f 69 6e 74 29 29 20 63 61 73 65 2d  | und)...(let.((pnt.(point)).case- | 
| 1bea0 |  66 6f 6c 64 2d 73 65 61 72 63 68 20 66 6f 75 6e    64 20 62 65 67 20 65 6e 64 29 0a 20 20 20 20 28  | fold-search.found.beg.end).....( | 
| 1bec0 |  63 6f 6e 64 20 28 28 6d 65 6d 71 20 64 6a 76 75    2d 62 75 66 66 65 72 20 27 28 61 6e 6e 6f 74 20  | cond.((memq.djvu-buffer.'(annot. | 
| 1bee0 |  73 68 61 72 65 64 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f  | shared))............(beginning-o | 
| 1bf00 |  66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28  | f-line)............(while.(and.( | 
| 1bf20 |  6e 6f 74 20 66 6f 75 6e 64 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | not.found)...................... | 
| 1bf40 |  20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72    77 61 72 64 20 22 5e 5b 20 5c 74 5d 2a 28 6d 61  | ..(re-search-forward."^[.\t]*(ma | 
| 1bf60 |  70 61 72 65 61 22 20 62 6f 75 6e 64 20 74 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | parea".bound.t))..............(s | 
| 1bf80 |  65 74 71 20 66 6f 75 6e 64 20 28 61 6e 64 20 28    6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 20 5c 74  | etq.found.(and.(looking-at."[.\t | 
| 1bfa0 |  5d 2a 5c 22 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  | ]*\"").......................... | 
| 1bfc0 |  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 20 20 20 20 20  | .....(progn..................... | 
| 1bfe0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74    71 20 62 65 67 20 28 6d 61 74 63 68 2d 65 6e 64  | ............(setq.beg.(match-end | 
| 1c000 |  20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .0))............................ | 
| 1c020 |  20 20 20 20 20 28 3e 3d 20 62 65 67 20 70 6e 74    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | .....(>=.beg.pnt)).............. | 
| 1c040 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 3c 3d 20 62 65 67 20 62 6f 75 6e 64 29 0a  | .................(<=.beg.bound). | 
| 1c060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70  | ..............................(p | 
| 1c080 |  72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rogn............................ | 
| 1c0a0 |  20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 73 65    78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .....(forward-sexp)............. | 
| 1c0c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 73 65 74 71 20 65 6e 64 20 28 31  | ....................(setq.end.(1 | 
| 1c0e0 |  2d 20 28 70 6f 69 6e 74 29 29 29 29 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20  | -.(point))))))))...........((eq. | 
| 1c100 |  64 6a 76 75 2d 62 75 66 66 65 72 20 27 62 6f 6f    6b 6d 61 72 6b 73 29 0a 20 20 20 20 20 20 20 20  | djvu-buffer.'bookmarks)......... | 
| 1c120 |  20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 62 61    63 6b 77 61 72 64 20 22 5e 5b 20 5c 74 5d 2a 28  | ...(re-search-backward."^[.\t]*( | 
| 1c140 |  22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20    20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20  | ".nil.t)............(while.(and. | 
| 1c160 |  28 6e 6f 74 20 66 6f 75 6e 64 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (not.found)..................... | 
| 1c180 |  20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f    72 77 61 72 64 20 22 5e 5b 20 5c 74 5d 2a 28 22  | ...(re-search-forward."^[.\t]*(" | 
| 1c1a0 |  20 62 6f 75 6e 64 20 74 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 6f  | .bound.t))..............(setq.fo | 
| 1c1c0 |  75 6e 64 20 28 61 6e 64 20 28 6c 6f 6f 6b 69 6e    67 2d 61 74 20 22 5b 20 5c 74 5d 2a 5c 22 22 29  | und.(and.(looking-at."[.\t]*\"") | 
| 1c1e0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ...............................( | 
| 1c200 |  70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | progn........................... | 
| 1c220 |  20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 73    65 78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ......(forward-sexp)............ | 
| 1c240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74  | .....................(looking-at | 
| 1c260 |  20 22 5b 20 5c 74 5c 6e 5d 2b 5c 22 22 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."[.\t\n]+\""))................. | 
| 1c280 |  20 20 20 20 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  | ..............(progn............ | 
| 1c2a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 73 65 74 71 20 62 65 67 20 28  | .....................(setq.beg.( | 
| 1c2c0 |  6d 61 74 63 68 2d 65 6e 64 20 30 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | match-end.0))................... | 
| 1c2e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3e    3d 20 62 65 67 20 70 6e 74 29 29 0a 20 20 20 20  | ..............(>=.beg.pnt))..... | 
| 1c300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 3c 3d 20 62 65  | ..........................(<=.be | 
| 1c320 |  67 20 62 6f 75 6e 64 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | g.bound)........................ | 
| 1c340 |  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 20 20 20  | .......(progn................... | 
| 1c360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66    6f 72 77 61 72 64 2d 73 65 78 70 29 0a 20 20 20  | ..............(forward-sexp).... | 
| 1c380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | .............................(se | 
| 1c3a0 |  74 71 20 65 6e 64 20 28 31 2d 20 28 70 6f 69 6e    74 29 29 29 29 29 29 29 29 29 0a 20 20 20 20 28  | tq.end.(1-.(point))))))))).....( | 
| 1c3c0 |  77 68 65 6e 20 66 6f 75 6e 64 0a 20 20 20 20 20    20 28 72 65 6d 6f 76 65 2d 74 65 78 74 2d 70 72  | when.found.......(remove-text-pr | 
| 1c3e0 |  6f 70 65 72 74 69 65 73 20 62 65 67 20 65 6e 64    20 27 28 66 61 63 65 29 29 0a 20 20 20 20 20 20  | operties.beg.end.'(face))....... | 
| 1c400 |  28 6d 61 6b 65 2d 74 65 78 74 2d 62 75 74 74 6f    6e 20 62 65 67 20 65 6e 64 20 27 74 79 70 65 20  | (make-text-button.beg.end.'type. | 
| 1c420 |  27 64 6a 76 75 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  | 'djvu-url....................... | 
| 1c440 |  20 20 27 64 6a 76 75 2d 61 72 67 73 20 28 6c 69    73 74 20 28 62 75 66 66 65 72 2d 73 75 62 73 74  | ..'djvu-args.(list.(buffer-subst | 
| 1c460 |  72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69    65 73 20 62 65 67 20 65 6e 64 29 29 29 29 0a 20  | ring-no-properties.beg.end)))).. | 
| 1c480 |  20 20 20 66 6f 75 6e 64 29 29 0a 0a 28 64 65 66    75 6e 20 64 6a 76 75 2d 62 75 74 74 6f 6e 2d 61  | ...found))..(defun.djvu-button-a | 
| 1c4a0 |  63 74 69 6f 6e 20 28 62 75 74 74 6f 6e 29 0a 20    20 22 43 61 6c 6c 20 42 55 54 54 4f 4e 27 73 20  | ction.(button)..."Call.BUTTON's. | 
| 1c4c0 |  44 6a 76 75 20 66 75 6e 63 74 69 6f 6e 2e 22 0a    20 20 28 61 70 70 6c 79 20 28 62 75 74 74 6f 6e  | Djvu.function."...(apply.(button | 
| 1c4e0 |  2d 67 65 74 20 62 75 74 74 6f 6e 20 27 64 6a 76    75 2d 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20  | -get.button.'djvu-function)..... | 
| 1c500 |  20 20 20 20 20 28 62 75 74 74 6f 6e 2d 67 65 74    20 62 75 74 74 6f 6e 20 27 64 6a 76 75 2d 61 72  | .....(button-get.button.'djvu-ar | 
| 1c520 |  67 73 29 29 29 0a 0a 28 64 65 66 69 6e 65 2d 62    75 74 74 6f 6e 2d 74 79 70 65 20 27 64 6a 76 75  | gs)))..(define-button-type.'djvu | 
| 1c540 |  2d 75 72 6c 0a 20 20 27 61 63 74 69 6f 6e 20 27    64 6a 76 75 2d 62 75 74 74 6f 6e 2d 61 63 74 69  | -url...'action.'djvu-button-acti | 
| 1c560 |  6f 6e 0a 20 20 27 64 6a 76 75 2d 66 75 6e 63 74    69 6f 6e 20 27 64 6a 76 75 2d 75 72 6c 0a 20 20  | on...'djvu-function.'djvu-url... | 
| 1c580 |  27 68 65 6c 70 2d 65 63 68 6f 20 22 6d 6f 75 73    65 2d 32 2c 20 52 45 54 3a 20 66 6f 6c 6c 6f 77  | 'help-echo."mouse-2,.RET:.follow | 
| 1c5a0 |  20 55 52 4c 22 29 0a 0a 28 64 65 66 75 6e 20 64    6a 76 75 2d 75 72 6c 20 28 75 72 6c 29 0a 20 20  | .URL")..(defun.djvu-url.(url)... | 
| 1c5c0 |  22 42 72 6f 77 73 65 20 55 52 4c 20 69 6e 20 44    6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 0a 49 66  | "Browse.URL.in.Djvu.document..If | 
| 1c5e0 |  20 55 52 4c 20 69 73 20 61 6e 20 69 6e 74 65 72    6e 61 6c 20 75 72 6c 2c 20 67 6f 20 74 6f 20 74  | .URL.is.an.internal.url,.go.to.t | 
| 1c600 |  68 61 74 20 70 61 67 65 2e 22 0a 20 20 28 69 66    20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22  | hat.page."...(if.(string-match." | 
| 1c620 |  5c 5c 60 23 22 20 75 72 6c 29 0a 20 20 20 20 20    20 28 6c 65 74 2a 20 28 28 70 61 67 65 2d 75 72  | \\`#".url).......(let*.((page-ur | 
| 1c640 |  6c 20 28 73 75 62 73 74 72 69 6e 67 20 75 72 6c    20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | l.(substring.url.1))............ | 
| 1c660 |  20 20 28 70 61 67 65 20 28 6f 72 20 28 63 61 72    20 28 72 61 73 73 6f 63 20 70 61 67 65 2d 75 72  | ..(page.(or.(car.(rassoc.page-ur | 
| 1c680 |  6c 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65    2d 69 64 29 29 29 0a 20 20 20 20 20 20 20 20 20  | l.(djvu-ref.page-id))).......... | 
| 1c6a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61    6e 64 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68  | ..............(and.(string-match | 
| 1c6c0 |  20 22 5c 5c 60 5b 30 2d 39 5d 2b 5c 5c 27 22 20    70 61 67 65 2d 75 72 6c 29 0a 20 20 20 20 20 20  | ."\\`[0-9]+\\'".page-url)....... | 
| 1c6e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 74 6f  | ......................(string-to | 
| 1c700 |  2d 6e 75 6d 62 65 72 20 70 61 67 65 2d 75 72 6c    29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 75  | -number.page-url))))).........(u | 
| 1c720 |  6e 6c 65 73 73 20 70 61 67 65 20 28 65 72 72 6f    72 20 22 49 6e 76 61 6c 69 64 20 69 6e 74 65 72  | nless.page.(error."Invalid.inter | 
| 1c740 |  6e 61 6c 20 75 72 6c 20 60 25 73 27 22 20 70 61    67 65 2d 75 72 6c 29 29 0a 20 20 20 20 20 20 20  | nal.url.`%s'".page-url))........ | 
| 1c760 |  20 28 64 6a 76 75 2d 67 6f 74 6f 2d 70 61 67 65    20 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 28  | .(djvu-goto-page.page).........( | 
| 1c780 |  64 6a 76 75 2d 73 77 69 74 63 68 2d 72 65 61 64    29 29 0a 20 20 20 20 28 62 72 6f 77 73 65 2d 75  | djvu-switch-read)).....(browse-u | 
| 1c7a0 |  72 6c 20 75 72 6c 29 29 29 0a 0a 3b 3b 20 44 6a    76 75 73 65 64 20 6d 61 70 61 72 65 61 20 60 74  | rl.url)))..;;.Djvused.maparea.`t | 
| 1c7c0 |  65 78 74 27 0a 28 64 65 66 75 6e 20 64 6a 76 75    2d 69 6e 74 65 72 61 63 74 69 76 65 2d 74 65 78  | ext'.(defun.djvu-interactive-tex | 
| 1c7e0 |  74 2d 61 72 65 61 20 28 26 6f 70 74 69 6f 6e 61    6c 20 62 6f 72 64 65 72 20 62 61 63 6b 63 6c 72  | t-area.(&optional.border.backclr | 
| 1c800 |  20 74 65 78 74 63 6c 72 20 70 75 73 68 70 69 6e    29 0a 20 20 22 49 6e 74 65 72 61 63 74 69 76 65  | .textclr.pushpin)..."Interactive | 
| 1c820 |  20 73 70 65 63 20 66 6f 72 20 60 64 6a 76 75 2d    74 65 78 74 2d 61 72 65 61 27 20 61 6e 64 20 66  | .spec.for.`djvu-text-area'.and.f | 
| 1c840 |  72 69 65 6e 64 73 2e 22 0a 20 20 28 6c 65 74 20    28 28 64 70 6f 73 20 28 64 6a 76 75 2d 6d 65 61  | riends."...(let.((dpos.(djvu-mea | 
| 1c860 |  6e 2d 64 70 6f 73 20 28 64 6a 76 75 2d 72 65 61    64 2d 64 70 6f 73 29 29 29 0a 20 20 20 20 20 20  | n-dpos.(djvu-read-dpos)))....... | 
| 1c880 |  20 20 28 70 61 67 65 73 69 7a 65 20 28 64 6a 76    75 2d 72 65 66 20 70 61 67 65 73 69 7a 65 29 29  | ..(pagesize.(djvu-ref.pagesize)) | 
| 1c8a0 |  0a 20 20 20 20 20 20 20 20 28 63 6f 6c 6f 72 20    28 64 6a 76 75 2d 69 6e 74 65 72 61 63 74 69 76  | .........(color.(djvu-interactiv | 
| 1c8c0 |  65 2d 63 6f 6c 6f 72 20 64 6a 76 75 2d 63 6f 6c    6f 72 2d 68 69 67 68 6c 69 67 68 74 29 29 29 0a  | e-color.djvu-color-highlight))). | 
| 1c8e0 |  20 20 20 20 28 6c 69 73 74 20 6e 69 6c 20 28 72    65 61 64 2d 73 74 72 69 6e 67 20 28 66 6f 72 6d  | ....(list.nil.(read-string.(form | 
| 1c900 |  61 74 20 22 28 25 73 29 20 54 65 78 74 3a 20 22    20 28 6f 72 20 63 6f 6c 6f 72 20 22 6e 6f 20 63  | at."(%s).Text:.".(or.color."no.c | 
| 1c920 |  6f 6c 6f 72 22 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  | olor"))......................... | 
| 1c940 |  20 20 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 64    6a 76 75 2d 69 6e 68 65 72 69 74 2d 69 6e 70 75  | ...nil.nil.nil.djvu-inherit-inpu | 
| 1c960 |  74 2d 6d 65 74 68 6f 64 29 0a 20 20 20 20 20 20    20 20 20 20 28 6c 69 73 74 20 28 6e 74 68 20 30  | t-method)...........(list.(nth.0 | 
| 1c980 |  20 64 70 6f 73 29 20 28 6e 74 68 20 31 20 64 70    6f 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .dpos).(nth.1.dpos)............. | 
| 1c9a0 |  20 20 20 20 28 2b 20 28 6e 74 68 20 30 20 64 70    6f 73 29 20 28 2f 20 28 63 61 72 20 70 61 67 65  | ....(+.(nth.0.dpos).(/.(car.page | 
| 1c9c0 |  73 69 7a 65 29 20 32 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 2b 20 28 6e 74  | size).2)).................(+.(nt | 
| 1c9e0 |  68 20 31 20 64 70 6f 73 29 20 28 2f 20 28 63 64    72 20 70 61 67 65 73 69 7a 65 29 20 33 30 29 29  | h.1.dpos).(/.(cdr.pagesize).30)) | 
| 1ca00 |  29 0a 20 20 20 20 20 20 20 20 20 20 62 6f 72 64    65 72 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72  | )...........border...........(or | 
| 1ca20 |  20 62 61 63 6b 63 6c 72 20 28 64 6a 76 75 2d 63    6f 6c 6f 72 2d 62 61 63 6b 67 72 6f 75 6e 64 20  | .backclr.(djvu-color-background. | 
| 1ca40 |  63 6f 6c 6f 72 29 29 0a 20 20 20 20 20 20 20 20    20 20 74 65 78 74 63 6c 72 20 70 75 73 68 70 69  | color))...........textclr.pushpi | 
| 1ca60 |  6e 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20    64 6a 76 75 2d 69 6e 73 65 72 74 2d 63 6f 6c 6f  | n)))..(defsubst.djvu-insert-colo | 
| 1ca80 |  72 20 28 6b 65 79 20 63 6f 6c 6f 72 29 0a 20 20    28 69 66 20 63 6f 6c 6f 72 0a 20 20 20 20 20 20  | r.(key.color)...(if.color....... | 
| 1caa0 |  28 66 6f 72 6d 61 74 20 22 20 28 25 73 20 25 73    29 22 20 6b 65 79 0a 20 20 20 20 20 20 20 20 20  | (format.".(%s.%s)".key.......... | 
| 1cac0 |  20 20 20 20 20 28 63 6f 6e 64 20 28 28 73 74 72    69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60 23 22  | .....(cond.((string-match."\\`#" | 
| 1cae0 |  20 63 6f 6c 6f 72 29 20 63 6f 6c 6f 72 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .color).color).................. | 
| 1cb00 |  20 20 20 28 28 63 64 72 20 28 61 73 73 6f 63 20    63 6f 6c 6f 72 20 64 6a 76 75 2d 63 6f 6c 6f 72  | ...((cdr.(assoc.color.djvu-color | 
| 1cb20 |  2d 61 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74  | -alist))).....................(t | 
| 1cb40 |  20 28 65 72 72 6f 72 20 22 43 6f 6c 6f 72 20 60    25 73 27 20 75 6e 64 65 66 69 6e 65 64 22 20 63  | .(error."Color.`%s'.undefined".c | 
| 1cb60 |  6f 6c 6f 72 29 29 29 29 0a 20 20 20 20 22 22 29    29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 62  | olor)))).....""))..(defun.djvu-b | 
| 1cb80 |  6f 75 6e 64 2d 61 72 65 61 20 28 61 72 65 61 20    26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 29 0a 20  | ound-area.(area.&optional.doc).. | 
| 1cba0 |  20 22 52 65 73 74 72 69 63 74 20 41 52 45 41 20    74 6f 20 70 61 67 65 20 62 6f 75 6e 64 61 72 69  | ."Restrict.AREA.to.page.boundari | 
| 1cbc0 |  65 73 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 64    6f 63 20 28 73 65 74 71 20 64 6f 63 20 64 6a 76  | es."...(unless.doc.(setq.doc.djv | 
| 1cbe0 |  75 2d 64 6f 63 29 29 0a 20 20 3b 3b 20 41 52 45    41 20 6d 61 79 20 62 65 20 61 20 6c 69 73 74 20  | u-doc))...;;.AREA.may.be.a.list. | 
| 1cc00 |  6f 72 20 76 65 63 74 6f 72 2e 20 20 41 6c 77 61    79 73 20 72 65 74 75 72 6e 20 61 20 6c 69 73 74  | or.vector...Always.return.a.list | 
| 1cc20 |  2e 0a 20 20 28 6c 69 73 74 20 28 6d 61 78 20 31    20 28 6d 69 6e 20 28 65 6c 74 20 61 72 65 61 20  | ....(list.(max.1.(min.(elt.area. | 
| 1cc40 |  30 29 20 28 63 61 72 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 73 69 7a 65 20 64 6f 63 29 29  | 0).(car.(djvu-ref.pagesize.doc)) | 
| 1cc60 |  29 29 0a 20 20 20 20 20 20 20 20 28 6d 61 78 20    31 20 28 6d 69 6e 20 28 65 6c 74 20 61 72 65 61  | )).........(max.1.(min.(elt.area | 
| 1cc80 |  20 31 29 20 28 63 64 72 20 28 64 6a 76 75 2d 72    65 66 20 70 61 67 65 73 69 7a 65 20 64 6f 63 29  | .1).(cdr.(djvu-ref.pagesize.doc) | 
| 1cca0 |  29 29 29 0a 20 20 20 20 20 20 20 20 28 6d 61 78    20 31 20 28 6d 69 6e 20 28 65 6c 74 20 61 72 65  | ))).........(max.1.(min.(elt.are | 
| 1ccc0 |  61 20 32 29 20 28 63 61 72 20 28 64 6a 76 75 2d    72 65 66 20 70 61 67 65 73 69 7a 65 20 64 6f 63  | a.2).(car.(djvu-ref.pagesize.doc | 
| 1cce0 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 28 6d 61    78 20 31 20 28 6d 69 6e 20 28 65 6c 74 20 61 72  | )))).........(max.1.(min.(elt.ar | 
| 1cd00 |  65 61 20 33 29 20 28 63 64 72 20 28 64 6a 76 75    2d 72 65 66 20 70 61 67 65 73 69 7a 65 20 64 6f  | ea.3).(cdr.(djvu-ref.pagesize.do | 
| 1cd20 |  63 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 74 65 78 74 2d 61 72 65 61 20 28  | c))))))..(defun.djvu-text-area.( | 
| 1cd40 |  75 72 6c 20 63 6f 6d 6d 65 6e 74 20 61 72 65 61    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | url.comment.area................ | 
| 1cd60 |  20 20 20 20 20 20 20 20 20 20 20 20 26 6f 70 74    69 6f 6e 61 6c 20 62 6f 72 64 65 72 20 62 61 63  | ............&optional.border.bac | 
| 1cd80 |  6b 63 6c 72 20 74 65 78 74 63 6c 72 20 70 75 73    68 70 69 6e 29 0a 20 20 22 55 73 69 6e 67 20 73  | kclr.textclr.pushpin)..."Using.s | 
| 1cda0 |  74 72 69 6e 67 73 20 55 52 4c 20 61 6e 64 20 43    4f 4d 4d 45 4e 54 2c 20 68 69 67 68 6c 69 67 68  | trings.URL.and.COMMENT,.highligh | 
| 1cdc0 |  74 20 41 52 45 41 2e 0a 54 68 69 73 20 64 65 66    69 6e 65 73 20 61 20 74 65 78 74 20 6d 61 70 61  | t.AREA..This.defines.a.text.mapa | 
| 1cde0 |  72 65 61 20 66 6f 72 20 64 6a 76 75 73 65 64 2e    0a 41 52 45 41 20 69 73 20 61 20 6c 69 73 74 20  | rea.for.djvused..AREA.is.a.list. | 
| 1ce00 |  28 58 4d 49 4e 20 59 4d 49 4e 20 58 4d 41 58 20    59 4d 41 58 29 2e 0a 49 6e 74 65 72 61 63 74 69  | (XMIN.YMIN.XMAX.YMAX)..Interacti | 
| 1ce20 |  76 65 6c 79 2c 20 74 68 65 20 63 6f 6d 6d 61 6e    64 20 60 64 6a 76 75 2d 6d 6f 75 73 65 2d 74 65  | vely,.the.command.`djvu-mouse-te | 
| 1ce40 |  78 74 2d 61 72 65 61 27 20 69 6e 20 60 64 6a 76    75 2d 69 6d 61 67 65 2d 6d 6f 64 65 27 0a 69 73  | xt-area'.in.`djvu-image-mode'.is | 
| 1ce60 |  20 75 73 75 61 6c 6c 79 20 65 61 73 69 65 72 20    74 6f 20 75 73 65 2e 22 0a 20 20 28 69 6e 74 65  | .usually.easier.to.use."...(inte | 
| 1ce80 |  72 61 63 74 69 76 65 20 28 64 6a 76 75 2d 69 6e    74 65 72 61 63 74 69 76 65 2d 74 65 78 74 2d 61  | ractive.(djvu-interactive-text-a | 
| 1cea0 |  72 65 61 29 29 0a 20 20 28 73 65 74 71 20 61 72    65 61 20 28 64 6a 76 75 2d 62 6f 75 6e 64 2d 61  | rea))...(setq.area.(djvu-bound-a | 
| 1cec0 |  72 65 61 20 61 72 65 61 29 29 0a 20 20 28 77 69    74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65  | rea.area))...(with-current-buffe | 
| 1cee0 |  72 20 28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f    74 2d 62 75 66 29 0a 20 20 20 20 28 67 6f 74 6f  | r.(djvu-ref.annot-buf).....(goto | 
| 1cf00 |  2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78    29 29 0a 20 20 20 20 28 69 6e 73 65 72 74 20 28  | -char.(point-max)).....(insert.( | 
| 1cf20 |  66 6f 72 6d 61 74 20 22 28 6d 61 70 61 72 65 61    20 25 53 5c 6e 20 25 53 5c 6e 20 22 0a 20 20 20  | format."(maparea.%S\n.%S\n.".... | 
| 1cf40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6f 72 20 75 72 6c 20 22 22 29 20 28 69 66  | .................(or.url."").(if | 
| 1cf60 |  20 63 6f 6d 6d 65 6e 74 20 28 64 6a 76 75 2d 66    69 6c 6c 20 63 6f 6d 6d 65 6e 74 29 20 22 22 29  | .comment.(djvu-fill.comment)."") | 
| 1cf80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 61    70 70 6c 79 20 27 66 6f 72 6d 61 74 20 22 28 74  | ).............(apply.'format."(t | 
| 1cfa0 |  65 78 74 20 25 64 20 25 64 20 25 64 20 25 64 29    22 20 61 72 65 61 29 0a 20 20 20 20 20 20 20 20  | ext.%d.%d.%d.%d)".area)......... | 
| 1cfc0 |  20 20 20 20 28 66 6f 72 6d 61 74 20 22 20 28 25    73 29 22 20 28 6f 72 20 62 6f 72 64 65 72 20 27  | ....(format.".(%s)".(or.border.' | 
| 1cfe0 |  6e 6f 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 62 61 63 6b 63 6c 72 20 28  | none)).............(if.backclr.( | 
| 1d000 |  64 6a 76 75 2d 69 6e 73 65 72 74 2d 63 6f 6c 6f    72 20 22 62 61 63 6b 63 6c 72 22 20 62 61 63 6b  | djvu-insert-color."backclr".back | 
| 1d020 |  63 6c 72 29 20 22 22 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 69 66 20 74 65 78 74 63 6c 72  | clr)."").............(if.textclr | 
| 1d040 |  20 28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 63 6f    6c 6f 72 20 22 74 65 78 74 63 6c 72 22 20 74 65  | .(djvu-insert-color."textclr".te | 
| 1d060 |  78 74 63 6c 72 29 20 22 22 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 69 66 20 70 75 73 68 70  | xtclr)."").............(if.pushp | 
| 1d080 |  69 6e 20 22 20 28 70 75 73 68 70 69 6e 29 22 20    22 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | in.".(pushpin)"."")............. | 
| 1d0a0 |  22 29 5c 6e 5c 6e 22 29 0a 20 20 20 20 28 75 6e    64 6f 2d 62 6f 75 6e 64 61 72 79 29 29 29 0a 0a  | ")\n\n").....(undo-boundary))).. | 
| 1d0c0 |  28 64 65 66 75 6e 20 64 6a 76 75 2d 74 65 78 74    2d 61 72 65 61 2d 70 75 73 68 70 69 6e 20 28 75  | (defun.djvu-text-area-pushpin.(u | 
| 1d0e0 |  72 6c 20 63 6f 6d 6d 65 6e 74 20 61 72 65 61 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rl.comment.area................. | 
| 1d100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 26 6f 70 74 69 6f 6e 61 6c 20 62 6f 72  | ...................&optional.bor | 
| 1d120 |  64 65 72 20 62 61 63 6b 63 6c 72 20 74 65 78 74    63 6c 72 20 70 75 73 68 70 69 6e 29 0a 20 20 22  | der.backclr.textclr.pushpin)..." | 
| 1d140 |  55 73 69 6e 67 20 55 52 4c 20 61 6e 64 20 43 4f    4d 4d 45 4e 54 2c 20 68 69 67 68 6c 69 67 68 74  | Using.URL.and.COMMENT,.highlight | 
| 1d160 |  20 41 52 45 41 20 61 73 20 70 75 73 68 70 69 6e    2e 0a 54 68 69 73 20 64 65 66 69 6e 65 73 20 61  | .AREA.as.pushpin..This.defines.a | 
| 1d180 |  20 72 65 63 74 20 61 72 65 61 20 66 6f 72 20 64    6a 76 75 73 65 64 2e 0a 49 6e 74 65 72 61 63 74  | .rect.area.for.djvused..Interact | 
| 1d1a0 |  69 76 65 6c 79 2c 20 74 68 65 20 63 6f 6d 6d 61    6e 64 20 60 64 6a 76 75 2d 6d 6f 75 73 65 2d 74  | ively,.the.command.`djvu-mouse-t | 
| 1d1c0 |  65 78 74 2d 61 72 65 61 2d 70 75 73 68 70 69 6e    27 20 69 6e 20 60 64 6a 76 75 2d 69 6d 61 67 65  | ext-area-pushpin'.in.`djvu-image | 
| 1d1e0 |  2d 6d 6f 64 65 27 0a 69 73 20 75 73 75 61 6c 6c    79 20 65 61 73 69 65 72 20 74 6f 20 75 73 65 2e  | -mode'.is.usually.easier.to.use. | 
| 1d200 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    20 28 64 6a 76 75 2d 69 6e 74 65 72 61 63 74 69  | "...(interactive.(djvu-interacti | 
| 1d220 |  76 65 2d 74 65 78 74 2d 61 72 65 61 20 6e 69 6c    20 6e 69 6c 20 6e 69 6c 20 74 29 29 0a 20 20 28  | ve-text-area.nil.nil.nil.t))...( | 
| 1d240 |  64 6a 76 75 2d 74 65 78 74 2d 61 72 65 61 20 75    72 6c 20 63 6f 6d 6d 65 6e 74 20 61 72 65 61 20  | djvu-text-area.url.comment.area. | 
| 1d260 |  62 6f 72 64 65 72 20 62 61 63 6b 63 6c 72 20 74    65 78 74 63 6c 72 20 70 75 73 68 70 69 6e 29 29  | border.backclr.textclr.pushpin)) | 
| 1d280 |  0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 6d 61    72 6b 2d 6c 69 6e 65 2d 62 65 67 20 28 70 6e 74  | ..(defun.djvu-mark-line-beg.(pnt | 
| 1d2a0 |  20 63 6f 6d 6d 65 6e 74 20 26 6f 70 74 69 6f 6e    61 6c 20 6c 65 66 74 20 63 6f 6c 6f 72 29 0a 20  | .comment.&optional.left.color).. | 
| 1d2c0 |  20 22 4d 61 72 6b 20 77 6f 72 64 20 61 74 20 62    65 67 69 6e 6e 69 6e 67 20 6f 66 20 6c 69 6e 65  | ."Mark.word.at.beginning.of.line | 
| 1d2e0 |  2e 0a 57 69 74 68 20 70 72 65 66 69 78 20 4c 45    46 54 20 6d 61 72 6b 20 6c 65 66 74 20 6f 66 20  | ..With.prefix.LEFT.mark.left.of. | 
| 1d300 |  62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 6c 69 6e    65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | beginning.of.line."...(interacti | 
| 1d320 |  76 65 0a 20 20 20 28 6c 65 74 20 28 28 70 72 65    66 69 78 20 63 75 72 72 65 6e 74 2d 70 72 65 66  | ve....(let.((prefix.current-pref | 
| 1d340 |  69 78 2d 61 72 67 29 29 0a 20 20 20 20 20 28 6c    69 73 74 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e  | ix-arg))......(list.(line-beginn | 
| 1d360 |  69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 0a 20 20    20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d 73  | ing-position)............(read-s | 
| 1d380 |  74 72 69 6e 67 20 28 66 6f 72 6d 61 74 20 22 28    25 73 29 20 25 73 4d 61 72 6b 65 72 20 63 6f 6d  | tring.(format."(%s).%sMarker.com | 
| 1d3a0 |  6d 65 6e 74 3a 20 22 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ment:."......................... | 
| 1d3c0 |  20 20 20 20 20 20 20 20 64 6a 76 75 2d 63 6f 6c    6f 72 2d 68 69 6d 61 72 6b 0a 20 20 20 20 20 20  | ........djvu-color-himark....... | 
| 1d3e0 |  20 20 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 70 72  | ..........................(if.pr | 
| 1d400 |  65 66 69 78 20 22 6c 65 66 74 20 22 20 22 22 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | efix."left.".""))............... | 
| 1d420 |  20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 6e 69    6c 20 6e 69 6c 20 64 6a 76 75 2d 69 6e 68 65 72  | ..........nil.nil.nil.djvu-inher | 
| 1d440 |  69 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f 64 29    0a 20 20 20 20 20 20 20 20 20 20 20 70 72 65 66  | it-input-method)............pref | 
| 1d460 |  69 78 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 68 69    6d 61 72 6b 29 29 29 0a 20 20 28 6c 65 74 2a 20  | ix.djvu-color-himark)))...(let*. | 
| 1d480 |  28 28 7a 6f 6e 65 20 28 67 65 74 2d 74 65 78 74    2d 70 72 6f 70 65 72 74 79 20 70 6e 74 20 27 77  | ((zone.(get-text-property.pnt.'w | 
| 1d4a0 |  6f 72 64 29 29 0a 20 20 20 20 20 20 20 20 20 28    68 65 69 67 68 74 20 28 2d 20 28 61 72 65 66 20  | ord))..........(height.(-.(aref. | 
| 1d4c0 |  7a 6f 6e 65 20 33 29 20 28 61 72 65 66 20 7a 6f    6e 65 20 31 29 29 29 0a 20 20 20 20 20 20 20 20  | zone.3).(aref.zone.1)))......... | 
| 1d4e0 |  20 28 78 6d 69 6e 20 28 2d 20 28 61 72 65 66 20    7a 6f 6e 65 20 30 29 20 28 72 6f 75 6e 64 20 28  | .(xmin.(-.(aref.zone.0).(round.( | 
| 1d500 |  2a 20 32 2e 35 20 68 65 69 67 68 74 29 29 29 29    29 0a 20 20 20 20 28 69 66 20 6c 65 66 74 0a 20  | *.2.5.height))))).....(if.left.. | 
| 1d520 |  20 20 20 20 20 20 20 28 64 6a 76 75 2d 74 65 78    74 2d 61 72 65 61 20 6e 69 6c 20 63 6f 6d 6d 65  | .......(djvu-text-area.nil.comme | 
| 1d540 |  6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74  | nt.........................(list | 
| 1d560 |  20 78 6d 69 6e 20 28 61 72 65 66 20 7a 6f 6e 65    20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .xmin.(aref.zone.1)............. | 
| 1d580 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 2d 20 28 61 72 65 66 20 7a 6f 6e 65 20  | ..................(-.(aref.zone. | 
| 1d5a0 |  30 29 20 28 2f 20 68 65 69 67 68 74 20 32 29 29    20 28 61 72 65 66 20 7a 6f 6e 65 20 33 29 29 0a  | 0).(/.height.2)).(aref.zone.3)). | 
| 1d5c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20  | ........................nil..... | 
| 1d5e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 64 6a 76 75 2d 63 6f 6c 6f 72 2d  | ....................(djvu-color- | 
| 1d600 |  62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72    29 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d 72  | background.color)).......(djvu-r | 
| 1d620 |  65 63 74 2d 61 72 65 61 20 6e 69 6c 20 63 6f 6d    6d 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20  | ect-area.nil.comment............ | 
| 1d640 |  20 20 20 20 20 20 20 20 20 20 20 60 28 28 2c 78    6d 69 6e 20 2c 28 61 72 65 66 20 7a 6f 6e 65 20  | ...........`((,xmin.,(aref.zone. | 
| 1d660 |  31 29 20 2c 28 61 72 65 66 20 7a 6f 6e 65 20 32    29 20 2c 28 61 72 65 66 20 7a 6f 6e 65 20 33 29  | 1).,(aref.zone.2).,(aref.zone.3) | 
| 1d680 |  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 63 6f 6c 6f 72 20 64  | )).......................color.d | 
| 1d6a0 |  6a 76 75 2d 6f 70 61 63 69 74 79 29 29 29 29 0a    0a 3b 3b 20 44 6a 76 75 73 65 64 20 6d 61 70 61  | jvu-opacity))))..;;.Djvused.mapa | 
| 1d6c0 |  72 65 61 20 60 72 65 63 74 27 0a 28 64 65 66 75    6e 20 64 6a 76 75 2d 68 69 6d 61 72 6b 20 28 62  | rea.`rect'.(defun.djvu-himark.(b | 
| 1d6e0 |  6f 6f 6b 6d 61 72 6b 20 75 72 6c 20 62 65 67 20    65 6e 64 20 63 6f 6d 6d 65 6e 74 0a 20 20 20 20  | ookmark.url.beg.end.comment..... | 
| 1d700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 26 6f 70 74 69 6f 6e  | .........................&option | 
| 1d720 |  61 6c 20 6c 65 76 65 6c 20 63 6f 6c 6f 72 20 6f    70 61 63 69 74 79 20 62 6f 72 64 65 72 29 0a 20  | al.level.color.opacity.border).. | 
| 1d740 |  20 3b 3b 20 46 69 78 6d 65 3a 20 46 69 78 20 64    6f 63 73 74 72 69 6e 67 2e 0a 20 20 22 42 6f 6f  | .;;.Fixme:.Fix.docstring...."Boo | 
| 1d760 |  6b 6d 61 72 6b 20 61 6e 64 20 68 69 67 68 6c 69    67 68 74 20 74 68 65 20 72 65 67 69 6f 6e 20 62  | kmark.and.highlight.the.region.b | 
| 1d780 |  65 74 77 65 65 6e 20 42 45 47 20 61 6e 64 20 45    4e 44 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74  | etween.BEG.and.END."...(interact | 
| 1d7a0 |  69 76 65 0a 20 20 20 28 64 6a 76 75 2d 77 69 74    68 2d 72 65 67 69 6f 6e 20 72 65 67 69 6f 6e 0a  | ive....(djvu-with-region.region. | 
| 1d7c0 |  20 20 20 20 20 28 6c 65 74 20 28 28 6c 65 76 65    6c 20 28 64 6a 76 75 2d 69 6e 74 65 72 61 63 74  | .....(let.((level.(djvu-interact | 
| 1d7e0 |  69 76 65 2d 62 6f 6f 6b 6d 61 72 6b 2d 6c 65 76    65 6c 29 29 20 3b 20 68 61 6e 64 6c 65 20 70 72  | ive-bookmark-level)).;.handle.pr | 
| 1d800 |  65 66 69 78 20 61 72 67 20 66 69 72 73 74 0a 20    20 20 20 20 20 20 20 20 20 20 28 62 6f 6f 6b 6d  | efix.arg.first............(bookm | 
| 1d820 |  61 72 6b 20 28 64 6a 76 75 2d 72 65 61 64 2d 73    74 72 69 6e 67 20 22 42 6f 6f 6b 6d 61 72 6b 3a  | ark.(djvu-read-string."Bookmark: | 
| 1d840 |  20 22 20 72 65 67 69 6f 6e 20 74 29 29 29 0a 20    20 20 20 20 20 20 28 6c 69 73 74 20 62 6f 6f 6b  | .".region.t)))........(list.book | 
| 1d860 |  6d 61 72 6b 20 28 64 6a 76 75 2d 72 65 66 20 70    61 67 65 29 20 28 63 61 72 20 72 65 67 69 6f 6e  | mark.(djvu-ref.page).(car.region | 
| 1d880 |  29 20 28 63 64 72 20 72 65 67 69 6f 6e 29 20 62    6f 6f 6b 6d 61 72 6b 20 6c 65 76 65 6c 0a 20 20  | ).(cdr.region).bookmark.level... | 
| 1d8a0 |  20 20 20 20 20 20 20 20 20 20 20 64 6a 76 75 2d    63 6f 6c 6f 72 2d 68 69 6d 61 72 6b 20 64 6a 76  | ...........djvu-color-himark.djv | 
| 1d8c0 |  75 2d 6f 70 61 63 69 74 79 20 6e 69 6c 29 29 29    29 0a 20 20 28 64 6a 76 75 2d 62 6f 6f 6b 6d 61  | u-opacity.nil))))...(djvu-bookma | 
| 1d8e0 |  72 6b 20 62 6f 6f 6b 6d 61 72 6b 20 75 72 6c 20    6c 65 76 65 6c 29 0a 20 20 28 64 6a 76 75 2d 72  | rk.bookmark.url.level)...(djvu-r | 
| 1d900 |  65 63 74 2d 72 65 67 69 6f 6e 20 62 65 67 20 65    6e 64 20 6e 69 6c 20 63 6f 6d 6d 65 6e 74 20 63  | ect-region.beg.end.nil.comment.c | 
| 1d920 |  6f 6c 6f 72 20 6f 70 61 63 69 74 79 20 62 6f 72    64 65 72 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a  | olor.opacity.border))..(defun.dj | 
| 1d940 |  76 75 2d 75 70 64 61 74 65 2d 75 72 6c 20 28 75    72 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 63 6f 6c  | vu-update-url.(url.&optional.col | 
| 1d960 |  6f 72 20 6f 70 61 63 69 74 79 20 62 6f 72 64 65    72 29 0a 20 20 22 55 70 64 61 74 65 20 55 52 4c  | or.opacity.border)..."Update.URL | 
| 1d980 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    0a 20 20 20 28 6c 65 74 2a 20 28 28 63 6f 6c 6f  | "...(interactive....(let*.((colo | 
| 1d9a0 |  72 20 28 64 6a 76 75 2d 69 6e 74 65 72 61 63 74    69 76 65 2d 63 6f 6c 6f 72 20 64 6a 76 75 2d 63  | r.(djvu-interactive-color.djvu-c | 
| 1d9c0 |  6f 6c 6f 72 2d 75 72 6c 29 29 0a 20 20 20 20 20    20 20 20 20 20 28 75 72 6c 20 28 64 6a 76 75 2d  | olor-url))...........(url.(djvu- | 
| 1d9e0 |  69 6e 74 65 72 61 63 74 69 76 65 2d 75 72 6c 20    63 6f 6c 6f 72 29 29 29 0a 20 20 20 20 20 28 6c  | interactive-url.color)))......(l | 
| 1da00 |  69 73 74 20 75 72 6c 20 63 6f 6c 6f 72 20 64 6a    76 75 2d 6f 70 61 63 69 74 79 20 27 78 6f 72 29  | ist.url.color.djvu-opacity.'xor) | 
| 1da20 |  29 29 0a 20 20 28 6c 65 74 20 28 28 64 70 6f 73    20 28 64 6a 76 75 2d 64 70 6f 73 29 29 0a 20 20  | ))...(let.((dpos.(djvu-dpos))... | 
| 1da40 |  20 20 20 20 20 20 28 64 6f 63 20 64 6a 76 75 2d    64 6f 63 29 29 0a 20 20 20 20 28 77 69 74 68 2d  | ......(doc.djvu-doc)).....(with- | 
| 1da60 |  63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28    64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f 74 2d 62  | current-buffer.(djvu-ref.annot-b | 
| 1da80 |  75 66 20 64 6f 63 29 0a 20 20 20 20 20 20 28 69    66 20 28 64 6a 76 75 2d 67 6f 74 6f 2d 64 70 6f  | uf.doc).......(if.(djvu-goto-dpo | 
| 1daa0 |  73 20 27 72 65 63 74 20 64 70 6f 73 29 0a 20 20    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 75 70  | s.'rect.dpos)...........(djvu-up | 
| 1dac0 |  64 61 74 65 2d 75 72 6c 2d 69 6e 74 65 72 6e 61    6c 20 75 72 6c 20 63 6f 6c 6f 72 20 6f 70 61 63  | date-url-internal.url.color.opac | 
| 1dae0 |  69 74 79 20 62 6f 72 64 65 72 29 0a 20 20 20 20    20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20  | ity.border).........(user-error. | 
| 1db00 |  22 4e 6f 20 6f 62 6a 65 63 74 20 74 6f 20 75 70    64 61 74 65 22 29 29 29 29 29 0a 0a 28 64 65 66  | "No.object.to.update")))))..(def | 
| 1db20 |  75 6e 20 64 6a 76 75 2d 75 70 64 61 74 65 2d 75    72 6c 2d 69 6e 74 65 72 6e 61 6c 20 28 75 72 6c  | un.djvu-update-url-internal.(url | 
| 1db40 |  20 26 6f 70 74 69 6f 6e 61 6c 20 63 6f 6c 6f 72    20 5f 6f 70 61 63 69 74 79 20 62 6f 72 64 65 72  | .&optional.color._opacity.border | 
| 1db60 |  29 0a 20 20 22 55 70 64 61 74 65 20 55 52 4c 20    69 6e 74 65 72 6e 61 6c 2e 22 0a 20 20 28 69 6e  | )..."Update.URL.internal."...(in | 
| 1db80 |  74 65 72 61 63 74 69 76 65 0a 20 20 20 28 6c 65    74 2a 20 28 28 63 6f 6c 6f 72 20 28 64 6a 76 75  | teractive....(let*.((color.(djvu | 
| 1dba0 |  2d 69 6e 74 65 72 61 63 74 69 76 65 2d 63 6f 6c    6f 72 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 75 72  | -interactive-color.djvu-color-ur | 
| 1dbc0 |  6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 75    72 6c 20 28 64 6a 76 75 2d 69 6e 74 65 72 61 63  | l))...........(url.(djvu-interac | 
| 1dbe0 |  74 69 76 65 2d 75 72 6c 20 63 6f 6c 6f 72 29 29    29 0a 20 20 20 20 20 28 6c 69 73 74 20 75 72 6c  | tive-url.color)))......(list.url | 
| 1dc00 |  20 63 6f 6c 6f 72 20 64 6a 76 75 2d 6f 70 61 63    69 74 79 20 27 78 6f 72 29 29 29 0a 20 20 28 6c  | .color.djvu-opacity.'xor)))...(l | 
| 1dc20 |  65 74 20 28 28 62 6f 75 6e 64 73 20 28 64 6a 76    75 2d 6f 62 6a 65 63 74 2d 62 6f 75 6e 64 73 29  | et.((bounds.(djvu-object-bounds) | 
| 1dc40 |  29 29 0a 20 20 20 20 28 69 66 20 62 6f 75 6e 64    73 0a 20 20 20 20 20 20 20 20 28 73 61 76 65 2d  | )).....(if.bounds.........(save- | 
| 1dc60 |  65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20    20 20 20 20 28 73 61 76 65 2d 72 65 73 74 72 69  | excursion...........(save-restri | 
| 1dc80 |  63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 6e 61 72 72 6f 77 2d 74 6f 2d 72 65 67  | ction.............(narrow-to-reg | 
| 1dca0 |  69 6f 6e 20 28 63 61 72 20 62 6f 75 6e 64 73 29    20 28 63 64 72 20 62 6f 75 6e 64 73 29 29 0a 20  | ion.(car.bounds).(cdr.bounds)).. | 
| 1dcc0 |  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 2d 6d 69 6e  | ...........(goto-char.(point-min | 
| 1dce0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    69 66 20 28 6e 6f 74 20 28 6c 6f 6f 6b 69 6e 67  | )).............(if.(not.(looking | 
| 1dd00 |  2d 61 74 20 22 28 6d 61 70 61 72 65 61 20 5c 5c    28 5c 22 5b 5e 5c 22 5d 2a 5c 22 5c 5c 29 22 29  | -at."(maparea.\\(\"[^\"]*\"\\)") | 
| 1dd20 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e  | ).................(user-error."N | 
| 1dd40 |  6f 74 68 69 6e 67 20 74 6f 20 75 70 64 61 74 65    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | othing.to.update").............. | 
| 1dd60 |  20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20    28 66 6f 72 6d 61 74 20 22 5c 22 25 73 5c 22 22  | .(replace-match.(format."\"%s\"" | 
| 1dd80 |  20 75 72 6c 29 20 6e 69 6c 20 6e 69 6c 20 6e 69    6c 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .url).nil.nil.nil.1)............ | 
| 1dda0 |  20 20 20 28 64 6a 76 75 2d 75 70 64 61 74 65 2d    63 6f 6c 6f 72 2d 69 6e 74 65 72 6e 61 6c 20 63  | ...(djvu-update-color-internal.c | 
| 1ddc0 |  6f 6c 6f 72 29 0a 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  | olor)...............(goto-char.( | 
| 1dde0 |  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 28 6c 65 74 20 28  | point-min))...............(let.( | 
| 1de00 |  28 62 6f 72 64 65 72 20 28 66 6f 72 6d 61 74 20    22 28 25 73 29 22 20 62 6f 72 64 65 72 29 29 29  | (border.(format."(%s)".border))) | 
| 1de20 |  0a 20 20 20 20 20 20 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  | .................(if.(re-search- | 
| 1de40 |  66 6f 72 77 61 72 64 20 22 28 5c 5c 28 6e 6f 6e    65 5c 5c 7c 78 6f 72 5c 5c 29 29 22 20 6e 69 6c  | forward."(\\(none\\|xor\\))".nil | 
| 1de60 |  20 74 29 0a 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  | .t).....................(replace | 
| 1de80 |  2d 6d 61 74 63 68 20 62 6f 72 64 65 72 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -match.border).................. | 
| 1dea0 |  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 20 20 20  | .(goto-char.(point-max))........ | 
| 1dec0 |  20 20 20 20 20 20 20 20 20 20 20 28 73 6b 69 70    2d 63 68 61 72 73 2d 62 61 63 6b 77 61 72 64 20  | ...........(skip-chars-backward. | 
| 1dee0 |  22 20 5c 74 5c 6e 22 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 62 61 63 6b  | ".\t\n")...................(back | 
| 1df00 |  77 61 72 64 2d 63 68 61 72 29 20 3b 20 73 6b 69    70 20 63 6c 6f 73 69 6e 67 20 22 29 22 0a 20 20  | ward-char).;.skip.closing.")"... | 
| 1df20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 69 6e 73 65 72 74 20 22 20 22 20 62 6f 72 64  | ................(insert.".".bord | 
| 1df40 |  65 72 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 6a 76 75 2d 72 65 63 74 2d 72 65  | er)))))))))..(defun.djvu-rect-re | 
| 1df60 |  67 69 6f 6e 2d 75 72 6c 20 28 62 65 67 20 65 6e    64 20 75 72 6c 20 63 6f 6d 6d 65 6e 74 20 26 6f  | gion-url.(beg.end.url.comment.&o | 
| 1df80 |  70 74 69 6f 6e 61 6c 20 63 6f 6c 6f 72 20 6f 70    61 63 69 74 79 20 62 6f 72 64 65 72 29 0a 20 20  | ptional.color.opacity.border)... | 
| 1dfa0 |  22 50 75 74 20 55 52 4c 20 6f 76 65 72 20 72 65    67 69 6f 6e 20 62 65 74 77 65 65 6e 20 42 45 47  | "Put.URL.over.region.between.BEG | 
| 1dfc0 |  20 61 6e 64 20 45 4e 44 2c 20 61 64 64 69 6e 67    20 61 6e 6e 6f 74 61 74 69 6f 6e 20 43 4f 4d 4d  | .and.END,.adding.annotation.COMM | 
| 1dfe0 |  45 4e 54 2e 22 0a 20 20 3b 3b 20 53 61 6d 65 20    61 73 20 60 64 6a 76 75 2d 72 65 63 74 2d 72 65  | ENT."...;;.Same.as.`djvu-rect-re | 
| 1e000 |  67 69 6f 6e 27 2c 20 62 75 74 20 69 74 20 61 6c    73 6f 20 61 64 64 73 20 74 68 65 20 75 72 6c 20  | gion',.but.it.also.adds.the.url. | 
| 1e020 |  66 69 65 6c 64 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 0a 20 20 20 28 64 6a 76 75 2d 77 69  | field...(interactive....(djvu-wi | 
| 1e040 |  74 68 2d 72 65 67 69 6f 6e 20 72 65 67 69 6f 6e    0a 20 20 20 20 20 28 6c 65 74 2a 20 28 28 63 6f  | th-region.region......(let*.((co | 
| 1e060 |  6c 6f 72 20 28 64 6a 76 75 2d 69 6e 74 65 72 61    63 74 69 76 65 2d 63 6f 6c 6f 72 20 64 6a 76 75  | lor.(djvu-interactive-color.djvu | 
| 1e080 |  2d 63 6f 6c 6f 72 2d 75 72 6c 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 75 72 6c 20 28 64  | -color-url)).............(url.(d | 
| 1e0a0 |  6a 76 75 2d 69 6e 74 65 72 61 63 74 69 76 65 2d    75 72 6c 20 63 6f 6c 6f 72 29 29 0a 20 20 20 20  | jvu-interactive-url.color))..... | 
| 1e0c0 |  20 20 20 20 20 20 20 20 28 63 6f 6d 6d 65 6e 74    20 28 64 6a 76 75 2d 72 65 61 64 2d 73 74 72 69  | ........(comment.(djvu-read-stri | 
| 1e0e0 |  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 28 66 6f 72 6d 61 74  | ng.......................(format | 
| 1e100 |  20 22 28 25 73 2c 20 25 73 29 20 41 6e 6e 6f 74    61 74 69 6f 6e 3a 20 22 0a 20 20 20 20 20 20 20  | ."(%s,.%s).Annotation:."........ | 
| 1e120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 75 72 6c 20 28 6f 72 20 63  | .......................url.(or.c | 
| 1e140 |  6f 6c 6f 72 20 22 6e 6f 20 63 6f 6c 6f 72 22 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | olor."no.color"))............... | 
| 1e160 |  20 20 20 20 20 20 20 20 72 65 67 69 6f 6e 29 29    29 0a 20 20 20 20 20 20 20 28 6c 69 73 74 20 28  | ........region)))........(list.( | 
| 1e180 |  63 61 72 20 72 65 67 69 6f 6e 29 20 28 63 64 72    20 72 65 67 69 6f 6e 29 20 75 72 6c 20 63 6f 6d  | car.region).(cdr.region).url.com | 
| 1e1a0 |  6d 65 6e 74 20 63 6f 6c 6f 72 20 64 6a 76 75 2d    6f 70 61 63 69 74 79 20 27 78 6f 72 29 29 29 29  | ment.color.djvu-opacity.'xor)))) | 
| 1e1c0 |  0a 20 20 28 64 6a 76 75 2d 72 65 63 74 2d 72 65    67 69 6f 6e 20 62 65 67 20 65 6e 64 20 75 72 6c  | ...(djvu-rect-region.beg.end.url | 
| 1e1e0 |  20 63 6f 6d 6d 65 6e 74 20 63 6f 6c 6f 72 20 6f    70 61 63 69 74 79 20 62 6f 72 64 65 72 29 29 0a  | .comment.color.opacity.border)). | 
| 1e200 |  0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 72 65 63    74 2d 72 65 67 69 6f 6e 20 28 62 65 67 20 65 6e  | .(defun.djvu-rect-region.(beg.en | 
| 1e220 |  64 20 75 72 6c 20 63 6f 6d 6d 65 6e 74 20 26 6f    70 74 69 6f 6e 61 6c 20 63 6f 6c 6f 72 20 6f 70  | d.url.comment.&optional.color.op | 
| 1e240 |  61 63 69 74 79 20 62 6f 72 64 65 72 29 0a 20 20    22 48 69 67 68 6c 69 67 68 74 20 72 65 67 69 6f  | acity.border)..."Highlight.regio | 
| 1e260 |  6e 20 62 65 74 77 65 65 6e 20 42 45 47 20 61 6e    64 20 45 4e 44 2c 20 61 64 64 20 55 52 4c 20 61  | n.between.BEG.and.END,.add.URL.a | 
| 1e280 |  6e 64 20 61 6e 6e 6f 74 61 74 69 6f 6e 20 43 4f    4d 4d 45 4e 54 2e 22 0a 20 20 28 69 6e 74 65 72  | nd.annotation.COMMENT."...(inter | 
| 1e2a0 |  61 63 74 69 76 65 0a 20 20 20 28 64 6a 76 75 2d    77 69 74 68 2d 72 65 67 69 6f 6e 20 72 65 67 69  | active....(djvu-with-region.regi | 
| 1e2c0 |  6f 6e 0a 20 20 20 20 20 28 6c 65 74 2a 20 28 28    63 6f 6c 6f 72 20 28 64 6a 76 75 2d 69 6e 74 65  | on......(let*.((color.(djvu-inte | 
| 1e2e0 |  72 61 63 74 69 76 65 2d 63 6f 6c 6f 72 20 64 6a    76 75 2d 63 6f 6c 6f 72 2d 68 69 67 68 6c 69 67  | ractive-color.djvu-color-highlig | 
| 1e300 |  68 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 63 6f 6d 6d 65 6e 74 20 28 64 6a 76 75 2d  | ht)).............(comment.(djvu- | 
| 1e320 |  72 65 61 64 2d 73 74 72 69 6e 67 20 28 66 6f 72    6d 61 74 20 22 28 25 73 29 20 41 6e 6e 6f 74 61  | read-string.(format."(%s).Annota | 
| 1e340 |  74 69 6f 6e 3a 20 22 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tion:."......................... | 
| 1e360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6f 72 20 63 6f 6c 6f 72  | .......................(or.color | 
| 1e380 |  20 22 6e 6f 20 63 6f 6c 6f 72 22 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."no.color"))................... | 
| 1e3a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 72 65 67 69 6f 6e 29 29 29 0a 20  | .....................region))).. | 
| 1e3c0 |  20 20 20 20 20 20 28 6c 69 73 74 20 28 63 61 72    20 72 65 67 69 6f 6e 29 20 28 63 64 72 20 72 65  | ......(list.(car.region).(cdr.re | 
| 1e3e0 |  67 69 6f 6e 29 20 6e 69 6c 20 63 6f 6d 6d 65 6e    74 20 63 6f 6c 6f 72 20 64 6a 76 75 2d 6f 70 61  | gion).nil.comment.color.djvu-opa | 
| 1e400 |  63 69 74 79 20 27 6e 6f 6e 65 29 29 29 29 0a 0a    20 20 28 75 6e 6c 65 73 73 20 28 67 65 74 2d 74  | city.'none))))....(unless.(get-t | 
| 1e420 |  65 78 74 2d 70 72 6f 70 65 72 74 79 20 62 65 67    20 27 77 6f 72 64 29 0a 20 20 20 20 28 75 73 65  | ext-property.beg.'word).....(use | 
| 1e440 |  72 2d 65 72 72 6f 72 20 22 53 74 61 72 74 20 70    6f 73 69 74 69 6f 6e 20 60 25 73 27 20 6e 6f 74  | r-error."Start.position.`%s'.not | 
| 1e460 |  20 61 20 77 6f 72 64 22 20 62 65 67 29 29 0a 20    20 28 75 6e 6c 65 73 73 20 28 67 65 74 2d 74 65  | .a.word".beg))...(unless.(get-te | 
| 1e480 |  78 74 2d 70 72 6f 70 65 72 74 79 20 28 31 2d 20    65 6e 64 29 20 27 77 6f 72 64 29 0a 20 20 20 20  | xt-property.(1-.end).'word)..... | 
| 1e4a0 |  28 75 73 65 72 2d 65 72 72 6f 72 20 22 45 6e 64    20 70 6f 73 69 74 69 6f 6e 20 60 25 73 27 20 6e  | (user-error."End.position.`%s'.n | 
| 1e4c0 |  6f 74 20 61 20 77 6f 72 64 22 20 65 6e 64 29 29    0a 20 20 28 6c 65 74 20 28 28 6c 69 6e 65 73 20  | ot.a.word".end))...(let.((lines. | 
| 1e4e0 |  28 64 6a 76 75 2d 72 65 67 69 6f 6e 2d 63 6f 75    6e 74 20 62 65 67 20 65 6e 64 20 27 6c 69 6e 65  | (djvu-region-count.beg.end.'line | 
| 1e500 |  29 29 0a 20 20 20 20 20 20 20 20 28 70 61 72 61    73 20 28 64 6a 76 75 2d 72 65 67 69 6f 6e 2d 63  | )).........(paras.(djvu-region-c | 
| 1e520 |  6f 75 6e 74 20 62 65 67 20 65 6e 64 20 27 70 61    72 61 29 29 0a 20 20 20 20 20 20 20 20 28 72 65  | ount.beg.end.'para)).........(re | 
| 1e540 |  67 69 6f 6e 73 20 28 64 6a 76 75 2d 72 65 67 69    6f 6e 2d 63 6f 75 6e 74 20 62 65 67 20 65 6e 64  | gions.(djvu-region-count.beg.end | 
| 1e560 |  20 27 72 65 67 69 6f 6e 29 29 0a 20 20 20 20 20    20 20 20 28 63 6f 6c 75 6d 6e 73 20 28 64 6a 76  | .'region)).........(columns.(djv | 
| 1e580 |  75 2d 72 65 67 69 6f 6e 2d 63 6f 75 6e 74 20 62    65 67 20 65 6e 64 20 27 63 6f 6c 75 6d 6e 29 29  | u-region-count.beg.end.'column)) | 
| 1e5a0 |  0a 20 20 20 20 20 20 20 20 61 72 65 61 73 29 0a    20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64  | .........areas).....(unless.(and | 
| 1e5c0 |  20 28 3e 3d 20 31 20 70 61 72 61 73 29 20 28 3e    3d 20 31 20 72 65 67 69 6f 6e 73 29 20 28 3e 3d  | .(>=.1.paras).(>=.1.regions).(>= | 
| 1e5e0 |  20 31 20 63 6f 6c 75 6d 6e 73 29 29 0a 20 20 20    20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22  | .1.columns)).......(user-error." | 
| 1e600 |  52 65 67 69 6f 6e 20 73 70 61 6e 73 20 6d 75 6c    74 69 70 6c 65 20 70 61 72 61 67 72 61 70 68 73  | Region.spans.multiple.paragraphs | 
| 1e620 |  22 29 29 0a 0a 20 20 20 20 28 69 66 20 28 65 71    20 31 20 6c 69 6e 65 73 29 0a 20 20 20 20 20 20  | "))......(if.(eq.1.lines)....... | 
| 1e640 |  20 20 28 73 65 74 71 20 61 72 65 61 73 20 28 6c    69 73 74 20 28 64 6a 76 75 2d 73 63 61 6e 2d 7a  | ..(setq.areas.(list.(djvu-scan-z | 
| 1e660 |  6f 6e 65 20 62 65 67 20 65 6e 64 20 27 77 6f 72    64 29 29 29 0a 0a 20 20 20 20 20 20 28 69 66 20  | one.beg.end.'word)))........(if. | 
| 1e680 |  28 65 71 20 32 20 6c 69 6e 65 73 29 0a 20 20 20    20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 31  | (eq.2.lines)...........(let.((c1 | 
| 1e6a0 |  20 28 64 6a 76 75 2d 73 63 61 6e 2d 7a 6f 6e 65    20 62 65 67 20 28 64 6a 76 75 2d 70 72 6f 70 65  | .(djvu-scan-zone.beg.(djvu-prope | 
| 1e6c0 |  72 74 79 2d 65 6e 64 20 28 31 2b 20 62 65 67 29    20 27 6c 69 6e 65 29 20 27 77 6f 72 64 29 29 0a  | rty-end.(1+.beg).'line).'word)). | 
| 1e6e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 63 32 20 28 64 6a 76 75 2d 73 63 61 6e 2d 7a  | ................(c2.(djvu-scan-z | 
| 1e700 |  6f 6e 65 20 28 64 6a 76 75 2d 70 72 6f 70 65 72    74 79 2d 62 65 67 20 28 31 2d 20 65 6e 64 29 20  | one.(djvu-property-beg.(1-.end). | 
| 1e720 |  27 6c 69 6e 65 29 20 65 6e 64 20 27 77 6f 72 64    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | 'line).end.'word)))............. | 
| 1e740 |  3b 3b 20 49 66 20 42 45 47 20 69 73 20 62 65 67    69 6e 6e 69 6e 67 20 6f 66 20 66 69 72 73 74 20  | ;;.If.BEG.is.beginning.of.first. | 
| 1e760 |  6c 69 6e 65 2c 20 62 6f 74 68 20 6c 69 6e 65 73    20 73 68 61 72 65 20 73 61 6d 65 20 6c 65 66 74  | line,.both.lines.share.same.left | 
| 1e780 |  20 6d 61 72 67 69 6e 2e 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 3d  | .margin..............(if.(and.(= | 
| 1e7a0 |  20 62 65 67 20 28 64 6a 76 75 2d 70 72 6f 70 65    72 74 79 2d 62 65 67 20 62 65 67 20 27 6c 69 6e  | .beg.(djvu-property-beg.beg.'lin | 
| 1e7c0 |  65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 61  | e))......................(djvu-a | 
| 1e7e0 |  72 65 61 73 2d 6a 75 73 74 69 66 79 20 74 20 63    31 20 63 32 29 29 0a 20 20 20 20 20 20 20 20 20  | reas-justify.t.c1.c2)).......... | 
| 1e800 |  20 20 20 20 20 20 20 28 64 6a 76 75 2d 6a 75 73    74 69 66 79 2d 61 72 65 61 73 20 27 6d 69 6e 20  | .......(djvu-justify-areas.'min. | 
| 1e820 |  30 20 63 31 20 63 32 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 3b 3b 20 49 66 20 45 4e 44 20  | 0.c1.c2)).............;;.If.END. | 
| 1e840 |  69 73 20 65 6e 64 20 6f 66 20 73 65 63 6f 6e 64    20 6c 69 6e 65 2c 20 62 6f 74 68 20 6c 69 6e 65  | is.end.of.second.line,.both.line | 
| 1e860 |  73 20 73 68 61 72 65 20 73 61 6d 65 20 72 69 67    68 74 20 6d 61 72 67 69 6e 2e 0a 20 20 20 20 20  | s.share.same.right.margin....... | 
| 1e880 |  20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20    28 3d 20 65 6e 64 20 28 64 6a 76 75 2d 70 72 6f  | .......(if.(and.(=.end.(djvu-pro | 
| 1e8a0 |  70 65 72 74 79 2d 65 6e 64 20 65 6e 64 20 27 6c    69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20  | perty-end.end.'line))........... | 
| 1e8c0 |  20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75    2d 61 72 65 61 73 2d 6a 75 73 74 69 66 79 20 6e  | ...........(djvu-areas-justify.n | 
| 1e8e0 |  69 6c 20 63 32 20 63 31 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75  | il.c2.c1)).................(djvu | 
| 1e900 |  2d 6a 75 73 74 69 66 79 2d 61 72 65 61 73 20 27    6d 61 78 20 32 20 63 31 20 63 32 29 29 0a 20 20  | -justify-areas.'max.2.c1.c2))... | 
| 1e920 |  20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 3c    3d 20 28 61 72 65 66 20 63 31 20 30 29 20 28 61  | ..........(if.(<=.(aref.c1.0).(a | 
| 1e940 |  72 65 66 20 63 32 20 32 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4c 6f  | ref.c2.2)).................;;.Lo | 
| 1e960 |  77 65 72 20 62 6f 75 6e 64 20 6f 66 20 75 70 70    65 72 20 62 6f 78 20 61 6e 64 20 75 70 70 65 72  | wer.bound.of.upper.box.and.upper | 
| 1e980 |  20 62 6f 75 6e 64 20 6f 66 20 6c 6f 77 65 72 20    62 6f 78 20 63 6f 69 6e 63 69 64 65 2e 0a 20 20  | .bound.of.lower.box.coincide.... | 
| 1e9a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    65 74 20 28 28 74 6d 70 20 28 2f 20 28 2b 20 28  | ..............(let.((tmp.(/.(+.( | 
| 1e9c0 |  61 72 65 66 20 63 31 20 31 29 20 28 61 72 65 66    20 63 32 20 33 29 29 20 32 29 29 29 0a 20 20 20  | aref.c1.1).(aref.c2.3)).2))).... | 
| 1e9e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    61 73 65 74 20 63 31 20 31 20 74 6d 70 29 20 28  | ...............(aset.c1.1.tmp).( | 
| 1ea00 |  61 73 65 74 20 63 32 20 33 20 74 6d 70 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | aset.c2.3.tmp))).............(se | 
| 1ea20 |  74 71 20 61 72 65 61 73 20 28 6c 69 73 74 20 63    31 20 63 32 29 29 29 0a 20 20 20 20 20 20 20 20  | tq.areas.(list.c1.c2)))......... | 
| 1ea40 |  3b 3b 20 33 20 6c 69 6e 65 73 0a 20 20 20 20 20    20 20 20 28 6c 65 74 2a 20 28 28 6c 31 65 20 28  | ;;.3.lines.........(let*.((l1e.( | 
| 1ea60 |  64 6a 76 75 2d 70 72 6f 70 65 72 74 79 2d 65 6e    64 20 28 31 2b 20 62 65 67 29 20 27 6c 69 6e 65  | djvu-property-end.(1+.beg).'line | 
| 1ea80 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 32 62 20 28 64 6a 76 75 2d 70 72 6f  | ))................(l2b.(djvu-pro | 
| 1eaa0 |  70 65 72 74 79 2d 62 65 67 20 28 31 2d 20 65 6e    64 29 20 27 6c 69 6e 65 29 29 0a 20 20 20 20 20  | perty-beg.(1-.end).'line))...... | 
| 1eac0 |  20 20 20 20 20 20 20 20 20 20 28 63 31 20 20 28    64 6a 76 75 2d 73 63 61 6e 2d 7a 6f 6e 65 20 62  | ..........(c1..(djvu-scan-zone.b | 
| 1eae0 |  65 67 20 6c 31 65 20 27 77 6f 72 64 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63  | eg.l1e.'word))................(c | 
| 1eb00 |  69 20 20 28 64 6a 76 75 2d 73 63 61 6e 2d 7a 6f    6e 65 20 28 31 2b 20 6c 31 65 29 20 28 31 2d 20  | i..(djvu-scan-zone.(1+.l1e).(1-. | 
| 1eb20 |  6c 32 62 29 20 27 6c 69 6e 65 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 63 32 20  | l2b).'line))................(c2. | 
| 1eb40 |  20 28 64 6a 76 75 2d 73 63 61 6e 2d 7a 6f 6e 65    20 6c 32 62 20 65 6e 64 20 27 77 6f 72 64 29 29  | .(djvu-scan-zone.l2b.end.'word)) | 
| 1eb60 |  29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49    66 20 42 45 47 20 69 73 20 62 65 67 69 6e 6e 69  | )...........;;.If.BEG.is.beginni | 
| 1eb80 |  6e 67 20 6f 66 20 66 69 72 73 74 20 6c 69 6e 65    2c 20 61 6c 6c 20 6c 69 6e 65 73 20 73 68 61 72  | ng.of.first.line,.all.lines.shar | 
| 1eba0 |  65 20 73 61 6d 65 20 6c 65 66 74 20 6d 61 72 67    69 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 28 63  | e.same.left.margin............(c | 
| 1ebc0 |  6f 6e 64 20 28 28 61 6e 64 20 28 3d 20 62 65 67    20 28 64 6a 76 75 2d 70 72 6f 70 65 72 74 79 2d  | ond.((and.(=.beg.(djvu-property- | 
| 1ebe0 |  62 65 67 20 62 65 67 20 27 6c 69 6e 65 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | beg.beg.'line))................. | 
| 1ec00 |  20 20 20 20 20 20 28 64 6a 76 75 2d 61 72 65 61    73 2d 6a 75 73 74 69 66 79 20 74 20 63 31 20 63  | ......(djvu-areas-justify.t.c1.c | 
| 1ec20 |  69 20 63 32 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6a 75  | i.c2))..................(djvu-ju | 
| 1ec40 |  73 74 69 66 79 2d 61 72 65 61 73 20 27 6d 69 6e    20 30 20 63 31 20 63 69 20 63 32 29 29 0a 20 20  | stify-areas.'min.0.c1.ci.c2))... | 
| 1ec60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28    64 6a 76 75 2d 61 72 65 61 73 2d 6a 75 73 74 69  | ..............((djvu-areas-justi | 
| 1ec80 |  66 79 20 74 20 63 69 20 63 32 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a  | fy.t.ci.c2)..................(dj | 
| 1eca0 |  76 75 2d 6a 75 73 74 69 66 79 2d 61 72 65 61 73    20 27 6d 69 6e 20 30 20 63 69 20 63 32 29 29 29  | vu-justify-areas.'min.0.ci.c2))) | 
| 1ecc0 |  0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66    20 45 4e 44 20 69 73 20 65 6e 64 20 6f 66 20 6c  | ...........;;.If.END.is.end.of.l | 
| 1ece0 |  61 73 74 20 6c 69 6e 65 2c 20 61 6c 6c 20 6c 69    6e 65 73 20 73 68 61 72 65 20 73 61 6d 65 20 72  | ast.line,.all.lines.share.same.r | 
| 1ed00 |  69 67 68 74 20 6d 61 72 67 69 6e 2e 0a 20 20 20    20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 61  | ight.margin............(cond.((a | 
| 1ed20 |  6e 64 20 28 3d 20 65 6e 64 20 28 64 6a 76 75 2d    70 72 6f 70 65 72 74 79 2d 65 6e 64 20 65 6e 64  | nd.(=.end.(djvu-property-end.end | 
| 1ed40 |  20 27 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .'line)).......................( | 
| 1ed60 |  64 6a 76 75 2d 61 72 65 61 73 2d 6a 75 73 74 69    66 79 20 6e 69 6c 20 63 32 20 63 69 20 63 31 29  | djvu-areas-justify.nil.c2.ci.c1) | 
| 1ed80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 6a 75 73 74 69 66 79  | )..................(djvu-justify | 
| 1eda0 |  2d 61 72 65 61 73 20 27 6d 61 78 20 32 20 63 31    20 63 69 20 63 32 29 29 0a 20 20 20 20 20 20 20  | -areas.'max.2.c1.ci.c2))........ | 
| 1edc0 |  20 20 20 20 20 20 20 20 20 28 28 64 6a 76 75 2d    61 72 65 61 73 2d 6a 75 73 74 69 66 79 20 6e 69  | .........((djvu-areas-justify.ni | 
| 1ede0 |  6c 20 63 31 20 63 69 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | l.c1.ci)..................(djvu- | 
| 1ee00 |  6a 75 73 74 69 66 79 2d 61 72 65 61 73 20 27 6d    61 78 20 32 20 63 31 20 63 69 29 29 29 0a 20 20  | justify-areas.'max.2.c1.ci)))... | 
| 1ee20 |  20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 74    6d 70 31 20 28 2f 20 28 2b 20 28 61 72 65 66 20  | ........(let.((tmp1.(/.(+.(aref. | 
| 1ee40 |  63 31 20 31 29 20 28 61 72 65 66 20 63 69 20 33    29 29 20 32 29 29 0a 20 20 20 20 20 20 20 20 20  | c1.1).(aref.ci.3)).2)).......... | 
| 1ee60 |  20 20 20 20 20 20 20 28 74 6d 70 32 20 28 2f 20    28 2b 20 28 61 72 65 66 20 63 69 20 31 29 20 28  | .......(tmp2.(/.(+.(aref.ci.1).( | 
| 1ee80 |  61 72 65 66 20 63 32 20 33 29 29 20 32 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | aref.c2.3)).2))).............;;. | 
| 1eea0 |  4c 6f 77 65 72 20 62 6f 75 6e 64 20 6f 66 20 75    70 70 65 72 20 62 6f 78 65 73 20 61 6e 64 20 75  | Lower.bound.of.upper.boxes.and.u | 
| 1eec0 |  70 70 65 72 20 62 6f 75 6e 64 20 6f 66 20 6c 6f    77 65 72 20 62 6f 78 65 73 20 63 6f 69 6e 63 69  | pper.bound.of.lower.boxes.coinci | 
| 1eee0 |  64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 61 73 65 74 20 63 31 20 31 20 74 6d 70 31 29  | de..............(aset.c1.1.tmp1) | 
| 1ef00 |  20 28 61 73 65 74 20 63 69 20 33 20 74 6d 70 31    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 61  | .(aset.ci.3.tmp1).............(a | 
| 1ef20 |  73 65 74 20 63 69 20 31 20 74 6d 70 32 29 20 28    61 73 65 74 20 63 32 20 33 20 74 6d 70 32 29 29  | set.ci.1.tmp2).(aset.c2.3.tmp2)) | 
| 1ef40 |  0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 61 72 65 61 73 20 28 6c 69 73 74 20 63 31 20  | ...........(setq.areas.(list.c1. | 
| 1ef60 |  63 69 20 63 32 29 29 29 29 29 0a 0a 20 20 20 20    28 64 6a 76 75 2d 72 65 63 74 2d 61 72 65 61 20  | ci.c2)))))......(djvu-rect-area. | 
| 1ef80 |  75 72 6c 20 63 6f 6d 6d 65 6e 74 20 61 72 65 61    73 20 63 6f 6c 6f 72 20 6f 70 61 63 69 74 79 20  | url.comment.areas.color.opacity. | 
| 1efa0 |  62 6f 72 64 65 72 29 29 29 0a 0a 28 64 65 66 75    6e 20 64 6a 76 75 2d 6d 65 72 67 65 2d 61 72 65  | border)))..(defun.djvu-merge-are | 
| 1efc0 |  61 73 20 28 61 72 65 61 73 29 0a 20 20 22 54 72    79 20 74 6f 20 6d 65 72 67 65 20 65 6c 65 6d 65  | as.(areas)..."Try.to.merge.eleme | 
| 1efe0 |  6e 74 73 20 69 6e 20 41 52 45 41 53 2e 0a 54 68    69 73 20 61 73 73 75 6d 65 73 20 74 68 61 74 20  | nts.in.AREAS..This.assumes.that. | 
| 1f000 |  65 6c 65 6d 65 6e 74 20 4e 20 69 6e 20 41 52 45    41 53 20 69 73 20 61 62 6f 76 65 20 65 6c 65 6d  | element.N.in.AREAS.is.above.elem | 
| 1f020 |  65 6e 74 20 4e 2b 31 2e 0a 49 66 20 73 75 63 68    20 61 20 70 61 69 72 20 6f 66 20 65 6c 65 6d 65  | ent.N+1..If.such.a.pair.of.eleme | 
| 1f040 |  6e 74 73 20 68 61 73 20 74 68 65 20 73 61 6d 65    20 6c 65 66 74 20 61 6e 64 20 72 69 67 68 74 20  | nts.has.the.same.left.and.right. | 
| 1f060 |  62 6f 75 6e 64 61 72 69 65 73 2c 0a 61 6e 64 20    74 68 65 20 6c 6f 77 65 72 20 62 6f 75 6e 64 61  | boundaries,.and.the.lower.bounda | 
| 1f080 |  72 79 20 6f 66 20 4e 20 65 71 75 61 6c 73 20 74    68 65 20 75 70 70 65 72 20 62 6f 75 6e 64 61 72  | ry.of.N.equals.the.upper.boundar | 
| 1f0a0 |  79 20 6f 66 20 4e 2b 31 2c 0a 74 68 65 73 65 20    65 6c 65 6d 65 6e 74 73 20 61 72 65 20 6d 65 72  | y.of.N+1,.these.elements.are.mer | 
| 1f0c0 |  67 65 64 20 69 6e 74 6f 20 6f 6e 65 2e 22 0a 20    20 28 6c 65 74 20 28 28 61 72 65 61 73 20 61 72  | ged.into.one."...(let.((areas.ar | 
| 1f0e0 |  65 61 73 29 29 0a 20 20 20 20 28 77 68 69 6c 65    20 28 6e 74 68 20 31 20 61 72 65 61 73 29 0a 20  | eas)).....(while.(nth.1.areas).. | 
| 1f100 |  20 20 20 20 20 28 6c 65 74 20 28 28 63 30 20 28    6e 74 68 20 30 20 61 72 65 61 73 29 29 20 28 63  | .....(let.((c0.(nth.0.areas)).(c | 
| 1f120 |  31 20 28 6e 74 68 20 31 20 61 72 65 61 73 29 29    29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 61  | 1.(nth.1.areas))).........(if.(a | 
| 1f140 |  6e 64 20 28 65 71 20 28 61 72 65 66 20 63 30 20    30 29 20 28 61 72 65 66 20 63 31 20 30 29 29 0a  | nd.(eq.(aref.c0.0).(aref.c1.0)). | 
| 1f160 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 65 71 20 28 61 72 65 66 20 63 30 20 32 29  | .................(eq.(aref.c0.2) | 
| 1f180 |  20 28 61 72 65 66 20 63 31 20 32 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .(aref.c1.2))..................( | 
| 1f1a0 |  65 71 20 28 61 72 65 66 20 63 30 20 31 29 20 28    61 72 65 66 20 63 31 20 33 29 29 29 0a 20 20 20  | eq.(aref.c0.1).(aref.c1.3))).... | 
| 1f1c0 |  20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20    28 61 73 65 74 20 63 30 20 31 20 28 61 72 65 66  | .........(progn.(aset.c0.1.(aref | 
| 1f1e0 |  20 63 31 20 31 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 63  | .c1.1))....................(setc | 
| 1f200 |  64 72 20 61 72 65 61 73 20 28 63 64 64 72 20 61    72 65 61 73 29 29 29 0a 20 20 20 20 20 20 20 20  | dr.areas.(cddr.areas)))......... | 
| 1f220 |  20 20 28 70 6f 70 20 61 72 65 61 73 29 29 29 29    29 0a 20 20 61 72 65 61 73 29 0a 0a 28 64 65 66  | ..(pop.areas)))))...areas)..(def | 
| 1f240 |  75 6e 20 64 6a 76 75 2d 72 65 63 74 2d 61 72 65    61 20 28 75 72 6c 20 63 6f 6d 6d 65 6e 74 20 72  | un.djvu-rect-area.(url.comment.r | 
| 1f260 |  65 63 74 73 20 26 6f 70 74 69 6f 6e 61 6c 20 63    6f 6c 6f 72 20 6f 70 61 63 69 74 79 20 62 6f 72  | ects.&optional.color.opacity.bor | 
| 1f280 |  64 65 72 29 0a 20 20 22 55 73 69 6e 67 20 55 52    4c 20 61 6e 64 20 43 4f 4d 4d 45 4e 54 2c 20 68  | der)..."Using.URL.and.COMMENT,.h | 
| 1f2a0 |  69 67 68 6c 69 67 68 74 20 52 45 43 54 53 2e 0a    54 68 65 20 65 6c 65 6d 65 6e 74 73 20 69 6e 20  | ighlight.RECTS..The.elements.in. | 
| 1f2c0 |  74 68 65 20 6c 69 73 74 20 52 45 43 54 53 20 61    72 65 20 34 2d 65 6c 65 6d 65 6e 74 20 73 65 71  | the.list.RECTS.are.4-element.seq | 
| 1f2e0 |  75 65 6e 63 65 73 20 6f 66 20 63 6f 6f 72 64 69    6e 61 74 65 73 0a 65 61 63 68 20 64 65 66 69 6e  | uences.of.coordinates.each.defin | 
| 1f300 |  69 6e 67 20 61 20 72 65 63 74 20 61 72 65 61 20    66 6f 72 20 64 6a 76 75 73 65 64 2e 22 0a 20 20  | ing.a.rect.area.for.djvused."... | 
| 1f320 |  28 73 65 74 71 20 72 65 63 74 73 20 28 6d 61 70    63 61 72 20 28 6c 61 6d 62 64 61 20 28 72 65 63  | (setq.rects.(mapcar.(lambda.(rec | 
| 1f340 |  74 29 20 28 61 70 70 6c 79 20 27 66 6f 72 6d 61    74 20 22 28 72 65 63 74 20 25 64 20 25 64 20 25  | t).(apply.'format."(rect.%d.%d.% | 
| 1f360 |  64 20 25 64 29 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d.%d)".......................... | 
| 1f380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 62 6f 75 6e 64 2d 61  | ...................(djvu-bound-a | 
| 1f3a0 |  72 65 61 20 72 65 63 74 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rea.rect)))..................... | 
| 1f3c0 |  20 20 28 64 6a 76 75 2d 6d 65 72 67 65 2d 61 72    65 61 73 20 72 65 63 74 73 29 29 29 0a 20 20 3b  | ..(djvu-merge-areas.rects)))...; | 
| 1f3e0 |  3b 20 49 6e 73 65 72 74 20 69 6e 20 41 6e 6e 6f    74 61 74 69 6f 6e 73 20 62 75 66 66 65 72 2e 0a  | ;.Insert.in.Annotations.buffer.. | 
| 1f400 |  20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d    62 75 66 66 65 72 20 28 64 6a 76 75 2d 72 65 66  | ..(with-current-buffer.(djvu-ref | 
| 1f420 |  20 61 6e 6e 6f 74 2d 62 75 66 29 0a 20 20 20 20    28 75 6e 6c 65 73 73 20 28 61 6e 64 20 64 6a 76  | .annot-buf).....(unless.(and.djv | 
| 1f440 |  75 2d 72 65 63 74 2d 61 72 65 61 2d 6e 6f 64 75    70 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | u-rect-area-nodups.............. | 
| 1f460 |  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............. | 
| 1f480 |  20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61    72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20  | .......(goto-char.(point-min)).. | 
| 1f4a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72  | ..................(re-search-for | 
| 1f4c0 |  77 61 72 64 20 28 6d 61 70 63 6f 6e 63 61 74 20    23 27 69 64 65 6e 74 69 74 79 20 72 65 63 74 73  | ward.(mapconcat.#'identity.rects | 
| 1f4e0 |  20 22 5b 20 5c 74 5c 6e 5d 2a 22 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."[.\t\n]*").................... | 
| 1f500 |  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 29 29 0a 20 20 20 20  | ...................nil.t)))..... | 
| 1f520 |  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 20 20  | ..(goto-char.(point-max))....... | 
| 1f540 |  28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 20    22 28 6d 61 70 61 72 65 61 20 25 53 5c 6e 20 25  | (insert.(format."(maparea.%S\n.% | 
| 1f560 |  53 5c 6e 20 28 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72  | S\n.(".......................(or | 
| 1f580 |  20 75 72 6c 20 22 22 29 20 28 69 66 20 63 6f 6d    6d 65 6e 74 20 28 64 6a 76 75 2d 66 69 6c 6c 20  | .url."").(if.comment.(djvu-fill. | 
| 1f5a0 |  63 6f 6d 6d 65 6e 74 29 20 22 22 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70  | comment).""))...............(map | 
| 1f5c0 |  63 6f 6e 63 61 74 20 23 27 69 64 65 6e 74 69 74    79 20 72 65 63 74 73 20 22 5c 6e 20 20 22 29 0a  | concat.#'identity.rects."\n.."). | 
| 1f5e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 29    5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ..............")\n"............. | 
| 1f600 |  20 20 28 64 6a 76 75 2d 69 6e 73 65 72 74 2d 63    6f 6c 6f 72 20 22 68 69 6c 69 74 65 22 20 63 6f  | ..(djvu-insert-color."hilite".co | 
| 1f620 |  6c 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 28 61 6e 64 20 63 6f 6c 6f  | lor)...............(if.(and.colo | 
| 1f640 |  72 20 6f 70 61 63 69 74 79 29 20 28 66 6f 72 6d    61 74 20 22 20 28 6f 70 61 63 69 74 79 20 25 73  | r.opacity).(format.".(opacity.%s | 
| 1f660 |  29 22 20 6f 70 61 63 69 74 79 29 20 22 22 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66  | )".opacity)."")...............(f | 
| 1f680 |  6f 72 6d 61 74 20 22 20 28 25 73 29 22 20 28 6f    72 20 62 6f 72 64 65 72 20 27 6e 6f 6e 65 29 29  | ormat.".(%s)".(or.border.'none)) | 
| 1f6a0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22    29 5c 6e 5c 6e 22 29 0a 20 20 20 20 20 20 28 75  | ...............")\n\n").......(u | 
| 1f6c0 |  6e 64 6f 2d 62 6f 75 6e 64 61 72 79 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 66 69  | ndo-boundary))))..(defun.djvu-fi | 
| 1f6e0 |  6c 6c 20 28 74 65 78 74 29 0a 20 20 22 46 69 6c    6c 20 73 74 72 69 6e 67 20 54 45 58 54 20 75 73  | ll.(text)..."Fill.string.TEXT.us | 
| 1f700 |  69 6e 67 20 60 66 69 6c 6c 2d 63 6f 6c 75 6d 6e    27 20 6f 66 20 74 68 65 20 61 6e 6e 6f 74 61 74  | ing.`fill-column'.of.the.annotat | 
| 1f720 |  69 6f 6e 73 20 62 75 66 66 65 72 2e 0a 54 68 69    73 20 76 61 6c 75 65 20 6f 66 20 60 66 69 6c 6c  | ions.buffer..This.value.of.`fill | 
| 1f740 |  2d 63 6f 6c 75 6d 6e 27 20 64 65 66 61 75 6c 74    73 20 74 6f 20 60 64 6a 76 75 2d 66 69 6c 6c 2d  | -column'.defaults.to.`djvu-fill- | 
| 1f760 |  63 6f 6c 75 6d 6e 27 2e 22 0a 20 20 28 6c 65 74    20 28 28 66 63 6f 6c 75 6d 6e 20 28 77 69 74 68  | column'."...(let.((fcolumn.(with | 
| 1f780 |  2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20    28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f 74 2d  | -current-buffer.(djvu-ref.annot- | 
| 1f7a0 |  62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 66 69 6c 6c 2d 63 6f 6c  | buf)....................fill-col | 
| 1f7c0 |  75 6d 6e 29 29 29 0a 20 20 20 20 28 77 69 74 68    2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20  | umn))).....(with-temp-buffer.... | 
| 1f7e0 |  20 20 20 28 69 6e 73 65 72 74 20 74 65 78 74 29    0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 66 69  | ...(insert.text).......(let.((fi | 
| 1f800 |  6c 6c 2d 63 6f 6c 75 6d 6e 20 66 63 6f 6c 75 6d    6e 29 29 0a 20 20 20 20 20 20 20 20 28 66 69 6c  | ll-column.fcolumn)).........(fil | 
| 1f820 |  6c 2d 72 65 67 69 6f 6e 20 28 70 6f 69 6e 74 2d    6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29  | l-region.(point-min).(point-max) | 
| 1f840 |  29 29 0a 20 20 20 20 20 20 28 62 75 66 66 65 72    2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72  | )).......(buffer-substring-no-pr | 
| 1f860 |  6f 70 65 72 74 69 65 73 0a 20 20 20 20 20 20 20    28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69  | operties........(point-min).(poi | 
| 1f880 |  6e 74 2d 6d 61 78 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 6a 76 75 2d 74 6f 67 67 6c 65 2d  | nt-max)))))..(defun.djvu-toggle- | 
| 1f8a0 |  72 65 63 74 2d 74 65 78 74 2d 69 6e 74 65 72 6e    61 6c 20 28 29 0a 20 20 22 54 6f 67 67 6c 65 20  | rect-text-internal.()..."Toggle. | 
| 1f8c0 |  62 65 74 77 65 65 6e 20 4d 61 70 61 72 65 61 73    20 72 65 63 74 20 61 6e 64 20 74 65 78 74 2e 22  | between.Mapareas.rect.and.text." | 
| 1f8e0 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29    0a 20 20 28 6c 65 74 20 28 28 62 6f 75 6e 64 73  | ...(interactive)...(let.((bounds | 
| 1f900 |  20 28 64 6a 76 75 2d 6f 62 6a 65 63 74 2d 62 6f    75 6e 64 73 29 29 0a 20 20 20 20 20 20 20 20 28  | .(djvu-object-bounds)).........( | 
| 1f920 |  72 65 63 74 2d 72 65 20 28 66 6f 72 6d 61 74 20    22 28 72 65 63 74 5b 5c 73 5c 74 5d 2b 25 73 29  | rect-re.(format."(rect[\s\t]+%s) | 
| 1f940 |  22 20 64 6a 76 75 2d 63 6f 6f 72 64 73 2d 72 65    29 29 0a 20 20 20 20 20 20 20 20 28 74 65 78 74  | ".djvu-coords-re)).........(text | 
| 1f960 |  2d 72 65 20 28 66 6f 72 6d 61 74 20 22 28 74 65    78 74 5b 5c 73 5c 74 5d 2b 25 73 29 22 20 64 6a  | -re.(format."(text[\s\t]+%s)".dj | 
| 1f980 |  76 75 2d 63 6f 6f 72 64 73 2d 72 65 29 29 0a 20    20 20 20 20 20 20 20 28 63 6f 6c 6f 72 2d 72 65  | vu-coords-re)).........(color-re | 
| 1f9a0 |  20 28 66 6f 72 6d 61 74 20 64 6a 76 75 2d 63 6f    6c 6f 72 2d 72 65 20 22 23 22 20 22 22 20 22 22  | .(format.djvu-color-re."#".""."" | 
| 1f9c0 |  29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74    20 62 6f 75 6e 64 73 29 0a 20 20 20 20 20 20 20  | ))).....(if.(not.bounds)........ | 
| 1f9e0 |  20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f    20 6f 62 6a 65 63 74 20 74 6f 20 75 70 64 61 74  | .(user-error."No.object.to.updat | 
| 1fa00 |  65 22 29 0a 20 20 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  | e").......(save-excursion....... | 
| 1fa20 |  20 20 28 73 61 76 65 2d 72 65 73 74 72 69 63 74    69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 6e  | ..(save-restriction...........(n | 
| 1fa40 |  61 72 72 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 20    28 63 61 72 20 62 6f 75 6e 64 73 29 20 28 63 64  | arrow-to-region.(car.bounds).(cd | 
| 1fa60 |  72 20 62 6f 75 6e 64 73 29 29 0a 20 20 20 20 20    20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20  | r.bounds))...........(goto-char. | 
| 1fa80 |  28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 0a 20 20    20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28  | (point-min))............(cond.(( | 
| 1faa0 |  72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72    64 20 72 65 63 74 2d 72 65 20 6e 69 6c 20 74 29  | re-search-forward.rect-re.nil.t) | 
| 1fac0 |  20 3b 20 4d 61 70 61 72 65 61 20 72 65 63 74 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .;.Maparea.rect................. | 
| 1fae0 |  20 28 69 66 20 28 73 61 76 65 2d 6d 61 74 63 68    2d 64 61 74 61 20 28 72 65 2d 73 65 61 72 63 68  | .(if.(save-match-data.(re-search | 
| 1fb00 |  2d 66 6f 72 77 61 72 64 20 72 65 63 74 2d 72 65    20 6e 69 6c 20 74 29 29 0a 20 20 20 20 20 20 20  | -forward.rect-re.nil.t))........ | 
| 1fb20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75    73 65 72 2d 65 72 72 6f 72 20 22 4f 6e 6c 79 20  | ..............(user-error."Only. | 
| 1fb40 |  73 69 6e 67 6c 65 20 72 65 63 74 20 63 61 6e 20    62 65 20 63 6f 6e 76 65 72 74 65 64 20 74 6f 20  | single.rect.can.be.converted.to. | 
| 1fb60 |  74 65 78 74 22 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63  | text"))..................(replac | 
| 1fb80 |  65 2d 6d 61 74 63 68 20 28 66 6f 72 6d 61 74 20    22 74 65 78 74 20 25 73 22 20 28 6d 61 74 63 68  | e-match.(format."text.%s".(match | 
| 1fba0 |  2d 73 74 72 69 6e 67 20 32 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67  | -string.2)))..................(g | 
| 1fbc0 |  6f 74 6f 2d 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  | oto-char.(point-min))........... | 
| 1fbe0 |  20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6f 70    61 63 69 74 79 0a 20 20 20 20 20 20 20 20 20 20  | .......(let.((opacity........... | 
| 1fc00 |  20 20 20 20 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  | ..............(if.(re-search-for | 
| 1fc20 |  77 61 72 64 20 22 20 2a 28 6f 70 61 63 69 74 79    20 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 29 22 20  | ward.".*(opacity.\\([0-9]+\\))". | 
| 1fc40 |  6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nil.t).......................... | 
| 1fc60 |  20 20 20 28 70 72 6f 67 31 20 28 64 6a 76 75 2d    6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 31 29 0a  | ...(prog1.(djvu-match-number.1). | 
| 1fc80 |  20 20 20 20 20 20 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  | ..............................(r | 
| 1fca0 |  65 70 6c 61 63 65 2d 6d 61 74 63 68 20 22 22 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | eplace-match.""))............... | 
| 1fcc0 |  20 20 20 20 20 20 20 20 20 20 20 20 64 6a 76 75    2d 6f 70 61 63 69 74 79 29 29 29 0a 20 20 20 20  | ............djvu-opacity)))..... | 
| 1fce0 |  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 | 
| 1fd00 |  2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 3b 3b 20 4c 6f 6f  | -min))....................;;.Loo | 
| 1fd20 |  70 20 6f 76 65 72 20 6d 61 74 63 68 65 73 20 6f    66 20 43 4f 4c 4f 52 2d 52 45 20 61 73 20 74 68  | p.over.matches.of.COLOR-RE.as.th | 
| 1fd40 |  69 73 20 67 65 6e 65 72 61 6c 20 72 65 67 65 78    70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | is.general.regexp............... | 
| 1fd60 |  20 20 20 20 20 3b 3b 20 61 6c 73 6f 20 6d 61 74    63 68 65 73 20 65 6c 65 6d 65 6e 74 73 20 74 68  | .....;;.also.matches.elements.th | 
| 1fd80 |  61 74 20 73 6f 20 66 61 72 20 77 65 20 64 6f 20    6e 6f 74 20 63 61 72 65 20 61 62 6f 75 74 2e 0a  | at.so.far.we.do.not.care.about.. | 
| 1fda0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73 65  | ...................(while.(re-se | 
| 1fdc0 |  61 72 63 68 2d 66 6f 72 77 61 72 64 20 63 6f 6c    6f 72 2d 72 65 20 6e 69 6c 20 74 29 0a 20 20 20  | arch-forward.color-re.nil.t).... | 
| 1fde0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 69 66 20 28 65 71 75 61 6c 20 28 6d 61  | ..................(if.(equal.(ma | 
| 1fe00 |  74 63 68 2d 73 74 72 69 6e 67 20 31 29 20 22 68    69 6c 69 74 65 22 29 0a 20 20 20 20 20 20 20 20  | tch-string.1)."hilite")......... | 
| 1fe20 |  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 63 68 0a  | .................(replace-match. | 
| 1fe40 |  20 20 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 6f 72 6d 61  | ..........................(forma | 
| 1fe60 |  74 20 22 28 62 61 63 6b 63 6c 72 20 25 73 29 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t."(backclr.%s)"................ | 
| 1fe80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64  | ...................(save-match-d | 
| 1fea0 |  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 20 20 20 20 20 20 20  | ata............................. | 
| 1fec0 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 63 6f    6c 6f 72 2d 62 61 63 6b 67 72 6f 75 6e 64 0a 20  | ........(djvu-color-background.. | 
| 1fee0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 1ff00 |  20 20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e    67 20 32 29 20 6e 69 6c 20 6f 70 61 63 69 74 79  | ....(match-string.2).nil.opacity | 
| 1ff20 |  29 29 29 29 29 29 29 29 0a 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 28 72 65 2d 73  | ))))))))..................((re-s | 
| 1ff40 |  65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 74 65    78 74 2d 72 65 20 6e 69 6c 20 74 29 20 3b 20 4d  | earch-forward.text-re.nil.t).;.M | 
| 1ff60 |  61 70 61 72 65 61 20 74 65 78 74 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | aparea.text..................;;. | 
| 1ff80 |  4f 6e 6c 79 20 77 69 74 68 20 6d 61 70 61 72 65    61 20 74 65 78 74 20 77 65 20 77 61 6e 74 20 74  | Only.with.maparea.text.we.want.t | 
| 1ffa0 |  6f 20 71 75 65 72 79 20 74 68 65 20 6f 70 61 63    69 74 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20  | o.query.the.opacity............. | 
| 1ffc0 |  20 20 20 20 20 20 3b 3b 20 50 75 74 74 69 6e 67    20 74 68 69 73 20 69 6e 74 6f 20 74 68 65 20 69  | ......;;.Putting.this.into.the.i | 
| 1ffe0 |  6e 74 65 72 61 63 74 69 76 65 20 73 70 65 63 20    77 6f 75 6c 64 20 72 65 71 75 69 72 65 0a 20 20  | nteractive.spec.would.require... | 
| 20000 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 74 6f 20 64 75 70 6c 69 63 61 74 65 20 74  | ...............;;.to.duplicate.t | 
| 20020 |  68 65 20 6a 6f 62 2e 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  | he.job...................(let.(( | 
| 20040 |  6f 70 61 63 69 74 79 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  | opacity.(save-match-data........ | 
| 20060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 64  | ...........................(read | 
| 20080 |  2d 6e 75 6d 62 65 72 20 22 4f 70 61 63 69 74 79    3a 20 22 20 64 6a 76 75 2d 6f 70 61 63 69 74 79  | -number."Opacity:.".djvu-opacity | 
| 200a0 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65  | ))))....................(replace | 
| 200c0 |  2d 6d 61 74 63 68 20 28 66 6f 72 6d 61 74 20 22    28 28 72 65 63 74 20 25 73 29 29 22 20 28 6d 61  | -match.(format."((rect.%s))".(ma | 
| 200e0 |  74 63 68 2d 73 74 72 69 6e 67 20 32 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tch-string.2)))................. | 
| 20100 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20  | ...(goto-char.(point-min))...... | 
| 20120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b    20 4c 6f 6f 70 20 6f 76 65 72 20 6d 61 74 63 68  | ..............;;.Loop.over.match | 
| 20140 |  65 73 20 6f 66 20 43 4f 4c 4f 52 2d 52 45 20 61    73 20 74 68 69 73 20 67 65 6e 65 72 61 6c 20 72  | es.of.COLOR-RE.as.this.general.r | 
| 20160 |  65 67 65 78 70 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 61 6c 73 6f  | egexp....................;;.also | 
| 20180 |  20 6d 61 74 63 68 65 73 20 65 6c 65 6d 65 6e 74    73 20 74 68 61 74 20 73 6f 20 66 61 72 20 77 65  | .matches.elements.that.so.far.we | 
| 201a0 |  20 64 6f 20 6e 6f 74 20 63 61 72 65 20 61 62 6f    75 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .do.not.care.about.............. | 
| 201c0 |  20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 72    65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64  | .......(while.(re-search-forward | 
| 201e0 |  20 63 6f 6c 6f 72 2d 72 65 20 6e 69 6c 20 74 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .color-re.nil.t)................ | 
| 20200 |  20 20 20 20 20 20 28 69 66 20 28 65 71 75 61 6c    20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31  | ......(if.(equal.(match-string.1 | 
| 20220 |  29 20 22 62 61 63 6b 63 6c 72 22 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | )."backclr").................... | 
| 20240 |  20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 6d    61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20  | ......(replace-match............ | 
| 20260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    66 6f 72 6d 61 74 20 22 28 68 69 6c 69 74 65 20  | ...............(format."(hilite. | 
| 20280 |  25 73 29 20 28 6f 70 61 63 69 74 79 20 25 64 29    22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | %s).(opacity.%d)"............... | 
| 202a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d  | ....................(save-match- | 
| 202c0 |  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 20 20 20 20 20 20  | data............................ | 
| 202e0 |  20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 63    6f 6c 6f 72 2d 62 61 63 6b 67 72 6f 75 6e 64 0a  | .........(djvu-color-background. | 
| 20300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 20320 |  20 20 20 20 20 28 6d 61 74 63 68 2d 73 74 72 69    6e 67 20 32 29 20 6e 69 6c 20 6f 70 61 63 69 74  | .....(match-string.2).nil.opacit | 
| 20340 |  79 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | y.t))........................... | 
| 20360 |  20 20 20 20 20 20 20 20 6f 70 61 63 69 74 79 29    29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ........opacity))))))........... | 
| 20380 |  20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d  | ......(t..................(user- | 
| 203a0 |  65 72 72 6f 72 20 22 4e 6f 74 68 69 6e 67 20 74    6f 20 74 6f 67 67 6c 65 22 29 29 29 29 29 29 29  | error."Nothing.to.toggle"))))))) | 
| 203c0 |  29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 72    65 73 69 7a 65 2d 69 6e 74 65 72 6e 61 6c 20 28  | )..(defun.djvu-resize-internal.( | 
| 203e0 |  73 74 65 70 29 0a 20 20 22 52 65 73 69 7a 65 20    44 6a 76 75 20 6d 61 70 61 72 65 61 73 20 72 65  | step)..."Resize.Djvu.mapareas.re | 
| 20400 |  63 74 20 61 6e 64 20 74 65 78 74 20 62 79 20 53    54 45 50 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | ct.and.text.by.STEP."...(interac | 
| 20420 |  74 69 76 65 20 22 6e 53 74 65 70 3a 20 22 29 0a    20 20 28 6c 65 74 20 28 28 62 6f 75 6e 64 73 20  | tive."nStep:.")...(let.((bounds. | 
| 20440 |  28 64 6a 76 75 2d 6f 62 6a 65 63 74 2d 62 6f 75    6e 64 73 29 29 29 0a 20 20 20 20 28 69 66 20 28  | (djvu-object-bounds))).....(if.( | 
| 20460 |  6e 6f 74 20 62 6f 75 6e 64 73 29 0a 20 20 20 20    20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20  | not.bounds).........(user-error. | 
| 20480 |  22 4e 6f 20 6f 62 6a 65 63 74 20 74 6f 20 75 70    64 61 74 65 22 29 0a 20 20 20 20 20 20 28 73 61  | "No.object.to.update").......(sa | 
| 204a0 |  76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20    20 20 20 20 20 28 73 61 76 65 2d 72 65 73 74 72  | ve-excursion.........(save-restr | 
| 204c0 |  69 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20    20 28 6e 61 72 72 6f 77 2d 74 6f 2d 72 65 67 69  | iction...........(narrow-to-regi | 
| 204e0 |  6f 6e 20 28 63 61 72 20 62 6f 75 6e 64 73 29 20    28 63 64 72 20 62 6f 75 6e 64 73 29 29 0a 20 20  | on.(car.bounds).(cdr.bounds))... | 
| 20500 |  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 2d 6d 69 6e 29 29 0a  | ........(goto-char.(point-min)). | 
| 20520 |  20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65    20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77  | ..........(while.(re-search-forw | 
| 20540 |  61 72 64 20 64 6a 76 75 2d 61 72 65 61 2d 72 65    20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20  | ard.djvu-area-re.nil.t)......... | 
| 20560 |  20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 3d    20 22 70 6f 6c 79 22 20 28 6d 61 74 63 68 2d 73  | ....(if.(string=."poly".(match-s | 
| 20580 |  74 72 69 6e 67 20 31 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d  | tring.1)).................(user- | 
| 205a0 |  65 72 72 6f 72 20 22 43 61 6e 6e 6f 74 20 72 65    73 69 7a 65 20 6d 61 70 61 72 65 61 20 70 6f 6c  | error."Cannot.resize.maparea.pol | 
| 205c0 |  79 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20  | y")).............(replace-match. | 
| 205e0 |  28 66 6f 72 6d 61 74 20 22 25 64 20 25 64 20 25    64 20 25 64 22 0a 20 20 20 20 20 20 20 20 20 20  | (format."%d.%d.%d.%d"........... | 
| 20600 |  20 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 2d 20 28 64 6a 76  | .........................(-.(djv | 
| 20620 |  75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 33    29 20 73 74 65 70 29 0a 20 20 20 20 20 20 20 20  | u-match-number.3).step)......... | 
| 20640 |  20 20 20 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 2d 20 28 64  | ...........................(-.(d | 
| 20660 |  6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72    20 34 29 20 73 74 65 70 29 0a 20 20 20 20 20 20  | jvu-match-number.4).step)....... | 
| 20680 |  20 20 20 20 20 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 2b 20  | .............................(+. | 
| 206a0 |  28 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62    65 72 20 35 29 20 73 74 65 70 29 0a 20 20 20 20  | (djvu-match-number.5).step)..... | 
| 206c0 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 206e0 |  2b 20 28 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75    6d 62 65 72 20 36 29 20 73 74 65 70 29 29 0a 20  | +.(djvu-match-number.6).step)).. | 
| 20700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20  | ............................nil. | 
| 20720 |  6e 69 6c 20 6e 69 6c 20 32 29 29 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 73 68  | nil.nil.2)))))))..(defun.djvu-sh | 
| 20740 |  69 66 74 2d 69 6e 74 65 72 6e 61 6c 20 28 73 68    69 66 74 78 20 73 68 69 66 74 79 20 26 6f 70 74  | ift-internal.(shiftx.shifty.&opt | 
| 20760 |  69 6f 6e 61 6c 20 61 6c 6c 20 73 63 61 6c 65 29    0a 20 20 22 53 68 69 66 74 20 44 6a 76 75 20 6d  | ional.all.scale)..."Shift.Djvu.m | 
| 20780 |  61 70 61 72 65 61 73 20 72 65 63 74 20 61 6e 64    20 74 65 78 74 20 62 79 20 53 48 49 46 54 58 20  | apareas.rect.and.text.by.SHIFTX. | 
| 207a0 |  61 6e 64 20 53 48 49 46 54 59 2e 0a 57 69 74 68    20 70 72 65 66 69 78 20 41 4c 4c 20 6e 6f 6e 2d  | and.SHIFTY..With.prefix.ALL.non- | 
| 207c0 |  6e 69 6c 20 73 68 69 66 74 20 61 6c 6c 20 6d 61    70 61 72 65 61 73 20 6f 66 20 63 75 72 72 65 6e  | nil.shift.all.mapareas.of.curren | 
| 207e0 |  74 20 70 61 67 65 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 0a 20 20 20 28 6c 65 74 20  | t.page."...(interactive....(let. | 
| 20800 |  28 28 73 68 69 66 74 20 28 6d 61 70 63 61 72 20    23 27 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62  | ((shift.(mapcar.#'string-to-numb | 
| 20820 |  65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 70 6c 69  | er.........................(spli | 
| 20840 |  74 2d 73 74 72 69 6e 67 20 28 72 65 61 64 2d 73    74 72 69 6e 67 20 22 53 68 69 66 74 78 2c 20 73  | t-string.(read-string."Shiftx,.s | 
| 20860 |  68 69 66 74 79 3a 20 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  | hifty:.")....................... | 
| 20880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 5b 5c 74 5c 73 5c 6e 2c 3b 5d 2b 22 20 74 20  | ................"[\t\s\n,;]+".t. | 
| 208a0 |  22 5b 5c 74 5c 73 5c 6e 5d 22 29 29 29 29 0a 20    20 20 20 20 28 6c 69 73 74 20 28 6e 74 68 20 30  | "[\t\s\n]"))))......(list.(nth.0 | 
| 208c0 |  20 73 68 69 66 74 29 20 28 6e 74 68 20 31 20 73    68 69 66 74 29 20 63 75 72 72 65 6e 74 2d 70 72  | .shift).(nth.1.shift).current-pr | 
| 208e0 |  65 66 69 78 2d 61 72 67 29 29 29 0a 20 20 28 75    6e 6c 65 73 73 20 28 6e 75 6d 62 65 72 70 20 73  | efix-arg)))...(unless.(numberp.s | 
| 20900 |  63 61 6c 65 29 20 28 73 65 74 71 20 73 63 61 6c    65 20 31 29 29 0a 20 20 28 73 61 76 65 2d 65 78  | cale).(setq.scale.1))...(save-ex | 
| 20920 |  63 75 72 73 69 6f 6e 0a 20 20 20 20 28 73 61 76    65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20  | cursion.....(save-restriction... | 
| 20940 |  20 20 20 20 28 75 6e 6c 65 73 73 20 61 6c 6c 0a    20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 62  | ....(unless.all.........(let.((b | 
| 20960 |  6f 75 6e 64 73 20 28 64 6a 76 75 2d 6f 62 6a 65    63 74 2d 62 6f 75 6e 64 73 29 29 29 0a 20 20 20  | ounds.(djvu-object-bounds))).... | 
| 20980 |  20 20 20 20 20 20 20 28 69 66 20 62 6f 75 6e 64    73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .......(if.bounds............... | 
| 209a0 |  28 6e 61 72 72 6f 77 2d 74 6f 2d 72 65 67 69 6f    6e 20 28 63 61 72 20 62 6f 75 6e 64 73 29 20 28  | (narrow-to-region.(car.bounds).( | 
| 209c0 |  63 64 72 20 62 6f 75 6e 64 73 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65  | cdr.bounds)).............(user-e | 
| 209e0 |  72 72 6f 72 20 22 4e 6f 20 6f 62 6a 65 63 74 20    74 6f 20 75 70 64 61 74 65 22 29 29 29 29 0a 20  | rror."No.object.to.update")))).. | 
| 20a00 |  20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20  | .....(goto-char.(point-min)).... | 
| 20a20 |  20 20 20 3b 3b 20 46 49 58 4d 45 3a 20 70 72 6f    76 69 64 65 20 61 6c 74 65 72 6e 61 74 69 76 65  | ...;;.FIXME:.provide.alternative | 
| 20a40 |  20 72 65 67 65 78 70 20 66 6f 72 20 74 65 78 74    20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3b  | .regexp.for.text.buffer........; | 
| 20a60 |  3b 20 46 49 58 4d 45 3a 20 68 6f 6e 6f 72 20 70    61 67 65 20 62 6f 75 6e 64 61 72 69 65 73 3a 0a  | ;.FIXME:.honor.page.boundaries:. | 
| 20a80 |  20 20 20 20 20 20 3b 3b 20 43 75 74 20 6f 66 66    20 76 69 73 69 62 6c 65 20 61 72 65 61 73 2c 20  | ......;;.Cut.off.visible.areas,. | 
| 20aa0 |  64 72 6f 70 20 69 6e 76 69 73 62 6c 65 20 61 72    65 61 73 20 28 77 69 74 68 20 77 61 72 6e 69 6e  | drop.invisble.areas.(with.warnin | 
| 20ac0 |  67 3f 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65    20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77  | g?).......(while.(re-search-forw | 
| 20ae0 |  61 72 64 20 64 6a 76 75 2d 61 72 65 61 2d 72 65    20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20  | ard.djvu-area-re.nil.t)......... | 
| 20b00 |  28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20 28    66 6f 72 6d 61 74 20 22 25 64 20 25 64 20 25 64  | (replace-match.(format."%d.%d.%d | 
| 20b20 |  20 25 64 22 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .%d"............................ | 
| 20b40 |  20 20 20 20 28 2b 20 28 2a 20 28 64 6a 76 75 2d    6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 33 29 20  | ....(+.(*.(djvu-match-number.3). | 
| 20b60 |  73 63 61 6c 65 29 20 73 68 69 66 74 78 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | scale).shiftx).................. | 
| 20b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b    20 28 2a 20 28 64 6a 76 75 2d 6d 61 74 63 68 2d  | ..............(+.(*.(djvu-match- | 
| 20ba0 |  6e 75 6d 62 65 72 20 34 29 20 73 63 61 6c 65 29    20 73 68 69 66 74 79 29 0a 20 20 20 20 20 20 20  | number.4).scale).shifty)........ | 
| 20bc0 |  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 2b 20 28 2a 20 28 64  | ........................(+.(*.(d | 
| 20be0 |  6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72    20 35 29 20 73 63 61 6c 65 29 20 73 68 69 66 74  | jvu-match-number.5).scale).shift | 
| 20c00 |  78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | x).............................. | 
| 20c20 |  20 20 28 2b 20 28 2a 20 28 64 6a 76 75 2d 6d 61    74 63 68 2d 6e 75 6d 62 65 72 20 36 29 20 73 63  | ..(+.(*.(djvu-match-number.6).sc | 
| 20c40 |  61 6c 65 29 20 73 68 69 66 74 79 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ale).shifty))................... | 
| 20c60 |  20 20 20 20 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c    20 32 29 0a 20 20 20 20 20 20 20 20 28 69 66 20  | .....nil.nil.nil.2).........(if. | 
| 20c80 |  28 73 74 72 69 6e 67 3d 20 22 70 6f 6c 79 22 20    28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 29  | (string=."poly".(match-string.1) | 
| 20ca0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77    68 69 6c 65 20 28 70 72 6f 67 6e 20 28 73 6b 69  | ).............(while.(progn.(ski | 
| 20cc0 |  70 2d 63 68 61 72 73 2d 66 6f 72 77 61 72 64 20    22 5c 73 5c 74 5c 6e 22 29 0a 20 20 20 20 20 20  | p-chars-forward."\s\t\n")....... | 
| 20ce0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20  | ....................(looking-at. | 
| 20d00 |  64 6a 76 75 2d 63 6f 6f 72 64 2d 78 79 2d 72 65    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | djvu-coord-xy-re)).............. | 
| 20d20 |  20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20    28 66 6f 72 6d 61 74 20 22 25 64 20 25 64 22 0a  | .(replace-match.(format."%d.%d". | 
| 20d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 20d60 |  20 20 20 20 20 28 2b 20 28 2a 20 28 64 6a 76 75    2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 31 29  | .....(+.(*.(djvu-match-number.1) | 
| 20d80 |  20 73 63 61 6c 65 29 20 73 68 69 66 74 78 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .scale).shiftx)................. | 
| 20da0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 2b 20 28 2a 20 28 64 6a 76 75  | .....................(+.(*.(djvu | 
| 20dc0 |  2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 32 29    20 73 63 61 6c 65 29 20 73 68 69 66 74 79 29 29  | -match-number.2).scale).shifty)) | 
| 20de0 |  29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 72 65 6d 6f 76 65 2d 6c 69 6e 65  | )))))))..(defun.djvu-remove-line | 
| 20e00 |  62 72 65 61 6b 73 2d 69 6e 74 65 72 6e 61 6c 20    28 29 0a 20 20 22 52 65 6d 6f 76 65 20 6c 69 6e  | breaks-internal.()..."Remove.lin | 
| 20e20 |  65 62 72 65 61 6b 73 20 69 6e 20 4d 61 70 61 72    65 61 20 73 74 72 69 6e 67 2e 0a 54 68 69 73 20  | ebreaks.in.Maparea.string..This. | 
| 20e40 |  6d 61 79 20 63 6f 6d 65 20 68 61 6e 64 79 20 66    6f 72 20 72 65 66 6f 72 6d 61 74 74 69 6e 67 20  | may.come.handy.for.reformatting. | 
| 20e60 |  73 75 63 68 20 73 74 72 69 6e 67 73 2e 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | such.strings."...(interactive).. | 
| 20e80 |  20 28 6c 65 74 20 28 28 62 6f 75 6e 64 73 20 28    64 6a 76 75 2d 6f 62 6a 65 63 74 2d 62 6f 75 6e  | .(let.((bounds.(djvu-object-boun | 
| 20ea0 |  64 73 29 29 29 0a 20 20 20 20 28 69 66 20 28 6e    6f 74 20 62 6f 75 6e 64 73 29 0a 20 20 20 20 20  | ds))).....(if.(not.bounds)...... | 
| 20ec0 |  20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22    4e 6f 20 6f 62 6a 65 63 74 20 74 6f 20 75 70 64  | ...(user-error."No.object.to.upd | 
| 20ee0 |  61 74 65 22 29 0a 20 20 20 20 20 20 28 73 61 76    65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20  | ate").......(save-excursion..... | 
| 20f00 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    63 61 72 20 62 6f 75 6e 64 73 29 29 0a 20 20 20  | ....(goto-char.(car.bounds)).... | 
| 20f20 |  20 20 20 20 20 3b 3b 20 53 6b 69 70 20 6f 76 65    72 20 6d 61 70 61 72 65 61 20 61 6e 64 20 75 72  | .....;;.Skip.over.maparea.and.ur | 
| 20f40 |  6c 0a 20 20 20 20 20 20 20 20 28 66 6f 72 77 61    72 64 2d 63 68 61 72 29 0a 20 20 20 20 20 20 20  | l.........(forward-char)........ | 
| 20f60 |  20 28 66 6f 72 77 61 72 64 2d 73 65 78 70 20 32    29 0a 20 20 20 20 20 20 20 20 28 73 6b 69 70 2d  | .(forward-sexp.2).........(skip- | 
| 20f80 |  63 68 61 72 73 2d 66 6f 72 77 61 72 64 20 22 5c    73 5c 74 5c 6e 22 29 0a 20 20 20 20 20 20 20 20  | chars-forward."\s\t\n")......... | 
| 20fa0 |  28 73 61 76 65 2d 72 65 73 74 72 69 63 74 69 6f    6e 0a 20 20 20 20 20 20 20 20 20 20 28 6e 61 72  | (save-restriction...........(nar | 
| 20fc0 |  72 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 20 28 70    6f 69 6e 74 29 20 28 73 63 61 6e 2d 73 65 78 70  | row-to-region.(point).(scan-sexp | 
| 20fe0 |  73 20 28 70 6f 69 6e 74 29 20 31 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28  | s.(point).1))...........(while.( | 
| 21000 |  72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72    64 20 22 5c 6e 5c 5c 28 5c 6e 5c 5c 29 2a 22 20  | re-search-forward."\n\\(\n\\)*". | 
| 21020 |  6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 75 6e 6c 65 73 73 20 28 6d 61 74 63  | nil.t).............(unless.(matc | 
| 21040 |  68 2d 73 74 72 69 6e 67 20 31 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61  | h-string.1)...............(repla | 
| 21060 |  63 65 2d 6d 61 74 63 68 20 22 20 22 29 29 29 29    29 29 29 29 0a 0a 3b 3b 20 54 68 65 20 66 75 6e  | ce-match."."))))))))..;;.The.fun | 
| 21080 |  63 74 69 6f 6e 73 20 60 64 6a 76 75 2d 70 72 6f    70 65 72 74 79 2d 62 65 67 27 20 61 6e 64 20 60  | ctions.`djvu-property-beg'.and.` | 
| 210a0 |  64 6a 76 75 2d 70 72 6f 70 65 72 74 79 2d 65 6e    64 27 20 72 65 6c 79 20 6f 6e 20 74 68 65 20 66  | djvu-property-end'.rely.on.the.f | 
| 210c0 |  61 63 74 0a 3b 3b 20 74 68 61 74 20 72 65 67 69    6f 6e 73 20 77 69 74 68 20 70 72 6f 70 65 72 74  | act.;;.that.regions.with.propert | 
| 210e0 |  79 20 50 52 4f 50 20 61 72 65 20 61 6c 77 61 79    73 20 73 75 72 72 6f 75 6e 64 65 64 20 62 79 20  | y.PROP.are.always.surrounded.by. | 
| 21100 |  61 74 20 6c 65 61 73 74 20 6f 6e 65 0a 3b 3b 20    63 68 61 72 61 63 74 65 72 20 77 69 74 68 6f 75  | at.least.one.;;.character.withou | 
| 21120 |  74 20 70 72 6f 70 65 72 74 79 20 50 52 4f 50 2e    20 20 52 65 70 65 61 74 65 64 20 63 61 6c 6c 73  | t.property.PROP...Repeated.calls | 
| 21140 |  20 6f 66 20 60 64 6a 76 75 2d 70 72 6f 70 65 72    74 79 2d 62 65 67 27 0a 3b 3b 20 61 6e 64 20 60  | .of.`djvu-property-beg'.;;.and.` | 
| 21160 |  64 6a 76 75 2d 70 72 6f 70 65 72 74 79 2d 65 6e    64 27 20 74 68 75 73 20 6e 65 76 65 72 20 67 6f  | djvu-property-end'.thus.never.go | 
| 21180 |  20 62 65 79 6f 6e 64 20 74 68 69 73 20 72 65 67    69 6f 6e 2e 0a 28 64 65 66 75 6e 20 64 6a 76 75  | .beyond.this.region..(defun.djvu | 
| 211a0 |  2d 70 72 6f 70 65 72 74 79 2d 62 65 67 20 28 70    6e 74 20 70 72 6f 70 29 0a 20 20 22 53 74 61 72  | -property-beg.(pnt.prop)..."Star | 
| 211c0 |  74 69 6e 67 20 66 72 6f 6d 20 70 6f 73 69 74 69    6f 6e 20 50 4e 54 20 73 65 61 72 63 68 20 62 61  | ting.from.position.PNT.search.ba | 
| 211e0 |  63 6b 77 61 72 64 20 66 6f 72 20 62 65 67 69 6e    6e 69 6e 67 20 6f 66 20 70 72 6f 70 65 72 74 79  | ckward.for.beginning.of.property | 
| 21200 |  20 50 52 4f 50 2e 0a 52 65 74 75 72 6e 20 70 6f    73 69 74 69 6f 6e 20 66 6f 75 6e 64 2e 22 0a 20  | .PROP..Return.position.found.".. | 
| 21220 |  20 28 6c 65 74 20 28 28 70 31 20 28 67 65 74 2d    74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 70 6e  | .(let.((p1.(get-text-property.pn | 
| 21240 |  74 20 70 72 6f 70 29 29 20 70 6e 74 2d 31 29 0a    20 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20  | t.prop)).pnt-1).....(cond.((and. | 
| 21260 |  70 31 20 28 3c 20 28 70 6f 69 6e 74 2d 6d 69 6e    29 20 70 6e 74 29 0a 20 20 20 20 20 20 20 20 20  | p1.(<.(point-min).pnt).......... | 
| 21280 |  20 20 20 20 20 20 20 28 65 71 20 70 31 20 28 67    65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79  | .......(eq.p1.(get-text-property | 
| 212a0 |  20 28 31 2d 20 70 6e 74 29 20 70 72 6f 70 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 72  | .(1-.pnt).prop)))............(pr | 
| 212c0 |  65 76 69 6f 75 73 2d 73 69 6e 67 6c 65 2d 70 72    6f 70 65 72 74 79 2d 63 68 61 6e 67 65 20 70 6e  | evious-single-property-change.pn | 
| 212e0 |  74 20 70 72 6f 70 20 6e 69 6c 20 28 70 6f 69 6e    74 2d 6d 69 6e 29 29 29 0a 20 20 20 20 20 20 20  | t.prop.nil.(point-min)))........ | 
| 21300 |  20 20 20 28 70 31 20 70 6e 74 29 0a 20 20 20 20    20 20 20 20 20 20 28 28 61 6e 64 20 28 3c 20 28  | ...(p1.pnt)...........((and.(<.( | 
| 21320 |  70 6f 69 6e 74 2d 6d 69 6e 29 20 70 6e 74 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | point-min).pnt)................. | 
| 21340 |  28 73 65 74 71 20 70 31 20 28 67 65 74 2d 74 65    78 74 2d 70 72 6f 70 65 72 74 79 20 28 73 65 74  | (setq.p1.(get-text-property.(set | 
| 21360 |  71 20 70 6e 74 2d 31 20 28 31 2d 20 70 6e 74 29    29 20 70 72 6f 70 29 29 29 0a 20 20 20 20 20 20  | q.pnt-1.(1-.pnt)).prop)))....... | 
| 21380 |  20 20 20 20 20 3b 3b 20 50 4e 54 20 69 73 20 61    74 20 74 68 65 20 65 6e 64 20 70 6f 73 69 74 69  | .....;;.PNT.is.at.the.end.positi | 
| 213a0 |  6f 6e 20 66 6f 72 20 70 72 6f 70 65 72 74 79 20    50 52 4f 50 0a 20 20 20 20 20 20 20 20 20 20 20  | on.for.property.PROP............ | 
| 213c0 |  28 69 66 20 28 61 6e 64 20 28 3c 20 28 70 6f 69    6e 74 2d 6d 69 6e 29 20 70 6e 74 2d 31 29 0a 20  | (if.(and.(<.(point-min).pnt-1).. | 
| 213e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 65 71 20 70 31 20 28 67 65 74 2d 74  | ...................(eq.p1.(get-t | 
| 21400 |  65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 31 2d    20 70 6e 74 2d 31 29 20 70 72 6f 70 29 29 29 0a  | ext-property.(1-.pnt-1).prop))). | 
| 21420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    70 72 65 76 69 6f 75 73 2d 73 69 6e 67 6c 65 2d  | ...............(previous-single- | 
| 21440 |  70 72 6f 70 65 72 74 79 2d 63 68 61 6e 67 65 20    70 6e 74 2d 31 20 70 72 6f 70 20 6e 69 6c 20 28  | property-change.pnt-1.prop.nil.( | 
| 21460 |  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 70 6e 74 2d 31 29 29  | point-min))..............pnt-1)) | 
| 21480 |  0a 20 20 20 20 20 20 20 20 20 20 28 74 20 28 65    72 72 6f 72 20 22 50 6f 73 69 74 69 6f 6e 20 25  | ...........(t.(error."Position.% | 
| 214a0 |  73 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 2f    65 6e 64 20 70 72 6f 70 65 72 74 79 20 25 73 22  | s.does.not.have/end.property.%s" | 
| 214c0 |  20 70 6e 74 20 70 72 6f 70 29 29 29 29 29 0a 0a    28 64 65 66 75 6e 20 64 6a 76 75 2d 70 72 6f 70  | .pnt.prop)))))..(defun.djvu-prop | 
| 214e0 |  65 72 74 79 2d 65 6e 64 20 28 70 6e 74 20 70 72    6f 70 29 0a 20 20 22 53 74 61 72 74 69 6e 67 20  | erty-end.(pnt.prop)..."Starting. | 
| 21500 |  66 72 6f 6d 20 70 6f 73 69 74 69 6f 6e 20 50 4e    54 20 73 65 61 72 63 68 20 66 6f 72 77 61 72 64  | from.position.PNT.search.forward | 
| 21520 |  20 66 6f 72 20 65 6e 64 20 6f 66 20 70 72 6f 70    65 72 74 79 20 50 52 4f 50 2e 0a 52 65 74 75 72  | .for.end.of.property.PROP..Retur | 
| 21540 |  6e 20 70 6f 73 69 74 69 6f 6e 20 66 6f 75 6e 64    2e 22 0a 20 20 28 6c 65 74 20 28 28 70 31 20 28  | n.position.found."...(let.((p1.( | 
| 21560 |  67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74    79 20 70 6e 74 20 70 72 6f 70 29 29 29 0a 20 20  | get-text-property.pnt.prop)))... | 
| 21580 |  20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 70 31    20 28 3c 20 70 6e 74 20 28 70 6f 69 6e 74 2d 6d  | ..(cond.((and.p1.(<.pnt.(point-m | 
| 215a0 |  61 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 65 71 20 70 31 20 28 67 65 74  | ax)).................(eq.p1.(get | 
| 215c0 |  2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28    31 2b 20 70 6e 74 29 20 70 72 6f 70 29 29 29 0a  | -text-property.(1+.pnt).prop))). | 
| 215e0 |  20 20 20 20 20 20 20 20 20 20 20 28 6e 65 78 74    2d 73 69 6e 67 6c 65 2d 70 72 6f 70 65 72 74 79  | ...........(next-single-property | 
| 21600 |  2d 63 68 61 6e 67 65 20 70 6e 74 20 70 72 6f 70    20 6e 69 6c 20 28 70 6f 69 6e 74 2d 6d 61 78 29  | -change.pnt.prop.nil.(point-max) | 
| 21620 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 31    20 28 31 2b 20 70 6e 74 29 29 0a 20 20 20 20 20  | ))...........(p1.(1+.pnt))...... | 
| 21640 |  20 20 20 20 20 28 28 61 6e 64 20 28 3c 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 20 70 6e 74 29 0a 20  | .....((and.(<.(point-min).pnt).. | 
| 21660 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74  | ...............(get-text-propert | 
| 21680 |  79 20 28 31 2d 20 70 6e 74 29 20 70 72 6f 70 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | y.(1-.pnt).prop))............;;. | 
| 216a0 |  57 65 20 68 61 64 20 50 4e 54 20 61 74 20 74 68    65 20 65 6e 64 20 70 6f 73 69 74 69 6f 6e 20 66  | We.had.PNT.at.the.end.position.f | 
| 216c0 |  6f 72 20 70 72 6f 70 65 72 74 79 20 50 52 4f 50    0a 20 20 20 20 20 20 20 20 20 20 20 70 6e 74 29  | or.property.PROP............pnt) | 
| 216e0 |  0a 20 20 20 20 20 20 20 20 20 20 28 74 20 28 65    72 72 6f 72 20 22 50 6f 73 69 74 69 6f 6e 20 25  | ...........(t.(error."Position.% | 
| 21700 |  73 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 2f    65 6e 64 20 70 72 6f 70 65 72 74 79 20 25 73 22  | s.does.not.have/end.property.%s" | 
| 21720 |  20 70 6e 74 20 70 72 6f 70 29 29 29 29 29 0a 0a    28 64 65 66 75 6e 20 64 6a 76 75 2d 61 72 65 61  | .pnt.prop)))))..(defun.djvu-area | 
| 21740 |  73 2d 6a 75 73 74 69 66 79 20 28 6c 65 66 74 20    26 72 65 73 74 20 63 69 29 0a 20 20 22 52 65 74  | s-justify.(left.&rest.ci)..."Ret | 
| 21760 |  75 72 6e 20 6e 6f 6e 2d 6e 69 6c 20 69 66 20 61    72 65 61 73 20 43 49 20 73 68 61 6c 6c 20 62 65  | urn.non-nil.if.areas.CI.shall.be | 
| 21780 |  20 6a 75 73 74 69 66 69 65 64 20 68 6f 72 69 7a    6f 6e 74 61 6c 6c 79 2e 0a 49 66 20 4c 45 46 54  | .justified.horizontally..If.LEFT | 
| 217a0 |  20 69 73 20 6e 69 6c 20 61 6e 61 6c 79 7a 65 20    6c 65 66 74 20 62 6f 75 6e 64 61 72 69 65 73 20  | .is.nil.analyze.left.boundaries. | 
| 217c0 |  6f 66 20 43 49 2c 20 6f 74 68 65 72 77 69 73 65    20 74 68 65 20 72 69 67 68 74 20 62 6f 75 6e 64  | of.CI,.otherwise.the.right.bound | 
| 217e0 |  61 72 69 65 73 2e 22 0a 20 20 28 6c 65 74 20 28    28 78 6c 20 28 61 70 70 6c 79 20 27 6d 69 6e 20  | aries."...(let.((xl.(apply.'min. | 
| 21800 |  28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20    28 63 29 20 28 61 72 65 66 20 63 20 30 29 29 20  | (mapcar.(lambda.(c).(aref.c.0)). | 
| 21820 |  63 69 29 29 29 0a 20 20 20 20 20 20 20 20 28 78    72 20 28 61 70 70 6c 79 20 27 6d 61 78 20 28 6d  | ci))).........(xr.(apply.'max.(m | 
| 21840 |  61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 63    29 20 28 61 72 65 66 20 63 20 32 29 29 20 63 69  | apcar.(lambda.(c).(aref.c.2)).ci | 
| 21860 |  29 29 29 29 0a 20 20 20 20 28 3e 20 64 6a 76 75    2d 61 72 65 61 73 2d 6a 75 73 74 69 66 79 0a 20  | )))).....(>.djvu-areas-justify.. | 
| 21880 |  20 20 20 20 20 20 28 2f 20 28 61 70 70 6c 79 20    27 6d 61 78 20 28 6d 61 70 63 61 72 20 28 6c 61  | ......(/.(apply.'max.(mapcar.(la | 
| 218a0 |  6d 62 64 61 20 28 63 6a 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | mbda.(cj)....................... | 
| 218c0 |  20 20 20 20 20 20 20 20 20 20 28 61 62 73 20 28    66 6c 6f 61 74 20 28 69 66 20 6c 65 66 74 20 28  | ..........(abs.(float.(if.left.( | 
| 218e0 |  2d 20 28 61 72 65 66 20 63 6a 20 30 29 20 78 6c    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -.(aref.cj.0).xl)............... | 
| 21900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 21920 |  28 2d 20 78 72 20 28 61 72 65 66 20 63 6a 20 32    29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | (-.xr.(aref.cj.2)))))).......... | 
| 21940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 63 69 29 29 0a 20 20 20 20 20 20  | .....................ci))....... | 
| 21960 |  20 20 20 20 28 66 6c 6f 61 74 20 28 2d 20 78 72    20 78 6c 29 29 29 29 29 29 0a 0a 28 64 65 66 75  | ....(float.(-.xr.xl))))))..(defu | 
| 21980 |  6e 20 64 6a 76 75 2d 6a 75 73 74 69 66 79 2d 61    72 65 61 73 20 28 66 75 6e 20 6e 20 26 72 65 73  | n.djvu-justify-areas.(fun.n.&res | 
| 219a0 |  74 20 63 69 29 0a 20 20 22 50 61 73 73 20 4e 74    68 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 61 72  | t.ci)..."Pass.Nth.elements.of.ar | 
| 219c0 |  72 61 79 73 20 43 49 20 74 6f 20 66 75 6e 63 74    69 6f 6e 20 46 55 4e 2e 0a 53 65 74 20 74 68 65  | rays.CI.to.function.FUN..Set.the | 
| 219e0 |  73 65 20 65 6c 65 6d 65 6e 74 73 20 74 6f 20 72    65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 46  | se.elements.to.return.value.of.F | 
| 21a00 |  55 4e 2e 0a 49 66 20 46 55 4e 20 69 73 20 60 6d    69 6e 27 20 6f 72 20 60 6d 61 78 27 20 74 68 65  | UN..If.FUN.is.`min'.or.`max'.the | 
| 21a20 |  73 65 20 65 6c 65 6d 65 6e 74 73 20 61 72 65 20    73 65 74 20 74 6f 20 74 68 65 20 72 65 73 70 65  | se.elements.are.set.to.the.respe | 
| 21a40 |  63 74 69 76 65 20 6d 69 6e 69 6d 75 6d 0a 6f 72    20 6d 61 78 69 6d 75 6d 20 61 6d 6f 6e 67 20 74  | ctive.minimum.or.maximum.among.t | 
| 21a60 |  68 65 20 4e 74 68 20 65 6c 65 6d 65 6e 74 73 20    6f 66 20 61 6c 6c 20 61 72 72 61 79 73 20 43 49  | he.Nth.elements.of.all.arrays.CI | 
| 21a80 |  2e 22 0a 20 20 28 6c 65 74 20 28 28 74 6d 70 20    28 61 70 70 6c 79 20 66 75 6e 20 28 6d 61 70 63  | ."...(let.((tmp.(apply.fun.(mapc | 
| 21aa0 |  61 72 20 28 6c 61 6d 62 64 61 20 28 63 29 20 28    61 72 65 66 20 63 20 6e 29 29 20 63 69 29 29 29  | ar.(lambda.(c).(aref.c.n)).ci))) | 
| 21ac0 |  29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 63    20 63 69 29 0a 20 20 20 20 20 20 28 61 73 65 74  | ).....(dolist.(c.ci).......(aset | 
| 21ae0 |  20 63 20 6e 20 74 6d 70 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 64 6a 76 75 2d 73 63 61 6e 2d 7a  | .c.n.tmp))))..(defun.djvu-scan-z | 
| 21b00 |  6f 6e 65 20 28 62 65 67 20 65 6e 64 20 70 72 6f    70 29 0a 20 20 22 42 65 74 77 65 65 6e 20 42 45  | one.(beg.end.prop)..."Between.BE | 
| 21b20 |  47 20 61 6e 64 20 45 4e 44 20 63 61 6c 63 75 6c    61 74 65 20 74 6f 74 61 6c 20 7a 6f 6e 65 20 63  | G.and.END.calculate.total.zone.c | 
| 21b40 |  6f 6f 72 64 69 6e 61 74 65 73 20 66 6f 72 20 50    52 4f 50 2e 22 0a 20 20 3b 3b 20 41 73 73 75 6d  | oordinates.for.PROP."...;;.Assum | 
| 21b60 |  65 20 74 68 61 74 20 42 45 47 20 68 61 73 20 50    52 4f 50 2e 0a 20 20 28 6c 65 74 2a 20 28 28 7a  | e.that.BEG.has.PROP....(let*.((z | 
| 21b80 |  6f 6e 65 20 28 63 6f 70 79 2d 73 65 71 75 65 6e    63 65 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f  | one.(copy-sequence.(get-text-pro | 
| 21ba0 |  70 65 72 74 79 20 62 65 67 20 70 72 6f 70 29 29    29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 78 20  | perty.beg.prop)))..........(max. | 
| 21bc0 |  28 61 72 65 66 20 7a 6f 6e 65 20 31 29 29 0a 20    20 20 20 20 20 20 20 20 28 6d 69 6e 20 28 61 72  | (aref.zone.1))..........(min.(ar | 
| 21be0 |  65 66 20 7a 6f 6e 65 20 33 29 29 0a 20 20 20 20    20 20 20 20 20 28 70 6e 74 20 62 65 67 29 0a 20  | ef.zone.3))..........(pnt.beg).. | 
| 21c00 |  20 20 20 20 20 20 20 20 76 61 6c 29 0a 20 20 20    20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 2f 3d  | ........val).....(while.(and.(/= | 
| 21c20 |  20 70 6e 74 20 65 6e 64 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | .pnt.end).................(setq. | 
| 21c40 |  70 6e 74 20 28 6e 65 78 74 2d 73 69 6e 67 6c 65    2d 70 72 6f 70 65 72 74 79 2d 63 68 61 6e 67 65  | pnt.(next-single-property-change | 
| 21c60 |  20 70 6e 74 20 70 72 6f 70 20 6e 69 6c 20 65 6e    64 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e  | .pnt.prop.nil.end))).......(when | 
| 21c80 |  20 28 73 65 74 71 20 76 61 6c 20 28 67 65 74 2d    74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 70 6e  | .(setq.val.(get-text-property.pn | 
| 21ca0 |  74 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20    20 28 61 73 65 74 20 7a 6f 6e 65 20 30 20 28 6d  | t.prop)).........(aset.zone.0.(m | 
| 21cc0 |  69 6e 20 28 61 72 65 66 20 7a 6f 6e 65 20 30 29    20 28 61 72 65 66 20 76 61 6c 20 30 29 29 29 0a  | in.(aref.zone.0).(aref.val.0))). | 
| 21ce0 |  20 20 20 20 20 20 20 20 28 61 73 65 74 20 7a 6f    6e 65 20 31 20 28 6d 69 6e 20 28 61 72 65 66 20  | ........(aset.zone.1.(min.(aref. | 
| 21d00 |  7a 6f 6e 65 20 31 29 20 28 61 72 65 66 20 76 61    6c 20 31 29 29 29 0a 20 20 20 20 20 20 20 20 28  | zone.1).(aref.val.1))).........( | 
| 21d20 |  73 65 74 71 20 6d 61 78 20 28 6d 61 78 20 6d 61    78 20 28 61 72 65 66 20 76 61 6c 20 31 29 29 29  | setq.max.(max.max.(aref.val.1))) | 
| 21d40 |  20 3b 20 64 65 73 63 65 6e 64 69 6e 67 20 77 6f    72 64 73 0a 20 20 20 20 20 20 20 20 28 61 73 65  | .;.descending.words.........(ase | 
| 21d60 |  74 20 7a 6f 6e 65 20 32 20 28 6d 61 78 20 28 61    72 65 66 20 7a 6f 6e 65 20 32 29 20 28 61 72 65  | t.zone.2.(max.(aref.zone.2).(are | 
| 21d80 |  66 20 76 61 6c 20 32 29 29 29 0a 20 20 20 20 20    20 20 20 28 61 73 65 74 20 7a 6f 6e 65 20 33 20  | f.val.2))).........(aset.zone.3. | 
| 21da0 |  28 6d 61 78 20 28 61 72 65 66 20 7a 6f 6e 65 20    33 29 20 28 61 72 65 66 20 76 61 6c 20 33 29 29  | (max.(aref.zone.3).(aref.val.3)) | 
| 21dc0 |  29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20    6d 69 6e 20 28 6d 69 6e 20 6d 69 6e 20 28 61 72  | ).........(setq.min.(min.min.(ar | 
| 21de0 |  65 66 20 76 61 6c 20 33 29 29 29 29 29 20 3b 20    61 73 63 65 6e 64 69 6e 67 20 77 6f 72 64 73 0a  | ef.val.3))))).;.ascending.words. | 
| 21e00 |  0a 20 20 20 20 3b 3b 20 54 68 65 20 66 6f 6c 6c    6f 77 69 6e 67 20 69 73 20 72 61 74 68 65 72 20  | .....;;.The.following.is.rather. | 
| 21e20 |  68 65 75 72 69 73 74 69 63 2e 20 20 53 75 67 67    65 73 74 69 6f 6e 73 20 66 6f 72 20 62 65 74 74  | heuristic...Suggestions.for.bett | 
| 21e40 |  65 72 0a 20 20 20 20 3b 3b 20 73 6f 6c 75 74 69    6f 6e 73 20 77 65 6c 63 6f 6d 65 2c 20 74 68 6f  | er.....;;.solutions.welcome,.tho | 
| 21e60 |  75 67 68 20 70 72 6f 62 61 62 6c 79 20 6e 6f 74    20 77 6f 72 74 68 20 74 68 65 20 65 66 66 6f 72  | ugh.probably.not.worth.the.effor | 
| 21e80 |  74 2e 0a 20 20 20 20 3b 3b 20 53 65 74 20 60 64    6a 76 75 2d 64 65 73 63 65 6e 64 65 72 73 2d 72  | t......;;.Set.`djvu-descenders-r | 
| 21ea0 |  65 27 20 74 6f 20 6e 69 6c 20 69 66 20 79 6f 75    20 64 6f 20 6e 6f 74 20 6c 69 6b 65 20 74 68 69  | e'.to.nil.if.you.do.not.like.thi | 
| 21ec0 |  73 2e 0a 20 20 20 20 28 69 66 20 28 61 6e 64 20    28 6f 72 20 64 6a 76 75 2d 64 65 73 63 65 6e 64  | s......(if.(and.(or.djvu-descend | 
| 21ee0 |  65 72 73 2d 72 65 20 64 6a 76 75 2d 61 73 63 65    6e 64 65 72 73 2d 72 65 29 0a 20 20 20 20 20 20  | ers-re.djvu-ascenders-re)....... | 
| 21f00 |  20 20 20 20 20 20 20 28 65 71 20 70 72 6f 70 20    27 77 6f 72 64 29 29 0a 20 20 20 20 20 20 20 20  | .......(eq.prop.'word))......... | 
| 21f20 |  28 6c 65 74 2a 20 28 28 73 74 72 69 6e 67 20 28    62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67  | (let*.((string.(buffer-substring | 
| 21f40 |  2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 62    65 67 20 65 6e 64 29 29 0a 20 20 20 20 20 20 20  | -no-properties.beg.end))........ | 
| 21f60 |  20 20 20 20 20 20 20 20 28 6c 6f 6e 67 20 28 3c    20 31 20 28 6c 65 6e 67 74 68 20 73 74 72 69 6e  | ........(long.(<.1.(length.strin | 
| 21f80 |  67 29 29 29 20 3b 20 6e 6f 74 20 61 20 73 69 6e    67 6c 65 2d 63 68 61 72 61 63 74 65 72 20 73 74  | g))).;.not.a.single-character.st | 
| 21fa0 |  72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 63 61 73 65 2d 66 6f 6c 64 2d 73 65  | ring................case-fold-se | 
| 21fc0 |  61 72 63 68 29 0a 20 20 20 20 20 20 20 20 20 20    28 69 66 20 28 61 6e 64 20 6c 6f 6e 67 20 64 6a  | arch)...........(if.(and.long.dj | 
| 21fe0 |  76 75 2d 64 65 73 63 65 6e 64 65 72 73 2d 72 65    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | vu-descenders-re................ | 
| 22000 |  20 20 20 20 3b 3b 20 64 65 73 63 65 6e 64 69 6e    67 20 77 6f 72 64 73 0a 20 20 20 20 20 20 20 20  | ....;;.descending.words......... | 
| 22020 |  20 20 20 20 20 20 20 20 20 20 20 28 3e 20 30 2e    31 30 20 28 2f 20 28 2d 20 6d 61 78 20 28 61 72  | ...........(>.0.10.(/.(-.max.(ar | 
| 22040 |  65 66 20 7a 6f 6e 65 20 31 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ef.zone.1))..................... | 
| 22060 |  20 20 20 20 20 20 20 20 20 20 28 66 6c 6f 61 74    20 28 2d 20 28 61 72 65 66 20 7a 6f 6e 65 20 33  | ..........(float.(-.(aref.zone.3 | 
| 22080 |  29 20 28 61 72 65 66 20 7a 6f 6e 65 20 31 29 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ).(aref.zone.1)))))............. | 
| 220a0 |  20 20 20 20 20 20 20 3b 3b 20 61 6c 6c 2d 75 70    70 65 72 63 61 73 65 20 73 74 72 69 6e 67 0a 20  | .......;;.all-uppercase.string.. | 
| 220c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6e 6f 74 20 28 73 74 72 69 6e 67 3d 20  | ..................(not.(string=. | 
| 220e0 |  73 74 72 69 6e 67 20 28 75 70 63 61 73 65 20 73    74 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20  | string.(upcase.string)))........ | 
| 22100 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 64    65 73 63 65 6e 64 65 72 20 63 68 61 72 61 63 74  | ............;;.descender.charact | 
| 22120 |  65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6e 6f 74 20 28 73 74 72  | ers....................(not.(str | 
| 22140 |  69 6e 67 2d 6d 61 74 63 68 20 64 6a 76 75 2d 64    65 73 63 65 6e 64 65 72 73 2d 72 65 20 73 74 72  | ing-match.djvu-descenders-re.str | 
| 22160 |  69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 61 73 65 74 20 7a 6f 6e 65 20  | ing)))...............(aset.zone. | 
| 22180 |  31 20 28 2d 20 28 61 72 65 66 20 7a 6f 6e 65 20    31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | 1.(-.(aref.zone.1).............. | 
| 221a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 72 6f 75 6e 64 20 28 2a 20 30 2e 32 30 20  | .................(round.(*.0.20. | 
| 221c0 |  28 2d 20 28 61 72 65 66 20 7a 6f 6e 65 20 33 29    20 28 61 72 65 66 20 7a 6f 6e 65 20 31 29 29 29  | (-.(aref.zone.3).(aref.zone.1))) | 
| 221e0 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    69 66 20 28 61 6e 64 20 6c 6f 6e 67 20 64 6a 76  | ))))...........(if.(and.long.djv | 
| 22200 |  75 2d 61 73 63 65 6e 64 65 72 73 2d 72 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | u-ascenders-re.................. | 
| 22220 |  20 20 3b 3b 20 61 73 63 65 6e 64 69 6e 67 20 77    6f 72 64 73 0a 20 20 20 20 20 20 20 20 20 20 20  | ..;;.ascending.words............ | 
| 22240 |  20 20 20 20 20 20 20 20 28 3e 20 30 2e 31 30 20    28 2f 20 28 2d 20 28 61 72 65 66 20 7a 6f 6e 65  | ........(>.0.10.(/.(-.(aref.zone | 
| 22260 |  20 33 29 20 6d 69 6e 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .3).min)........................ | 
| 22280 |  20 20 20 20 20 20 20 28 66 6c 6f 61 74 20 28 2d    20 28 61 72 65 66 20 7a 6f 6e 65 20 33 29 20 28  | .......(float.(-.(aref.zone.3).( | 
| 222a0 |  61 72 65 66 20 7a 6f 6e 65 20 31 29 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | aref.zone.1)))))................ | 
| 222c0 |  20 20 20 20 3b 3b 20 61 73 63 65 6e 64 65 72 20    63 68 61 72 61 63 74 65 72 73 0a 20 20 20 20 20  | ....;;.ascender.characters...... | 
| 222e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e    6f 74 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68  | ..............(not.(string-match | 
| 22300 |  20 64 6a 76 75 2d 61 73 63 65 6e 64 65 72 73 2d    72 65 20 73 74 72 69 6e 67 29 29 29 0a 20 20 20  | .djvu-ascenders-re.string))).... | 
| 22320 |  20 20 20 20 20 20 20 20 20 20 20 28 61 73 65 74    20 7a 6f 6e 65 20 33 20 28 2b 20 28 61 72 65 66  | ...........(aset.zone.3.(+.(aref | 
| 22340 |  20 7a 6f 6e 65 20 33 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .zone.3)........................ | 
| 22360 |  20 20 20 20 20 20 20 28 72 6f 75 6e 64 20 28 2a    20 30 2e 32 30 20 28 2d 20 28 61 72 65 66 20 7a  | .......(round.(*.0.20.(-.(aref.z | 
| 22380 |  6f 6e 65 20 33 29 20 28 61 72 65 66 20 7a 6f 6e    65 20 31 29 29 29 29 29 29 29 29 29 0a 20 20 20  | one.3).(aref.zone.1))))))))).... | 
| 223a0 |  20 7a 6f 6e 65 29 29 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 72 65 67 69 6f 6e 2d 63 6f 75 6e  | .zone))..(defun.djvu-region-coun | 
| 223c0 |  74 20 28 62 65 67 20 65 6e 64 20 70 72 6f 70 29    0a 20 20 22 43 6f 75 6e 74 20 72 65 67 69 6f 6e  | t.(beg.end.prop)..."Count.region | 
| 223e0 |  73 20 62 65 74 77 65 65 6e 20 42 45 47 20 61 6e    64 20 45 4e 44 20 77 69 74 68 20 64 69 73 74 69  | s.between.BEG.and.END.with.disti | 
| 22400 |  6e 63 74 20 6e 6f 6e 2d 6e 69 6c 20 76 61 6c 75    65 73 20 6f 66 20 50 52 4f 50 2e 22 0a 20 20 28  | nct.non-nil.values.of.PROP."...( | 
| 22420 |  6c 65 74 20 28 28 63 6f 75 6e 74 20 30 29 0a 20    20 20 20 20 20 20 20 28 70 6e 74 20 62 65 67 29  | let.((count.0).........(pnt.beg) | 
| 22440 |  29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e    64 20 28 2f 3d 20 70 6e 74 20 65 6e 64 29 0a 20  | ).....(while.(and.(/=.pnt.end).. | 
| 22460 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    73 65 74 71 20 70 6e 74 20 28 6e 65 78 74 2d 73  | ...............(setq.pnt.(next-s | 
| 22480 |  69 6e 67 6c 65 2d 70 72 6f 70 65 72 74 79 2d 63    68 61 6e 67 65 20 70 6e 74 20 70 72 6f 70 20 6e  | ingle-property-change.pnt.prop.n | 
| 224a0 |  69 6c 20 65 6e 64 29 29 29 0a 20 20 20 20 20 20    28 69 66 20 28 67 65 74 2d 74 65 78 74 2d 70 72  | il.end))).......(if.(get-text-pr | 
| 224c0 |  6f 70 65 72 74 79 20 28 31 2d 20 70 6e 74 29 20    70 72 6f 70 29 0a 20 20 20 20 20 20 20 20 20 20  | operty.(1-.pnt).prop)........... | 
| 224e0 |  28 73 65 74 71 20 63 6f 75 6e 74 20 28 31 2b 20    63 6f 75 6e 74 29 29 29 29 0a 20 20 20 20 63 6f  | (setq.count.(1+.count)))).....co | 
| 22500 |  75 6e 74 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a    76 75 2d 72 65 61 64 2d 61 6e 6e 6f 74 20 28 62  | unt))..(defun.djvu-read-annot.(b | 
| 22520 |  75 66 29 0a 20 20 22 52 65 61 64 20 61 6e 6e 6f    74 61 74 69 6f 6e 73 20 6f 66 20 61 20 44 6a 76  | uf)..."Read.annotations.of.a.Djv | 
| 22540 |  75 20 64 6f 63 75 6d 65 6e 74 20 66 72 6f 6d 20    61 6e 6e 6f 74 61 74 69 6f 6e 73 20 62 75 66 66  | u.document.from.annotations.buff | 
| 22560 |  65 72 2e 22 0a 20 20 28 6c 65 74 20 28 6f 62 6a    65 63 74 29 0a 20 20 20 20 28 77 69 74 68 2d 63  | er."...(let.(object).....(with-c | 
| 22580 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75    66 0a 20 20 20 20 20 20 28 73 61 76 65 2d 72 65  | urrent-buffer.buf.......(save-re | 
| 225a0 |  73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20    20 20 28 77 69 64 65 6e 29 0a 20 20 20 20 20 20  | striction.........(widen)....... | 
| 225c0 |  20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66    66 65 72 0a 20 20 20 20 20 20 20 20 20 20 28 69  | ..(with-temp-buffer...........(i | 
| 225e0 |  6e 73 65 72 74 2d 62 75 66 66 65 72 2d 73 75 62    73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72  | nsert-buffer-substring-no-proper | 
| 22600 |  74 69 65 73 20 62 75 66 29 0a 20 20 20 20 20 20    20 20 20 20 28 64 6a 76 75 2d 63 6f 6e 76 65 72  | ties.buf)...........(djvu-conver | 
| 22620 |  74 2d 68 61 73 68 29 0a 20 20 20 20 20 20 20 20    20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f  | t-hash)...........(goto-char.(po | 
| 22640 |  69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20    20 20 20 20 28 77 68 69 6c 65 20 28 70 72 6f 67  | int-min))...........(while.(prog | 
| 22660 |  6e 20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f    72 77 61 72 64 20 22 20 5c 74 5c 6e 22 29 20 28  | n.(skip-chars-forward.".\t\n").( | 
| 22680 |  6e 6f 74 20 28 65 6f 62 70 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 62 65 67 69 6e 6e  | not.(eobp))).............(beginn | 
| 226a0 |  69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 69 66 20 28 6c 6f  | ing-of-line).............(if.(lo | 
| 226c0 |  6f 6b 69 6e 67 2d 61 74 20 64 6a 76 75 2d 62 65    67 2d 6f 62 6a 65 63 74 2d 72 65 29 0a 20 20 20  | oking-at.djvu-beg-object-re).... | 
| 226e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f    6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 6e 69 6c  | .............(condition-case.nil | 
| 22700 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 70 75 73 68 20 28 72 65 61 64  | .....................(push.(read | 
| 22720 |  20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72    29 29 20 6f 62 6a 65 63 74 29 0a 20 20 20 20 20  | .(current-buffer)).object)...... | 
| 22740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72    72 6f 72 20 28 65 72 72 6f 72 20 22 53 79 6e 74  | .............(error.(error."Synt | 
| 22760 |  61 78 20 65 72 72 6f 72 20 69 6e 20 61 6e 6e 6f    74 61 74 69 6f 6e 73 22 29 29 29 0a 20 20 20 20  | ax.error.in.annotations")))..... | 
| 22780 |  20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72    20 22 55 6e 6b 6e 6f 77 6e 20 61 6e 6e 6f 74 61  | ..........(error."Unknown.annota | 
| 227a0 |  74 69 6f 6e 20 60 25 73 27 22 20 28 62 75 66 66    65 72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d  | tion.`%s'".(buffer-substring-no- | 
| 227c0 |  70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | properties...................... | 
| 227e0 |  20 20 20 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 69 6e  | ...........................(poin | 
| 22800 |  74 29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73    69 74 69 6f 6e 29 29 29 29 29 29 29 29 0a 20 20  | t).(line-end-position))))))))... | 
| 22820 |  20 20 28 6e 72 65 76 65 72 73 65 20 6f 62 6a 65    63 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a  | ..(nreverse.object)))..(defun.dj | 
| 22840 |  76 75 2d 73 61 76 65 2d 61 6e 6e 6f 74 20 28 73    63 72 69 70 74 20 26 6f 70 74 69 6f 6e 61 6c 20  | vu-save-annot.(script.&optional. | 
| 22860 |  64 6f 63 20 73 68 61 72 65 64 29 0a 20 20 22 53    61 76 65 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20  | doc.shared)..."Save.annotations. | 
| 22880 |  6f 66 20 74 68 65 20 44 6a 76 75 20 64 6f 63 75    6d 65 6e 74 20 44 4f 43 2e 0a 54 68 69 73 20 64  | of.the.Djvu.document.DOC..This.d | 
| 228a0 |  75 6d 70 73 20 74 68 65 20 63 6f 6e 74 65 6e 74    20 6f 66 20 44 4f 43 27 73 20 61 6e 6e 6f 74 61  | umps.the.content.of.DOC's.annota | 
| 228c0 |  74 69 6f 6e 73 20 62 75 66 66 65 72 20 69 6e 74    6f 20 74 68 65 20 64 6a 76 75 73 65 64 20 73 63  | tions.buffer.into.the.djvused.sc | 
| 228e0 |  72 69 70 74 0a 66 69 6c 65 20 53 43 52 49 50 54    2e 20 20 44 4f 43 20 64 65 66 61 75 6c 74 73 20  | ript.file.SCRIPT...DOC.defaults. | 
| 22900 |  74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 44    6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 22 0a 20  | to.the.current.Djvu.document.".. | 
| 22920 |  20 28 75 6e 6c 65 73 73 20 64 6f 63 20 28 73 65    74 71 20 64 6f 63 20 64 6a 76 75 2d 64 6f 63 29  | .(unless.doc.(setq.doc.djvu-doc) | 
| 22940 |  29 0a 20 20 28 6c 65 74 20 28 28 6f 62 6a 65 63    74 20 28 64 6a 76 75 2d 72 65 61 64 2d 61 6e 6e  | )...(let.((object.(djvu-read-ann | 
| 22960 |  6f 74 20 28 69 66 20 73 68 61 72 65 64 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ot.(if.shared................... | 
| 22980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 72 65 66 20 73 68 61  | ...................(djvu-ref.sha | 
| 229a0 |  72 65 64 2d 62 75 66 20 64 6f 63 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | red-buf.doc).................... | 
| 229c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f 74 2d  | ................(djvu-ref.annot- | 
| 229e0 |  62 75 66 20 64 6f 63 29 29 29 29 29 0a 20 20 20    20 28 64 6f 6c 69 73 74 20 28 65 6c 74 20 6f 62  | buf.doc))))).....(dolist.(elt.ob | 
| 22a00 |  6a 65 63 74 29 0a 20 20 20 20 20 20 28 69 66 20    28 65 71 20 27 6d 61 70 61 72 65 61 20 28 63 61  | ject).......(if.(eq.'maparea.(ca | 
| 22a20 |  72 20 65 6c 74 29 29 0a 20 20 20 20 20 20 20 20    20 20 3b 3b 20 55 52 4c 0a 20 20 20 20 20 20 20  | r.elt))...........;;.URL........ | 
| 22a40 |  20 20 20 28 73 65 74 63 61 72 20 28 63 64 72 20    65 6c 74 29 20 28 64 6a 76 75 2d 72 65 73 6f 6c  | ...(setcar.(cdr.elt).(djvu-resol | 
| 22a60 |  76 65 2d 75 72 6c 20 28 6e 74 68 20 31 20 65 6c    74 29 29 29 29 29 0a 0a 20 20 20 20 28 77 69 74  | ve-url.(nth.1.elt)))))......(wit | 
| 22a80 |  68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20    20 20 20 20 28 6c 65 74 20 28 28 73 74 61 6e 64  | h-temp-buffer.......(let.((stand | 
| 22aa0 |  61 72 64 2d 6f 75 74 70 75 74 20 28 63 75 72 72    65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20  | ard-output.(current-buffer)).... | 
| 22ac0 |  20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72    2d 66 69 6c 65 2d 63 6f 64 69 6e 67 2d 73 79 73  | .........(buffer-file-coding-sys | 
| 22ae0 |  74 65 6d 20 27 75 74 66 2d 38 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 69 64 20 30 29 0a 20  | tem.'utf-8).............(id.0).. | 
| 22b00 |  20 20 20 20 20 20 20 20 20 20 20 72 65 63 74 2d    6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 28 69  | ...........rect-list).........(i | 
| 22b20 |  6e 73 65 72 74 20 28 69 66 20 73 68 61 72 65 64    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nsert.(if.shared................ | 
| 22b40 |  20 20 20 20 20 22 63 72 65 61 74 65 2d 73 68 61    72 65 64 2d 61 6e 74 3b 20 72 65 6d 6f 76 65 2d  | ....."create-shared-ant;.remove- | 
| 22b60 |  61 6e 74 3b 20 73 65 74 2d 61 6e 74 5c 6e 22 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ant;.set-ant\n"................. | 
| 22b80 |  20 20 28 66 6f 72 6d 61 74 20 22 73 65 6c 65 63    74 20 25 64 3b 20 72 65 6d 6f 76 65 2d 61 6e 74  | ..(format."select.%d;.remove-ant | 
| 22ba0 |  3b 20 73 65 74 2d 61 6e 74 5c 6e 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ;.set-ant\n".................... | 
| 22bc0 |  20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65 66    20 70 61 67 65 20 64 6f 63 29 29 29 29 0a 20 20  | .......(djvu-ref.page.doc))))... | 
| 22be0 |  20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 65    6c 74 20 6f 62 6a 65 63 74 29 0a 20 20 20 20 20  | ......(dolist.(elt.object)...... | 
| 22c00 |  20 20 20 20 20 28 63 6f 6e 64 20 28 28 65 71 20    27 6d 65 74 61 64 61 74 61 20 28 63 61 72 20 65  | .....(cond.((eq.'metadata.(car.e | 
| 22c20 |  6c 74 29 29 20 3b 20 6d 65 74 61 64 61 74 61 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | lt)).;.metadata................. | 
| 22c40 |  20 28 70 72 69 6e 31 20 65 6c 74 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69  | .(prin1.elt)..................(i | 
| 22c60 |  6e 73 65 72 74 20 22 5c 6e 22 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f  | nsert."\n")).................((o | 
| 22c80 |  72 20 28 6e 6f 74 20 28 65 71 20 27 6d 61 70 61    72 65 61 20 28 63 61 72 20 65 6c 74 29 29 29 20  | r.(not.(eq.'maparea.(car.elt))). | 
| 22ca0 |  3b 20 6e 6f 74 20 6d 61 70 61 72 65 61 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ;.not.maparea................... | 
| 22cc0 |  20 20 20 28 6d 65 6d 71 20 28 63 61 72 20 28 6e    74 68 20 33 20 65 6c 74 29 29 20 27 28 6c 69 6e  | ...(memq.(car.(nth.3.elt)).'(lin | 
| 22ce0 |  65 20 70 6f 6c 79 29 29 29 20 3b 20 6d 61 70 61    72 65 61 20 6c 69 6e 65 2c 20 70 6f 6c 79 0a 20  | e.poly))).;.maparea.line,.poly.. | 
| 22d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 70 72 69 6e 31 20 65 6c 74 29 0a 20 20 20 20  | ................(prin1.elt)..... | 
| 22d20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e    73 65 72 74 20 22 5c 6e 22 29 29 0a 20 20 20 20  | .............(insert."\n"))..... | 
| 22d40 |  20 20 20 20 20 20 20 20 20 20 20 20 28 28 63 6f    6e 73 70 20 28 63 61 72 20 28 6e 74 68 20 33 20  | ............((consp.(car.(nth.3. | 
| 22d60 |  65 6c 74 29 29 29 20 3b 20 6d 61 70 61 72 65 61    20 72 65 63 74 0a 20 20 20 20 20 20 20 20 20 20  | elt))).;.maparea.rect........... | 
| 22d80 |  20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28    61 72 65 61 20 28 6e 74 68 20 33 20 65 6c 74 29  | .......(dolist.(area.(nth.3.elt) | 
| 22da0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 69 6e 73 65 72 74 20 28 70 72  | )....................(insert.(pr | 
| 22dc0 |  69 6e 31 2d 74 6f 2d 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  | in1-to-string................... | 
| 22de0 |  20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79    20 27 6c 69 73 74 20 28 63 61 72 20 65 6c 74 29  | ..........(apply.'list.(car.elt) | 
| 22e00 |  20 28 6e 74 68 20 31 20 65 6c 74 29 20 28 6e 74    68 20 32 20 65 6c 74 29 0a 20 20 20 20 20 20 20  | .(nth.1.elt).(nth.2.elt)........ | 
| 22e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | ............................(djv | 
| 22e40 |  75 2d 61 72 65 61 20 61 72 65 61 20 74 29 20 28    6e 74 68 63 64 72 20 34 20 65 6c 74 29 29 29 0a  | u-area.area.t).(nthcdr.4.elt))). | 
| 22e60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 22 29  | ..........................."\n") | 
| 22e80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 69 64 20 28 31 2b 20  | )..................(setq.id.(1+. | 
| 22ea0 |  69 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 70 75 73 68 20 28 64 6a 76  | id))..................(push.(djv | 
| 22ec0 |  75 2d 72 65 63 74 2d 65 6c 74 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | u-rect-elt...................... | 
| 22ee0 |  20 20 20 3b 3b 20 60 64 6a 76 75 2d 72 65 63 74    2d 65 6c 74 27 20 65 78 70 65 63 74 73 20 74 68  | ...;;.`djvu-rect-elt'.expects.th | 
| 22f00 |  61 74 20 74 68 65 20 72 65 63 74 20 61 72 65 61    73 20 61 72 65 20 61 74 0a 20 20 20 20 20 20 20  | at.the.rect.areas.are.at........ | 
| 22f20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 74 68 65 20 65 6e 64 2e 0a 20 20 20  | .................;;.the.end..... | 
| 22f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 63 6f 6e 73 20 28 61 70 70 65  | .....................(cons.(appe | 
| 22f60 |  6e 64 20 28 6c 69 73 74 20 28 6e 74 68 20 30 20    65 6c 74 29 20 28 6e 74 68 20 31 20 65 6c 74 29  | nd.(list.(nth.0.elt).(nth.1.elt) | 
| 22f80 |  20 28 6e 74 68 20 32 20 65 6c 74 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(nth.2.elt))................... | 
| 22fa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 74 68 63 64 72 20 34 20 65 6c  | ....................(nthcdr.4.el | 
| 22fc0 |  74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t))............................. | 
| 22fe0 |  20 20 28 6e 74 68 20 33 20 65 6c 74 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..(nth.3.elt)).................. | 
| 23000 |  20 20 20 20 20 20 20 69 64 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .......id)...................... | 
| 23020 |  20 20 72 65 63 74 2d 6c 69 73 74 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28  | ..rect-list)).................(( | 
| 23040 |  6d 65 6d 71 20 28 63 61 72 20 28 6e 74 68 20 33    20 65 6c 74 29 29 20 27 28 74 65 78 74 20 6f 76  | memq.(car.(nth.3.elt)).'(text.ov | 
| 23060 |  61 6c 29 29 20 3b 20 6d 61 70 61 72 65 61 20 74    65 78 74 2c 20 6f 76 61 6c 0a 20 20 20 20 20 20  | al)).;.maparea.text,.oval....... | 
| 23080 |  20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65    72 74 20 28 70 72 69 6e 31 2d 74 6f 2d 73 74 72  | ...........(insert.(prin1-to-str | 
| 230a0 |  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 20 28 61  | ing...........................(a | 
| 230c0 |  70 70 6c 79 20 27 6c 69 73 74 20 28 63 61 72 20    65 6c 74 29 20 28 6e 74 68 20 31 20 65 6c 74 29  | pply.'list.(car.elt).(nth.1.elt) | 
| 230e0 |  20 28 6e 74 68 20 32 20 65 6c 74 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(nth.2.elt).................... | 
| 23100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64    6a 76 75 2d 61 72 65 61 20 28 6e 74 68 20 33 20  | ..............(djvu-area.(nth.3. | 
| 23120 |  65 6c 74 29 20 74 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | elt).t)......................... | 
| 23140 |  20 20 20 20 20 20 20 20 20 28 6e 74 68 63 64 72    20 34 20 65 6c 74 29 29 29 0a 20 20 20 20 20 20  | .........(nthcdr.4.elt)))....... | 
| 23160 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 22 5c 6e 22 29 29 0a 20 20 20 20 20 20  | ..................."\n"))....... | 
| 23180 |  20 20 20 20 20 20 20 20 20 20 28 74 20 28 65 72    72 6f 72 20 22 44 6a 76 75 20 6d 61 70 61 72 65  | ..........(t.(error."Djvu.mapare | 
| 231a0 |  61 20 25 73 20 75 6e 64 65 66 69 6e 65 64 22 20    28 63 61 72 20 28 6e 74 68 20 33 20 65 6c 74 29  | a.%s.undefined".(car.(nth.3.elt) | 
| 231c0 |  29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 69    6e 73 65 72 74 20 22 2e 5c 6e 22 29 0a 20 20 20  | ))))).........(insert.".\n").... | 
| 231e0 |  20 20 20 20 20 28 64 6a 76 75 2d 63 6f 6e 76 65    72 74 2d 68 61 73 68 20 74 29 0a 20 20 20 20 20  | .....(djvu-convert-hash.t)...... | 
| 23200 |  20 20 20 28 77 72 69 74 65 2d 72 65 67 69 6f 6e    20 6e 69 6c 20 6e 69 6c 20 73 63 72 69 70 74 20  | ...(write-region.nil.nil.script. | 
| 23220 |  74 20 30 29 20 3b 20 61 70 70 65 6e 64 20 74 6f    20 53 43 52 49 50 54 0a 20 20 20 20 20 20 20 20  | t.0).;.append.to.SCRIPT......... | 
| 23240 |  3b 3b 20 49 74 20 69 73 20 6e 6f 74 20 61 6c 6c    20 63 6f 72 72 65 63 74 20 74 6f 20 69 67 6e 6f  | ;;.It.is.not.all.correct.to.igno | 
| 23260 |  72 65 20 72 65 63 74 2d 6c 69 73 74 20 66 6f 72    20 73 68 61 72 65 64 0a 20 20 20 20 20 20 20 20  | re.rect-list.for.shared......... | 
| 23280 |  3b 3b 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 2e 20    20 49 74 20 73 68 6f 75 6c 64 20 72 65 61 6c 6c  | ;;.annotations...It.should.reall | 
| 232a0 |  79 20 67 6f 20 69 6e 74 6f 20 61 20 73 65 70 61    72 61 74 65 20 76 61 72 69 61 62 6c 65 0a 20 20  | y.go.into.a.separate.variable... | 
| 232c0 |  20 20 20 20 20 20 3b 3b 20 60 64 6a 76 75 2d 64    6f 63 2d 73 68 61 72 65 64 2d 72 65 63 74 2d 6c  | ......;;.`djvu-doc-shared-rect-l | 
| 232e0 |  69 73 74 27 2c 20 73 6f 20 74 68 61 74 20 74 68    65 6e 20 77 65 20 63 61 6e 20 6d 65 72 67 65 0a  | ist',.so.that.then.we.can.merge. | 
| 23300 |  20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 73 65    20 66 6f 72 20 61 6c 6c 20 70 61 67 65 73 2e 0a  | ........;;.these.for.all.pages.. | 
| 23320 |  20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20    73 68 61 72 65 64 0a 20 20 20 20 20 20 20 20 20  | ........(unless.shared.......... | 
| 23340 |  20 28 64 6a 76 75 2d 73 65 74 20 72 65 63 74 2d    6c 69 73 74 20 28 61 70 70 6c 79 20 27 6e 63 6f  | .(djvu-set.rect-list.(apply.'nco | 
| 23360 |  6e 63 20 72 65 63 74 2d 6c 69 73 74 29 20 64 6f    63 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20  | nc.rect-list).doc))))))..(defun. | 
| 23380 |  64 6a 76 75 2d 61 6e 6e 6f 74 2d 73 63 72 69 70    74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63  | djvu-annot-script.(&optional.doc | 
| 233a0 |  20 62 75 66 66 65 72 20 70 61 67 65 20 64 69 73    70 6c 61 79 29 0a 20 20 22 43 72 65 61 74 65 20  | .buffer.page.display)..."Create. | 
| 233c0 |  64 6a 76 75 73 65 64 20 73 63 72 69 70 74 20 66    6f 72 20 63 6f 6d 70 6c 65 74 65 20 61 6e 6e 6f  | djvused.script.for.complete.anno | 
| 233e0 |  74 61 74 69 6f 6e 20 6c 61 79 65 72 20 6f 66 20    44 4f 43 20 69 6e 20 42 55 46 46 45 52 2e 0a 49  | tation.layer.of.DOC.in.BUFFER..I | 
| 23400 |  66 20 70 72 65 66 69 78 20 50 41 47 45 20 69 73    20 6e 6f 6e 2d 6e 69 6c 20 63 72 65 61 74 65 20  | f.prefix.PAGE.is.non-nil.create. | 
| 23420 |  69 6e 73 74 65 61 64 20 73 63 72 69 70 74 20 66    6f 72 20 6f 6e 6c 79 20 70 61 67 65 20 50 41 47  | instead.script.for.only.page.PAG | 
| 23440 |  45 2e 0a 42 55 46 46 45 52 20 64 65 66 61 75 6c    74 73 20 74 6f 20 60 64 6a 76 75 2d 73 63 72 69  | E..BUFFER.defaults.to.`djvu-scri | 
| 23460 |  70 74 2d 62 75 66 66 65 72 27 2e 20 20 49 66 20    42 55 46 46 45 52 20 69 73 20 74 20 75 73 65 20  | pt-buffer'...If.BUFFER.is.t.use. | 
| 23480 |  63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 0a    0a 59 6f 75 20 63 61 6e 20 65 64 69 74 20 74 68  | current.buffer...You.can.edit.th | 
| 234a0 |  65 20 61 6e 6e 6f 74 61 74 69 6f 6e 73 20 73 63    72 69 70 74 20 69 6e 20 42 55 46 46 45 52 2e 20  | e.annotations.script.in.BUFFER.. | 
| 234c0 |  20 41 66 74 65 72 77 61 72 64 73 20 79 6f 75 20    63 61 6e 20 72 65 2d 61 70 70 6c 79 0a 74 68 69  | .Afterwards.you.can.re-apply.thi | 
| 234e0 |  73 20 73 63 72 69 70 74 20 75 73 69 6e 67 20 60    64 6a 76 75 2d 70 72 6f 63 65 73 73 2d 73 63 72  | s.script.using.`djvu-process-scr | 
| 23500 |  69 70 74 27 2e 20 20 54 68 69 73 20 63 6f 64 65    20 77 69 6c 6c 20 6e 6f 74 20 28 63 61 6e 6e 6f  | ipt'...This.code.will.not.(canno | 
| 23520 |  74 29 20 63 68 65 63 6b 0a 77 68 65 74 68 65 72    20 74 68 65 20 65 64 69 74 65 64 20 73 63 72 69  | t).check.whether.the.edited.scri | 
| 23540 |  70 74 20 69 73 20 6d 65 61 6e 69 6e 67 66 75 6c    20 66 6f 72 20 44 4f 43 2e 20 20 55 73 65 20 61  | pt.is.meaningful.for.DOC...Use.a | 
| 23560 |  74 20 79 6f 75 72 20 6f 77 6e 20 72 69 73 6b 2e    0a 59 6f 75 20 67 65 74 20 77 68 61 74 20 79 6f  | t.your.own.risk..You.get.what.yo | 
| 23580 |  75 20 77 61 6e 74 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 20 28 6c 69 73 74 20 6e 69  | u.want."...(interactive.(list.ni | 
| 235a0 |  6c 20 6e 69 6c 20 28 69 66 20 63 75 72 72 65 6e    74 2d 70 72 65 66 69 78 2d 61 72 67 20 28 64 6a  | l.nil.(if.current-prefix-arg.(dj | 
| 235c0 |  76 75 2d 72 65 66 20 70 61 67 65 29 29 20 74 29    29 0a 20 20 28 6c 65 74 20 28 28 64 6f 63 20 28  | vu-ref.page)).t))...(let.((doc.( | 
| 235e0 |  6f 72 20 64 6f 63 20 64 6a 76 75 2d 64 6f 63 29    29 0a 20 20 20 20 20 20 20 20 28 62 75 66 66 65  | or.doc.djvu-doc)).........(buffe | 
| 23600 |  72 20 28 64 6a 76 75 2d 73 63 72 69 70 74 2d 62    75 66 66 65 72 20 62 75 66 66 65 72 29 29 29 0a  | r.(djvu-script-buffer.buffer))). | 
| 23620 |  20 20 20 20 28 64 6a 76 75 2d 73 61 76 65 20 64    6f 63 20 74 29 0a 20 20 20 20 3b 3b 20 50 75 74  | ....(djvu-save.doc.t).....;;.Put | 
| 23640 |  20 74 68 69 73 20 69 6e 20 61 20 73 65 70 61 72    61 74 65 20 62 75 66 66 65 72 21 0a 20 20 20 20  | .this.in.a.separate.buffer!..... | 
| 23660 |  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..... | 
| 23680 |  20 20 28 6c 65 74 20 28 28 62 75 66 66 65 72 2d    75 6e 64 6f 2d 6c 69 73 74 20 74 29 0a 20 20 20  | ..(let.((buffer-undo-list.t).... | 
| 236a0 |  20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 69    6e 69 74 20 74 29 0a 20 20 20 20 20 20 20 20 20  | .........(djvu-init.t).......... | 
| 236c0 |  20 20 20 62 75 66 66 65 72 2d 72 65 61 64 2d 6f    6e 6c 79 29 0a 20 20 20 20 20 20 20 20 28 64 6a  | ...buffer-read-only).........(dj | 
| 236e0 |  76 75 2d 73 63 72 69 70 74 2d 6d 6f 64 65 29 0a    20 20 20 20 20 20 20 20 28 65 72 61 73 65 2d 62  | vu-script-mode).........(erase-b | 
| 23700 |  75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 3b    3b 20 41 6c 77 61 79 73 20 63 72 65 61 74 65 20  | uffer).........;;.Always.create. | 
| 23720 |  61 20 73 65 6c 66 2d 63 6f 6e 74 61 69 6e 65 64    20 64 6a 76 75 73 65 64 20 73 63 72 69 70 74 2e  | a.self-contained.djvused.script. | 
| 23740 |  0a 20 20 20 20 20 20 20 20 28 69 66 20 70 61 67    65 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61  | .........(if.page.(insert.(forma | 
| 23760 |  74 20 22 73 65 6c 65 63 74 20 5c 22 25 73 5c 22    20 23 20 70 61 67 65 20 25 64 5c 6e 22 0a 20 20  | t."select.\"%s\".#.page.%d\n"... | 
| 23780 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 237a0 |  63 64 72 20 28 61 73 73 71 20 70 61 67 65 20 28    64 6a 76 75 2d 72 65 66 20 70 61 67 65 2d 69 64  | cdr.(assq.page.(djvu-ref.page-id | 
| 237c0 |  20 64 6f 63 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .doc)))......................... | 
| 237e0 |  20 20 20 20 20 20 20 20 20 70 61 67 65 29 29 29    0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 64  | .........page))).........(djvu-d | 
| 23800 |  6a 76 75 73 65 64 20 64 6f 63 20 74 20 22 2d 65    22 20 28 66 6f 72 6d 61 74 20 22 73 65 6c 65 63  | jvused.doc.t."-e".(format."selec | 
| 23820 |  74 20 25 73 3b 20 6f 75 74 70 75 74 2d 61 6e 74    3b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | t.%s;.output-ant;".............. | 
| 23840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20  | ............................(or. | 
| 23860 |  70 61 67 65 20 22 22 29 29 29 0a 20 20 20 20 20    20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70  | page.""))).........(goto-char.(p | 
| 23880 |  6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73 65  | oint-min)).........(while.(re-se | 
| 238a0 |  61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e 28    6d 61 70 61 72 65 61 22 20 6e 69 6c 20 74 29 0a  | arch-forward."^(maparea".nil.t). | 
| 238c0 |  20 20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61    72 64 2d 73 65 78 70 29 20 3b 20 6a 75 6d 70 20  | ..........(forward-sexp).;.jump. | 
| 238e0 |  6f 76 65 72 20 55 52 4c 0a 20 20 20 20 20 20 20    20 20 20 3b 3b 20 72 65 70 6c 61 63 65 20 6e 65  | over.URL...........;;.replace.ne | 
| 23900 |  77 6c 69 6e 65 73 20 77 69 74 68 69 6e 20 74 65    78 74 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65  | wlines.within.text...........(le | 
| 23920 |  74 20 28 28 6c 69 6d 69 74 20 28 73 61 76 65 2d    65 78 63 75 72 73 69 6f 6e 20 28 66 6f 72 77 61  | t.((limit.(save-excursion.(forwa | 
| 23940 |  72 64 2d 73 65 78 70 29 20 28 70 6f 69 6e 74 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | rd-sexp).(point))))............. | 
| 23960 |  28 77 68 69 6c 65 20 28 73 65 61 72 63 68 2d 66    6f 72 77 61 72 64 20 22 5c 5c 6e 22 20 6c 69 6d  | (while.(search-forward."\\n".lim | 
| 23980 |  69 74 20 74 29 0a 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  | it.t)...............(replace-mat | 
| 239a0 |  63 68 20 22 5c 6e 22 29 29 29 29 0a 20 20 20 20    20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28  | ch."\n")))).........(goto-char.( | 
| 239c0 |  70 6f 69 6e 74 2d 6d 69 6e 29 29 29 0a 20 20 20    20 20 20 28 73 65 74 2d 62 75 66 66 65 72 2d 6d  | point-min))).......(set-buffer-m | 
| 239e0 |  6f 64 69 66 69 65 64 2d 70 20 6e 69 6c 29 0a 20    20 20 20 20 20 28 73 65 74 71 20 62 75 66 66 65  | odified-p.nil).......(setq.buffe | 
| 23a00 |  72 2d 75 6e 64 6f 2d 6c 69 73 74 20 6e 69 6c 29    29 0a 20 20 20 20 28 69 66 20 64 69 73 70 6c 61  | r-undo-list.nil)).....(if.displa | 
| 23a20 |  79 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66    66 65 72 20 62 75 66 66 65 72 29 29 29 29 0a 0a  | y.(switch-to-buffer.buffer)))).. | 
| 23a40 |  28 64 65 66 75 6e 20 64 6a 76 75 2d 61 6e 6e 6f    74 2d 64 70 6f 73 20 28 26 6f 70 74 69 6f 6e 61  | (defun.djvu-annot-dpos.(&optiona | 
| 23a60 |  6c 20 70 6f 69 6e 74 20 64 6f 63 29 0a 20 20 22    52 65 74 75 72 6e 20 44 6a 76 75 20 70 6f 73 69  | l.point.doc)..."Return.Djvu.posi | 
| 23a80 |  74 69 6f 6e 20 6f 66 20 50 4f 49 4e 54 20 69 6e    20 44 6a 76 75 20 61 6e 6e 6f 74 61 74 69 6f 6e  | tion.of.POINT.in.Djvu.annotation | 
| 23aa0 |  73 20 62 75 66 66 65 72 2e 22 0a 20 20 28 77 69    74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65  | s.buffer."...(with-current-buffe | 
| 23ac0 |  72 20 28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f    74 2d 62 75 66 20 64 6f 63 29 0a 20 20 20 20 28  | r.(djvu-ref.annot-buf.doc).....( | 
| 23ae0 |  73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20    20 20 20 20 20 28 69 66 20 70 6f 69 6e 74 20 28  | save-excursion.......(if.point.( | 
| 23b00 |  67 6f 74 6f 2d 63 68 61 72 20 70 6f 69 6e 74 29    29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 62  | goto-char.point)).......(let.((b | 
| 23b20 |  6f 75 6e 64 73 20 28 64 6a 76 75 2d 6f 62 6a 65    63 74 2d 62 6f 75 6e 64 73 29 29 29 0a 20 20 20  | ounds.(djvu-object-bounds))).... | 
| 23b40 |  20 20 20 20 20 28 69 66 20 62 6f 75 6e 64 73 0a    20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74  | .....(if.bounds.............(let | 
| 23b60 |  2a 20 28 28 6f 62 6a 65 63 74 20 28 64 6a 76 75    2d 6f 62 6a 65 63 74 20 62 6f 75 6e 64 73 29 29  | *.((object.(djvu-object.bounds)) | 
| 23b80 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 61 72 65 61 20 28 6e 74 68 20 33  | ....................(area.(nth.3 | 
| 23ba0 |  20 6f 62 6a 65 63 74 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71  | .object)))...............(if.(eq | 
| 23bc0 |  20 28 63 61 72 20 6f 62 6a 65 63 74 29 20 27 6d    61 70 61 72 65 61 29 0a 20 20 20 20 20 20 20 20  | .(car.object).'maparea)......... | 
| 23be0 |  20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20    28 28 6d 65 6d 71 20 28 63 61 72 20 61 72 65 61  | ..........(cond.((memq.(car.area | 
| 23c00 |  29 20 27 28 74 65 78 74 20 6f 76 61 6c 20 6c 69    6e 65 20 70 6f 6c 79 29 29 0a 20 20 20 20 20 20  | ).'(text.oval.line.poly))....... | 
| 23c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 63 64 72 20 28 6e 74 68 20 33 20 6f  | ...................(cdr.(nth.3.o | 
| 23c40 |  62 6a 65 63 74 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | bject)))........................ | 
| 23c60 |  20 28 28 63 6f 6e 73 70 20 61 72 65 61 29 20 3b    20 6d 61 70 61 72 65 61 20 72 65 63 74 0a 20 20  | .((consp.area).;.maparea.rect... | 
| 23c80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 63 64 61 72 20 61 72 65  | .......................(cdar.are | 
| 23ca0 |  61 29 29 29 29 29 29 29 29 29 29 0a 0a 3b 3b 3b    20 4d 61 6e 69 70 75 6c 61 74 65 20 61 6e 6e 6f  | a))))))))))..;;;.Manipulate.anno | 
| 23cc0 |  74 61 74 69 6f 6e 73 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 6f 62 6a 65 63 74 2d 62 6f 75 6e  | tations..(defun.djvu-object-boun | 
| 23ce0 |  64 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20    62 6f 75 6e 64 73 20 28 42 45 47 20 2e 20 45 4e  | ds.()..."Return.bounds.(BEG...EN | 
| 23d00 |  44 29 20 6f 66 20 44 6a 76 75 20 6f 62 6a 65 63    74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20  | D).of.Djvu.object.that.contains. | 
| 23d20 |  6f 72 20 66 6f 6c 6c 6f 77 73 20 70 6f 69 6e 74    2e 0a 52 65 74 75 72 6e 20 6e 69 6c 20 69 66 20  | or.follows.point..Return.nil.if. | 
| 23d40 |  6e 6f 20 73 75 63 68 20 6f 62 6a 65 63 74 20 63    61 6e 20 62 65 20 66 6f 75 6e 64 2e 22 0a 20 20  | no.such.object.can.be.found."... | 
| 23d60 |  28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a    20 20 20 20 28 6c 65 74 20 28 28 70 6e 74 20 28  | (save-excursion.....(let.((pnt.( | 
| 23d80 |  70 6f 69 6e 74 29 29 20 66 6f 75 6e 64 20 65 6e    64 29 0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e  | point)).found.end).......(beginn | 
| 23da0 |  69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 6e 6f 74 20 28  | ing-of-line).......(while.(not.( | 
| 23dc0 |  6f 72 20 28 73 65 74 71 20 66 6f 75 6e 64 20 28    6c 6f 6f 6b 69 6e 67 2d 61 74 20 64 6a 76 75 2d  | or.(setq.found.(looking-at.djvu- | 
| 23de0 |  62 65 67 2d 6f 62 6a 65 63 74 2d 72 65 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | beg-object-re))................. | 
| 23e00 |  20 20 20 20 20 20 28 62 6f 62 70 29 29 29 0a 20    20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d  | ......(bobp))).........(forward- | 
| 23e20 |  6c 69 6e 65 20 2d 31 29 29 0a 20 20 20 20 20 20    28 69 66 20 28 61 6e 64 20 66 6f 75 6e 64 0a 20  | line.-1)).......(if.(and.found.. | 
| 23e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3c    20 70 6e 74 20 28 73 65 74 71 20 65 6e 64 20 28  | ..............(<.pnt.(setq.end.( | 
| 23e60 |  73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28    66 6f 72 77 61 72 64 2d 73 65 78 70 29 20 28 70  | save-excursion.(forward-sexp).(p | 
| 23e80 |  6f 69 6e 74 29 29 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 28 63 6f 6e 73 20 28 70 6f 69 6e 74  | oint)))))...........(cons.(point | 
| 23ea0 |  29 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 28    73 65 74 71 20 66 6f 75 6e 64 20 6e 69 6c 29 0a  | ).end).........(setq.found.nil). | 
| 23ec0 |  20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68    61 72 20 70 6e 74 29 0a 20 20 20 20 20 20 20 20  | ........(goto-char.pnt)......... | 
| 23ee0 |  28 77 68 69 6c 65 20 28 6e 6f 74 20 28 6f 72 20    28 73 65 74 71 20 66 6f 75 6e 64 20 28 6c 6f 6f  | (while.(not.(or.(setq.found.(loo | 
| 23f00 |  6b 69 6e 67 2d 61 74 20 64 6a 76 75 2d 62 65 67    2d 6f 62 6a 65 63 74 2d 72 65 29 29 0a 20 20 20  | king-at.djvu-beg-object-re)).... | 
| 23f20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 65 6f 62 70 29 29 29 0a 20 20  | .....................(eobp)))... | 
| 23f40 |  20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64    2d 6c 69 6e 65 20 31 29 29 0a 20 20 20 20 20 20  | ........(forward-line.1))....... | 
| 23f60 |  20 20 28 69 66 20 66 6f 75 6e 64 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 70  | ..(if.found.............(cons.(p | 
| 23f80 |  6f 69 6e 74 29 20 28 70 72 6f 67 6e 20 28 66 6f    72 77 61 72 64 2d 73 65 78 70 29 20 28 70 6f 69  | oint).(progn.(forward-sexp).(poi | 
| 23fa0 |  6e 74 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66    75 6e 20 64 6a 76 75 2d 6f 62 6a 65 63 74 20 28  | nt))))))))..(defun.djvu-object.( | 
| 23fc0 |  62 6f 75 6e 64 73 29 0a 20 20 22 52 65 74 75 72    6e 20 44 6a 76 75 20 6f 62 6a 65 63 74 20 64 65  | bounds)..."Return.Djvu.object.de | 
| 23fe0 |  66 69 6e 65 64 20 76 69 61 20 42 4f 55 4e 44 53    2c 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 28 42  | fined.via.BOUNDS,.a.cons.cell.(B | 
| 24000 |  45 47 20 2e 20 45 4e 44 29 2e 22 0a 20 20 3b 3b    20 57 65 20 63 61 6e 6e 6f 74 20 63 61 6c 6c 20  | EG...END)."...;;.We.cannot.call. | 
| 24020 |  60 72 65 61 64 27 20 69 6e 20 61 20 44 6a 76 75    20 62 75 66 66 65 72 20 62 65 63 61 75 73 65 20  | `read'.in.a.Djvu.buffer.because. | 
| 24040 |  74 68 65 20 44 6a 76 75 20 68 61 73 68 20 73 79    6e 74 61 78 0a 20 20 3b 3b 20 69 73 20 6e 6f 74  | the.Djvu.hash.syntax...;;.is.not | 
| 24060 |  20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68    20 74 68 65 20 45 6d 61 63 73 20 72 65 61 64 20  | .compatible.with.the.Emacs.read. | 
| 24080 |  73 79 6e 74 61 78 2e 0a 20 20 28 6c 65 74 20 28    28 73 74 72 69 6e 67 20 28 62 75 66 66 65 72 2d  | syntax....(let.((string.(buffer- | 
| 240a0 |  73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f    70 65 72 74 69 65 73 20 28 63 61 72 20 62 6f 75  | substring-no-properties.(car.bou | 
| 240c0 |  6e 64 73 29 20 28 63 64 72 20 62 6f 75 6e 64 73    29 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74  | nds).(cdr.bounds)))).....(with-t | 
| 240e0 |  65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20    20 28 69 6e 73 65 72 74 20 73 74 72 69 6e 67 29  | emp-buffer.......(insert.string) | 
| 24100 |  0a 20 20 20 20 20 20 28 64 6a 76 75 2d 63 6f 6e    76 65 72 74 2d 68 61 73 68 29 0a 20 20 20 20 20  | .......(djvu-convert-hash)...... | 
| 24120 |  20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69    6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 28  | .(goto-char.(point-min)).......( | 
| 24140 |  72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 29 29 29 29 29 0a 0a 28 64 65 66 75  | read.(current-buffer)))))..(defu | 
| 24160 |  6e 20 64 6a 76 75 2d 75 70 64 61 74 65 2d 63 6f    6c 6f 72 20 28 63 6f 6c 6f 72 29 0a 20 20 22 55  | n.djvu-update-color.(color)..."U | 
| 24180 |  70 64 61 74 65 20 63 6f 6c 6f 72 20 61 74 74 72    69 62 75 74 65 20 6f 66 20 44 6a 76 75 20 6d 61  | pdate.color.attribute.of.Djvu.ma | 
| 241a0 |  70 61 72 65 61 20 74 6f 20 43 4f 4c 4f 52 2e 22    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20  | parea.to.COLOR."...(interactive. | 
| 241c0 |  28 6c 69 73 74 20 28 64 6a 76 75 2d 69 6e 74 65    72 61 63 74 69 76 65 2d 63 6f 6c 6f 72 2d 72 65  | (list.(djvu-interactive-color-re | 
| 241e0 |  61 64 29 29 29 0a 20 20 28 6c 65 74 20 28 28 64    70 6f 73 20 28 64 6a 76 75 2d 64 70 6f 73 29 29  | ad)))...(let.((dpos.(djvu-dpos)) | 
| 24200 |  0a 20 20 20 20 20 20 20 20 28 64 6f 63 20 64 6a    76 75 2d 64 6f 63 29 29 0a 20 20 20 20 28 77 69  | .........(doc.djvu-doc)).....(wi | 
| 24220 |  74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 20 28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f  | th-current-buffer.(djvu-ref.anno | 
| 24240 |  74 2d 62 75 66 20 64 6f 63 29 0a 20 20 20 20 20    20 28 69 66 20 28 64 6a 76 75 2d 67 6f 74 6f 2d  | t-buf.doc).......(if.(djvu-goto- | 
| 24260 |  64 70 6f 73 20 27 72 65 63 74 20 64 70 6f 73 29    0a 20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75  | dpos.'rect.dpos)...........(djvu | 
| 24280 |  2d 75 70 64 61 74 65 2d 63 6f 6c 6f 72 2d 69 6e    74 65 72 6e 61 6c 20 63 6f 6c 6f 72 29 0a 20 20  | -update-color-internal.color)... | 
| 242a0 |  20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f    72 20 22 4e 6f 20 6f 62 6a 65 63 74 20 74 6f 20  | ......(user-error."No.object.to. | 
| 242c0 |  75 70 64 61 74 65 22 29 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 64 6a 76 75 2d 75 70 64 61 74 65  | update")))))..(defun.djvu-update | 
| 242e0 |  2d 63 6f 6c 6f 72 2d 69 6e 74 65 72 6e 61 6c 20    28 63 6f 6c 6f 72 20 26 6f 70 74 69 6f 6e 61 6c  | -color-internal.(color.&optional | 
| 24300 |  20 6f 70 61 63 69 74 79 29 0a 20 20 22 55 70 64    61 74 65 20 63 6f 6c 6f 72 20 61 74 74 72 69 62  | .opacity)..."Update.color.attrib | 
| 24320 |  75 74 65 20 6f 66 20 44 6a 76 75 20 6d 61 70 61    72 65 61 20 74 6f 20 43 4f 4c 4f 52 2e 0a 49 66  | ute.of.Djvu.maparea.to.COLOR..If | 
| 24340 |  20 6e 6f 20 73 75 63 68 20 61 74 74 72 69 62 75    74 65 20 65 78 69 73 74 73 20 69 6e 73 65 72 74  | .no.such.attribute.exists.insert | 
| 24360 |  20 61 20 6e 65 77 20 6f 6e 65 2e 0a 50 72 65 66    69 78 20 61 72 67 20 4f 50 41 43 49 54 59 20 69  | .a.new.one..Prefix.arg.OPACITY.i | 
| 24380 |  73 20 74 68 65 20 6f 70 61 63 69 74 79 20 74 6f    20 75 73 65 2e 22 0a 20 20 28 69 6e 74 65 72 61  | s.the.opacity.to.use."...(intera | 
| 243a0 |  63 74 69 76 65 0a 20 20 20 28 6c 65 74 20 28 28    63 6f 6c 6f 72 20 28 64 6a 76 75 2d 69 6e 74 65  | ctive....(let.((color.(djvu-inte | 
| 243c0 |  72 61 63 74 69 76 65 2d 63 6f 6c 6f 72 2d 72 65    61 64 29 29 29 0a 20 20 20 20 20 28 6c 69 73 74  | ractive-color-read)))......(list | 
| 243e0 |  20 63 6f 6c 6f 72 0a 20 20 20 20 20 20 20 20 20    20 20 28 69 66 20 28 61 6e 64 20 63 6f 6c 6f 72  | .color............(if.(and.color | 
| 24400 |  20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d    61 72 67 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .current-prefix-arg)............ | 
| 24420 |  20 20 20 20 28 72 65 61 64 2d 6e 75 6d 62 65 72    20 22 4f 70 61 63 69 74 79 3a 20 22 29 29 29 29  | ....(read-number."Opacity:.")))) | 
| 24440 |  29 0a 20 20 28 6c 65 74 20 28 28 62 6f 75 6e 64    73 20 28 64 6a 76 75 2d 6f 62 6a 65 63 74 2d 62  | )...(let.((bounds.(djvu-object-b | 
| 24460 |  6f 75 6e 64 73 29 29 0a 20 20 20 20 20 20 20 20    28 6f 70 61 63 69 74 79 20 28 6f 72 20 6f 70 61  | ounds)).........(opacity.(or.opa | 
| 24480 |  63 69 74 79 20 64 6a 76 75 2d 6f 70 61 63 69 74    79 29 29 29 0a 20 20 20 20 28 69 66 20 62 6f 75  | city.djvu-opacity))).....(if.bou | 
| 244a0 |  6e 64 73 0a 20 20 20 20 20 20 20 20 28 73 61 76    65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20  | nds.........(save-excursion..... | 
| 244c0 |  20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72    20 28 63 61 72 20 62 6f 75 6e 64 73 29 29 0a 20  | ......(goto-char.(car.bounds)).. | 
| 244e0 |  20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28    28 6e 6f 74 20 63 6f 6c 6f 72 29 0a 20 20 20 20  | .........(cond.((not.color)..... | 
| 24500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    72 65 6d 6f 76 65 20 63 6f 6c 6f 72 20 61 6e 64  | .............;;.remove.color.and | 
| 24520 |  20 6f 70 61 63 69 74 79 20 61 74 74 72 69 62 75    74 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .opacity.attributes............. | 
| 24540 |  20 20 20 20 20 28 77 68 65 6e 20 28 72 65 2d 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 0a 20 20  | .....(when.(re-search-forward... | 
| 24560 |  20 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 20 64 6a  | ......................(format.dj | 
| 24580 |  76 75 2d 63 6f 6c 6f 72 2d 72 65 20 22 23 22 20    22 22 20 22 22 29 20 28 63 64 72 20 62 6f 75 6e  | vu-color-re."#".""."").(cdr.boun | 
| 245a0 |  64 73 29 20 74 29 0a 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  | ds).t)....................(repla | 
| 245c0 |  63 65 2d 6d 61 74 63 68 20 22 22 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ce-match."").................... | 
| 245e0 |  28 69 66 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20    22 5b 5c 73 5c 74 5c 6e 5d 2b 22 29 20 28 72 65  | (if.(looking-at."[\s\t\n]+").(re | 
| 24600 |  70 6c 61 63 65 2d 6d 61 74 63 68 20 22 22 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | place-match."")))............... | 
| 24620 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 63    61 72 20 62 6f 75 6e 64 73 29 29 0a 20 20 20 20  | ...(goto-char.(car.bounds))..... | 
| 24640 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68    65 6e 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f  | .............(when.(re-search-fo | 
| 24660 |  72 77 61 72 64 20 22 28 6f 70 61 63 69 74 79 20    5b 30 2d 39 5d 2b 29 22 20 28 63 64 72 20 62 6f  | rward."(opacity.[0-9]+)".(cdr.bo | 
| 24680 |  75 6e 64 73 29 20 74 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70  | unds).t)....................(rep | 
| 246a0 |  6c 61 63 65 2d 6d 61 74 63 68 20 22 22 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | lace-match."").................. | 
| 246c0 |  20 20 28 69 66 20 28 6c 6f 6f 6b 69 6e 67 2d 61    74 20 22 5b 5c 73 5c 74 5c 6e 5d 2b 22 29 20 28  | ..(if.(looking-at."[\s\t\n]+").( | 
| 246e0 |  72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20 22 22    29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | replace-match.""))))............ | 
| 24700 |  20 20 20 20 20 28 28 72 65 2d 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20  | .....((re-search-forward........ | 
| 24720 |  20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d    61 74 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 72 65  | ...........(format.djvu-color-re | 
| 24740 |  20 22 23 22 20 22 22 20 22 22 29 20 28 63 64 72    20 62 6f 75 6e 64 73 29 20 74 29 0a 20 20 20 20  | ."#".""."").(cdr.bounds).t)..... | 
| 24760 |  20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    75 70 64 61 74 65 20 65 78 69 73 74 69 6e 67 20  | .............;;.update.existing. | 
| 24780 |  63 6f 6c 6f 72 20 61 74 74 72 69 62 75 74 65 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | color.attribute................. | 
| 247a0 |  20 28 6c 65 74 20 28 28 61 74 74 72 20 28 6d 61    74 63 68 2d 73 74 72 69 6e 67 20 31 29 29 29 0a  | .(let.((attr.(match-string.1))). | 
| 247c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 63 6f 6e 64 20 28 28 6d 65 6d 62 65  | ...................(cond.((membe | 
| 247e0 |  72 20 61 74 74 72 20 27 28 22 68 69 6c 69 74 65    22 20 22 6c 69 6e 65 63 6c 72 22 20 22 62 6f 72  | r.attr.'("hilite"."lineclr"."bor | 
| 24800 |  64 65 72 22 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  | der")).......................... | 
| 24820 |  20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20    28 63 64 72 20 28 61 73 73 6f 63 20 63 6f 6c 6f  | .(replace-match.(cdr.(assoc.colo | 
| 24840 |  72 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 61 6c 69    73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | r.djvu-color-alist))............ | 
| 24860 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69  | ..............................ni | 
| 24880 |  6c 20 6e 69 6c 20 6e 69 6c 20 32 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | l.nil.nil.2))................... | 
| 248a0 |  20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 3d    20 61 74 74 72 20 22 62 61 63 6b 63 6c 72 22 29  | .......((string=.attr."backclr") | 
| 248c0 |  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 72 65 70 6c  | ...........................(repl | 
| 248e0 |  61 63 65 2d 6d 61 74 63 68 20 28 73 61 76 65 2d    6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20 20 20  | ace-match.(save-match-data...... | 
| 24900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 24920 |  20 20 20 20 20 28 64 6a 76 75 2d 63 6f 6c 6f 72    2d 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f  | .....(djvu-color-background.colo | 
| 24940 |  72 20 6e 69 6c 20 6f 70 61 63 69 74 79 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r.nil.opacity))................. | 
| 24960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 6e 69 6c 20 6e 69 6c  | .........................nil.nil | 
| 24980 |  20 6e 69 6c 20 32 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  | .nil.2))........................ | 
| 249a0 |  20 20 28 74 20 28 6d 65 73 73 61 67 65 20 22 43    6f 6c 6f 72 20 75 70 64 61 74 65 20 66 6f 72 20  | ..(t.(message."Color.update.for. | 
| 249c0 |  61 74 74 72 69 62 75 74 65 20 60 25 73 27 20 75    6e 64 65 66 69 6e 65 64 22 0a 20 20 20 20 20 20  | attribute.`%s'.undefined"....... | 
| 249e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61  | ...............................a | 
| 24a00 |  74 74 72 29 29 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 73 65  | ttr))))).................;;.inse | 
| 24a20 |  72 74 20 6e 65 77 20 63 6f 6c 6f 72 20 61 74 74    72 69 62 75 74 65 20 28 64 65 70 65 6e 64 65 6e  | rt.new.color.attribute.(dependen | 
| 24a40 |  74 20 6f 6e 20 61 72 65 61 20 61 74 74 72 69 62    75 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20  | t.on.area.attribute)............ | 
| 24a60 |  20 20 20 20 20 28 28 72 65 2d 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 20 22 28 72 65 63 74 22  | .....((re-search-forward."(rect" | 
| 24a80 |  20 28 63 64 72 20 62 6f 75 6e 64 73 29 20 74 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(cdr.bounds).t)................ | 
| 24aa0 |  20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 31 2d    20 28 63 64 72 20 62 6f 75 6e 64 73 29 29 29 0a  | ..(goto-char.(1-.(cdr.bounds))). | 
| 24ac0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74  | .................(insert.(format | 
| 24ae0 |  20 22 20 28 68 69 6c 69 74 65 20 25 73 29 22 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .".(hilite.%s)"................. | 
| 24b00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 63 64 72 20 28 61 73 73 6f 63 20 63 6f 6c  | .................(cdr.(assoc.col | 
| 24b20 |  6f 72 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 61 6c    69 73 74 29 29 29 29 0a 20 20 20 20 20 20 20 20  | or.djvu-color-alist))))......... | 
| 24b40 |  20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73    20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e  | .........(unless.(save-excursion | 
| 24b60 |  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 67 6f 74  | ............................(got | 
| 24b80 |  6f 2d 63 68 61 72 20 28 63 61 72 20 62 6f 75 6e    64 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | o-char.(car.bounds))............ | 
| 24ba0 |  20 20 20 20 20 20 20 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  | ................(re-search-forwa | 
| 24bc0 |  72 64 20 22 28 6f 70 61 63 69 74 79 20 5b 30 2d    39 5d 2b 29 22 20 28 63 64 72 20 62 6f 75 6e 64  | rd."(opacity.[0-9]+)".(cdr.bound | 
| 24be0 |  73 29 20 74 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72  | s).t))....................(inser | 
| 24c00 |  74 20 28 66 6f 72 6d 61 74 20 22 20 28 6f 70 61    63 69 74 79 20 25 64 29 22 20 6f 70 61 63 69 74  | t.(format.".(opacity.%d)".opacit | 
| 24c20 |  79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 28 72 65 2d 73 65 61 72 63  | y)))).................((re-searc | 
| 24c40 |  68 2d 66 6f 72 77 61 72 64 20 22 28 6c 69 6e 65    22 20 28 63 64 72 20 62 6f 75 6e 64 73 29 20 74  | h-forward."(line".(cdr.bounds).t | 
| 24c60 |  29 0a 20 20 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 31  | )..................(goto-char.(1 | 
| 24c80 |  2d 20 28 63 64 72 20 62 6f 75 6e 64 73 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -.(cdr.bounds)))................ | 
| 24ca0 |  20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61    74 20 22 20 28 6c 69 6e 65 63 6c 72 20 25 73 29  | ..(insert.(format.".(lineclr.%s) | 
| 24cc0 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | "............................... | 
| 24ce0 |  20 20 20 28 63 64 72 20 28 61 73 73 6f 63 20 63    6f 6c 6f 72 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d  | ...(cdr.(assoc.color.djvu-color- | 
| 24d00 |  61 6c 69 73 74 29 29 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 28 72 65 2d  | alist))))).................((re- | 
| 24d20 |  73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22    28 70 6f 6c 79 22 20 28 63 64 72 20 62 6f 75 6e  | search-forward."(poly".(cdr.boun | 
| 24d40 |  64 73 29 20 74 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68  | ds).t)..................(goto-ch | 
| 24d60 |  61 72 20 28 31 2d 20 28 63 64 72 20 62 6f 75 6e    64 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ar.(1-.(cdr.bounds)))........... | 
| 24d80 |  20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28    66 6f 72 6d 61 74 20 22 20 28 62 6f 72 64 65 72  | .......(insert.(format.".(border | 
| 24da0 |  20 25 73 29 20 28 62 6f 72 64 65 72 5f 61 76 69    73 29 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .%s).(border_avis)"............. | 
| 24dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 63 64 72 20 28 61 73 73 6f 63  | .....................(cdr.(assoc | 
| 24de0 |  20 63 6f 6c 6f 72 20 64 6a 76 75 2d 63 6f 6c 6f    72 2d 61 6c 69 73 74 29 29 29 29 29 0a 20 20 20  | .color.djvu-color-alist))))).... | 
| 24e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 72    65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64  | .............((re-search-forward | 
| 24e20 |  20 22 28 74 65 78 74 22 20 28 63 64 72 20 62 6f    75 6e 64 73 29 20 74 29 0a 20 20 20 20 20 20 20  | ."(text".(cdr.bounds).t)........ | 
| 24e40 |  20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d    63 68 61 72 20 28 31 2d 20 28 63 64 72 20 62 6f  | ..........(goto-char.(1-.(cdr.bo | 
| 24e60 |  75 6e 64 73 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74  | unds)))..................(insert | 
| 24e80 |  20 28 66 6f 72 6d 61 74 20 22 20 28 62 61 63 6b    63 6c 72 20 25 73 29 22 0a 20 20 20 20 20 20 20  | .(format.".(backclr.%s)"........ | 
| 24ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | ..........................(djvu- | 
| 24ec0 |  63 6f 6c 6f 72 2d 62 61 63 6b 67 72 6f 75 6e 64    20 63 6f 6c 6f 72 20 6e 69 6c 20 6f 70 61 63 69  | color-background.color.nil.opaci | 
| 24ee0 |  74 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 74 20 28 6d 65 73 73 61  | ty)))).................(t.(messa | 
| 24f00 |  67 65 20 22 44 6f 20 6e 6f 74 20 6b 6e 6f 77 20    68 6f 77 20 74 6f 20 75 70 64 61 74 65 20 63 6f  | ge."Do.not.know.how.to.update.co | 
| 24f20 |  6c 6f 72 22 29 29 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 6a 76 75 2d 6d 65 72 67 65 2d 6d  | lor")))))))..(defun.djvu-merge-m | 
| 24f40 |  61 70 61 72 65 61 73 20 28 62 65 67 20 65 6e 64    29 0a 20 20 22 4d 65 72 67 65 20 44 6a 76 75 20  | apareas.(beg.end)..."Merge.Djvu. | 
| 24f60 |  6d 61 70 61 72 65 61 73 20 66 72 6f 6d 20 42 45    47 20 74 6f 20 45 4e 44 2e 22 0a 20 20 28 69 6e  | mapareas.from.BEG.to.END."...(in | 
| 24f80 |  74 65 72 61 63 74 69 76 65 20 22 72 22 29 0a 20    20 28 6c 65 74 20 28 62 6f 75 6e 64 73 20 75 72  | teractive."r")...(let.(bounds.ur | 
| 24fa0 |  6c 20 74 65 78 74 20 72 65 63 74 20 68 69 6c 69    74 65 20 6f 70 61 63 69 74 79 20 62 6f 72 64 65  | l.text.rect.hilite.opacity.borde | 
| 24fc0 |  72 29 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61    72 20 62 65 67 29 0a 20 20 20 20 28 77 68 69 6c  | r).....(goto-char.beg).....(whil | 
| 24fe0 |  65 20 28 61 6e 64 20 28 3c 20 28 70 6f 69 6e 74    29 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20  | e.(and.(<.(point).end).......... | 
| 25000 |  20 20 20 20 20 20 20 28 73 65 74 71 20 62 6f 75    6e 64 73 20 28 64 6a 76 75 2d 6f 62 6a 65 63 74  | .......(setq.bounds.(djvu-object | 
| 25020 |  2d 62 6f 75 6e 64 73 29 29 29 0a 20 20 20 20 20    20 28 69 66 20 28 3c 20 28 63 61 72 20 62 6f 75  | -bounds))).......(if.(<.(car.bou | 
| 25040 |  6e 64 73 29 20 62 65 67 29 20 28 73 65 74 71 20    62 65 67 20 28 63 61 72 20 62 6f 75 6e 64 73 29  | nds).beg).(setq.beg.(car.bounds) | 
| 25060 |  29 29 0a 20 20 20 20 20 20 28 69 66 20 28 3c 20    65 6e 64 20 28 63 64 72 20 62 6f 75 6e 64 73 29  | )).......(if.(<.end.(cdr.bounds) | 
| 25080 |  29 20 28 73 65 74 71 20 65 6e 64 20 28 63 64 72    20 62 6f 75 6e 64 73 29 29 29 0a 20 20 20 20 20  | ).(setq.end.(cdr.bounds)))...... | 
| 250a0 |  20 28 6c 65 74 20 28 28 6d 61 70 61 72 65 61 20    28 64 6a 76 75 2d 6f 62 6a 65 63 74 20 62 6f 75  | .(let.((maparea.(djvu-object.bou | 
| 250c0 |  6e 64 73 29 29 29 0a 20 20 20 20 20 20 20 20 28    75 6e 6c 65 73 73 20 28 65 71 20 27 6d 61 70 61  | nds))).........(unless.(eq.'mapa | 
| 250e0 |  72 65 61 20 28 63 61 72 20 6d 61 70 61 72 65 61    29 29 0a 20 20 20 20 20 20 20 20 20 20 28 65 72  | rea.(car.maparea))...........(er | 
| 25100 |  72 6f 72 20 22 43 61 6e 6e 6f 74 20 6d 65 72 67    65 20 60 25 73 27 22 20 28 63 61 72 20 6d 61 70  | ror."Cannot.merge.`%s'".(car.map | 
| 25120 |  61 72 65 61 29 29 29 0a 20 20 20 20 20 20 20 20    28 70 75 73 68 20 28 6e 74 68 20 31 20 6d 61 70  | area))).........(push.(nth.1.map | 
| 25140 |  61 72 65 61 29 20 75 72 6c 29 0a 20 20 20 20 20    20 20 20 28 70 75 73 68 20 28 6e 74 68 20 32 20  | area).url).........(push.(nth.2. | 
| 25160 |  6d 61 70 61 72 65 61 29 20 74 65 78 74 29 0a 20    20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28  | maparea).text).........(dolist.( | 
| 25180 |  65 6c 74 20 28 6e 74 68 63 64 72 20 33 20 6d 61    70 61 72 65 61 29 29 0a 20 20 20 20 20 20 20 20  | elt.(nthcdr.3.maparea))......... | 
| 251a0 |  20 20 28 63 6f 6e 64 20 28 28 63 6f 6e 73 70 20    28 63 61 72 20 65 6c 74 29 29 20 3b 20 6c 69 73  | ..(cond.((consp.(car.elt)).;.lis | 
| 251c0 |  74 20 6f 66 20 72 65 63 74 73 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70  | t.of.rects..................(map | 
| 251e0 |  63 20 28 6c 61 6d 62 64 61 20 28 72 29 20 28 70    75 73 68 20 72 20 72 65 63 74 29 29 20 65 6c 74  | c.(lambda.(r).(push.r.rect)).elt | 
| 25200 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 28 6d 65 6d 71 20 28 63 61 72 20 65  | )).................((memq.(car.e | 
| 25220 |  6c 74 29 20 27 28 74 65 78 74 20 6c 69 6e 65 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | lt).'(text.line))............... | 
| 25240 |  20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22    43 61 6e 6e 6f 74 20 6d 65 72 67 65 20 74 65 78  | ...(user-error."Cannot.merge.tex | 
| 25260 |  74 20 6f 72 20 6c 69 6e 65 20 6d 61 70 61 72 65    61 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 20  | t.or.line.mapareas"))........... | 
| 25280 |  20 20 20 20 20 20 28 28 65 71 20 28 63 61 72 20    65 6c 74 29 20 27 68 69 6c 69 74 65 29 0a 20 20  | ......((eq.(car.elt).'hilite)... | 
| 252a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    70 75 73 68 20 28 63 61 64 72 20 65 6c 74 29 20  | ...............(push.(cadr.elt). | 
| 252c0 |  68 69 6c 69 74 65 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 28 65 71 20 28 63  | hilite)).................((eq.(c | 
| 252e0 |  61 72 20 65 6c 74 29 20 27 6f 70 61 63 69 74 79    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ar.elt).'opacity)............... | 
| 25300 |  20 20 20 28 70 75 73 68 20 28 63 61 64 72 20 65    6c 74 29 20 6f 70 61 63 69 74 79 29 29 0a 20 20  | ...(push.(cadr.elt).opacity))... | 
| 25320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28    6d 65 6d 71 20 28 63 61 72 20 65 6c 74 29 20 27  | ..............((memq.(car.elt).' | 
| 25340 |  28 6e 6f 6e 65 20 78 6f 72 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75  | (none.xor))..................(pu | 
| 25360 |  73 68 20 28 63 61 72 20 65 6c 74 29 20 62 6f 72    64 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20  | sh.(car.elt).border))........... | 
| 25380 |  20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72  | ......(t..................(error | 
| 253a0 |  20 22 55 6e 6b 6e 6f 77 6e 20 61 74 74 72 69 62    75 74 65 20 60 25 73 27 22 20 65 6c 74 29 29 29  | ."Unknown.attribute.`%s'".elt))) | 
| 253c0 |  29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63    68 61 72 20 28 63 64 72 20 62 6f 75 6e 64 73 29  | )).......(goto-char.(cdr.bounds) | 
| 253e0 |  29 0a 20 20 20 20 20 20 28 73 6b 69 70 2d 63 68    61 72 73 2d 66 6f 72 77 61 72 64 20 22 5c 73 5c  | ).......(skip-chars-forward."\s\ | 
| 25400 |  74 5c 6e 22 29 29 0a 0a 20 20 20 20 3b 3b 20 52    65 6d 6f 76 65 20 64 75 70 6c 69 63 61 74 65 20  | t\n"))......;;.Remove.duplicate. | 
| 25420 |  61 74 74 72 69 62 75 74 65 0a 20 20 20 20 28 73    65 74 71 20 75 72 6c 20 28 6f 72 20 28 64 65 6c  | attribute.....(setq.url.(or.(del | 
| 25440 |  65 74 65 2d 64 75 70 73 20 28 64 65 6c 65 74 65    20 22 22 20 75 72 6c 29 29 20 27 28 22 22 29 29  | ete-dups.(delete."".url)).'("")) | 
| 25460 |  29 0a 20 20 20 20 28 69 66 20 28 6e 74 68 20 31    20 75 72 6c 29 20 28 75 73 65 72 2d 65 72 72 6f  | ).....(if.(nth.1.url).(user-erro | 
| 25480 |  72 20 22 43 61 6e 6e 6f 74 20 6d 65 72 67 65 20    6d 75 6c 74 69 70 6c 65 20 55 52 4c 73 22 29 29  | r."Cannot.merge.multiple.URLs")) | 
| 254a0 |  0a 20 20 20 20 28 73 65 74 71 20 74 65 78 74 20    28 6d 61 70 63 6f 6e 63 61 74 20 23 27 69 64 65  | .....(setq.text.(mapconcat.#'ide | 
| 254c0 |  6e 74 69 74 79 20 28 6e 72 65 76 65 72 73 65 20    28 64 65 6c 65 74 65 20 22 22 20 74 65 78 74 29  | ntity.(nreverse.(delete."".text) | 
| 254e0 |  29 20 22 5c 6e 22 29 29 0a 20 20 20 20 28 73 65    74 71 20 68 69 6c 69 74 65 20 28 64 65 6c 65 74  | )."\n")).....(setq.hilite.(delet | 
| 25500 |  65 2d 64 75 70 73 20 68 69 6c 69 74 65 29 29 0a    20 20 20 20 28 69 66 20 28 6e 74 68 20 31 20 68  | e-dups.hilite)).....(if.(nth.1.h | 
| 25520 |  69 6c 69 74 65 29 20 28 75 73 65 72 2d 65 72 72    6f 72 20 22 43 61 6e 6e 6f 74 20 6d 65 72 67 65  | ilite).(user-error."Cannot.merge | 
| 25540 |  20 6d 75 6c 74 69 70 6c 65 20 68 69 6c 69 74 65    73 22 29 29 0a 20 20 20 20 28 73 65 74 71 20 6f  | .multiple.hilites")).....(setq.o | 
| 25560 |  70 61 63 69 74 79 20 28 64 65 6c 65 74 65 2d 64    75 70 73 20 6f 70 61 63 69 74 79 29 29 0a 20 20  | pacity.(delete-dups.opacity))... | 
| 25580 |  20 20 28 69 66 20 28 6e 74 68 20 31 20 6f 70 61    63 69 74 79 29 20 28 75 73 65 72 2d 65 72 72 6f  | ..(if.(nth.1.opacity).(user-erro | 
| 255a0 |  72 20 22 43 61 6e 6e 6f 74 20 6d 65 72 67 65 20    6d 75 6c 74 69 70 6c 65 20 6f 70 61 63 69 74 69  | r."Cannot.merge.multiple.opaciti | 
| 255c0 |  65 73 22 29 29 0a 20 20 20 20 3b 3b 20 42 6f 72    64 65 72 20 60 6e 6f 6e 65 27 20 69 73 20 67 69  | es")).....;;.Border.`none'.is.gi | 
| 255e0 |  76 65 6e 20 6c 6f 77 65 72 20 70 72 65 63 65 64    65 6e 63 65 20 74 68 61 6e 20 6f 74 68 65 72 20  | ven.lower.precedence.than.other. | 
| 25600 |  62 6f 72 64 65 72 73 0a 20 20 20 20 28 73 65 74    71 20 62 6f 72 64 65 72 20 28 6f 72 20 28 64 65  | borders.....(setq.border.(or.(de | 
| 25620 |  6c 65 74 65 2d 64 75 70 73 20 28 64 65 6c 71 20    27 6e 6f 6e 65 20 62 6f 72 64 65 72 29 29 20 27  | lete-dups.(delq.'none.border)).' | 
| 25640 |  28 6e 6f 6e 65 29 29 29 0a 20 20 20 20 28 69 66    20 28 6e 74 68 20 31 20 62 6f 72 64 65 72 29 20  | (none))).....(if.(nth.1.border). | 
| 25660 |  28 75 73 65 72 2d 65 72 72 6f 72 20 22 43 61 6e    6e 6f 74 20 6d 65 72 67 65 20 6d 75 6c 74 69 70  | (user-error."Cannot.merge.multip | 
| 25680 |  6c 65 20 62 6f 72 64 65 72 73 22 29 29 0a 0a 20    20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 62 65  | le.borders"))......(goto-char.be | 
| 256a0 |  67 29 0a 20 20 20 20 28 64 65 6c 65 74 65 2d 72    65 67 69 6f 6e 20 62 65 67 20 65 6e 64 29 0a 20  | g).....(delete-region.beg.end).. | 
| 256c0 |  20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d    61 74 20 22 28 6d 61 70 61 72 65 61 20 25 53 5c  | ...(insert.(format."(maparea.%S\ | 
| 256e0 |  6e 20 25 53 5c 6e 20 28 22 20 28 63 61 72 20 75    72 6c 29 20 74 65 78 74 29 0a 20 20 20 20 20 20  | n.%S\n.(".(car.url).text)....... | 
| 25700 |  20 20 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74    20 23 27 70 72 69 6e 31 2d 74 6f 2d 73 74 72 69  | ......(mapconcat.#'prin1-to-stri | 
| 25720 |  6e 67 20 28 6e 72 65 76 65 72 73 65 20 72 65 63    74 29 20 22 5c 6e 20 20 22 29 20 22 29 5c 6e 22  | ng.(nreverse.rect)."\n..").")\n" | 
| 25740 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66    20 68 69 6c 69 74 65 20 28 66 6f 72 6d 61 74 20  | .............(if.hilite.(format. | 
| 25760 |  22 20 28 68 69 6c 69 74 65 20 25 73 29 22 20 28    63 61 72 20 68 69 6c 69 74 65 29 29 20 22 22 29  | ".(hilite.%s)".(car.hilite))."") | 
| 25780 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66    20 6f 70 61 63 69 74 79 20 28 66 6f 72 6d 61 74  | .............(if.opacity.(format | 
| 257a0 |  20 22 20 28 6f 70 61 63 69 74 79 20 25 73 29 22    20 28 63 61 72 20 6f 70 61 63 69 74 79 29 29 20  | .".(opacity.%s)".(car.opacity)). | 
| 257c0 |  22 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 66 6f 72 6d 61 74 20 22 20 28 25 73 29 22 20  | "").............(format.".(%s)". | 
| 257e0 |  28 63 61 72 20 62 6f 72 64 65 72 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 22 29 5c 6e 22 29  | (car.border)).............")\n") | 
| 25800 |  0a 20 20 20 20 28 73 61 76 65 2d 72 65 73 74 72    69 63 74 69 6f 6e 0a 20 20 20 20 20 20 28 6e 61  | .....(save-restriction.......(na | 
| 25820 |  72 72 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 20 62    65 67 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20  | rrow-to-region.beg.(point))..... | 
| 25840 |  20 20 28 64 6a 76 75 2d 63 6f 6e 76 65 72 74 2d    68 61 73 68 20 74 29 29 29 29 0a 0a 3b 3b 3b 20  | ..(djvu-convert-hash.t))))..;;;. | 
| 25860 |  44 6a 76 75 20 42 6f 6f 6b 6d 61 72 6b 73 20 6d    6f 64 65 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | Djvu.Bookmarks.mode..(defun.djvu | 
| 25880 |  2d 62 6f 6f 6b 6d 61 72 6b 73 2d 70 61 67 65 20    28 26 6f 70 74 69 6f 6e 61 6c 20 70 6e 74 20 64  | -bookmarks-page.(&optional.pnt.d | 
| 258a0 |  6f 63 29 0a 20 20 22 49 6e 20 42 6f 6f 6b 6d 61    72 6b 73 20 62 75 66 66 65 72 20 72 65 74 75 72  | oc)..."In.Bookmarks.buffer.retur | 
| 258c0 |  6e 20 70 61 67 65 20 6e 75 6d 62 65 72 20 61 74    20 70 6f 73 69 74 69 6f 6e 20 50 4e 54 2e 0a 50  | n.page.number.at.position.PNT..P | 
| 258e0 |  4e 54 20 64 65 66 61 75 6c 74 73 20 74 6f 20 70    6f 73 69 74 69 6f 6e 20 6f 66 20 70 6f 69 6e 74  | NT.defaults.to.position.of.point | 
| 25900 |  2e 22 0a 20 20 28 64 6a 76 75 2d 75 72 6c 2d 70    61 67 65 0a 20 20 20 28 73 61 76 65 2d 65 78 63  | ."...(djvu-url-page....(save-exc | 
| 25920 |  75 72 73 69 6f 6e 0a 20 20 20 20 20 28 69 66 20    70 6e 74 20 28 67 6f 74 6f 2d 63 68 61 72 20 70  | ursion......(if.pnt.(goto-char.p | 
| 25940 |  6e 74 29 29 0a 20 20 20 20 20 28 62 65 67 69 6e    6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20  | nt))......(beginning-of-line)... | 
| 25960 |  20 20 20 28 77 68 69 6c 65 20 28 6e 6f 74 20 28    6f 72 20 28 62 6f 62 70 29 0a 20 20 20 20 20 20  | ...(while.(not.(or.(bobp)....... | 
| 25980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5e 5b 5c 74  | ...............(looking-at."^[\t | 
| 259a0 |  5c 73 5d 2a 28 5c 5c 28 5c 22 5c 5c 29 22 29 29    29 0a 20 20 20 20 20 20 20 28 66 6f 72 77 61 72  | \s]*(\\(\"\\)")))........(forwar | 
| 259c0 |  64 2d 6c 69 6e 65 20 2d 31 29 29 0a 20 20 20 20    20 28 77 68 65 6e 20 28 6d 61 74 63 68 2d 62 65  | d-line.-1))......(when.(match-be | 
| 259e0 |  67 69 6e 6e 69 6e 67 20 31 29 0a 20 20 20 20 20    20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61  | ginning.1)........(goto-char.(ma | 
| 25a00 |  74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 31 29    29 0a 20 20 20 20 20 20 20 28 66 6f 72 77 61 72  | tch-beginning.1))........(forwar | 
| 25a20 |  64 2d 73 65 78 70 29 0a 20 20 20 20 20 20 20 28    72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75  | d-sexp)........(read.(current-bu | 
| 25a40 |  66 66 65 72 29 29 29 29 0a 20 20 20 64 6f 63 29    29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 75  | ffer))))....doc))..(defun.djvu-u | 
| 25a60 |  72 6c 2d 70 61 67 65 20 28 75 72 6c 20 26 6f 70    74 69 6f 6e 61 6c 20 64 6f 63 29 0a 20 20 22 46  | rl-page.(url.&optional.doc)..."F | 
| 25a80 |  6f 72 20 74 68 65 20 69 6e 74 65 72 6e 61 6c 20    55 52 4c 20 72 65 74 75 72 6e 20 74 68 65 20 63  | or.the.internal.URL.return.the.c | 
| 25aa0 |  6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 70 61 67    65 20 6e 75 6d 62 65 72 2e 0a 54 68 69 73 20 69  | orresponding.page.number..This.i | 
| 25ac0 |  73 20 74 68 65 20 69 6e 76 65 72 73 65 20 6f 66    20 60 64 6a 76 75 2d 70 61 67 65 2d 75 72 6c 27  | s.the.inverse.of.`djvu-page-url' | 
| 25ae0 |  2e 0a 52 65 74 75 72 6e 20 6e 69 6c 20 69 66 20    55 52 4c 20 69 73 20 6e 6f 74 20 61 6e 20 69 6e  | ..Return.nil.if.URL.is.not.an.in | 
| 25b00 |  74 65 72 6e 61 6c 20 55 52 4c 2e 22 0a 20 20 3b    3b 20 49 66 20 77 65 20 74 72 79 20 74 6f 20 67  | ternal.URL."...;;.If.we.try.to.g | 
| 25b20 |  72 61 62 20 55 52 4c 20 66 72 6f 6d 20 61 20 62    6f 6f 6b 6d 61 72 6b 73 20 6f 72 20 6f 75 74 6c  | rab.URL.from.a.bookmarks.or.outl | 
| 25b40 |  69 6e 65 20 62 75 66 66 65 72 2c 20 55 52 4c 20    6d 61 79 20 62 65 20 6e 69 6c 2e 0a 20 20 28 69  | ine.buffer,.URL.may.be.nil....(i | 
| 25b60 |  66 20 75 72 6c 0a 20 20 20 20 20 20 3b 3b 20 49    6e 74 65 72 6e 61 6c 20 55 52 4c 73 20 73 74 61  | f.url.......;;.Internal.URLs.sta | 
| 25b80 |  72 74 20 77 69 74 68 20 22 23 22 2e 0a 20 20 20    20 20 20 28 63 6f 6e 64 20 28 28 73 74 72 69 6e  | rt.with."#"........(cond.((strin | 
| 25ba0 |  67 2d 6d 61 74 63 68 20 22 5c 5c 60 23 5c 5c 28    5b 30 2d 39 5d 2b 5c 5c 29 5c 5c 27 22 20 75 72  | g-match."\\`#\\([0-9]+\\)\\'".ur | 
| 25bc0 |  6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62  | l)..............(djvu-match-numb | 
| 25be0 |  65 72 20 31 20 75 72 6c 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 2d  | er.1.url)).............((string- | 
| 25c00 |  6d 61 74 63 68 20 22 5c 5c 60 23 22 20 75 72 6c    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | match."\\`#".url)..............( | 
| 25c20 |  63 61 72 20 28 72 61 73 73 6f 63 20 28 73 75 62    73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72  | car.(rassoc.(substring-no-proper | 
| 25c40 |  74 69 65 73 20 75 72 6c 20 31 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ties.url.1)..................... | 
| 25c60 |  20 20 20 20 20 20 28 64 6a 76 75 2d 72 65 66 20    70 61 67 65 2d 69 64 20 64 6f 63 29 29 29 29 29  | ......(djvu-ref.page-id.doc))))) | 
| 25c80 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d    62 6f 6f 6b 6d 61 72 6b 20 28 74 65 78 74 20 70  | ))..(defun.djvu-bookmark.(text.p | 
| 25ca0 |  61 67 65 20 26 6f 70 74 69 6f 6e 61 6c 20 6c 65    76 65 6c 29 0a 20 20 22 43 72 65 61 74 65 20 62  | age.&optional.level)..."Create.b | 
| 25cc0 |  6f 6f 6b 6d 61 72 6b 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 0a 20 20 20 28 64 6a 76 75  | ookmark"...(interactive....(djvu | 
| 25ce0 |  2d 77 69 74 68 2d 72 65 67 69 6f 6e 20 72 65 67    69 6f 6e 0a 20 20 20 20 20 28 6c 69 73 74 20 28  | -with-region.region......(list.( | 
| 25d00 |  64 6a 76 75 2d 72 65 61 64 2d 73 74 72 69 6e 67    20 22 42 6f 6f 6b 6d 61 72 6b 3a 20 22 20 72 65  | djvu-read-string."Bookmark:.".re | 
| 25d20 |  67 69 6f 6e 20 74 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67  | gion.t)............(djvu-ref.pag | 
| 25d40 |  65 29 20 28 64 6a 76 75 2d 69 6e 74 65 72 61 63    74 69 76 65 2d 62 6f 6f 6b 6d 61 72 6b 2d 6c 65  | e).(djvu-interactive-bookmark-le | 
| 25d60 |  76 65 6c 29 29 29 29 0a 20 20 3b 3b 20 52 65 6d    6f 76 65 20 6e 65 77 6c 69 6e 65 73 20 66 72 6f  | vel))))...;;.Remove.newlines.fro | 
| 25d80 |  6d 20 54 45 58 54 20 74 68 61 74 20 61 72 65 20    69 67 6e 6f 72 65 64 20 61 6e 79 77 61 79 0a 20  | m.TEXT.that.are.ignored.anyway.. | 
| 25da0 |  20 28 73 65 74 71 20 74 65 78 74 20 28 72 65 70    6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73  | .(setq.text.(replace-regexp-in-s | 
| 25dc0 |  74 72 69 6e 67 20 22 5b 5c 6e 20 5d 2b 22 20 22    20 22 20 74 65 78 74 29 29 0a 20 20 28 6c 65 74  | tring."[\n.]+".".".text))...(let | 
| 25de0 |  20 28 6f 62 6a 65 63 74 29 0a 20 20 20 20 28 77    69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66  | .(object).....(with-current-buff | 
| 25e00 |  65 72 20 28 64 6a 76 75 2d 72 65 66 20 62 6f 6f    6b 6d 61 72 6b 73 2d 62 75 66 29 0a 20 20 20 20  | er.(djvu-ref.bookmarks-buf)..... | 
| 25e20 |  20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f    69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20  | ..(goto-char.(point-min))....... | 
| 25e40 |  28 69 66 20 28 65 71 75 61 6c 20 28 70 6f 69 6e    74 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a  | (if.(equal.(point).(point-max)). | 
| 25e60 |  20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20    6f 62 6a 65 63 74 20 28 6c 69 73 74 20 27 62 6f  | ..........(setq.object.(list.'bo | 
| 25e80 |  6f 6b 6d 61 72 6b 73 29 29 0a 20 20 20 20 20 20    20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73  | okmarks)).........(condition-cas | 
| 25ea0 |  65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 6f 62 6a 65 63 74 20 28  | e.nil.............(setq.object.( | 
| 25ec0 |  72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20  | read.(current-buffer)))......... | 
| 25ee0 |  20 20 28 65 72 72 6f 72 20 28 65 72 72 6f 72 20    22 53 79 6e 74 61 78 20 65 72 72 6f 72 20 69 6e  | ..(error.(error."Syntax.error.in | 
| 25f00 |  20 62 6f 6f 6b 6d 61 72 6b 73 22 29 29 29 29 0a    20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65  | .bookmarks")))).......(unless.(e | 
| 25f20 |  71 20 27 62 6f 6f 6b 6d 61 72 6b 73 20 28 63 61    72 20 6f 62 6a 65 63 74 29 29 0a 20 20 20 20 20  | q.'bookmarks.(car.object))...... | 
| 25f40 |  20 20 20 28 65 72 72 6f 72 20 22 4e 6f 20 62 6f    6f 6b 6d 61 72 6b 73 22 29 29 0a 20 20 20 20 20  | ...(error."No.bookmarks"))...... | 
| 25f60 |  20 3b 3b 20 57 65 20 6b 65 65 70 20 62 6f 6f 6b    6d 61 72 6b 73 20 73 6f 72 74 65 64 20 62 79 20  | .;;.We.keep.bookmarks.sorted.by. | 
| 25f80 |  70 61 67 65 20 6e 75 6d 62 65 72 2e 20 20 53 6f    20 65 61 63 68 20 74 69 6d 65 20 77 65 20 61 64  | page.number...So.each.time.we.ad | 
| 25fa0 |  64 0a 20 20 20 20 20 20 3b 3b 20 61 20 6e 65 77    20 62 6f 6f 6b 6d 61 72 6b 2c 20 77 65 20 72 65  | d.......;;.a.new.bookmark,.we.re | 
| 25fc0 |  77 72 69 74 65 20 74 68 65 20 63 6f 6d 70 6c 65    74 65 20 62 6f 6f 6b 6d 61 72 6b 73 20 62 75 66  | write.the.complete.bookmarks.buf | 
| 25fe0 |  66 65 72 2e 0a 20 20 20 20 20 20 3b 3b 20 54 68    69 73 20 63 61 6e 20 62 6c 6f 77 20 75 70 20 60  | fer........;;.This.can.blow.up.` | 
| 26000 |  62 75 66 66 65 72 2d 75 6e 64 6f 2d 6c 69 73 74    27 2e 20 20 43 61 6e 20 77 65 20 62 65 20 73 6d  | buffer-undo-list'...Can.we.be.sm | 
| 26020 |  61 72 74 65 72 3f 0a 20 20 20 20 20 20 28 6c 65    74 2a 20 28 28 64 6a 76 75 2d 62 6f 6f 6b 6d 61  | arter?.......(let*.((djvu-bookma | 
| 26040 |  72 6b 2d 6c 65 76 65 6c 20 2d 31 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 3b 3b 20 43 61 74  | rk-level.-1)..............;;.Cat | 
| 26060 |  63 68 20 75 73 65 72 20 65 72 72 6f 72 73 20 66    72 6f 6d 20 73 70 6c 69 63 69 6e 67 20 62 65 66  | ch.user.errors.from.splicing.bef | 
| 26080 |  6f 72 65 20 6d 6f 64 69 66 79 69 6e 67 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68  | ore.modifying..............;;.th | 
| 260a0 |  65 20 62 6f 6f 6b 6d 61 72 6b 73 20 62 75 66 66    65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | e.bookmarks.buffer.............. | 
| 260c0 |  20 28 6f 62 6a 65 63 74 20 28 64 6a 76 75 2d 73    70 6c 69 63 65 2d 62 6f 6f 6b 6d 61 72 6b 20 74  | .(object.(djvu-splice-bookmark.t | 
| 260e0 |  65 78 74 20 70 61 67 65 20 28 63 64 72 20 6f 62    6a 65 63 74 29 20 6c 65 76 65 6c 29 29 29 0a 20  | ext.page.(cdr.object).level))).. | 
| 26100 |  20 20 20 20 20 20 20 28 65 72 61 73 65 2d 62 75    66 66 65 72 29 0a 20 20 20 20 20 20 20 20 28 69  | .......(erase-buffer).........(i | 
| 26120 |  6e 73 65 72 74 20 22 28 62 6f 6f 6b 6d 61 72 6b    73 22 29 0a 20 20 20 20 20 20 20 20 28 64 6a 76  | nsert."(bookmarks").........(djv | 
| 26140 |  75 2d 69 6e 73 65 72 74 2d 62 6f 6f 6b 6d 61 72    6b 73 20 6f 62 6a 65 63 74 20 22 20 22 29 0a 20  | u-insert-bookmarks.object.".").. | 
| 26160 |  20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22    29 5c 6e 22 29 29 0a 20 20 20 20 20 20 28 67 6f  | .......(insert.")\n")).......(go | 
| 26180 |  74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d    69 6e 29 29 0a 20 20 20 20 20 20 28 75 6e 64 6f  | to-char.(point-min)).......(undo | 
| 261a0 |  2d 62 6f 75 6e 64 61 72 79 29 29 29 29 0a 0a 28    64 65 66 75 6e 20 64 6a 76 75 2d 69 6e 74 65 72  | -boundary))))..(defun.djvu-inter | 
| 261c0 |  61 63 74 69 76 65 2d 62 6f 6f 6b 6d 61 72 6b 2d    6c 65 76 65 6c 20 28 29 0a 20 20 22 52 65 74 75  | active-bookmark-level.()..."Retu | 
| 261e0 |  72 6e 20 62 6f 6f 6b 6d 61 72 6b 20 6c 65 76 65    6c 20 66 6f 72 20 69 6e 74 65 72 61 63 74 69 76  | rn.bookmark.level.for.interactiv | 
| 26200 |  65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 56 61 6c 75    65 20 69 73 20 6e 69 6c 20 69 66 20 74 68 65 20  | e.commands..Value.is.nil.if.the. | 
| 26220 |  63 6f 6d 6d 61 6e 64 20 69 73 20 63 61 6c 6c 65    64 20 77 69 74 68 6f 75 74 20 70 72 65 66 69 78  | command.is.called.without.prefix | 
| 26240 |  20 61 72 67 2e 0a 56 61 6c 75 65 20 69 73 20 74    20 28 6f 6e 65 20 6c 65 76 65 6c 20 64 6f 77 6e  | .arg..Value.is.t.(one.level.down | 
| 26260 |  29 20 69 66 20 63 61 6c 6c 65 64 20 77 69 74 68    20 70 72 65 66 69 78 20 43 2d 75 2e 0a 4f 74 68  | ).if.called.with.prefix.C-u..Oth | 
| 26280 |  65 72 77 69 73 65 20 74 68 65 20 72 61 77 20 70    72 65 66 69 78 20 61 72 67 20 73 68 6f 75 6c 64  | erwise.the.raw.prefix.arg.should | 
| 262a0 |  20 62 65 20 61 20 6e 6f 6e 2d 6e 65 67 61 74 69    76 65 20 69 6e 74 65 67 65 72 0a 73 70 65 63 69  | .be.a.non-negative.integer.speci | 
| 262c0 |  66 79 69 6e 67 20 74 68 65 20 61 62 73 6f 6c 75    74 65 20 6c 65 76 65 6c 20 6f 66 20 74 68 65 20  | fying.the.absolute.level.of.the. | 
| 262e0 |  62 6f 6f 6b 6d 61 72 6b 2e 22 0a 20 20 28 63 6f    6e 64 20 28 28 63 6f 6e 73 70 20 63 75 72 72 65  | bookmark."...(cond.((consp.curre | 
| 26300 |  6e 74 2d 70 72 65 66 69 78 2d 61 72 67 29 29 0a    20 20 20 20 20 20 20 20 28 28 69 6e 74 65 67 65  | nt-prefix-arg)).........((intege | 
| 26320 |  72 70 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69    78 2d 61 72 67 29 0a 20 20 20 20 20 20 20 20 20  | rp.current-prefix-arg).......... | 
| 26340 |  28 61 62 73 20 63 75 72 72 65 6e 74 2d 70 72 65    66 69 78 2d 61 72 67 29 29 29 29 0a 0a 28 64 65  | (abs.current-prefix-arg))))..(de | 
| 26360 |  66 75 6e 20 64 6a 76 75 2d 73 70 6c 69 63 65 2d    62 6f 6f 6b 6d 61 72 6b 20 28 74 65 78 74 20 70  | fun.djvu-splice-bookmark.(text.p | 
| 26380 |  61 67 65 20 6f 62 6a 65 63 74 20 26 6f 70 74 69    6f 6e 61 6c 20 6c 65 76 65 6c 29 0a 20 20 22 53  | age.object.&optional.level)..."S | 
| 263a0 |  70 6c 69 63 65 20 62 6f 6f 6b 6d 61 72 6b 20 28    54 45 58 54 20 50 41 47 45 29 20 69 6e 74 6f 20  | plice.bookmark.(TEXT.PAGE).into. | 
| 263c0 |  74 72 65 65 20 6f 66 20 62 6f 6f 6b 6d 61 72 6b    73 20 4f 42 4a 45 43 54 2e 0a 49 66 20 4c 45 56  | tree.of.bookmarks.OBJECT..If.LEV | 
| 263e0 |  45 4c 20 69 73 20 74 20 70 75 74 20 62 6f 6f 6b    6d 61 72 6b 20 6f 6e 65 20 73 75 62 6c 65 76 65  | EL.is.t.put.bookmark.one.subleve | 
| 26400 |  6c 20 62 65 6c 6f 77 20 74 68 65 20 6c 65 76 65    6c 0a 6f 66 20 74 68 65 20 70 72 65 63 65 64 69  | l.below.the.level.of.the.precedi | 
| 26420 |  6e 67 20 62 6f 6f 6b 6d 61 72 6b 2e 0a 49 66 20    4c 45 56 45 4c 20 69 73 20 61 20 6e 6f 6e 2d 6e  | ng.bookmark..If.LEVEL.is.a.non-n | 
| 26440 |  65 67 61 74 69 76 65 20 69 6e 74 65 67 65 72 20    70 75 74 20 62 6f 6f 6b 6d 61 72 6b 20 6f 6e 20  | egative.integer.put.bookmark.on. | 
| 26460 |  6c 65 76 65 6c 20 4c 45 56 45 4c 2e 0a 54 68 69    73 20 74 68 72 6f 77 73 20 61 20 75 73 65 72 20  | level.LEVEL..This.throws.a.user. | 
| 26480 |  65 72 72 6f 72 20 69 66 20 61 20 62 6f 6f 6b 6d    61 72 6b 20 73 75 62 74 72 65 65 20 61 74 20 50  | error.if.a.bookmark.subtree.at.P | 
| 264a0 |  41 47 45 20 65 78 74 65 6e 64 73 0a 62 65 79 6f    6e 64 20 50 41 47 45 20 73 6f 20 74 68 61 74 20  | AGE.extends.beyond.PAGE.so.that. | 
| 264c0 |  70 75 74 74 69 6e 67 20 61 20 6e 65 77 20 62 6f    6f 6b 6d 61 72 6b 20 66 6f 72 20 50 41 47 45 20  | putting.a.new.bookmark.for.PAGE. | 
| 264e0 |  70 61 73 74 20 74 68 69 73 20 73 75 62 74 72 65    65 0a 77 6f 75 6c 64 20 62 72 65 61 6b 20 74 68  | past.this.subtree.would.break.th | 
| 26500 |  65 20 70 61 67 65 20 6f 72 64 65 72 69 6e 67 20    6f 66 20 74 68 65 20 62 6f 6f 6b 6d 61 72 6b 73  | e.page.ordering.of.the.bookmarks | 
| 26520 |  2e 0a 54 68 69 73 20 63 6f 64 65 20 61 73 73 75    6d 65 73 20 74 68 61 74 20 62 6f 6f 6b 6d 61 72  | ..This.code.assumes.that.bookmar | 
| 26540 |  6b 73 20 61 72 65 20 6f 72 64 65 72 65 64 20 62    79 20 70 61 67 65 20 6e 75 6d 62 65 72 20 61 6e  | ks.are.ordered.by.page.number.an | 
| 26560 |  64 20 74 68 61 74 0a 65 78 74 65 72 6e 61 6c 20    55 52 4c 73 20 61 70 70 65 61 72 20 61 74 20 74  | d.that.external.URLs.appear.at.t | 
| 26580 |  68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20    61 20 73 75 62 74 72 65 65 20 6f 66 20 62 6f 6f  | he.beginning.of.a.subtree.of.boo | 
| 265a0 |  6b 6d 61 72 6b 73 2e 22 0a 20 20 28 73 65 74 71    20 64 6a 76 75 2d 62 6f 6f 6b 6d 61 72 6b 2d 6c  | kmarks."...(setq.djvu-bookmark-l | 
| 265c0 |  65 76 65 6c 20 28 31 2b 20 64 6a 76 75 2d 62 6f    6f 6b 6d 61 72 6b 2d 6c 65 76 65 6c 29 29 0a 20  | evel.(1+.djvu-bookmark-level)).. | 
| 265e0 |  20 28 69 66 20 28 6f 72 20 28 6e 75 6c 6c 20 6f    62 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20  | .(if.(or.(null.object).......... | 
| 26600 |  20 28 6c 65 74 20 28 28 70 61 67 65 2d 75 72 6c    20 28 64 6a 76 75 2d 75 72 6c 2d 70 61 67 65 20  | .(let.((page-url.(djvu-url-page. | 
| 26620 |  28 6e 74 68 20 31 20 28 63 61 72 20 6f 62 6a 65    63 74 29 29 29 29 29 0a 20 20 20 20 20 20 20 20  | (nth.1.(car.object)))))......... | 
| 26640 |  20 20 20 20 28 61 6e 64 20 70 61 67 65 2d 75 72    6c 20 3b 20 69 67 6e 6f 72 65 20 65 78 74 65 72  | ....(and.page-url.;.ignore.exter | 
| 26660 |  6e 61 6c 20 75 72 6c 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 3c 20 70 61 67 65  | nal.url..................(<.page | 
| 26680 |  20 70 61 67 65 2d 75 72 6c 29 29 29 29 0a 20 20    20 20 20 20 3b 3b 20 70 75 74 20 6e 65 77 20 62  | .page-url)))).......;;.put.new.b | 
| 266a0 |  6f 6f 6b 6d 61 72 6b 20 62 65 66 6f 72 65 20 66    69 72 73 74 20 62 6f 6f 6b 6d 61 72 6b 20 6f 6e  | ookmark.before.first.bookmark.on | 
| 266c0 |  20 63 75 72 72 65 6e 74 20 6c 65 76 65 6c 0a 20    20 20 20 20 20 28 63 6f 6e 73 20 28 6c 69 73 74  | .current.level.......(cons.(list | 
| 266e0 |  20 74 65 78 74 20 28 64 6a 76 75 2d 70 61 67 65    2d 75 72 6c 20 70 61 67 65 29 29 20 6f 62 6a 65  | .text.(djvu-page-url.page)).obje | 
| 26700 |  63 74 29 0a 20 20 20 20 28 6c 65 74 20 28 28 6f    62 6a 65 63 74 20 6f 62 6a 65 63 74 29 29 0a 20  | ct).....(let.((object.object)).. | 
| 26720 |  20 20 20 20 20 28 77 68 69 6c 65 20 6f 62 6a 65    63 74 0a 20 20 20 20 20 20 20 20 28 69 66 20 28  | .....(while.object.........(if.( | 
| 26740 |  6f 72 20 28 6e 6f 74 20 28 64 6a 76 75 2d 75 72    6c 2d 70 61 67 65 20 28 6e 74 68 20 31 20 28 63  | or.(not.(djvu-url-page.(nth.1.(c | 
| 26760 |  61 72 20 6f 62 6a 65 63 74 29 29 29 29 20 3b 20    69 67 6e 6f 72 65 20 65 78 74 65 72 6e 61 6c 20  | ar.object)))).;.ignore.external. | 
| 26780 |  75 72 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 61 6e 64 20 28 63 64 72 20 6f 62  | url.................(and.(cdr.ob | 
| 267a0 |  6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 3e 3d 20 70  | ject)......................(>=.p | 
| 267c0 |  61 67 65 20 28 64 6a 76 75 2d 75 72 6c 2d 70 61    67 65 20 28 6e 74 68 20 31 20 28 6e 74 68 20 31  | age.(djvu-url-page.(nth.1.(nth.1 | 
| 267e0 |  20 6f 62 6a 65 63 74 29 29 29 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | .object)))))).............(setq. | 
| 26800 |  6f 62 6a 65 63 74 20 28 63 64 72 20 6f 62 6a 65    63 74 29 29 20 3b 20 6b 65 65 70 20 73 65 61 72  | object.(cdr.object)).;.keep.sear | 
| 26820 |  63 68 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20    28 69 66 20 28 6f 72 20 28 61 6e 64 20 28 6e 6f  | ching...........(if.(or.(and.(no | 
| 26840 |  74 20 6c 65 76 65 6c 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t.level)........................ | 
| 26860 |  28 6e 74 68 20 32 20 28 63 61 72 20 6f 62 6a 65    63 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | (nth.2.(car.object)))........... | 
| 26880 |  20 20 20 20 20 20 20 20 28 65 71 20 74 20 6c 65    76 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ........(eq.t.level)............ | 
| 268a0 |  20 20 20 20 20 20 20 3b 3b 20 49 66 20 4c 45 56    45 4c 20 69 73 20 67 72 65 61 74 65 72 20 74 68  | .......;;.If.LEVEL.is.greater.th | 
| 268c0 |  61 6e 20 60 64 6a 76 75 2d 62 6f 6f 6b 6d 61 72    6b 2d 6c 65 76 65 6c 27 2c 0a 20 20 20 20 20 20  | an.`djvu-bookmark-level',....... | 
| 268e0 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77    65 20 61 64 64 20 6f 6e 6c 79 20 6f 6e 65 20 6c  | ............;;.we.add.only.one.l | 
| 26900 |  65 76 65 6c 20 62 65 79 6f 6e 64 20 60 64 6a 76    75 2d 62 6f 6f 6b 6d 61 72 6b 2d 6c 65 76 65 6c  | evel.beyond.`djvu-bookmark-level | 
| 26920 |  27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 3b 3b 20 69 72 72 65 73 70 65 63  | ',...................;;.irrespec | 
| 26940 |  74 69 76 65 20 6f 66 20 74 68 65 20 61 63 74 75    61 6c 20 76 61 6c 75 65 20 6f 66 20 4c 45 56 45  | tive.of.the.actual.value.of.LEVE | 
| 26960 |  4c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 61 6e 64 20 28 69 6e 74 65 67  | L....................(and.(integ | 
| 26980 |  65 72 70 20 6c 65 76 65 6c 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | erp.level)...................... | 
| 269a0 |  20 20 28 3c 20 64 6a 76 75 2d 62 6f 6f 6b 6d 61    72 6b 2d 6c 65 76 65 6c 20 6c 65 76 65 6c 29 29  | ..(<.djvu-bookmark-level.level)) | 
| 269c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 67 6f 20 64 6f 77 6e 20 6f 6e 65 20 6c  | )...............;;.go.down.one.l | 
| 269e0 |  65 76 65 6c 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 63 61 72 20 6f 62 6a 65 63  | evel...............(setcar.objec | 
| 26a00 |  74 20 28 63 6f 6e 73 20 28 6e 74 68 20 30 20 28    63 61 72 20 6f 62 6a 65 63 74 29 29 0a 20 20 20  | t.(cons.(nth.0.(car.object)).... | 
| 26a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 26a40 |  28 63 6f 6e 73 20 28 6e 74 68 20 31 20 28 63 61    72 20 6f 62 6a 65 63 74 29 29 0a 20 20 20 20 20  | (cons.(nth.1.(car.object))...... | 
| 26a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 26a80 |  20 20 20 20 28 64 6a 76 75 2d 73 70 6c 69 63 65    2d 62 6f 6f 6b 6d 61 72 6b 0a 20 20 20 20 20 20  | ....(djvu-splice-bookmark....... | 
| 26aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 26ac0 |  20 20 20 20 74 65 78 74 20 70 61 67 65 20 28 6e    74 68 63 64 72 20 32 20 28 63 61 72 20 6f 62 6a  | ....text.page.(nthcdr.2.(car.obj | 
| 26ae0 |  65 63 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ect))........................... | 
| 26b00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    6c 65 76 65 6c 29 29 29 29 0a 20 20 20 20 20 20  | ................level))))....... | 
| 26b20 |  20 20 20 20 20 20 28 6c 65 74 20 28 70 61 67 65    2d 6d 61 78 29 0a 20 20 20 20 20 20 20 20 20 20  | ......(let.(page-max)........... | 
| 26b40 |  20 20 20 20 28 61 6e 64 20 28 65 71 20 6c 65 76    65 6c 20 64 6a 76 75 2d 62 6f 6f 6b 6d 61 72 6b  | ....(and.(eq.level.djvu-bookmark | 
| 26b60 |  2d 6c 65 76 65 6c 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71  | -level)....................(setq | 
| 26b80 |  20 70 61 67 65 2d 6d 61 78 20 28 64 6a 76 75 2d    62 6f 6f 6b 6d 61 72 6b 73 2d 70 61 67 65 2d 6d  | .page-max.(djvu-bookmarks-page-m | 
| 26ba0 |  61 78 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  | ax.............................. | 
| 26bc0 |  20 20 20 20 20 20 28 6e 74 68 63 64 72 20 32 20    28 63 61 72 20 6f 62 6a 65 63 74 29 29 29 29 0a  | ......(nthcdr.2.(car.object)))). | 
| 26be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 3c 20 70 61 67 65 20 70 61 67 65 2d  | ...................(<.page.page- | 
| 26c00 |  6d 61 78 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72  | max)....................(user-er | 
| 26c20 |  72 6f 72 20 22 42 6f 6f 6b 6d 61 72 6b 20 6c 65    76 65 6c 20 25 64 20 69 6e 76 61 6c 69 64 20 6f  | ror."Bookmark.level.%d.invalid.o | 
| 26c40 |  6e 20 70 61 67 65 20 25 64 3a 20 70 72 65 63 65    64 69 6e 67 20 73 75 62 74 72 65 65 20 65 78 74  | n.page.%d:.preceding.subtree.ext | 
| 26c60 |  65 6e 64 73 20 74 6f 20 70 61 67 65 20 25 64 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ends.to.page.%d"................ | 
| 26c80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    6c 65 76 65 6c 20 70 61 67 65 20 70 61 67 65 2d  | ................level.page.page- | 
| 26ca0 |  6d 61 78 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 3b 3b 20 70 75 74 20 6e 65 77 20 62 6f  | max))).............;;.put.new.bo | 
| 26cc0 |  6f 6b 6d 61 72 6b 20 61 66 74 65 72 20 63 75 72    72 65 6e 74 20 62 6f 6f 6b 6d 61 72 6b 20 6f 6e  | okmark.after.current.bookmark.on | 
| 26ce0 |  20 63 75 72 72 65 6e 74 20 6c 65 76 65 6c 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 63  | .current.level.............(setc | 
| 26d00 |  64 72 20 6f 62 6a 65 63 74 20 28 63 6f 6e 73 20    28 6c 69 73 74 20 74 65 78 74 20 28 64 6a 76 75  | dr.object.(cons.(list.text.(djvu | 
| 26d20 |  2d 70 61 67 65 2d 75 72 6c 20 70 61 67 65 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -page-url.page))................ | 
| 26d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 63 64 72 20 6f 62 6a 65 63 74 29 29 29  | ..................(cdr.object))) | 
| 26d60 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74    71 20 6f 62 6a 65 63 74 20 6e 69 6c 29 29 29 29  | )...........(setq.object.nil)))) | 
| 26d80 |  0a 20 20 20 20 6f 62 6a 65 63 74 29 29 0a 0a 28    64 65 66 75 6e 20 64 6a 76 75 2d 62 6f 6f 6b 6d  | .....object))..(defun.djvu-bookm | 
| 26da0 |  61 72 6b 73 2d 70 61 67 65 2d 6d 61 78 20 28 6f    62 6a 65 63 74 29 0a 20 20 22 52 65 74 75 72 6e  | arks-page-max.(object)..."Return | 
| 26dc0 |  20 6d 61 78 69 6d 75 6d 20 70 61 67 65 20 6e 75    6d 62 65 72 20 6f 66 20 61 20 62 6f 6f 6b 6d 61  | .maximum.page.number.of.a.bookma | 
| 26de0 |  72 6b 20 74 72 65 65 20 4f 42 4a 45 43 54 2e 0a    52 65 74 75 72 6e 20 6e 69 6c 20 69 66 20 4f 42  | rk.tree.OBJECT..Return.nil.if.OB | 
| 26e00 |  4a 45 43 54 20 64 6f 65 73 20 6e 6f 74 20 68 61    76 65 20 69 6e 74 65 72 6e 61 6c 20 55 52 4c 73  | JECT.does.not.have.internal.URLs | 
| 26e20 |  2e 22 0a 20 20 28 6c 65 74 20 28 70 61 67 65 20    70 61 67 65 2d 6d 61 78 29 0a 20 20 20 20 28 64  | ."...(let.(page.page-max).....(d | 
| 26e40 |  6f 6c 69 73 74 20 28 65 6c 74 20 6f 62 6a 65 63    74 29 0a 20 20 20 20 20 20 28 61 6e 64 20 28 73  | olist.(elt.object).......(and.(s | 
| 26e60 |  65 74 71 20 70 61 67 65 20 28 64 6a 76 75 2d 75    72 6c 2d 70 61 67 65 20 28 6e 74 68 20 31 20 65  | etq.page.(djvu-url-page.(nth.1.e | 
| 26e80 |  6c 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 28 73 65 74 71 20 70 61 67 65 2d 6d 61 78 20  | lt)))............(setq.page-max. | 
| 26ea0 |  28 69 66 20 70 61 67 65 2d 6d 61 78 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (if.page-max.................... | 
| 26ec0 |  20 20 20 20 20 20 20 20 20 20 20 28 6d 61 78 20    70 61 67 65 2d 6d 61 78 20 70 61 67 65 29 0a 20  | ...........(max.page-max.page).. | 
| 26ee0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 29  | ...........................page) | 
| 26f00 |  29 29 0a 20 20 20 20 20 20 28 61 6e 64 20 28 6e    74 68 20 32 20 65 6c 74 29 0a 20 20 20 20 20 20  | )).......(and.(nth.2.elt)....... | 
| 26f20 |  20 20 20 20 20 28 73 65 74 71 20 70 61 67 65 20    28 64 6a 76 75 2d 62 6f 6f 6b 6d 61 72 6b 73 2d  | .....(setq.page.(djvu-bookmarks- | 
| 26f40 |  70 61 67 65 2d 6d 61 78 20 28 6e 74 68 63 64 72    20 32 20 65 6c 74 29 29 29 0a 20 20 20 20 20 20  | page-max.(nthcdr.2.elt)))....... | 
| 26f60 |  20 20 20 20 20 28 73 65 74 71 20 70 61 67 65 2d    6d 61 78 20 28 69 66 20 70 61 67 65 2d 6d 61 78  | .....(setq.page-max.(if.page-max | 
| 26f80 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ...............................( | 
| 26fa0 |  6d 61 78 20 70 61 67 65 2d 6d 61 78 20 70 61 67    65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | max.page-max.page).............. | 
| 26fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70    61 67 65 29 29 29 29 0a 20 20 20 20 70 61 67 65  | ...............page)))).....page | 
| 26fe0 |  2d 6d 61 78 29 29 0a 0a 28 64 65 66 75 6e 20 64    6a 76 75 2d 69 6e 73 65 72 74 2d 62 6f 6f 6b 6d  | -max))..(defun.djvu-insert-bookm | 
| 27000 |  61 72 6b 73 20 28 6f 62 6a 65 63 74 20 69 6e 64    65 6e 74 29 0a 20 20 22 49 6e 73 65 72 74 20 42  | arks.(object.indent)..."Insert.B | 
| 27020 |  6f 6f 6b 6d 61 72 6b 73 20 4f 42 4a 45 43 54 20    72 65 63 75 72 73 69 76 65 6c 79 2e 22 0a 20 20  | ookmarks.OBJECT.recursively."... | 
| 27040 |  28 6c 65 74 20 28 28 69 6e 64 65 6e 74 31 20 28    63 6f 6e 63 61 74 20 69 6e 64 65 6e 74 20 22 20  | (let.((indent1.(concat.indent.". | 
| 27060 |  22 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 73 74    20 28 65 6c 74 20 6f 62 6a 65 63 74 29 0a 20 20  | "))).....(dolist.(elt.object)... | 
| 27080 |  20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72    6d 61 74 20 22 5c 6e 25 73 28 25 53 5c 6e 25 73  | ....(insert.(format."\n%s(%S\n%s | 
| 270a0 |  20 25 53 22 20 69 6e 64 65 6e 74 20 28 63 61 72    20 65 6c 74 29 20 69 6e 64 65 6e 74 0a 20 20 20  | .%S".indent.(car.elt).indent.... | 
| 270c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 64 6a 76 75 2d 72 65 73 6f 6c 76 65  | ...................(djvu-resolve | 
| 270e0 |  2d 75 72 6c 20 28 6e 74 68 20 31 20 65 6c 74 29    29 29 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d  | -url.(nth.1.elt)))).......(djvu- | 
| 27100 |  69 6e 73 65 72 74 2d 62 6f 6f 6b 6d 61 72 6b 73    20 28 6e 74 68 63 64 72 20 32 20 65 6c 74 29 20  | insert-bookmarks.(nthcdr.2.elt). | 
| 27120 |  69 6e 64 65 6e 74 31 29 0a 20 20 20 20 20 20 28    69 6e 73 65 72 74 20 22 29 22 29 29 29 29 0a 0a  | indent1).......(insert.")")))).. | 
| 27140 |  28 64 65 66 75 6e 20 64 6a 76 75 2d 72 65 61 64    2d 62 6f 6f 6b 6d 61 72 6b 73 20 28 26 6f 70 74  | (defun.djvu-read-bookmarks.(&opt | 
| 27160 |  69 6f 6e 61 6c 20 64 6f 63 29 0a 20 20 22 52 65    61 64 20 62 6f 6f 6b 6d 61 72 6b 73 20 6f 66 20  | ional.doc)..."Read.bookmarks.of. | 
| 27180 |  61 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 20    66 72 6f 6d 20 62 6f 6f 6b 6d 61 72 6b 73 20 62  | a.Djvu.document.from.bookmarks.b | 
| 271a0 |  75 66 66 65 72 2e 22 0a 20 20 28 6c 65 74 20 28    6f 62 6a 65 63 74 29 0a 20 20 20 20 28 77 69 74  | uffer."...(let.(object).....(wit | 
| 271c0 |  68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72    20 28 64 6a 76 75 2d 72 65 66 20 62 6f 6f 6b 6d  | h-current-buffer.(djvu-ref.bookm | 
| 271e0 |  61 72 6b 73 2d 62 75 66 20 64 6f 63 29 0a 20 20    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | arks-buf.doc).......(save-excurs | 
| 27200 |  69 6f 6e 0a 20 20 20 20 20 20 20 20 28 73 61 76    65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20  | ion.........(save-restriction... | 
| 27220 |  20 20 20 20 20 20 20 20 28 77 69 64 65 6e 29 0a    20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d  | ........(widen)...........(goto- | 
| 27240 |  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 28 75 6e 6c  | char.(point-min))...........(unl | 
| 27260 |  65 73 73 20 28 65 6f 62 70 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f  | ess.(eobp).............(conditio | 
| 27280 |  6e 2d 63 61 73 65 20 6e 69 6c 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71  | n-case.nil.................(setq | 
| 272a0 |  20 6f 62 6a 65 63 74 20 28 72 65 61 64 20 28 63    75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29  | .object.(read.(current-buffer))) | 
| 272c0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    65 72 72 6f 72 20 28 65 72 72 6f 72 20 22 53 79  | ...............(error.(error."Sy | 
| 272e0 |  6e 74 61 78 20 65 72 72 6f 72 20 69 6e 20 62 6f    6f 6b 6d 61 72 6b 73 22 29 29 29 29 0a 20 20 20  | ntax.error.in.bookmarks")))).... | 
| 27300 |  20 20 20 20 20 20 20 28 73 6b 69 70 2d 63 68 61    72 73 2d 66 6f 72 77 61 72 64 20 22 20 5c 74 5c  | .......(skip-chars-forward.".\t\ | 
| 27320 |  6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b    20 57 65 20 73 68 6f 75 6c 64 20 68 61 76 65 20  | n")...........;;.We.should.have. | 
| 27340 |  73 77 61 6c 6c 6f 77 65 64 20 61 6c 6c 20 62 6f    6f 6b 6d 61 72 6b 73 2e 0a 20 20 20 20 20 20 20  | swallowed.all.bookmarks......... | 
| 27360 |  20 20 20 28 75 6e 6c 65 73 73 20 28 65 6f 62 70    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65  | ...(unless.(eobp).............(e | 
| 27380 |  72 72 6f 72 20 22 53 79 6e 74 61 78 20 65 72 72    6f 72 20 69 6e 20 62 6f 6f 6b 6d 61 72 6b 73 20  | rror."Syntax.error.in.bookmarks. | 
| 273a0 |  28 70 6f 73 69 74 69 6f 6e 20 25 73 29 22 20 28    70 6f 69 6e 74 29 29 29 29 29 29 0a 20 20 20 20  | (position.%s)".(point))))))..... | 
| 273c0 |  28 69 66 20 28 61 6e 64 20 6f 62 6a 65 63 74 20    28 6e 6f 74 20 28 65 71 20 27 62 6f 6f 6b 6d 61  | (if.(and.object.(not.(eq.'bookma | 
| 273e0 |  72 6b 73 20 28 63 61 72 20 6f 62 6a 65 63 74 29    29 29 29 0a 20 20 20 20 20 20 20 20 28 65 72 72  | rks.(car.object)))).........(err | 
| 27400 |  6f 72 20 22 4d 61 6c 66 6f 72 6d 65 64 20 62 6f    6f 6b 6d 61 72 6b 73 22 29 29 0a 20 20 20 20 6f  | or."Malformed.bookmarks")).....o | 
| 27420 |  62 6a 65 63 74 29 29 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 72 65 66 6f 72 6d 61 74 2d 62 6f  | bject))..(defun.djvu-reformat-bo | 
| 27440 |  6f 6b 6d 61 72 6b 73 20 28 26 6f 70 74 69 6f 6e    61 6c 20 64 6f 63 29 0a 20 20 22 52 65 66 6f 72  | okmarks.(&optional.doc)..."Refor | 
| 27460 |  6d 61 74 20 42 6f 6f 6b 6d 61 72 6b 73 20 62 75    66 66 65 72 20 66 6f 72 20 44 6a 76 75 20 64 6f  | mat.Bookmarks.buffer.for.Djvu.do | 
| 27480 |  63 75 6d 65 6e 74 20 44 4f 43 2e 22 0a 20 20 28    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28  | cument.DOC."...(interactive)...( | 
| 274a0 |  77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66    66 65 72 20 28 64 6a 76 75 2d 72 65 66 20 62 6f  | with-current-buffer.(djvu-ref.bo | 
| 274c0 |  6f 6b 6d 61 72 6b 73 2d 62 75 66 20 64 6f 63 29    0a 20 20 20 20 28 6c 65 74 20 28 28 70 6e 74 20  | okmarks-buf.doc).....(let.((pnt. | 
| 274e0 |  28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20    20 20 20 28 6f 62 6a 65 63 74 20 28 64 6a 76 75  | (point))...........(object.(djvu | 
| 27500 |  2d 72 65 61 64 2d 62 6f 6f 6b 6d 61 72 6b 73 20    64 6f 63 29 29 29 0a 20 20 20 20 20 20 28 65 72  | -read-bookmarks.doc))).......(er | 
| 27520 |  61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20    20 20 28 69 6e 73 65 72 74 20 22 28 62 6f 6f 6b  | ase-buffer).......(insert."(book | 
| 27540 |  6d 61 72 6b 73 22 29 0a 20 20 20 20 20 20 28 64    6a 76 75 2d 69 6e 73 65 72 74 2d 62 6f 6f 6b 6d  | marks").......(djvu-insert-bookm | 
| 27560 |  61 72 6b 73 20 28 63 64 72 20 6f 62 6a 65 63 74    29 20 22 20 22 29 0a 20 20 20 20 20 20 28 69 6e  | arks.(cdr.object).".").......(in | 
| 27580 |  73 65 72 74 20 22 29 5c 6e 22 29 0a 20 20 20 20    20 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6e 74  | sert.")\n").......(goto-char.pnt | 
| 275a0 |  29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76    75 2d 73 61 76 65 2d 62 6f 6f 6b 6d 61 72 6b 73  | ))))..(defun.djvu-save-bookmarks | 
| 275c0 |  20 28 73 63 72 69 70 74 20 26 6f 70 74 69 6f 6e    61 6c 20 64 6f 63 29 0a 20 20 22 53 61 76 65 20  | .(script.&optional.doc)..."Save. | 
| 275e0 |  62 6f 6f 6b 6d 61 72 6b 73 20 6f 66 20 61 20 44    6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 0a 54 68  | bookmarks.of.a.Djvu.document..Th | 
| 27600 |  69 73 20 64 75 6d 70 73 20 74 68 65 20 63 6f 6e    74 65 6e 74 20 6f 66 20 44 4f 43 27 73 20 62 6f  | is.dumps.the.content.of.DOC's.bo | 
| 27620 |  6f 6b 6d 61 72 6b 73 20 62 75 66 66 65 72 20 69    6e 74 6f 20 74 68 65 20 64 6a 76 75 73 65 64 20  | okmarks.buffer.into.the.djvused. | 
| 27640 |  73 63 72 69 70 74 0a 66 69 6c 65 20 53 43 52 49    50 54 2e 20 44 4f 43 20 64 65 66 61 75 6c 74 73  | script.file.SCRIPT..DOC.defaults | 
| 27660 |  20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20    44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 22 0a  | .to.the.current.Djvu.document.". | 
| 27680 |  20 20 28 75 6e 6c 65 73 73 20 64 6f 63 20 28 73    65 74 71 20 64 6f 63 20 64 6a 76 75 2d 64 6f 63  | ..(unless.doc.(setq.doc.djvu-doc | 
| 276a0 |  29 29 0a 20 20 28 6c 65 74 20 28 28 6f 62 6a 65    63 74 20 28 64 6a 76 75 2d 72 65 61 64 2d 62 6f  | ))...(let.((object.(djvu-read-bo | 
| 276c0 |  6f 6b 6d 61 72 6b 73 20 64 6f 63 29 29 29 0a 20    20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75  | okmarks.doc))).....(with-temp-bu | 
| 276e0 |  66 66 65 72 0a 20 20 20 20 20 20 28 73 65 74 71    20 62 75 66 66 65 72 2d 66 69 6c 65 2d 63 6f 64  | ffer.......(setq.buffer-file-cod | 
| 27700 |  69 6e 67 2d 73 79 73 74 65 6d 20 27 75 74 66 2d    38 29 0a 20 20 20 20 20 20 28 69 6e 73 65 72 74  | ing-system.'utf-8).......(insert | 
| 27720 |  20 22 73 65 74 2d 6f 75 74 6c 69 6e 65 5c 6e 22    29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 6f 62  | ."set-outline\n").......(when.ob | 
| 27740 |  6a 65 63 74 0a 20 20 20 20 20 20 20 20 28 69 6e    73 65 72 74 20 22 28 62 6f 6f 6b 6d 61 72 6b 73  | ject.........(insert."(bookmarks | 
| 27760 |  22 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20    28 28 64 6a 76 75 2d 64 6f 63 20 64 6f 63 29 29  | ").........(let.((djvu-doc.doc)) | 
| 27780 |  20 3b 20 44 4f 43 20 73 68 6f 75 6c 64 20 64 65    66 69 6e 69 74 65 6c 79 20 62 65 20 69 6e 69 74  | .;.DOC.should.definitely.be.init | 
| 277a0 |  69 61 6c 69 7a 65 64 20 61 62 6f 76 65 0a 20 20    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 69 6e  | ialized.above...........(djvu-in | 
| 277c0 |  73 65 72 74 2d 62 6f 6f 6b 6d 61 72 6b 73 20 28    63 64 72 20 6f 62 6a 65 63 74 29 20 22 20 22 29  | sert-bookmarks.(cdr.object).".") | 
| 277e0 |  29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72    74 20 22 29 5c 6e 22 29 29 0a 20 20 20 20 20 20  | ).........(insert.")\n"))....... | 
| 27800 |  28 69 6e 73 65 72 74 20 22 2e 5c 6e 22 29 0a 20    20 20 20 20 20 28 77 72 69 74 65 2d 72 65 67 69  | (insert.".\n").......(write-regi | 
| 27820 |  6f 6e 20 6e 69 6c 20 6e 69 6c 20 73 63 72 69 70    74 20 74 20 30 29 29 20 3b 20 61 70 70 65 6e 64  | on.nil.nil.script.t.0)).;.append | 
| 27840 |  20 74 6f 20 53 43 52 49 50 54 0a 20 20 20 20 28    64 6a 76 75 2d 69 6e 69 74 2d 6f 75 74 6c 69 6e  | .to.SCRIPT.....(djvu-init-outlin | 
| 27860 |  65 20 28 63 64 72 20 6f 62 6a 65 63 74 29 20 64    6f 63 29 29 29 0a 0a 3b 3b 3b 20 44 6a 76 75 20  | e.(cdr.object).doc)))..;;;.Djvu. | 
| 27880 |  4f 75 74 6c 69 6e 65 20 6d 6f 64 65 0a 0a 28 64    65 66 75 6e 20 64 6a 76 75 2d 69 6e 69 74 2d 6f  | Outline.mode..(defun.djvu-init-o | 
| 278a0 |  75 74 6c 69 6e 65 20 28 6f 62 6a 65 63 74 20 26    6f 70 74 69 6f 6e 61 6c 20 64 6f 63 29 0a 20 20  | utline.(object.&optional.doc)... | 
| 278c0 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 20 28 64 6a 76 75 2d 72 65 66 20 6f  | (with-current-buffer.(djvu-ref.o | 
| 278e0 |  75 74 6c 69 6e 65 2d 62 75 66 20 64 6f 63 29 0a    20 20 20 20 28 6c 65 74 20 28 62 75 66 66 65 72  | utline-buf.doc).....(let.(buffer | 
| 27900 |  2d 72 65 61 64 2d 6f 6e 6c 79 29 0a 20 20 20 20    20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29  | -read-only).......(erase-buffer) | 
| 27920 |  0a 20 20 20 20 20 20 28 64 6a 76 75 2d 69 6e 73    65 72 74 2d 6f 75 74 6c 69 6e 65 20 6f 62 6a 65  | .......(djvu-insert-outline.obje | 
| 27940 |  63 74 20 22 22 29 29 0a 20 20 20 20 28 73 65 74    2d 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64  | ct."")).....(set-buffer-modified | 
| 27960 |  2d 70 20 6e 69 6c 29 0a 20 20 20 20 28 73 65 74    71 20 62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e  | -p.nil).....(setq.buffer-read-on | 
| 27980 |  6c 79 20 74 29 0a 20 20 20 20 28 64 6a 76 75 2d    67 6f 74 6f 2d 6f 75 74 6c 69 6e 65 20 28 6f 72  | ly.t).....(djvu-goto-outline.(or | 
| 279a0 |  20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 20    64 6f 63 29 20 31 29 29 29 29 0a 0a 28 64 65 66  | .(djvu-ref.page.doc).1))))..(def | 
| 279c0 |  75 6e 20 64 6a 76 75 2d 69 6e 73 65 72 74 2d 6f    75 74 6c 69 6e 65 20 28 6f 62 6a 65 63 74 20 69  | un.djvu-insert-outline.(object.i | 
| 279e0 |  6e 64 65 6e 74 29 0a 20 20 22 49 6e 73 65 72 74    20 4f 75 74 6c 69 6e 65 20 4f 42 4a 45 43 54 20  | ndent)..."Insert.Outline.OBJECT. | 
| 27a00 |  72 65 63 75 72 73 69 76 65 6c 79 2e 22 0a 20 20    28 6c 65 74 20 28 28 69 6e 64 65 6e 74 31 20 28  | recursively."...(let.((indent1.( | 
| 27a20 |  63 6f 6e 63 61 74 20 69 6e 64 65 6e 74 20 22 20    20 22 29 29 0a 20 20 20 20 20 20 20 20 28 64 6a  | concat.indent."..")).........(dj | 
| 27a40 |  76 75 2d 72 65 73 6f 6c 76 65 2d 75 72 6c 20 27    73 68 6f 72 74 29 29 0a 20 20 20 20 28 64 6f 6c  | vu-resolve-url.'short)).....(dol | 
| 27a60 |  69 73 74 20 28 65 6c 74 20 6f 62 6a 65 63 74 29    0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 62 65  | ist.(elt.object).......(let.((be | 
| 27a80 |  67 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20    20 20 20 20 28 69 6e 73 65 72 74 20 69 6e 64 65  | g.(point))).........(insert.inde | 
| 27aa0 |  6e 74 20 28 63 61 72 20 65 6c 74 29 29 0a 20 20    20 20 20 20 20 20 28 6d 61 6b 65 2d 74 65 78 74  | nt.(car.elt)).........(make-text | 
| 27ac0 |  2d 62 75 74 74 6f 6e 20 62 65 67 20 28 70 6f 69    6e 74 29 20 27 74 79 70 65 20 27 64 6a 76 75 2d  | -button.beg.(point).'type.'djvu- | 
| 27ae0 |  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 20 3b 3b  | url...........................;; | 
| 27b00 |  20 49 6e 73 70 69 72 65 64 20 62 79 20 66 75 6e    63 74 69 6f 6e 20 60 6f 75 74 6c 69 6e 65 2d 66  | .Inspired.by.function.`outline-f | 
| 27b20 |  6f 6e 74 2d 6c 6f 63 6b 2d 66 61 63 65 27 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ont-lock-face'.................. | 
| 27b40 |  20 20 20 20 20 20 20 20 20 27 66 61 63 65 20 28    61 72 65 66 20 64 6a 76 75 2d 6f 75 74 6c 69 6e  | .........'face.(aref.djvu-outlin | 
| 27b60 |  65 2d 66 61 63 65 73 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e-faces......................... | 
| 27b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 25    20 28 2f 20 28 6c 65 6e 67 74 68 20 69 6e 64 65  | ..............(%.(/.(length.inde | 
| 27ba0 |  6e 74 29 20 32 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  | nt).2).......................... | 
| 27bc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 65 6e 67 74 68 20 64 6a 76 75 2d 6f 75 74  | ................(length.djvu-out | 
| 27be0 |  6c 69 6e 65 2d 66 61 63 65 73 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | line-faces)))................... | 
| 27c00 |  20 20 20 20 20 20 20 20 27 68 65 6c 70 2d 65 63    68 6f 20 28 66 6f 72 6d 61 74 20 22 6d 6f 75 73  | ........'help-echo.(format."mous | 
| 27c20 |  65 2d 32 2c 20 52 45 54 3a 20 75 72 6c 20 60 25    73 27 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | e-2,.RET:.url.`%s'"............. | 
| 27c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 27c60 |  20 28 6e 74 68 20 31 20 65 6c 74 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(nth.1.elt))................... | 
| 27c80 |  20 20 20 20 20 20 20 20 27 64 6a 76 75 2d 61 72    67 73 20 28 6c 69 73 74 20 28 6e 74 68 20 31 20  | ........'djvu-args.(list.(nth.1. | 
| 27ca0 |  65 6c 74 29 29 29 29 0a 20 20 20 20 20 20 28 69    6e 73 65 72 74 20 22 5c 73 22 20 28 73 75 62 73  | elt)))).......(insert."\s".(subs | 
| 27cc0 |  74 72 69 6e 67 20 28 64 6a 76 75 2d 72 65 73 6f    6c 76 65 2d 75 72 6c 20 28 6e 74 68 20 31 20 65  | tring.(djvu-resolve-url.(nth.1.e | 
| 27ce0 |  6c 74 29 29 20 31 29 20 22 5c 6e 22 29 0a 20 20    20 20 20 20 28 64 6a 76 75 2d 69 6e 73 65 72 74  | lt)).1)."\n").......(djvu-insert | 
| 27d00 |  2d 6f 75 74 6c 69 6e 65 20 28 6e 74 68 63 64 72    20 32 20 65 6c 74 29 20 69 6e 64 65 6e 74 31 29  | -outline.(nthcdr.2.elt).indent1) | 
| 27d20 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75    2d 6f 75 74 6c 69 6e 65 2d 70 61 67 65 20 28 26  | )))..(defun.djvu-outline-page.(& | 
| 27d40 |  6f 70 74 69 6f 6e 61 6c 20 70 6e 74 20 64 6f 63    29 0a 20 20 22 49 6e 20 4f 75 74 6c 69 6e 65 20  | optional.pnt.doc)..."In.Outline. | 
| 27d60 |  62 75 66 66 65 72 20 72 65 74 75 72 6e 20 70 61    67 65 20 6e 75 6d 62 65 72 20 61 74 20 70 6f 73  | buffer.return.page.number.at.pos | 
| 27d80 |  69 74 69 6f 6e 20 50 4e 54 2e 0a 50 4e 54 20 64    65 66 61 75 6c 74 73 20 74 6f 20 70 6f 73 69 74  | ition.PNT..PNT.defaults.to.posit | 
| 27da0 |  69 6f 6e 20 6f 66 20 70 6f 69 6e 74 2e 22 0a 20    20 28 64 6a 76 75 2d 75 72 6c 2d 70 61 67 65 0a  | ion.of.point."...(djvu-url-page. | 
| 27dc0 |  20 20 20 28 63 61 72 20 28 67 65 74 2d 74 65 78    74 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20  | ...(car.(get-text-property...... | 
| 27de0 |  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 28  | ....(save-excursion............( | 
| 27e00 |  69 66 20 70 6e 74 20 28 67 6f 74 6f 2d 63 68 61    72 20 70 6e 74 29 29 0a 20 20 20 20 20 20 20 20  | if.pnt.(goto-char.pnt))......... | 
| 27e20 |  20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66    2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20  | ...(beginning-of-line).......... | 
| 27e40 |  20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f    72 77 61 72 64 20 22 5c 73 5c 74 22 29 0a 20 20  | ..(skip-chars-forward."\s\t")... | 
| 27e60 |  20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 29    29 0a 20 20 20 20 20 20 20 20 20 27 64 6a 76 75  | .........(point))..........'djvu | 
| 27e80 |  2d 61 72 67 73 29 29 0a 20 20 20 64 6f 63 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 67 6f  | -args))....doc))..(defun.djvu-go | 
| 27ea0 |  74 6f 2d 6f 75 74 6c 69 6e 65 20 28 26 6f 70 74    69 6f 6e 61 6c 20 70 61 67 65 20 64 6f 63 29 0a  | to-outline.(&optional.page.doc). | 
| 27ec0 |  20 20 22 49 6e 20 4f 75 74 6c 69 6e 65 20 62 75    66 66 65 72 20 67 6f 20 74 6f 20 66 69 72 73 74  | .."In.Outline.buffer.go.to.first | 
| 27ee0 |  20 62 6f 6f 6b 6d 61 72 6b 20 6d 61 74 63 68 69    6e 67 20 50 41 47 45 2e 22 0a 20 20 28 75 6e 6c  | .bookmark.matching.PAGE."...(unl | 
| 27f00 |  65 73 73 20 70 61 67 65 20 28 73 65 74 71 20 70    61 67 65 20 28 64 6a 76 75 2d 72 65 66 20 70 61  | ess.page.(setq.page.(djvu-ref.pa | 
| 27f20 |  67 65 20 64 6f 63 29 29 29 0a 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69  | ge.doc)))...(goto-char.(point-mi | 
| 27f40 |  6e 29 29 0a 20 20 28 6c 65 74 20 28 28 70 6e 74    20 28 70 6f 69 6e 74 29 29 20 70 20 64 6f 6e 65  | n))...(let.((pnt.(point)).p.done | 
| 27f60 |  29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 6e 6f    74 20 28 6f 72 20 64 6f 6e 65 20 28 65 6f 62 70  | ).....(while.(not.(or.done.(eobp | 
| 27f80 |  29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20    28 73 65 74 71 20 70 20 28 64 6a 76 75 2d 6f 75  | ))).......(when.(setq.p.(djvu-ou | 
| 27fa0 |  74 6c 69 6e 65 2d 70 61 67 65 20 28 70 6f 69 6e    74 29 20 64 6f 63 29 29 0a 20 20 20 20 20 20 20  | tline-page.(point).doc))........ | 
| 27fc0 |  20 28 69 66 20 28 3c 3d 20 70 20 70 61 67 65 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | .(if.(<=.p.page).............(se | 
| 27fe0 |  74 71 20 70 6e 74 20 28 70 6f 69 6e 74 29 29 29    0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 64  | tq.pnt.(point))).........(setq.d | 
| 28000 |  6f 6e 65 20 28 3d 20 70 20 70 61 67 65 29 29 29    0a 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d  | one.(=.p.page))).......(forward- | 
| 28020 |  6c 69 6e 65 29 29 0a 20 20 20 20 28 67 6f 74 6f    2d 63 68 61 72 20 70 6e 74 29 29 29 0a 0a 3b 3b  | line)).....(goto-char.pnt)))..;; | 
| 28040 |  3b 20 49 6d 61 67 65 20 6d 69 6e 6f 72 20 6d 6f    64 65 0a 0a 28 64 65 66 6d 61 63 72 6f 20 64 6a  | ;.Image.minor.mode..(defmacro.dj | 
| 28060 |  76 75 2d 77 69 74 68 2d 65 76 65 6e 74 2d 62 75    66 66 65 72 20 28 65 76 65 6e 74 20 26 72 65 73  | vu-with-event-buffer.(event.&res | 
| 28080 |  74 20 62 6f 64 79 29 0a 20 20 22 57 69 74 68 20    62 75 66 66 65 72 20 6f 66 20 45 56 45 4e 54 20  | t.body)..."With.buffer.of.EVENT. | 
| 280a0 |  63 75 72 72 65 6e 74 2c 20 65 76 61 6c 75 61 74    65 20 42 4f 44 59 2e 22 0a 20 20 28 64 65 63 6c  | current,.evaluate.BODY."...(decl | 
| 280c0 |  61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29 0a    20 20 3b 3b 20 46 69 78 6d 65 3a 20 61 62 6f 72  | are.(indent.1))...;;.Fixme:.abor | 
| 280e0 |  74 20 69 66 20 60 6d 69 6e 69 62 75 66 66 65 72    70 27 20 72 65 74 75 72 6e 73 20 6e 6f 6e 2d 6e  | t.if.`minibufferp'.returns.non-n | 
| 28100 |  69 6c 3f 0a 20 20 60 28 77 69 74 68 2d 63 75 72    72 65 6e 74 2d 62 75 66 66 65 72 0a 20 20 20 20  | il?...`(with-current-buffer..... | 
| 28120 |  20 20 20 28 77 69 6e 64 6f 77 2d 62 75 66 66 65    72 20 28 6c 65 74 20 28 28 77 69 6e 20 28 70 6f  | ...(window-buffer.(let.((win.(po | 
| 28140 |  73 6e 2d 77 69 6e 64 6f 77 20 28 65 76 65 6e 74    2d 73 74 61 72 74 20 2c 65 76 65 6e 74 29 29 29  | sn-window.(event-start.,event))) | 
| 28160 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 77  | ).........................(if.(w | 
| 28180 |  69 6e 64 6f 77 70 20 77 69 6e 29 20 77 69 6e 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | indowp.win).win................. | 
| 281a0 |  20 20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d    65 72 72 6f 72 20 22 45 76 65 6e 74 20 6e 6f 74  | ..........(user-error."Event.not | 
| 281c0 |  20 6f 76 65 72 20 77 69 6e 64 6f 77 22 29 29 29    29 0a 20 20 20 20 20 2c 40 62 6f 64 79 29 29 0a  | .over.window"))))......,@body)). | 
| 281e0 |  0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 69 6d 61    67 65 2d 74 6f 67 67 6c 65 20 28 29 0a 20 20 22  | .(defun.djvu-image-toggle.()..." | 
| 28200 |  54 6f 67 67 6c 65 20 69 6d 61 67 65 20 64 69 73    70 6c 61 79 20 6f 66 20 63 75 72 72 65 6e 74 20  | Toggle.image.display.of.current. | 
| 28220 |  70 61 67 65 2e 22 0a 20 20 28 69 6e 74 65 72 61    63 74 69 76 65 29 0a 20 20 28 69 66 20 28 64 69  | page."...(interactive)...(if.(di | 
| 28240 |  73 70 6c 61 79 2d 69 6d 61 67 65 73 2d 70 29 0a    20 20 20 20 20 20 3b 3b 20 61 72 67 20 61 73 20  | splay-images-p).......;;.arg.as. | 
| 28260 |  69 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 64    65 66 69 6e 69 74 69 6f 6e 20 6f 66 0a 20 20 20  | in.interactive.definition.of.... | 
| 28280 |  20 20 20 3b 3b 20 60 64 65 66 69 6e 65 2d 64 65    72 69 76 65 64 2d 6d 6f 64 65 27 0a 20 20 20 20  | ...;;.`define-derived-mode'..... | 
| 282a0 |  20 20 28 64 6a 76 75 2d 69 6d 61 67 65 2d 6d 6f    64 65 20 28 6f 72 20 63 75 72 72 65 6e 74 2d 70  | ..(djvu-image-mode.(or.current-p | 
| 282c0 |  72 65 66 69 78 2d 61 72 67 20 27 74 6f 67 67 6c    65 29 29 0a 20 20 20 20 28 6d 65 73 73 61 67 65  | refix-arg.'toggle)).....(message | 
| 282e0 |  20 22 43 61 6e 6e 6f 74 20 64 69 73 70 6c 61 79    20 69 6d 61 67 65 73 22 29 29 29 0a 0a 28 64 65  | ."Cannot.display.images")))..(de | 
| 28300 |  66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20    64 6a 76 75 2d 69 6d 61 67 65 2d 6d 6f 64 65 0a  | fine-minor-mode.djvu-image-mode. | 
| 28320 |  20 20 22 49 6d 61 67 65 20 64 69 73 70 6c 61 79    20 6f 66 20 63 75 72 72 65 6e 74 20 70 61 67 65  | .."Image.display.of.current.page | 
| 28340 |  2e 22 0a 20 20 3a 6c 69 67 68 74 65 72 20 22 49    6d 61 67 65 22 0a 0a 20 20 3b 3b 20 4b 65 79 62  | ."...:lighter."Image"....;;.Keyb | 
| 28360 |  69 6e 64 69 6e 67 73 20 66 6f 72 20 6d 6f 74 69    6f 6e 20 63 6f 6d 6d 61 6e 64 73 20 61 64 6f 70  | indings.for.motion.commands.adop | 
| 28380 |  74 65 64 20 66 72 6f 6d 20 60 69 6d 61 67 65 2d    6d 6f 64 65 2d 6d 61 70 27 0a 20 20 3a 6b 65 79  | ted.from.`image-mode-map'...:key | 
| 283a0 |  6d 61 70 20 27 28 28 22 20 22 20 20 20 20 20 20    20 20 20 20 20 20 20 20 2e 20 64 6a 76 75 2d 69  | map.'(("."................djvu-i | 
| 283c0 |  6d 61 67 65 2d 73 63 72 6f 6c 6c 2d 75 70 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 28 5b 3f 5c  | mage-scroll-up).............([?\ | 
| 283e0 |  53 2d 5c 20 5d 20 20 20 20 20 20 20 20 20 2e 20    64 6a 76 75 2d 69 6d 61 67 65 2d 73 63 72 6f 6c  | S-\.]...........djvu-image-scrol | 
| 28400 |  6c 2d 64 6f 77 6e 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 22 5c 43 2d 3f 22 20 20 20 20 20  | l-down).............("\C-?"..... | 
| 28420 |  20 20 20 20 20 20 2e 20 64 6a 76 75 2d 69 6d 61    67 65 2d 73 63 72 6f 6c 6c 2d 64 6f 77 6e 29 0a  | ........djvu-image-scroll-down). | 
| 28440 |  20 20 20 20 20 20 20 20 20 20 20 20 28 5b 72 65    6d 61 70 20 73 63 72 6f 6c 6c 2d 75 70 2d 63 6f  | ............([remap.scroll-up-co | 
| 28460 |  6d 6d 61 6e 64 5d 20 20 20 20 20 20 2e 20 64 6a    76 75 2d 69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d  | mmand]........djvu-image-scroll- | 
| 28480 |  75 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 5b 72 65 6d 61 70 20 73 63 72 6f 6c 6c 2d 64  | up).............([remap.scroll-d | 
| 284a0 |  6f 77 6e 2d 63 6f 6d 6d 61 6e 64 5d 20 20 20 20    2e 20 64 6a 76 75 2d 69 6d 61 67 65 2d 73 63 72  | own-command]......djvu-image-scr | 
| 284c0 |  6f 6c 6c 2d 64 6f 77 6e 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 5b 72 65 6d 61 70 20 6e 65  | oll-down).............([remap.ne | 
| 284e0 |  78 74 2d 6c 69 6e 65 5d 20 20 20 20 20 20 20 20    20 20 20 20 20 20 2e 20 64 6a 76 75 2d 69 6d 61  | xt-line]................djvu-ima | 
| 28500 |  67 65 2d 6e 65 78 74 2d 6c 69 6e 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 5b 72 65 6d 61  | ge-next-line).............([rema | 
| 28520 |  70 20 70 72 65 76 69 6f 75 73 2d 6c 69 6e 65 5d    20 20 20 20 20 20 20 20 20 20 2e 20 64 6a 76 75  | p.previous-line]............djvu | 
| 28540 |  2d 69 6d 61 67 65 2d 70 72 65 76 69 6f 75 73 2d    6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20  | -image-previous-line)........... | 
| 28560 |  20 20 28 5b 72 65 6d 61 70 20 66 6f 72 77 61 72    64 2d 63 68 61 72 5d 20 20 20 20 20 20 20 20 20  | ..([remap.forward-char]......... | 
| 28580 |  20 20 2e 20 69 6d 61 67 65 2d 66 6f 72 77 61 72    64 2d 68 73 63 72 6f 6c 6c 29 0a 20 20 20 20 20  | ....image-forward-hscroll)...... | 
| 285a0 |  20 20 20 20 20 20 20 28 5b 72 65 6d 61 70 20 62    61 63 6b 77 61 72 64 2d 63 68 61 72 5d 20 20 20  | .......([remap.backward-char]... | 
| 285c0 |  20 20 20 20 20 20 20 2e 20 69 6d 61 67 65 2d 62    61 63 6b 77 61 72 64 2d 68 73 63 72 6f 6c 6c 29  | .........image-backward-hscroll) | 
| 285e0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 5b 72    65 6d 61 70 20 72 69 67 68 74 2d 63 68 61 72 5d  | .............([remap.right-char] | 
| 28600 |  20 20 20 20 20 20 20 20 20 20 20 20 20 2e 20 69    6d 61 67 65 2d 66 6f 72 77 61 72 64 2d 68 73 63  | ...............image-forward-hsc | 
| 28620 |  72 6f 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 5b 72 65 6d 61 70 20 6c 65 66 74 2d 63  | roll).............([remap.left-c | 
| 28640 |  68 61 72 5d 20 20 20 20 20 20 20 20 20 20 20 20    20 20 2e 20 69 6d 61 67 65 2d 62 61 63 6b 77 61  | har]................image-backwa | 
| 28660 |  72 64 2d 68 73 63 72 6f 6c 6c 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 5b 72 65 6d 61 70 20  | rd-hscroll).............([remap. | 
| 28680 |  6d 6f 76 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 6f    66 2d 6c 69 6e 65 5d 20 2e 20 69 6d 61 67 65 2d  | move-beginning-of-line]...image- | 
| 286a0 |  62 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 5b 72 65 6d 61 70 20 6d 6f 76 65 2d 65 6e  | bol).............([remap.move-en | 
| 286c0 |  64 2d 6f 66 2d 6c 69 6e 65 5d 20 20 20 20 20 20    20 2e 20 69 6d 61 67 65 2d 65 6f 6c 29 0a 20 20  | d-of-line].........image-eol)... | 
| 286e0 |  20 20 20 20 20 20 20 20 20 20 28 5b 72 65 6d 61    70 20 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 62  | ..........([remap.beginning-of-b | 
| 28700 |  75 66 66 65 72 5d 20 20 20 20 2e 20 69 6d 61 67    65 2d 62 6f 62 29 0a 20 20 20 20 20 20 20 20 20  | uffer]......image-bob).......... | 
| 28720 |  20 20 20 28 5b 72 65 6d 61 70 20 65 6e 64 2d 6f    66 2d 62 75 66 66 65 72 5d 20 20 20 20 20 20 20  | ...([remap.end-of-buffer]....... | 
| 28740 |  20 20 20 2e 20 69 6d 61 67 65 2d 65 6f 62 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 0a 20  | .....image-eob).............;;.. | 
| 28760 |  20 20 20 20 20 20 20 20 20 20 20 28 22 2b 22 20    2e 20 64 6a 76 75 2d 69 6d 61 67 65 2d 7a 6f 6f  | ...........("+"...djvu-image-zoo | 
| 28780 |  6d 2d 69 6e 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 22 2d 22 20 2e 20 64 6a 76 75 2d 69 6d  | m-in).............("-"...djvu-im | 
| 287a0 |  61 67 65 2d 7a 6f 6f 6d 2d 6f 75 74 29 0a 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 5b 64 72 61  | age-zoom-out)..............([dra | 
| 287c0 |  67 2d 6d 6f 75 73 65 2d 31 5d 20 20 20 2e 20 64    6a 76 75 2d 6d 6f 75 73 65 2d 72 65 63 74 2d 61  | g-mouse-1].....djvu-mouse-rect-a | 
| 287e0 |  72 65 61 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 5b 53 2d 64 72 61 67 2d 6d 6f 75 73 65 2d  | rea).............([S-drag-mouse- | 
| 28800 |  31 5d 20 2e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d    74 65 78 74 2d 61 72 65 61 29 0a 20 20 20 20 20  | 1]...djvu-mouse-text-area)...... | 
| 28820 |  20 20 20 20 20 20 20 28 5b 43 2d 64 72 61 67 2d    6d 6f 75 73 65 2d 31 5d 20 2e 20 64 6a 76 75 2d  | .......([C-drag-mouse-1]...djvu- | 
| 28840 |  6d 6f 75 73 65 2d 74 65 78 74 2d 61 72 65 61 2d    70 75 73 68 70 69 6e 29 0a 20 20 20 20 20 20 20  | mouse-text-area-pushpin)........ | 
| 28860 |  20 20 20 20 20 28 5b 64 72 61 67 2d 6d 6f 75 73    65 2d 32 5d 20 20 20 2e 20 64 6a 76 75 2d 6d 6f  | .....([drag-mouse-2].....djvu-mo | 
| 28880 |  75 73 65 2d 6c 69 6e 65 2d 61 72 65 61 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 5b 53 2d 64  | use-line-area).............([S-d | 
| 288a0 |  72 61 67 2d 6d 6f 75 73 65 2d 32 5d 20 2e 20 64    6a 76 75 2d 6d 6f 75 73 65 2d 6c 69 6e 65 2d 61  | rag-mouse-2]...djvu-mouse-line-a | 
| 288c0 |  72 65 61 2d 68 6f 72 69 7a 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 5b 43 2d 64 72 61 67 2d  | rea-horiz).............([C-drag- | 
| 288e0 |  6d 6f 75 73 65 2d 32 5d 20 2e 20 64 6a 76 75 2d    6d 6f 75 73 65 2d 6c 69 6e 65 2d 61 72 65 61 2d  | mouse-2]...djvu-mouse-line-area- | 
| 28900 |  76 65 72 74 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 3b 3b 0a 20 20 20 20 20 20 20 20 20 20 20  | vert).............;;............ | 
| 28920 |  20 28 5b 64 6f 77 6e 2d 6d 6f 75 73 65 2d 31 5d    20 20 20 2e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d  | .([down-mouse-1].....djvu-mouse- | 
| 28940 |  64 72 61 67 2d 74 72 61 63 6b 2d 61 72 65 61 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 5b 53  | drag-track-area).............([S | 
| 28960 |  2d 64 6f 77 6e 2d 6d 6f 75 73 65 2d 31 5d 20 2e    20 64 6a 76 75 2d 6d 6f 75 73 65 2d 64 72 61 67  | -down-mouse-1]...djvu-mouse-drag | 
| 28980 |  2d 74 72 61 63 6b 2d 61 72 65 61 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 5b 43 2d 64 6f 77  | -track-area).............([C-dow | 
| 289a0 |  6e 2d 6d 6f 75 73 65 2d 31 5d 20 2e 20 64 6a 76    75 2d 6d 6f 75 73 65 2d 64 72 61 67 2d 74 72 61  | n-mouse-1]...djvu-mouse-drag-tra | 
| 289c0 |  63 6b 2d 61 72 65 61 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 5b 64 6f 77 6e 2d 6d 6f 75 73  | ck-area).............([down-mous | 
| 289e0 |  65 2d 32 5d 20 20 20 2e 20 28 6c 61 6d 62 64 61    20 28 65 76 65 6e 74 29 20 28 69 6e 74 65 72 61  | e-2].....(lambda.(event).(intera | 
| 28a00 |  63 74 69 76 65 20 22 65 22 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ctive."e")...................... | 
| 28a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a    76 75 2d 6d 6f 75 73 65 2d 64 72 61 67 2d 74 72  | .............(djvu-mouse-drag-tr | 
| 28a40 |  61 63 6b 2d 61 72 65 61 20 65 76 65 6e 74 20 74    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ack-area.event.t)))............. | 
| 28a60 |  28 5b 53 2d 64 6f 77 6e 2d 6d 6f 75 73 65 2d 32    5d 20 2e 20 28 6c 61 6d 62 64 61 20 28 65 76 65  | ([S-down-mouse-2]...(lambda.(eve | 
| 28a80 |  6e 74 29 20 28 69 6e 74 65 72 61 63 74 69 76 65    20 22 65 22 29 0a 20 20 20 20 20 20 20 20 20 20  | nt).(interactive."e")........... | 
| 28aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6d 6f  | ........................(djvu-mo | 
| 28ac0 |  75 73 65 2d 64 72 61 67 2d 74 72 61 63 6b 2d 61    72 65 61 20 65 76 65 6e 74 20 27 68 6f 72 69 7a  | use-drag-track-area.event.'horiz | 
| 28ae0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 5b 43 2d 64 6f 77 6e 2d 6d 6f 75 73 65 2d 32  | ))).............([C-down-mouse-2 | 
| 28b00 |  5d 20 2e 20 28 6c 61 6d 62 64 61 20 28 65 76 65    6e 74 29 20 28 69 6e 74 65 72 61 63 74 69 76 65  | ]...(lambda.(event).(interactive | 
| 28b20 |  20 22 65 22 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."e")........................... | 
| 28b40 |  20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6d 6f    75 73 65 2d 64 72 61 67 2d 74 72 61 63 6b 2d 61  | ........(djvu-mouse-drag-track-a | 
| 28b60 |  72 65 61 20 65 76 65 6e 74 20 27 76 65 72 74 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b  | rea.event.'vert))).............; | 
| 28b80 |  3b 20 46 49 58 4d 45 3a 20 54 68 65 20 66 6f 6c    6c 6f 77 69 6e 67 20 62 69 6e 64 69 6e 67 20 68  | ;.FIXME:.The.following.binding.h | 
| 28ba0 |  61 73 20 6e 6f 20 65 66 66 65 63 74 2e 20 20 57    68 79 3f 3f 0a 20 20 20 20 20 20 20 20 20 20 20  | as.no.effect...Why??............ | 
| 28bc0 |  20 28 5b 4d 2d 64 72 61 67 2d 6d 6f 75 73 65 2d    31 5d 20 2e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d  | .([M-drag-mouse-1]...djvu-mouse- | 
| 28be0 |  77 6f 72 64 2d 61 72 65 61 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 5b 4d 2d 64 6f 77 6e 2d  | word-area).............([M-down- | 
| 28c00 |  6d 6f 75 73 65 2d 31 5d 20 2e 20 64 6a 76 75 2d    6d 6f 75 73 65 2d 64 72 61 67 2d 74 72 61 63 6b  | mouse-1]...djvu-mouse-drag-track | 
| 28c20 |  2d 61 72 65 61 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 5b 64 72 61 67 2d 6d 6f 75 73 65 2d  | -area).............([drag-mouse- | 
| 28c40 |  33 5d 20 20 20 2e 20 64 6a 76 75 2d 6d 6f 75 73    65 2d 77 6f 72 64 2d 61 72 65 61 29 20 3b 20 73  | 3].....djvu-mouse-word-area).;.s | 
| 28c60 |  75 62 73 74 69 74 75 74 65 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 5b 64 6f 77 6e 2d 6d 6f 75  | ubstitute.............([down-mou | 
| 28c80 |  73 65 2d 33 5d 20 20 20 2e 20 64 6a 76 75 2d 6d    6f 75 73 65 2d 64 72 61 67 2d 74 72 61 63 6b 2d  | se-3].....djvu-mouse-drag-track- | 
| 28ca0 |  61 72 65 61 29 29 20 3b 20 73 75 62 73 74 69 74    75 74 65 0a 0a 20 20 28 69 6d 61 67 65 2d 6d 6f  | area)).;.substitute....(image-mo | 
| 28cc0 |  64 65 2d 73 65 74 75 70 2d 77 69 6e 70 72 6f 70    73 29 0a 0a 20 20 28 6c 65 74 2a 20 28 28 64 69  | de-setup-winprops)....(let*.((di | 
| 28ce0 |  73 70 6c 61 79 20 28 67 65 74 2d 74 65 78 74 2d    70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 2d  | splay.(get-text-property.(point- | 
| 28d00 |  6d 69 6e 29 20 27 64 69 73 70 6c 61 79 29 29 0a    20 20 20 20 20 20 20 20 20 28 65 6e 61 62 6c 65  | min).'display))..........(enable | 
| 28d20 |  20 28 61 6e 64 20 64 6a 76 75 2d 69 6d 61 67 65    2d 6d 6f 64 65 20 28 6e 6f 74 20 64 69 73 70 6c  | .(and.djvu-image-mode.(not.displ | 
| 28d40 |  61 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 28    64 69 73 61 62 6c 65 20 28 61 6e 64 20 28 6e 6f  | ay)))..........(disable.(and.(no | 
| 28d60 |  74 20 64 6a 76 75 2d 69 6d 61 67 65 2d 6d 6f 64    65 29 20 64 69 73 70 6c 61 79 29 29 29 0a 20 20  | t.djvu-image-mode).display)))... | 
| 28d80 |  20 20 28 63 6f 6e 64 20 28 65 6e 61 62 6c 65 0a    20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65  | ..(cond.(enable............;;.Re | 
| 28da0 |  6d 65 6d 62 65 72 20 44 50 4f 53 20 69 66 20 77    65 20 65 6e 61 62 6c 65 20 60 64 6a 76 75 2d 69  | member.DPOS.if.we.enable.`djvu-i | 
| 28dc0 |  6d 61 67 65 2d 6d 6f 64 65 27 2e 0a 20 20 20 20    20 20 20 20 20 20 20 28 64 6a 76 75 2d 73 65 74  | mage-mode'.............(djvu-set | 
| 28de0 |  20 72 65 61 64 2d 70 6f 73 20 28 6c 65 74 20 28    64 6a 76 75 2d 69 6d 61 67 65 2d 6d 6f 64 65 29  | .read-pos.(let.(djvu-image-mode) | 
| 28e00 |  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  | ................................ | 
| 28e20 |  20 28 64 6a 76 75 2d 72 65 61 64 2d 64 70 6f 73    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 3b  | .(djvu-read-dpos)))............; | 
| 28e40 |  3b 20 44 6f 6e 27 74 20 73 63 72 6f 6c 6c 20 75    6e 6c 65 73 73 20 74 68 65 20 75 73 65 72 20 73  | ;.Don't.scroll.unless.the.user.s | 
| 28e60 |  70 65 63 69 66 69 63 61 6c 6c 79 20 61 73 6b 65    64 20 66 6f 72 20 69 74 2e 0a 20 20 20 20 20 20  | pecifically.asked.for.it........ | 
| 28e80 |  20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c    20 61 75 74 6f 2d 68 73 63 72 6f 6c 6c 2d 6d 6f  | .....(setq-local.auto-hscroll-mo | 
| 28ea0 |  64 65 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20    20 20 20 28 64 69 73 61 62 6c 65 0a 20 20 20 20  | de.nil))...........(disable..... | 
| 28ec0 |  20 20 20 20 20 20 20 3b 3b 20 52 65 6d 65 6d 62    65 72 20 73 63 72 6f 6c 6c 69 6e 67 20 77 68 65  | .......;;.Remember.scrolling.whe | 
| 28ee0 |  6e 20 77 65 20 6c 65 61 76 65 20 69 6d 61 67 65    20 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20  | n.we.leave.image.mode........... | 
| 28f00 |  20 28 64 6a 76 75 2d 73 65 74 20 69 6d 61 67 65    2d 76 73 63 72 6f 6c 6c 20 28 64 6a 76 75 2d 69  | .(djvu-set.image-vscroll.(djvu-i | 
| 28f20 |  6d 61 67 65 2d 76 73 63 72 6f 6c 6c 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | mage-vscroll))............(djvu- | 
| 28f40 |  73 65 74 20 69 6d 61 67 65 2d 68 73 63 72 6f 6c    6c 20 28 77 69 6e 64 6f 77 2d 68 73 63 72 6f 6c  | set.image-hscroll.(window-hscrol | 
| 28f60 |  6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28    73 65 74 2d 77 69 6e 64 6f 77 2d 68 73 63 72 6f  | l))............(set-window-hscro | 
| 28f80 |  6c 6c 20 28 73 65 6c 65 63 74 65 64 2d 77 69 6e    64 6f 77 29 20 30 29 29 29 0a 0a 20 20 20 20 28  | ll.(selected-window).0)))......( | 
| 28fa0 |  69 66 20 28 6f 72 20 65 6e 61 62 6c 65 20 64 69    73 61 62 6c 65 29 20 28 64 6a 76 75 2d 69 6d 61  | if.(or.enable.disable).(djvu-ima | 
| 28fc0 |  67 65 29 29 0a 0a 20 20 20 20 28 63 6f 6e 64 20    28 65 6e 61 62 6c 65 0a 20 20 20 20 20 20 20 20  | ge))......(cond.(enable......... | 
| 28fe0 |  20 20 20 3b 3b 20 43 6f 64 65 20 61 64 6f 70 74    65 64 20 66 72 6f 6d 20 60 69 6d 61 67 65 2d 62  | ...;;.Code.adopted.from.`image-b | 
| 29000 |  6f 6c 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20    28 6c 65 74 2a 20 28 28 69 6d 61 67 65 2d 73 69  | ol'.............(let*.((image-si | 
| 29020 |  7a 65 20 28 69 6d 61 67 65 2d 64 69 73 70 6c 61    79 2d 73 69 7a 65 0a 20 20 20 20 20 20 20 20 20  | ze.(image-display-size.......... | 
| 29040 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 69 6d 61 67 65 2d 67 65 74  | ......................(image-get | 
| 29060 |  2d 64 69 73 70 6c 61 79 2d 70 72 6f 70 65 72 74    79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | -display-property)))............ | 
| 29080 |  20 20 20 20 20 20 20 28 69 6d 67 2d 77 69 64 74    68 20 20 28 63 65 69 6c 69 6e 67 20 28 63 61 72  | .......(img-width..(ceiling.(car | 
| 290a0 |  20 69 6d 61 67 65 2d 73 69 7a 65 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .image-size))).................. | 
| 290c0 |  20 28 69 6d 67 2d 68 65 69 67 68 74 20 28 63 65    69 6c 69 6e 67 20 28 63 64 72 20 69 6d 61 67 65  | .(img-height.(ceiling.(cdr.image | 
| 290e0 |  2d 73 69 7a 65 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 65 64 67 65  | -size)))...................(edge | 
| 29100 |  73 20 28 77 69 6e 64 6f 77 2d 69 6e 73 69 64 65    2d 65 64 67 65 73 29 29 0a 20 20 20 20 20 20 20  | s.(window-inside-edges))........ | 
| 29120 |  20 20 20 20 20 20 20 20 20 20 20 28 77 69 6e 2d    77 69 64 74 68 20 20 28 2d 20 28 6e 74 68 20 32  | ...........(win-width..(-.(nth.2 | 
| 29140 |  20 65 64 67 65 73 29 20 28 6e 74 68 20 30 20 65    64 67 65 73 29 29 29 0a 20 20 20 20 20 20 20 20  | .edges).(nth.0.edges)))......... | 
| 29160 |  20 20 20 20 20 20 20 20 20 20 28 77 69 6e 2d 68    65 69 67 68 74 20 28 2d 20 28 6e 74 68 20 33 20  | ..........(win-height.(-.(nth.3. | 
| 29180 |  65 64 67 65 73 29 20 28 6e 74 68 20 31 20 65 64    67 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20  | edges).(nth.1.edges))))......... | 
| 291a0 |  20 20 20 20 20 28 69 6d 61 67 65 2d 73 65 74 2d    77 69 6e 64 6f 77 2d 76 73 63 72 6f 6c 6c 20 28  | .....(image-set-window-vscroll.( | 
| 291c0 |  6d 69 6e 20 28 64 6a 76 75 2d 72 65 66 20 69 6d    61 67 65 2d 76 73 63 72 6f 6c 6c 29 0a 20 20 20  | min.(djvu-ref.image-vscroll).... | 
| 291e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 29200 |  20 20 20 20 20 20 20 20 20 28 6d 61 78 20 30 20    28 2d 20 69 6d 67 2d 68 65 69 67 68 74 20 77 69  | .........(max.0.(-.img-height.wi | 
| 29220 |  6e 2d 68 65 69 67 68 74 29 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 69 6d 61 67 65  | n-height))))..............(image | 
| 29240 |  2d 73 65 74 2d 77 69 6e 64 6f 77 2d 68 73 63 72    6f 6c 6c 20 28 6d 69 6e 20 28 64 6a 76 75 2d 72  | -set-window-hscroll.(min.(djvu-r | 
| 29260 |  65 66 20 69 6d 61 67 65 2d 68 73 63 72 6f 6c 6c    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ef.image-hscroll)............... | 
| 29280 |  20 20 20 20 20 20 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  | ..............................(m | 
| 292a0 |  61 78 20 30 20 28 2d 20 69 6d 67 2d 77 69 64 74    68 20 77 69 6e 2d 77 69 64 74 68 29 29 29 29 29  | ax.0.(-.img-width.win-width))))) | 
| 292c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 64 69 73    61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20  | )...........(disable............ | 
| 292e0 |  3b 3b 20 47 6f 20 74 6f 20 44 50 4f 53 20 69 66    20 77 65 20 64 69 73 61 62 6c 65 20 60 64 6a 76  | ;;.Go.to.DPOS.if.we.disable.`djv | 
| 29300 |  75 2d 69 6d 61 67 65 2d 6d 6f 64 65 27 2e 0a 20    20 20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d  | u-image-mode'.............(djvu- | 
| 29320 |  67 6f 74 6f 2d 72 65 61 64 20 28 64 6a 76 75 2d    72 65 66 20 72 65 61 64 2d 70 6f 73 29 29 29 29  | goto-read.(djvu-ref.read-pos)))) | 
| 29340 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d    69 6d 61 67 65 20 28 26 6f 70 74 69 6f 6e 61 6c  | ))..(defun.djvu-image.(&optional | 
| 29360 |  20 69 73 69 7a 65 29 0a 20 20 22 49 66 20 60 64    6a 76 75 2d 69 6d 61 67 65 2d 6d 6f 64 65 27 20  | .isize)..."If.`djvu-image-mode'. | 
| 29380 |  69 73 20 65 6e 61 62 6c 65 64 2c 20 64 69 73 70    6c 61 79 20 69 6d 61 67 65 20 6f 66 20 63 75 72  | is.enabled,.display.image.of.cur | 
| 293a0 |  72 65 6e 74 20 44 6a 76 75 20 70 61 67 65 2e 0a    4f 74 68 65 72 77 69 73 65 20 72 65 6d 6f 76 65  | rent.Djvu.page..Otherwise.remove | 
| 293c0 |  20 74 68 65 20 69 6d 61 67 65 2e 22 0a 20 20 3b    3b 20 53 74 72 61 6e 67 65 21 20 20 60 64 6a 76  | .the.image."...;;.Strange!..`djv | 
| 293e0 |  75 2d 69 6d 61 67 65 27 20 6d 6f 64 69 66 69 65    73 20 74 68 65 20 62 75 66 66 65 72 20 28 69 74  | u-image'.modifies.the.buffer.(it | 
| 29400 |  73 20 74 65 78 74 20 70 72 6f 70 65 72 74 69 65    73 29 2e 0a 20 20 3b 3b 20 4e 6f 6e 65 74 68 65  | s.text.properties)....;;.Nonethe | 
| 29420 |  6c 65 73 73 2c 20 77 65 20 65 6e 64 20 75 70 20    77 69 74 68 20 61 6e 20 75 6e 6d 6f 64 69 66 69  | less,.we.end.up.with.an.unmodifi | 
| 29440 |  65 64 20 62 75 66 66 65 72 2e 20 20 54 68 69 73    20 68 6f 6c 64 73 2c 0a 20 20 3b 3b 20 69 6e 20  | ed.buffer...This.holds,...;;.in. | 
| 29460 |  70 61 72 74 69 63 75 6c 61 72 2c 20 66 6f 72 20    74 68 65 20 22 62 61 72 65 22 20 63 61 6c 6c 73  | particular,.for.the."bare".calls | 
| 29480 |  20 6f 66 20 60 64 6a 76 75 2d 69 6d 61 67 65 27    20 62 79 0a 20 20 3b 3b 20 60 64 6a 76 75 2d 69  | .of.`djvu-image'.by...;;.`djvu-i | 
| 294a0 |  6d 61 67 65 2d 7a 6f 6f 6d 2d 69 6e 27 20 61 6e    64 20 60 64 6a 76 75 2d 69 6d 61 67 65 2d 7a 6f  | mage-zoom-in'.and.`djvu-image-zo | 
| 294c0 |  6f 6d 2d 6f 75 74 27 2e 0a 20 20 28 69 66 20 28    6e 6f 74 20 64 6a 76 75 2d 69 6d 61 67 65 2d 6d  | om-out'....(if.(not.djvu-image-m | 
| 294e0 |  6f 64 65 29 0a 20 20 20 20 20 20 28 6c 65 74 20    28 62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c  | ode).......(let.(buffer-read-onl | 
| 29500 |  79 29 0a 20 20 20 20 20 20 20 20 28 72 65 6d 6f    76 65 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69  | y).........(remove-text-properti | 
| 29520 |  65 73 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28    70 6f 69 6e 74 2d 6d 61 78 29 20 27 28 64 69 73  | es.(point-min).(point-max).'(dis | 
| 29540 |  70 6c 61 79 20 6e 69 6c 29 29 29 0a 20 20 20 20    3b 3b 20 55 70 64 61 74 65 20 69 6d 61 67 65 20  | play.nil))).....;;.Update.image. | 
| 29560 |  69 66 20 6e 65 63 65 73 73 61 72 79 2e 0a 20 20    20 20 28 69 66 20 28 6f 72 20 28 6e 6f 74 20 28  | if.necessary......(if.(or.(not.( | 
| 29580 |  65 71 20 28 64 6a 76 75 2d 72 65 66 20 70 61 67    65 29 20 28 63 61 72 20 28 64 6a 76 75 2d 72 65  | eq.(djvu-ref.page).(car.(djvu-re | 
| 295a0 |  66 20 69 6d 61 67 65 29 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 61 6e 64 20 69 73 69  | f.image)))).............(and.isi | 
| 295c0 |  7a 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 6f 74 20 28 65 71 20 69 73 69  | ze..................(not.(eq.isi | 
| 295e0 |  7a 65 20 28 6e 74 68 20 31 20 28 64 6a 76 75 2d    72 65 66 20 69 6d 61 67 65 29 29 29 29 29 29 0a  | ze.(nth.1.(djvu-ref.image)))))). | 
| 29600 |  20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 69    73 69 7a 65 20 28 6f 72 20 69 73 69 7a 65 0a 20  | ........(let.((isize.(or.isize.. | 
| 29620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6e 74 68 20 31 20 28  | ........................(nth.1.( | 
| 29640 |  64 6a 76 75 2d 72 65 66 20 69 6d 61 67 65 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | djvu-ref.image))................ | 
| 29660 |  20 20 20 20 20 20 20 20 20 20 64 6a 76 75 2d 69    6d 61 67 65 2d 73 69 7a 65 29 29 0a 20 20 20 20  | ..........djvu-image-size))..... | 
| 29680 |  20 20 20 20 20 20 20 20 20 20 28 64 6f 63 20 64    6a 76 75 2d 64 6f 63 29 0a 20 20 20 20 20 20 20  | ..........(doc.djvu-doc)........ | 
| 296a0 |  20 20 20 20 20 20 20 28 69 6e 68 69 62 69 74 2d    71 75 69 74 20 74 29 29 0a 20 20 20 20 20 20 20  | .......(inhibit-quit.t))........ | 
| 296c0 |  20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75    66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20  | ...(with-temp-buffer............ | 
| 296e0 |  20 28 73 65 74 2d 62 75 66 66 65 72 2d 6d 75 6c    74 69 62 79 74 65 20 6e 69 6c 29 0a 20 20 20 20  | .(set-buffer-multibyte.nil)..... | 
| 29700 |  20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28    63 6f 64 69 6e 67 2d 73 79 73 74 65 6d 2d 66 6f  | ........(let*.((coding-system-fo | 
| 29720 |  72 2d 72 65 61 64 20 27 72 61 77 2d 74 65 78 74    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r-read.'raw-text)............... | 
| 29740 |  20 20 20 20 20 3b 3b 20 46 6f 72 20 61 20 72 65    63 74 61 6e 67 75 6c 61 72 20 69 6d 61 67 65 2c  | .....;;.For.a.rectangular.image, | 
| 29760 |  20 49 53 49 5a 45 20 64 6f 65 73 20 6e 6f 74 20    67 69 76 65 20 75 73 0a 20 20 20 20 20 20 20 20  | .ISIZE.does.not.give.us......... | 
| 29780 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68    65 20 61 63 74 75 61 6c 20 73 69 7a 65 20 6f 66  | ...........;;.the.actual.size.of | 
| 297a0 |  20 74 68 65 20 69 6d 61 67 65 2c 20 62 75 74 20    28 6d 61 78 20 77 69 64 74 68 20 68 65 69 67 68  | .the.image,.but.(max.width.heigh | 
| 297c0 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 3b 3b 20 77 69 6c 6c 20 62 65  | t)....................;;.will.be | 
| 297e0 |  20 65 71 75 61 6c 20 74 6f 20 49 53 49 5a 45 2e    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .equal.to.ISIZE................. | 
| 29800 |  20 20 20 20 28 73 74 61 74 75 73 20 28 63 61 6c    6c 2d 70 72 6f 63 65 73 73 20 22 64 64 6a 76 75  | ....(status.(call-process."ddjvu | 
| 29820 |  22 20 6e 69 6c 20 74 20 6e 69 6c 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ".nil.t.nil..................... | 
| 29840 |  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 20 22 2d 73  | .....................(format."-s | 
| 29860 |  69 7a 65 3d 25 64 78 25 64 22 20 69 73 69 7a 65    20 69 73 69 7a 65 29 0a 20 20 20 20 20 20 20 20  | ize=%dx%d".isize.isize)......... | 
| 29880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 298a0 |  20 22 2d 66 6f 72 6d 61 74 3d 70 70 6d 22 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."-format=ppm".................. | 
| 298c0 |  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 6f 72 6d 61 74 20  | ........................(format. | 
| 298e0 |  22 2d 70 61 67 65 3d 25 64 22 20 28 64 6a 76 75    2d 72 65 66 20 70 61 67 65 20 64 6f 63 29 29 0a  | "-page=%d".(djvu-ref.page.doc)). | 
| 29900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 29920 |  20 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 72    65 66 20 66 69 6c 65 20 64 6f 63 29 29 29 29 0a  | .........(djvu-ref.file.doc)))). | 
| 29940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75    6e 6c 65 73 73 20 28 7a 65 72 6f 70 20 73 74 61  | ..............(unless.(zerop.sta | 
| 29960 |  74 75 73 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 65 72 72 6f 72 20 22 44 64 6a  | tus).................(error."Ddj | 
| 29980 |  76 75 20 65 72 72 6f 72 20 25 73 22 20 73 74 61    74 75 73 29 29 0a 20 20 20 20 20 20 20 20 20 20  | vu.error.%s".status))........... | 
| 299a0 |  20 20 20 20 28 64 6a 76 75 2d 73 65 74 20 69 6d    61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ....(djvu-set.image............. | 
| 299c0 |  20 20 20 28 61 70 70 65 6e 64 20 28 6c 69 73 74    20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 20  | ...(append.(list.(djvu-ref.page. | 
| 299e0 |  64 6f 63 29 20 69 73 69 7a 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | doc).isize)..................... | 
| 29a00 |  20 20 20 3b 3b 20 49 6d 61 67 65 73 20 61 72 65    20 6c 69 73 74 73 0a 20 20 20 20 20 20 20 20 20  | ...;;.Images.are.lists.......... | 
| 29a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63    72 65 61 74 65 2d 69 6d 61 67 65 20 28 62 75 66  | ..............(create-image.(buf | 
| 29a40 |  66 65 72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f    2d 70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 20  | fer-substring-no-properties..... | 
| 29a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 29a80 |  20 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70    6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20  | ..(point-min).(point-max))...... | 
| 29aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 29ac0 |  27 70 62 6d 20 74 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 64 6f 63 29 29 29 29 29  | 'pbm.t))................doc))))) | 
| 29ae0 |  0a 20 20 20 20 3b 3b 20 44 69 73 70 6c 61 79 20    69 6d 61 67 65 2e 0a 20 20 20 20 28 6c 65 74 20  | .....;;.Display.image......(let. | 
| 29b00 |  28 62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c    79 29 0a 20 20 20 20 20 20 28 69 66 20 28 3d 20  | (buffer-read-only).......(if.(=. | 
| 29b20 |  28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69    6e 74 2d 6d 61 78 29 29 20 28 69 6e 73 65 72 74  | (point-min).(point-max)).(insert | 
| 29b40 |  20 22 20 22 29 29 0a 20 20 20 20 20 20 28 70 75    74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20  | .".")).......(put-text-property. | 
| 29b60 |  28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69    6e 74 2d 6d 61 78 29 0a 20 20 20 20 20 20 20 20  | (point-min).(point-max)......... | 
| 29b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 27 64 69 73 70 6c 61 79 20 28 6e 74 68 63 64  | .................'display.(nthcd | 
| 29ba0 |  72 20 32 20 28 64 6a 76 75 2d 72 65 66 20 69 6d    61 67 65 29 29 29 29 29 29 0a 0a 3b 3b 20 54 68  | r.2.(djvu-ref.image))))))..;;.Th | 
| 29bc0 |  65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 63 72 6f    6c 6c 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 61  | e.following.scrolling.commands.a | 
| 29be0 |  72 65 20 61 64 61 70 74 65 64 20 66 72 6f 6d 20    60 69 6d 61 67 65 2d 6d 6f 64 65 27 0a 3b 3b 20  | re.adapted.from.`image-mode'.;;. | 
| 29c00 |  61 6e 64 20 60 64 6f 63 2d 76 69 65 77 2d 6d 6f    64 65 27 2e 0a 0a 28 64 65 66 75 6e 20 64 6a 76  | and.`doc-view-mode'...(defun.djv | 
| 29c20 |  75 2d 69 6d 61 67 65 2d 76 73 63 72 6f 6c 6c 20    28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65  | u-image-vscroll.()..."Return.the | 
| 29c40 |  20 61 6d 6f 75 6e 74 20 62 79 20 77 68 69 63 68    20 61 20 70 61 67 65 20 69 6d 61 67 65 20 69 73  | .amount.by.which.a.page.image.is | 
| 29c60 |  20 73 63 72 6f 6c 6c 65 64 20 76 65 72 74 69 63    61 6c 6c 79 2e 22 0a 20 20 3b 3b 20 55 70 20 74  | .scrolled.vertically."...;;.Up.t | 
| 29c80 |  6f 20 45 6d 61 63 73 20 32 36 2c 20 74 68 65 20    66 75 6e 63 74 69 6f 6e 73 20 60 69 6d 61 67 65  | o.Emacs.26,.the.functions.`image | 
| 29ca0 |  2d 73 63 72 6f 6c 6c 2d 64 6f 77 6e 27 2c 20 60    69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d 75 70 27  | -scroll-down',.`image-scroll-up' | 
| 29cc0 |  2c 0a 20 20 3b 3b 20 60 69 6d 61 67 65 2d 6e 65    78 74 2d 6c 69 6e 65 27 2c 20 61 6e 64 20 60 69  | ,...;;.`image-next-line',.and.`i | 
| 29ce0 |  6d 61 67 65 2d 70 72 65 76 69 6f 75 73 2d 6c 69    6e 65 27 20 72 65 74 75 72 6e 20 6d 75 6c 74 69  | mage-previous-line'.return.multi | 
| 29d00 |  70 6c 65 73 20 6f 66 20 74 68 65 0a 20 20 3b 3b    20 63 68 61 72 61 63 74 65 72 20 68 65 69 67 68  | ples.of.the...;;.character.heigh | 
| 29d20 |  74 2e 20 20 53 74 61 72 74 69 6e 67 20 77 69 74    68 20 45 6d 61 63 73 20 32 37 2c 20 74 68 65 73  | t...Starting.with.Emacs.27,.thes | 
| 29d40 |  65 20 66 75 6e 63 74 69 6f 6e 73 20 72 65 74 75    72 6e 0a 20 20 3b 3b 20 70 69 78 65 6c 20 76 61  | e.functions.return...;;.pixel.va | 
| 29d60 |  6c 75 65 73 2e 20 20 54 6f 20 62 65 20 63 6f 6d    70 61 74 69 62 6c 65 2c 20 77 65 20 6d 75 73 74  | lues...To.be.compatible,.we.must | 
| 29d80 |  20 63 61 6c 6c 20 60 77 69 6e 64 6f 77 2d 76 73    63 72 6f 6c 6c 27 0a 20 20 3b 3b 20 77 69 74 68  | .call.`window-vscroll'...;;.with | 
| 29da0 |  6f 75 74 20 6f 72 20 77 69 74 68 20 61 72 67 20    50 49 58 45 4c 53 2d 50 20 6e 6f 6e 2d 6e 69 6c  | out.or.with.arg.PIXELS-P.non-nil | 
| 29dc0 |  2e 0a 20 20 28 77 69 6e 64 6f 77 2d 76 73 63 72    6f 6c 6c 20 6e 69 6c 20 28 3c 3d 20 32 37 20 28  | ....(window-vscroll.nil.(<=.27.( | 
| 29de0 |  73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72    20 65 6d 61 63 73 2d 76 65 72 73 69 6f 6e 29 29  | string-to-number.emacs-version)) | 
| 29e00 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d    69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d 75 70 20  | ))..(defun.djvu-image-scroll-up. | 
| 29e20 |  28 26 6f 70 74 69 6f 6e 61 6c 20 6e 29 0a 20 20    22 53 63 72 6f 6c 6c 20 69 6d 61 67 65 20 6f 66  | (&optional.n)..."Scroll.image.of | 
| 29e40 |  20 63 75 72 72 65 6e 74 20 70 61 67 65 20 75 70    77 61 72 64 20 62 79 20 4e 20 6c 69 6e 65 73 2e  | .current.page.upward.by.N.lines. | 
| 29e60 |  0a 41 74 20 74 68 65 20 62 6f 74 74 6f 6d 20 6f    66 20 74 68 65 20 69 6d 61 67 65 2c 20 77 68 65  | .At.the.bottom.of.the.image,.whe | 
| 29e80 |  6e 20 60 64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f    75 73 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 0a 67  | n.`djvu-continuous'.is.non-nil.g | 
| 29ea0 |  6f 20 74 6f 20 74 68 65 20 69 6d 61 67 65 20 6f    66 20 74 68 65 20 6e 65 78 74 20 70 61 67 65 2e  | o.to.the.image.of.the.next.page. | 
| 29ec0 |  0a 50 72 65 66 69 78 20 4e 20 6d 61 79 20 74 61    6b 65 20 74 68 65 20 73 61 6d 65 20 76 61 6c 75  | .Prefix.N.may.take.the.same.valu | 
| 29ee0 |  65 73 20 61 73 20 61 72 67 20 4e 20 6f 66 20 60    69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d 75 70 27  | es.as.arg.N.of.`image-scroll-up' | 
| 29f00 |  2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76    65 20 22 50 22 29 20 3b 20 73 61 6d 65 20 61 73  | ."...(interactive."P").;.same.as | 
| 29f20 |  20 60 69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d 75    70 27 0a 20 20 28 69 66 20 28 61 6e 64 20 28 3d  | .`image-scroll-up'...(if.(and.(= | 
| 29f40 |  20 28 64 6a 76 75 2d 69 6d 61 67 65 2d 76 73 63    72 6f 6c 6c 29 20 28 69 6d 61 67 65 2d 73 63 72  | .(djvu-image-vscroll).(image-scr | 
| 29f60 |  6f 6c 6c 2d 75 70 20 6e 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 64 6a 76 75 2d 63 6f 6e 74 69  | oll-up.n))............djvu-conti | 
| 29f80 |  6e 75 6f 75 73 0a 20 20 20 20 20 20 20 20 20 20    20 28 3c 20 28 64 6a 76 75 2d 72 65 66 20 70 61  | nuous............(<.(djvu-ref.pa | 
| 29fa0 |  67 65 29 20 28 64 6a 76 75 2d 72 65 66 20 70 61    67 65 6d 61 78 29 29 29 0a 20 20 20 20 20 20 28  | ge).(djvu-ref.pagemax))).......( | 
| 29fc0 |  6c 65 74 20 28 28 68 73 63 72 6f 6c 6c 20 28 77    69 6e 64 6f 77 2d 68 73 63 72 6f 6c 6c 29 29 29  | let.((hscroll.(window-hscroll))) | 
| 29fe0 |  0a 20 20 20 20 20 20 20 20 28 64 6a 76 75 2d 6e    65 78 74 2d 70 61 67 65 20 31 29 0a 20 20 20 20  | .........(djvu-next-page.1)..... | 
| 2a000 |  20 20 20 20 28 69 6d 61 67 65 2d 62 6f 62 29 0a    20 20 20 20 20 20 20 20 28 69 6d 61 67 65 2d 62  | ....(image-bob).........(image-b | 
| 2a020 |  6f 6c 20 31 29 0a 20 20 20 20 20 20 20 20 28 69    6d 61 67 65 2d 73 65 74 2d 77 69 6e 64 6f 77 2d  | ol.1).........(image-set-window- | 
| 2a040 |  68 73 63 72 6f 6c 6c 20 68 73 63 72 6f 6c 6c 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75  | hscroll.hscroll))))..(defun.djvu | 
| 2a060 |  2d 69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d 64 6f    77 6e 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e 29  | -image-scroll-down.(&optional.n) | 
| 2a080 |  0a 20 20 22 53 63 72 6f 6c 6c 20 69 6d 61 67 65    20 6f 66 20 63 75 72 72 65 6e 74 20 70 61 67 65  | ..."Scroll.image.of.current.page | 
| 2a0a0 |  20 64 6f 77 6e 77 61 72 64 20 4e 20 6c 69 6e 65    73 2e 0a 41 74 20 74 68 65 20 74 6f 70 20 6f 66  | .downward.N.lines..At.the.top.of | 
| 2a0c0 |  20 74 68 65 20 69 6d 61 67 65 2c 20 77 68 65 6e    20 60 64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f 75  | .the.image,.when.`djvu-continuou | 
| 2a0e0 |  73 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 0a 67 6f    20 74 6f 20 74 68 65 20 69 6d 61 67 65 20 6f 66  | s'.is.non-nil.go.to.the.image.of | 
| 2a100 |  20 74 68 65 20 70 72 65 76 69 6f 75 73 20 70 61    67 65 2e 0a 50 72 65 66 69 78 20 4e 20 6d 61 79  | .the.previous.page..Prefix.N.may | 
| 2a120 |  20 74 61 6b 65 20 74 68 65 20 73 61 6d 65 20 76    61 6c 75 65 73 20 61 73 20 61 72 67 20 4e 20 6f  | .take.the.same.values.as.arg.N.o | 
| 2a140 |  66 20 60 69 6d 61 67 65 2d 73 63 72 6f 6c 6c 2d    64 6f 77 6e 27 2e 22 0a 20 20 28 69 6e 74 65 72  | f.`image-scroll-down'."...(inter | 
| 2a160 |  61 63 74 69 76 65 20 22 50 22 29 20 3b 20 73 61    6d 65 20 61 73 20 60 69 6d 61 67 65 2d 73 63 72  | active."P").;.same.as.`image-scr | 
| 2a180 |  6f 6c 6c 2d 64 6f 77 6e 27 0a 20 20 28 69 66 20    28 61 6e 64 20 28 3d 20 28 64 6a 76 75 2d 69 6d  | oll-down'...(if.(and.(=.(djvu-im | 
| 2a1a0 |  61 67 65 2d 76 73 63 72 6f 6c 6c 29 20 28 69 6d    61 67 65 2d 73 63 72 6f 6c 6c 2d 64 6f 77 6e 20  | age-vscroll).(image-scroll-down. | 
| 2a1c0 |  6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 64    6a 76 75 2d 63 6f 6e 74 69 6e 75 6f 75 73 0a 20  | n))............djvu-continuous.. | 
| 2a1e0 |  20 20 20 20 20 20 20 20 20 20 28 3c 20 31 20 28    64 6a 76 75 2d 72 65 66 20 70 61 67 65 29 29 29  | ..........(<.1.(djvu-ref.page))) | 
| 2a200 |  0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 68 73    63 72 6f 6c 6c 20 28 77 69 6e 64 6f 77 2d 68 73  | .......(let.((hscroll.(window-hs | 
| 2a220 |  63 72 6f 6c 6c 29 29 29 0a 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 70 72 65 76 2d 70 61 67 65  | croll))).........(djvu-prev-page | 
| 2a240 |  20 31 29 0a 20 20 20 20 20 20 20 20 28 69 6d 61    67 65 2d 65 6f 62 29 0a 20 20 20 20 20 20 20 20  | .1).........(image-eob)......... | 
| 2a260 |  28 69 6d 61 67 65 2d 62 6f 6c 20 31 29 0a 20 20    20 20 20 20 20 20 28 69 6d 61 67 65 2d 73 65 74  | (image-bol.1).........(image-set | 
| 2a280 |  2d 77 69 6e 64 6f 77 2d 68 73 63 72 6f 6c 6c 20    68 73 63 72 6f 6c 6c 29 29 29 29 0a 0a 28 64 65  | -window-hscroll.hscroll))))..(de | 
| 2a2a0 |  66 75 6e 20 64 6a 76 75 2d 69 6d 61 67 65 2d 6e    65 78 74 2d 6c 69 6e 65 20 28 26 6f 70 74 69 6f  | fun.djvu-image-next-line.(&optio | 
| 2a2c0 |  6e 61 6c 20 6e 29 0a 20 20 22 53 63 72 6f 6c 6c    20 69 6d 61 67 65 20 6f 66 20 63 75 72 72 65 6e  | nal.n)..."Scroll.image.of.curren | 
| 2a2e0 |  74 20 70 61 67 65 20 75 70 77 61 72 64 20 62 79    20 4e 20 6c 69 6e 65 73 2e 0a 41 74 20 74 68 65  | t.page.upward.by.N.lines..At.the | 
| 2a300 |  20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 69    6d 61 67 65 2c 20 77 68 65 6e 20 60 64 6a 76 75  | .bottom.of.the.image,.when.`djvu | 
| 2a320 |  2d 63 6f 6e 74 69 6e 75 6f 75 73 27 20 69 73 20    6e 6f 6e 2d 6e 69 6c 2c 0a 67 6f 20 74 6f 20 74  | -continuous'.is.non-nil,.go.to.t | 
| 2a340 |  68 65 20 69 6d 61 67 65 20 6f 66 20 74 68 65 20    6e 65 78 74 20 70 61 67 65 2e 22 0a 20 20 28 69  | he.image.of.the.next.page."...(i | 
| 2a360 |  6e 74 65 72 61 63 74 69 76 65 20 22 70 22 29 0a    20 20 28 69 66 20 28 61 6e 64 20 28 3d 20 28 64  | nteractive."p")...(if.(and.(=.(d | 
| 2a380 |  6a 76 75 2d 69 6d 61 67 65 2d 76 73 63 72 6f 6c    6c 29 20 28 69 6d 61 67 65 2d 6e 65 78 74 2d 6c  | jvu-image-vscroll).(image-next-l | 
| 2a3a0 |  69 6e 65 20 6e 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f  | ine.n))............djvu-continuo | 
| 2a3c0 |  75 73 0a 20 20 20 20 20 20 20 20 20 20 20 28 3c    20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 29  | us............(<.(djvu-ref.page) | 
| 2a3e0 |  20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 6d    61 78 29 29 29 0a 20 20 20 20 20 20 28 6c 65 74  | .(djvu-ref.pagemax))).......(let | 
| 2a400 |  20 28 28 68 73 63 72 6f 6c 6c 20 28 77 69 6e 64    6f 77 2d 68 73 63 72 6f 6c 6c 29 29 29 0a 20 20  | .((hscroll.(window-hscroll)))... | 
| 2a420 |  20 20 20 20 20 20 28 64 6a 76 75 2d 6e 65 78 74    2d 70 61 67 65 20 31 29 0a 20 20 20 20 20 20 20  | ......(djvu-next-page.1)........ | 
| 2a440 |  20 28 69 6d 61 67 65 2d 62 6f 62 29 0a 20 20 20    20 20 20 20 20 28 69 6d 61 67 65 2d 62 6f 6c 20  | .(image-bob).........(image-bol. | 
| 2a460 |  31 29 0a 20 20 20 20 20 20 20 20 28 69 6d 61 67    65 2d 73 65 74 2d 77 69 6e 64 6f 77 2d 68 73 63  | 1).........(image-set-window-hsc | 
| 2a480 |  72 6f 6c 6c 20 68 73 63 72 6f 6c 6c 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 69 6d  | roll.hscroll))))..(defun.djvu-im | 
| 2a4a0 |  61 67 65 2d 70 72 65 76 69 6f 75 73 2d 6c 69 6e    65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e 29 0a  | age-previous-line.(&optional.n). | 
| 2a4c0 |  20 20 22 53 63 72 6f 6c 6c 20 69 6d 61 67 65 20    6f 66 20 63 75 72 72 65 6e 74 20 70 61 67 65 20  | .."Scroll.image.of.current.page. | 
| 2a4e0 |  64 6f 77 6e 77 61 72 64 20 4e 20 6c 69 6e 65 73    2e 0a 41 74 20 74 68 65 20 74 6f 70 20 6f 66 20  | downward.N.lines..At.the.top.of. | 
| 2a500 |  74 68 65 20 69 6d 61 67 65 2c 20 77 68 65 6e 20    60 64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f 75 73  | the.image,.when.`djvu-continuous | 
| 2a520 |  27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 0a 67 6f    20 74 6f 20 74 68 65 20 69 6d 61 67 65 20 6f 66  | '.is.non-nil,.go.to.the.image.of | 
| 2a540 |  20 74 68 65 20 70 72 65 76 69 6f 75 73 20 70 61    67 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74  | .the.previous.page."...(interact | 
| 2a560 |  69 76 65 20 22 70 22 29 0a 20 20 28 69 66 20 28    61 6e 64 20 28 3d 20 28 64 6a 76 75 2d 69 6d 61  | ive."p")...(if.(and.(=.(djvu-ima | 
| 2a580 |  67 65 2d 76 73 63 72 6f 6c 6c 29 20 28 69 6d 61    67 65 2d 70 72 65 76 69 6f 75 73 2d 6c 69 6e 65  | ge-vscroll).(image-previous-line | 
| 2a5a0 |  20 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    64 6a 76 75 2d 63 6f 6e 74 69 6e 75 6f 75 73 0a  | .n))............djvu-continuous. | 
| 2a5c0 |  20 20 20 20 20 20 20 20 20 20 20 28 3c 20 31 20    28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 29 29  | ...........(<.1.(djvu-ref.page)) | 
| 2a5e0 |  29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 68    73 63 72 6f 6c 6c 20 28 77 69 6e 64 6f 77 2d 68  | ).......(let.((hscroll.(window-h | 
| 2a600 |  73 63 72 6f 6c 6c 29 29 29 0a 20 20 20 20 20 20    20 20 28 64 6a 76 75 2d 70 72 65 76 2d 70 61 67  | scroll))).........(djvu-prev-pag | 
| 2a620 |  65 20 31 29 0a 20 20 20 20 20 20 20 20 28 69 6d    61 67 65 2d 65 6f 62 29 0a 20 20 20 20 20 20 20  | e.1).........(image-eob)........ | 
| 2a640 |  20 28 69 6d 61 67 65 2d 62 6f 6c 20 31 29 0a 20    20 20 20 20 20 20 20 28 69 6d 61 67 65 2d 73 65  | .(image-bol.1).........(image-se | 
| 2a660 |  74 2d 77 69 6e 64 6f 77 2d 68 73 63 72 6f 6c 6c    20 68 73 63 72 6f 6c 6c 29 29 29 29 0a 0a 28 64  | t-window-hscroll.hscroll))))..(d | 
| 2a680 |  65 66 75 6e 20 64 6a 76 75 2d 69 6d 61 67 65 2d    7a 6f 6f 6d 2d 69 6e 20 28 26 6f 70 74 69 6f 6e  | efun.djvu-image-zoom-in.(&option | 
| 2a6a0 |  61 6c 20 7a 6f 6f 6d 29 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 3b 3b 20 46 49  | al.zoom)...(interactive)...;;.FI | 
| 2a6c0 |  58 4d 45 3a 20 74 68 69 73 20 70 72 65 73 65 72    76 65 73 20 74 68 65 20 75 70 70 65 72 20 6c 65  | XME:.this.preserves.the.upper.le | 
| 2a6e0 |  66 74 20 63 6f 72 6e 65 72 20 6f 66 20 74 68 65    20 69 6d 61 67 65 2e 0a 20 20 3b 3b 20 49 66 20  | ft.corner.of.the.image....;;.If. | 
| 2a700 |  70 6f 73 73 69 62 6c 65 2c 20 77 65 20 73 68 6f    75 6c 64 20 70 72 65 73 65 72 76 65 20 74 68 65  | possible,.we.should.preserve.the | 
| 2a720 |  20 63 65 6e 74 65 72 20 6f 66 20 74 68 65 20 69    6d 61 67 65 2e 0a 20 20 28 6c 65 74 20 28 28 68  | .center.of.the.image....(let.((h | 
| 2a740 |  73 63 72 6f 6c 6c 20 28 77 69 6e 64 6f 77 2d 68    73 63 72 6f 6c 6c 29 29 0a 20 20 20 20 20 20 20  | scroll.(window-hscroll))........ | 
| 2a760 |  20 28 76 73 63 72 6f 6c 6c 20 28 64 6a 76 75 2d    69 6d 61 67 65 2d 76 73 63 72 6f 6c 6c 29 29 0a  | .(vscroll.(djvu-image-vscroll)). | 
| 2a780 |  20 20 20 20 20 20 20 20 28 7a 6f 6f 6d 20 28 6f    72 20 7a 6f 6f 6d 20 64 6a 76 75 2d 69 6d 61 67  | ........(zoom.(or.zoom.djvu-imag | 
| 2a7a0 |  65 2d 7a 6f 6f 6d 29 29 29 0a 20 20 20 20 28 64    6a 76 75 2d 69 6d 61 67 65 20 28 72 6f 75 6e 64  | e-zoom))).....(djvu-image.(round | 
| 2a7c0 |  20 28 2a 20 28 6e 74 68 20 31 20 28 64 6a 76 75    2d 72 65 66 20 69 6d 61 67 65 29 29 20 7a 6f 6f  | .(*.(nth.1.(djvu-ref.image)).zoo | 
| 2a7e0 |  6d 29 29 29 0a 20 20 20 20 28 69 6d 61 67 65 2d    73 65 74 2d 77 69 6e 64 6f 77 2d 68 73 63 72 6f  | m))).....(image-set-window-hscro | 
| 2a800 |  6c 6c 20 28 72 6f 75 6e 64 20 28 2a 20 68 73 63    72 6f 6c 6c 20 7a 6f 6f 6d 29 29 29 0a 20 20 20  | ll.(round.(*.hscroll.zoom))).... | 
| 2a820 |  20 28 69 6d 61 67 65 2d 73 65 74 2d 77 69 6e 64    6f 77 2d 76 73 63 72 6f 6c 6c 20 28 72 6f 75 6e  | .(image-set-window-vscroll.(roun | 
| 2a840 |  64 20 28 2a 20 76 73 63 72 6f 6c 6c 20 7a 6f 6f    6d 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64  | d.(*.vscroll.zoom)))))..(defun.d | 
| 2a860 |  6a 76 75 2d 69 6d 61 67 65 2d 7a 6f 6f 6d 2d 6f    75 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 7a 6f  | jvu-image-zoom-out.(&optional.zo | 
| 2a880 |  6f 6d 29 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 6c 65 74 20 28 28 68 73 63  | om)...(interactive)...(let.((hsc | 
| 2a8a0 |  72 6f 6c 6c 20 28 77 69 6e 64 6f 77 2d 68 73 63    72 6f 6c 6c 29 29 0a 20 20 20 20 20 20 20 20 28  | roll.(window-hscroll)).........( | 
| 2a8c0 |  76 73 63 72 6f 6c 6c 20 28 64 6a 76 75 2d 69 6d    61 67 65 2d 76 73 63 72 6f 6c 6c 29 29 0a 20 20  | vscroll.(djvu-image-vscroll))... | 
| 2a8e0 |  20 20 20 20 20 20 28 7a 6f 6f 6d 20 28 6f 72 20    7a 6f 6f 6d 20 64 6a 76 75 2d 69 6d 61 67 65 2d  | ......(zoom.(or.zoom.djvu-image- | 
| 2a900 |  7a 6f 6f 6d 29 29 29 0a 20 20 20 20 28 64 6a 76    75 2d 69 6d 61 67 65 20 28 72 6f 75 6e 64 20 28  | zoom))).....(djvu-image.(round.( | 
| 2a920 |  2f 20 28 6e 74 68 20 31 20 28 64 6a 76 75 2d 72    65 66 20 69 6d 61 67 65 29 29 20 7a 6f 6f 6d 29  | /.(nth.1.(djvu-ref.image)).zoom) | 
| 2a940 |  29 29 0a 20 20 20 20 28 69 6d 61 67 65 2d 73 65    74 2d 77 69 6e 64 6f 77 2d 68 73 63 72 6f 6c 6c  | )).....(image-set-window-hscroll | 
| 2a960 |  20 28 72 6f 75 6e 64 20 28 2f 20 68 73 63 72 6f    6c 6c 20 7a 6f 6f 6d 29 29 29 0a 20 20 20 20 28  | .(round.(/.hscroll.zoom))).....( | 
| 2a980 |  69 6d 61 67 65 2d 73 65 74 2d 77 69 6e 64 6f 77    2d 76 73 63 72 6f 6c 6c 20 28 72 6f 75 6e 64 20  | image-set-window-vscroll.(round. | 
| 2a9a0 |  28 2f 20 76 73 63 72 6f 6c 6c 20 7a 6f 6f 6d 29    29 29 29 29 0a 0a 3b 3b 20 49 6d 61 67 65 2d 62  | (/.vscroll.zoom)))))..;;.Image-b | 
| 2a9c0 |  61 73 65 64 20 65 64 69 74 69 6e 67 20 63 6f 6d    6d 61 6e 64 73 0a 0a 28 64 65 66 75 6e 20 64 6a  | ased.editing.commands..(defun.dj | 
| 2a9e0 |  76 75 2d 6d 6f 75 73 65 2d 64 72 61 67 2d 74 72    61 63 6b 2d 61 72 65 61 20 28 73 74 61 72 74 2d  | vu-mouse-drag-track-area.(start- | 
| 2aa00 |  65 76 65 6e 74 20 26 6f 70 74 69 6f 6e 61 6c 20    6c 69 6e 65 29 0a 20 20 22 54 72 61 63 6b 20 64  | event.&optional.line)..."Track.d | 
| 2aa20 |  72 61 67 20 6f 76 65 72 20 69 6d 61 67 65 2e 22    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20  | rag.over.image."...(interactive. | 
| 2aa40 |  22 65 22 29 0a 20 20 3b 3b 20 49 6e 73 70 69 72    65 64 20 62 79 20 60 6d 6f 75 73 65 2d 64 72 61  | "e")...;;.Inspired.by.`mouse-dra | 
| 2aa60 |  67 2d 74 72 61 63 6b 27 2e 0a 20 20 28 6c 65 74    20 28 28 6f 6c 64 2d 74 72 61 63 6b 2d 6d 6f 75  | g-track'....(let.((old-track-mou | 
| 2aa80 |  73 65 20 74 72 61 63 6b 2d 6d 6f 75 73 65 29 29    0a 20 20 20 20 3b 3b 20 44 69 73 61 62 6c 65 20  | se.track-mouse)).....;;.Disable. | 
| 2aaa0 |  60 64 6a 76 75 2d 6d 6f 64 69 66 69 65 64 27 20    64 75 72 69 6e 67 20 74 72 61 63 6b 69 6e 67 2c  | `djvu-modified'.during.tracking, | 
| 2aac0 |  0a 20 20 20 20 3b 3b 20 62 75 74 20 77 65 20 6a    75 73 74 20 72 65 6d 65 6d 62 65 72 20 74 68 65  | .....;;.but.we.just.remember.the | 
| 2aae0 |  20 63 75 72 72 65 6e 74 20 6d 6f 64 69 66 69 65    64 20 66 6c 61 67 2e 0a 20 20 20 20 3b 3b 20 54  | .current.modified.flag......;;.T | 
| 2ab00 |  68 69 73 20 6d 61 6b 65 73 20 74 68 65 20 63 6f    64 65 20 6d 75 63 68 20 66 61 73 74 65 72 21 0a  | his.makes.the.code.much.faster!. | 
| 2ab20 |  20 20 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f 6b    20 27 70 6f 73 74 2d 63 6f 6d 6d 61 6e 64 2d 68  | ....(remove-hook.'post-command-h | 
| 2ab40 |  6f 6f 6b 20 23 27 64 6a 76 75 2d 6d 6f 64 69 66    69 65 64 20 74 29 0a 20 20 20 20 28 73 65 74 71  | ook.#'djvu-modified.t).....(setq | 
| 2ab60 |  20 64 6a 76 75 2d 6d 6f 64 69 66 69 65 64 20 28    62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d  | .djvu-modified.(buffer-modified- | 
| 2ab80 |  70 29 29 0a 20 20 20 20 28 73 65 74 71 20 74 72    61 63 6b 2d 6d 6f 75 73 65 20 27 64 72 61 67 2d  | p)).....(setq.track-mouse.'drag- | 
| 2aba0 |  74 72 61 63 6b 69 6e 67 29 0a 20 20 20 20 28 73    65 74 2d 74 72 61 6e 73 69 65 6e 74 2d 6d 61 70  | tracking).....(set-transient-map | 
| 2abc0 |  0a 20 20 20 20 20 28 6c 65 74 20 28 28 6d 61 70    20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65  | ......(let.((map.(make-sparse-ke | 
| 2abe0 |  79 6d 61 70 29 29 29 0a 20 20 20 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 5b  | ymap)))........(define-key.map.[ | 
| 2ac00 |  6d 6f 75 73 65 2d 6d 6f 76 65 6d 65 6e 74 5d 0a    20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61  | mouse-movement]..........(lambda | 
| 2ac20 |  20 28 65 76 65 6e 74 29 20 28 69 6e 74 65 72 61    63 74 69 76 65 20 22 65 22 29 0a 20 20 20 20 20  | .(event).(interactive."e")...... | 
| 2ac40 |  20 20 20 20 20 20 28 64 6a 76 75 2d 77 69 74 68    2d 65 76 65 6e 74 2d 62 75 66 66 65 72 20 65 76  | ......(djvu-with-event-buffer.ev | 
| 2ac60 |  65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 69 6d 61 67 65 2d 72 65 63  | ent..............(djvu-image-rec | 
| 2ac80 |  74 20 28 6c 69 73 74 20 27 64 6f 77 6e 2d 6d 6f    75 73 65 2d 31 0a 20 20 20 20 20 20 20 20 20 20  | t.(list.'down-mouse-1........... | 
| 2aca0 |  20 20 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 76 65 6e 74  | ..........................(event | 
| 2acc0 |  2d 73 74 61 72 74 20 73 74 61 72 74 2d 65 76 65    6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | -start.start-event)............. | 
| 2ace0 |  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 76 65 6e 74 2d 65  | ........................(event-e | 
| 2ad00 |  6e 64 20 65 76 65 6e 74 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nd.event))...................... | 
| 2ad20 |  20 20 20 20 20 20 20 20 20 6c 69 6e 65 29 29 29    29 0a 20 20 20 20 20 20 20 6d 61 70 29 0a 20 20  | .........line))))........map)... | 
| 2ad40 |  20 20 20 74 20 28 6c 61 6d 62 64 61 20 28 29 0a    20 20 20 20 20 20 20 20 20 28 61 64 64 2d 68 6f  | ...t.(lambda.()..........(add-ho | 
| 2ad60 |  6f 6b 20 27 70 6f 73 74 2d 63 6f 6d 6d 61 6e 64    2d 68 6f 6f 6b 20 23 27 64 6a 76 75 2d 6d 6f 64  | ok.'post-command-hook.#'djvu-mod | 
| 2ad80 |  69 66 69 65 64 20 6e 69 6c 20 74 29 0a 20 20 20    20 20 20 20 20 20 28 73 65 74 71 20 64 6a 76 75  | ified.nil.t)..........(setq.djvu | 
| 2ada0 |  2d 6d 6f 64 69 66 69 65 64 20 6e 69 6c 29 0a 20    20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 72  | -modified.nil)..........(setq.tr | 
| 2adc0 |  61 63 6b 2d 6d 6f 75 73 65 20 6f 6c 64 2d 74 72    61 63 6b 2d 6d 6f 75 73 65 29 29 29 29 29 0a 0a  | ack-mouse.old-track-mouse))))).. | 
| 2ade0 |  28 64 65 66 75 6e 20 64 6a 76 75 2d 69 6d 61 67    65 2d 72 65 63 74 20 28 26 6f 70 74 69 6f 6e 61  | (defun.djvu-image-rect.(&optiona | 
| 2ae00 |  6c 20 65 76 65 6e 74 20 6c 69 6e 65 29 0a 20 20    22 46 6f 72 20 50 50 4d 20 69 6d 61 67 65 20 73  | l.event.line)..."For.PPM.image.s | 
| 2ae20 |  70 65 63 69 66 69 65 64 20 76 69 61 20 45 56 45    4e 54 20 6d 61 72 6b 20 72 65 63 74 61 6e 67 6c  | pecified.via.EVENT.mark.rectangl | 
| 2ae40 |  65 20 62 79 20 69 6e 76 65 72 74 69 6e 67 20 62    69 74 73 2e 22 0a 20 20 3b 3b 20 46 49 58 4d 45  | e.by.inverting.bits."...;;.FIXME | 
| 2ae60 |  3a 20 43 61 6e 20 74 68 65 20 66 6f 6c 6c 6f 77    69 6e 67 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74  | :.Can.the.following.be.implement | 
| 2ae80 |  65 64 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e    74 6c 79 20 69 6e 20 74 68 65 0a 20 20 3b 3b 20  | ed.more.efficiently.in.the...;;. | 
| 2aea0 |  69 6d 61 67 65 20 64 69 73 70 6c 61 79 20 63 6f    64 65 3f 20 20 43 6f 75 6c 64 20 74 68 69 73 20  | image.display.code?..Could.this. | 
| 2aec0 |  62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 6f 74    68 65 72 20 70 61 63 6b 61 67 65 73 2c 20 74 6f  | be.useful.for.other.packages,.to | 
| 2aee0 |  6f 3f 0a 20 20 28 69 66 20 65 76 65 6e 74 0a 20    20 20 20 20 20 28 6c 65 74 2a 20 28 28 65 2d 73  | o?...(if.event.......(let*.((e-s | 
| 2af00 |  74 61 72 74 20 28 65 76 65 6e 74 2d 73 74 61 72    74 20 65 76 65 6e 74 29 29 0a 20 20 20 20 20 20  | tart.(event-start.event))....... | 
| 2af20 |  20 20 20 20 20 20 20 28 65 2d 65 6e 64 20 20 20    28 65 76 65 6e 74 2d 65 6e 64 20 20 20 65 76 65  | .......(e-end...(event-end...eve | 
| 2af40 |  6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 28 5f 20 28 75 6e 6c 65 73 73 20 28 61 6e  | nt))..............(_.(unless.(an | 
| 2af60 |  64 20 28 70 6f 73 6e 2d 69 6d 61 67 65 20 65 2d    73 74 61 72 74 29 20 28 70 6f 73 6e 2d 69 6d 61  | d.(posn-image.e-start).(posn-ima | 
| 2af80 |  67 65 20 65 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 75 73  | ge.e-end))...................(us | 
| 2afa0 |  65 72 2d 65 72 72 6f 72 20 22 41 72 65 61 20 6e    6f 74 20 6f 76 65 72 20 69 6d 61 67 65 22 29 29  | er-error."Area.not.over.image")) | 
| 2afc0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28    73 74 61 72 74 20 28 70 6f 73 6e 2d 6f 62 6a 65  | )..............(start.(posn-obje | 
| 2afe0 |  63 74 2d 78 2d 79 20 65 2d 73 74 61 72 74 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65  | ct-x-y.e-start))..............(e | 
| 2b000 |  6e 64 20 20 20 28 70 6f 73 6e 2d 6f 62 6a 65 63    74 2d 78 2d 79 20 65 2d 65 6e 64 29 29 0a 20 20  | nd...(posn-object-x-y.e-end))... | 
| 2b020 |  20 20 20 20 20 20 20 20 20 20 20 28 78 31 20 28    69 66 20 6c 69 6e 65 20 28 63 61 72 20 73 74 61  | ...........(x1.(if.line.(car.sta | 
| 2b040 |  72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6d 69 6e 20 28 63 61 72  | rt)....................(min.(car | 
| 2b060 |  20 73 74 61 72 74 29 20 28 63 61 72 20 65 6e 64    29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .start).(car.end))))............ | 
| 2b080 |  20 20 28 79 31 20 28 69 66 20 6c 69 6e 65 20 28    63 64 72 20 73 74 61 72 74 29 0a 20 20 20 20 20  | ..(y1.(if.line.(cdr.start)...... | 
| 2b0a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d    69 6e 20 28 63 64 72 20 73 74 61 72 74 29 20 28  | ..............(min.(cdr.start).( | 
| 2b0c0 |  63 64 72 20 65 6e 64 29 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 28 78 32 20 28 69 66  | cdr.end))))..............(x2.(if | 
| 2b0e0 |  20 6c 69 6e 65 20 28 63 61 72 20 65 6e 64 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .line.(car.end)................. | 
| 2b100 |  20 20 20 28 6d 61 78 20 28 63 61 72 20 73 74 61    72 74 29 20 28 63 61 72 20 65 6e 64 29 29 29 29  | ...(max.(car.start).(car.end)))) | 
| 2b120 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 79    32 20 28 69 66 20 6c 69 6e 65 20 28 63 64 72 20  | ..............(y2.(if.line.(cdr. | 
| 2b140 |  65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6d 61 78 20 28 63 64  | end)....................(max.(cd | 
| 2b160 |  72 20 73 74 61 72 74 29 20 28 63 64 72 20 65 6e    64 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | r.start).(cdr.end))))........... | 
| 2b180 |  20 20 20 28 69 6d 61 67 65 20 28 63 6f 70 79 2d    73 65 71 75 65 6e 63 65 20 28 6e 74 68 20 36 20  | ...(image.(copy-sequence.(nth.6. | 
| 2b1a0 |  28 64 6a 76 75 2d 72 65 66 20 69 6d 61 67 65 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | (djvu-ref.image))))............. | 
| 2b1c0 |  20 28 5f 20 28 75 6e 6c 65 73 73 20 28 73 74 72    69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60 50 36  | .(_.(unless.(string-match."\\`P6 | 
| 2b1e0 |  5c 6e 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 20 2b    5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 5c 6e 5c 5c  | \n\\([0-9]+\\).+\\([0-9]+\\)\n\\ | 
| 2b200 |  28 5b 30 2d 39 5d 2b 5c 5c 29 5c 6e 22 20 69 6d    61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ([0-9]+\\)\n".image)............ | 
| 2b220 |  20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 4e    6f 74 20 61 20 50 50 4d 20 69 6d 61 67 65 22 29  | .......(error."Not.a.PPM.image") | 
| 2b240 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 77 69 64 74 68 20 28 64 6a 76 75 2d 6d 61 74  | ))..............(width.(djvu-mat | 
| 2b260 |  63 68 2d 6e 75 6d 62 65 72 20 31 20 69 6d 61 67    65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ch-number.1.image))............. | 
| 2b280 |  20 3b 20 28 68 65 69 67 68 74 20 28 64 6a 76 75    2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 32 20  | .;.(height.(djvu-match-number.2. | 
| 2b2a0 |  69 6d 61 67 65 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 28 64 65 70 74 68 20 28 64 6a 76  | image))..............(depth.(djv | 
| 2b2c0 |  75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65 72 20 33    20 69 6d 61 67 65 29 29 0a 20 20 20 20 20 20 20  | u-match-number.3.image))........ | 
| 2b2e0 |  20 20 20 20 20 20 28 69 30 20 28 6d 61 74 63 68    2d 65 6e 64 20 30 29 29 0a 20 20 20 20 20 20 20  | ......(i0.(match-end.0))........ | 
| 2b300 |  20 20 20 20 20 20 28 6f 6c 64 2d 69 6d 61 67 65    20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65  | ......(old-image.(get-text-prope | 
| 2b320 |  72 74 79 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20    27 64 69 73 70 6c 61 79 29 29 29 0a 20 20 20 20  | rty.(point-min).'display)))..... | 
| 2b340 |  20 20 20 20 28 75 6e 6c 65 73 73 20 28 3d 20 64    65 70 74 68 20 32 35 35 29 0a 20 20 20 20 20 20  | ....(unless.(=.depth.255)....... | 
| 2b360 |  20 20 20 20 28 65 72 72 6f 72 20 22 43 61 6e 6e    6f 74 20 68 61 6e 64 6c 65 20 64 65 70 74 68 20  | ....(error."Cannot.handle.depth. | 
| 2b380 |  25 64 22 20 64 65 70 74 68 29 29 0a 20 20 20 20    20 20 20 20 28 63 6c 2d 66 6c 65 74 20 28 28 69  | %d".depth)).........(cl-flet.((i | 
| 2b3a0 |  6e 76 65 72 74 20 28 69 20 69 6d 61 78 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nvert.(i.imax).................. | 
| 2b3c0 |  20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20    28 3c 20 69 20 69 6d 61 78 29 0a 20 20 20 20 20  | .........(while.(<.i.imax)...... | 
| 2b3e0 |  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 49 6e 76 65 72 74  | .......................;;.Invert | 
| 2b400 |  20 62 69 74 73 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .bits........................... | 
| 2b420 |  20 20 28 61 73 65 74 20 69 6d 61 67 65 20 69 20    28 2d 20 32 35 35 20 28 61 72 65 66 20 69 6d 61  | ..(aset.image.i.(-.255.(aref.ima | 
| 2b440 |  67 65 20 69 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ge.i)))......................... | 
| 2b460 |  20 20 20 20 28 73 65 74 71 20 69 20 28 31 2b 20    69 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | ....(setq.i.(1+.i))))).......... | 
| 2b480 |  20 28 69 66 20 28 6e 6f 74 20 6c 69 6e 65 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77  | .(if.(not.line)...............(w | 
| 2b4a0 |  68 69 6c 65 20 28 3c 20 79 31 20 79 32 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b  | hile.(<.y1.y2).................; | 
| 2b4c0 |  3b 20 69 20 3d 20 69 30 20 2b 20 33 20 2a 20 28    79 20 2a 20 77 69 64 74 68 20 2b 20 78 29 0a 20  | ;.i.=.i0.+.3.*.(y.*.width.+.x).. | 
| 2b4e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 65 74 20 28 28 69 20 28 2b 20 69 30 20 28 2a  | ...............(let.((i.(+.i0.(* | 
| 2b500 |  20 33 20 28 2b 20 78 31 20 28 2a 20 77 69 64 74    68 20 79 31 29 29 29 29 29 29 0a 20 20 20 20 20  | .3.(+.x1.(*.width.y1))))))...... | 
| 2b520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e    76 65 72 74 20 69 20 28 2b 20 69 20 28 2a 20 33  | .............(invert.i.(+.i.(*.3 | 
| 2b540 |  20 28 2d 20 78 32 20 78 31 29 29 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .(-.x2.x1))))).................( | 
| 2b560 |  73 65 74 71 20 79 31 20 28 31 2b 20 79 31 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63  | setq.y1.(1+.y1))).............(c | 
| 2b580 |  6f 6e 64 20 28 28 65 71 20 6c 69 6e 65 20 27 68    6f 72 69 7a 29 20 28 73 65 74 71 20 79 32 20 79  | ond.((eq.line.'horiz).(setq.y2.y | 
| 2b5a0 |  31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 28 65 71 20 6c 69 6e 65 20  | 1))...................((eq.line. | 
| 2b5c0 |  27 76 65 72 74 29 20 20 28 73 65 74 71 20 78 32    20 78 31 29 29 29 0a 20 20 20 20 20 20 20 20 20  | 'vert)..(setq.x2.x1))).......... | 
| 2b5e0 |  20 20 20 28 69 66 20 28 3c 20 28 61 62 73 20 28    2d 20 78 32 20 78 31 29 29 20 28 61 62 73 20 28  | ...(if.(<.(abs.(-.x2.x1)).(abs.( | 
| 2b600 |  2d 20 79 32 20 79 31 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20  | -.y2.y1))).................(let. | 
| 2b620 |  28 28 64 78 20 28 2f 20 28 2d 20 78 32 20 78 31    29 20 28 66 6c 6f 61 74 20 28 2d 20 79 32 20 79  | ((dx.(/.(-.x2.x1).(float.(-.y2.y | 
| 2b640 |  31 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 79 20 79  | 1)))).......................(y.y | 
| 2b660 |  31 29 20 28 73 74 65 70 20 28 63 6c 2d 73 69 67    6e 75 6d 20 28 2d 20 79 32 20 79 31 29 29 29 29  | 1).(step.(cl-signum.(-.y2.y1)))) | 
| 2b680 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 77 68 69 6c 65 20 28 2f 3d 20 79 20  | ...................(while.(/=.y. | 
| 2b6a0 |  79 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 3b 3b 20 78 20 3d 20 28  | y2).....................;;.x.=.( | 
| 2b6c0 |  79 20 2d 20 79 31 29 20 2a 20 64 78 20 2b 20 78    31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | y.-.y1).*.dx.+.x1............... | 
| 2b6e0 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 69 20 28    2b 20 69 30 20 28 2a 20 33 20 28 2b 20 28 2a 20  | ......(let.((i.(+.i0.(*.3.(+.(*. | 
| 2b700 |  79 20 77 69 64 74 68 29 20 78 31 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | y.width).x1..................... | 
| 2b720 |  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 6f 75 6e 64 20 28 2a  | .......................(round.(* | 
| 2b740 |  20 28 2d 20 79 20 79 31 29 20 64 78 29 29 29 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(-.y.y1).dx)))))))............. | 
| 2b760 |  20 20 20 20 20 20 20 20 20 20 28 69 6e 76 65 72    74 20 69 20 28 2b 20 69 20 33 29 29 29 0a 20 20  | ..........(invert.i.(+.i.3)))... | 
| 2b780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 79 20 28 2b 20 79 20 73  | ..................(setq.y.(+.y.s | 
| 2b7a0 |  74 65 70 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 65 74 20 28 28 64 79 20  | tep))))...............(let.((dy. | 
| 2b7c0 |  28 2f 20 28 2d 20 79 32 20 79 31 29 20 28 66 6c    6f 61 74 20 28 2d 20 78 32 20 78 31 29 29 29 29  | (/.(-.y2.y1).(float.(-.x2.x1)))) | 
| 2b7e0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 78 20 78 31 29 20 28 73 74 65  | .....................(x.x1).(ste | 
| 2b800 |  70 20 28 63 6c 2d 73 69 67 6e 75 6d 20 28 2d 20    78 32 20 78 31 29 29 29 29 0a 20 20 20 20 20 20  | p.(cl-signum.(-.x2.x1))))....... | 
| 2b820 |  20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65    20 28 2f 3d 20 78 20 78 32 29 0a 20 20 20 20 20  | ..........(while.(/=.x.x2)...... | 
| 2b840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    79 20 3d 20 28 78 20 2d 20 78 31 29 20 2a 20 64  | .............;;.y.=.(x.-.x1).*.d | 
| 2b860 |  79 20 2b 20 79 31 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28  | y.+.y1...................(let.(( | 
| 2b880 |  69 20 28 2b 20 69 30 20 28 2a 20 33 20 28 2b 20    78 20 28 2a 20 28 2b 20 79 31 20 28 72 6f 75 6e  | i.(+.i0.(*.3.(+.x.(*.(+.y1.(roun | 
| 2b8a0 |  64 20 28 2a 20 28 2d 20 78 20 78 31 29 20 64 79    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | d.(*.(-.x.x1).dy)))............. | 
| 2b8c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2b8e0 |  20 20 77 69 64 74 68 29 29 29 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..width))))))................... | 
| 2b900 |  20 20 28 69 6e 76 65 72 74 20 69 20 28 2b 20 69    20 33 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ..(invert.i.(+.i.3)))........... | 
| 2b920 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 78 20    28 2b 20 78 20 73 74 65 70 29 29 29 29 29 29 29  | ........(setq.x.(+.x.step))))))) | 
| 2b940 |  0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 62    75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79 29  | .........(let.(buffer-read-only) | 
| 2b960 |  0a 20 20 20 20 20 20 20 20 20 20 28 70 75 74 2d    74 65 78 74 2d 70 72 6f 70 65 72 74 79 0a 20 20  | ...........(put-text-property... | 
| 2b980 |  20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d    6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29  | .........(point-min).(point-max) | 
| 2b9a0 |  20 27 64 69 73 70 6c 61 79 0a 20 20 20 20 20 20    20 20 20 20 20 28 63 72 65 61 74 65 2d 69 6d 61  | .'display............(create-ima | 
| 2b9c0 |  67 65 20 69 6d 61 67 65 20 27 70 62 6d 20 74 29    29 29 0a 20 20 20 20 20 20 20 20 28 72 65 73 74  | ge.image.'pbm.t))).........(rest | 
| 2b9e0 |  6f 72 65 2d 62 75 66 66 65 72 2d 6d 6f 64 69 66    69 65 64 2d 70 20 64 6a 76 75 2d 6d 6f 64 69 66  | ore-buffer-modified-p.djvu-modif | 
| 2ba00 |  69 65 64 29 0a 20 20 20 20 20 20 20 20 28 69 6d    61 67 65 2d 66 6c 75 73 68 20 6f 6c 64 2d 69 6d  | ied).........(image-flush.old-im | 
| 2ba20 |  61 67 65 29 29 0a 20 20 20 20 3b 3b 20 52 65 73    74 6f 72 65 20 75 6e 6d 6f 64 69 66 69 65 64 20  | age)).....;;.Restore.unmodified. | 
| 2ba40 |  69 6d 61 67 65 0a 20 20 20 20 28 6c 65 74 20 28    28 6f 6c 64 2d 69 6d 61 67 65 20 28 67 65 74 2d  | image.....(let.((old-image.(get- | 
| 2ba60 |  74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 20 27 64 69 73 70 6c  | text-property.(point-min).'displ | 
| 2ba80 |  61 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 62    75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79 29  | ay))...........buffer-read-only) | 
| 2baa0 |  0a 20 20 20 20 20 20 3b 3b 20 54 68 65 20 6d 6f    64 69 66 69 65 64 20 66 6c 61 67 20 69 73 20 73  | .......;;.The.modified.flag.is.s | 
| 2bac0 |  65 74 20 62 79 20 60 64 6a 76 75 2d 6d 6f 64 69    66 69 65 64 27 20 69 6e 20 60 70 6f 73 74 2d 63  | et.by.`djvu-modified'.in.`post-c | 
| 2bae0 |  6f 6d 6d 61 6e 64 2d 68 6f 6f 6b 27 2e 0a 20 20    20 20 20 20 28 70 75 74 2d 74 65 78 74 2d 70 72  | ommand-hook'........(put-text-pr | 
| 2bb00 |  6f 70 65 72 74 79 20 28 70 6f 69 6e 74 2d 6d 69    6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 0a 20  | operty.(point-min).(point-max).. | 
| 2bb20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 27 64 69 73 70 6c 61 79  | ........................'display | 
| 2bb40 |  20 28 6e 74 68 63 64 72 20 32 20 28 64 6a 76 75    2d 72 65 66 20 69 6d 61 67 65 29 29 29 0a 20 20  | .(nthcdr.2.(djvu-ref.image)))... | 
| 2bb60 |  20 20 20 20 28 69 6d 61 67 65 2d 66 6c 75 73 68    20 6f 6c 64 2d 69 6d 61 67 65 29 29 29 29 0a 0a  | ....(image-flush.old-image)))).. | 
| 2bb80 |  28 64 65 66 75 6e 20 64 6a 76 75 2d 65 76 65 6e    74 2d 74 6f 2d 61 72 65 61 20 28 65 76 65 6e 74  | (defun.djvu-event-to-area.(event | 
| 2bba0 |  20 26 6f 70 74 69 6f 6e 61 6c 20 64 69 72 29 0a    20 20 22 43 6f 6e 76 65 72 74 20 6d 6f 75 73 65  | .&optional.dir)..."Convert.mouse | 
| 2bbc0 |  20 45 56 45 4e 54 20 74 6f 20 44 6a 76 75 20 61    72 65 61 20 63 6f 6f 72 64 69 6e 61 74 65 73 2e  | .EVENT.to.Djvu.area.coordinates. | 
| 2bbe0 |  22 0a 20 20 28 6c 65 74 2a 20 28 28 65 2d 73 74    61 72 74 20 28 65 76 65 6e 74 2d 73 74 61 72 74  | "...(let*.((e-start.(event-start | 
| 2bc00 |  20 65 76 65 6e 74 29 29 0a 20 20 20 20 20 20 20    20 20 28 65 2d 65 6e 64 20 20 20 28 65 76 65 6e  | .event))..........(e-end...(even | 
| 2bc20 |  74 2d 65 6e 64 20 20 20 65 76 65 6e 74 29 29 0a    20 20 20 20 20 20 20 20 20 28 5f 20 28 75 6e 6c  | t-end...event))..........(_.(unl | 
| 2bc40 |  65 73 73 20 28 61 6e 64 20 28 70 6f 73 6e 2d 69    6d 61 67 65 20 65 2d 73 74 61 72 74 29 20 28 70  | ess.(and.(posn-image.e-start).(p | 
| 2bc60 |  6f 73 6e 2d 69 6d 61 67 65 20 65 2d 65 6e 64 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | osn-image.e-end))............... | 
| 2bc80 |  28 75 73 65 72 2d 65 72 72 6f 72 20 22 41 72 65    61 20 6e 6f 74 20 6f 76 65 72 20 69 6d 61 67 65  | (user-error."Area.not.over.image | 
| 2bca0 |  22 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 73    74 61 72 74 20 28 70 6f 73 6e 2d 6f 62 6a 65 63  | ")))..........(start.(posn-objec | 
| 2bcc0 |  74 2d 78 2d 79 20 65 2d 73 74 61 72 74 29 29 0a    20 20 20 20 20 20 20 20 20 28 65 6e 64 20 20 20  | t-x-y.e-start))..........(end... | 
| 2bce0 |  28 70 6f 73 6e 2d 6f 62 6a 65 63 74 2d 78 2d 79    20 65 2d 65 6e 64 29 29 0a 20 20 20 20 20 20 20  | (posn-object-x-y.e-end))........ | 
| 2bd00 |  20 20 28 78 31 20 28 63 61 72 20 73 74 61 72 74    29 29 20 28 79 31 20 28 63 64 72 20 73 74 61 72  | ..(x1.(car.start)).(y1.(cdr.star | 
| 2bd20 |  74 29 29 20 28 78 32 20 28 63 61 72 20 65 6e 64    29 29 20 28 79 32 20 28 63 64 72 20 65 6e 64 29  | t)).(x2.(car.end)).(y2.(cdr.end) | 
| 2bd40 |  29 0a 20 20 20 20 20 20 20 20 20 28 73 69 7a 65    20 28 70 6f 73 6e 2d 6f 62 6a 65 63 74 2d 77 69  | )..........(size.(posn-object-wi | 
| 2bd60 |  64 74 68 2d 68 65 69 67 68 74 20 65 2d 73 74 61    72 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 5f  | dth-height.e-start))..........(_ | 
| 2bd80 |  20 28 69 66 20 28 65 71 75 61 6c 20 73 69 7a 65    20 27 28 30 20 2e 20 30 29 29 0a 20 20 20 20 20  | .(if.(equal.size.'(0...0))...... | 
| 2bda0 |  20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f    72 20 22 53 65 65 20 45 6d 61 63 73 20 62 75 67  | ...........(error."See.Emacs.bug | 
| 2bdc0 |  23 31 38 38 33 39 20 28 47 4e 55 20 45 6d 61 63    73 20 32 34 2e 34 29 22 29 29 29 0a 20 20 20 20  | #18839.(GNU.Emacs.24.4)")))..... | 
| 2bde0 |  20 20 20 20 20 28 77 69 64 74 68 20 20 28 2f 20    28 66 6c 6f 61 74 20 28 63 61 72 20 28 64 6a 76  | .....(width..(/.(float.(car.(djv | 
| 2be00 |  75 2d 72 65 66 20 70 61 67 65 73 69 7a 65 29 29    29 20 28 63 61 72 20 73 69 7a 65 29 29 29 0a 20  | u-ref.pagesize))).(car.size))).. | 
| 2be20 |  20 20 20 20 20 20 20 20 28 68 65 69 67 68 74 20    28 2f 20 28 66 6c 6f 61 74 20 28 63 64 72 20 28  | ........(height.(/.(float.(cdr.( | 
| 2be40 |  64 6a 76 75 2d 72 65 66 20 70 61 67 65 73 69 7a    65 29 29 29 20 28 63 64 72 20 73 69 7a 65 29 29  | djvu-ref.pagesize))).(cdr.size)) | 
| 2be60 |  29 0a 20 20 20 20 20 20 20 20 20 28 61 72 65 61    0a 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74  | )..........(area...........(list | 
| 2be80 |  20 28 72 6f 75 6e 64 20 28 2a 20 28 69 66 20 28    6d 65 6d 71 20 64 69 72 20 27 28 76 65 72 74 20  | .(round.(*.(if.(memq.dir.'(vert. | 
| 2bea0 |  66 72 65 65 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | free)).......................... | 
| 2bec0 |  20 20 20 20 20 78 31 20 28 6d 69 6e 20 78 31 20    78 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .....x1.(min.x1.x2))............ | 
| 2bee0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77    69 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 20  | ...............width)).......... | 
| 2bf00 |  20 20 20 20 20 20 20 28 72 6f 75 6e 64 20 28 2a    20 28 2d 20 28 63 64 72 20 73 69 7a 65 29 20 28  | .......(round.(*.(-.(cdr.size).( | 
| 2bf20 |  69 66 20 28 6d 65 6d 71 20 64 69 72 20 27 28 68    6f 72 69 7a 20 66 72 65 65 29 29 0a 20 20 20 20  | if.(memq.dir.'(horiz.free))..... | 
| 2bf40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2bf60 |  20 20 20 20 20 20 20 20 79 31 20 28 6d 61 78 20    79 31 20 79 32 29 29 29 0a 20 20 20 20 20 20 20  | ........y1.(max.y1.y2)))........ | 
| 2bf80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 68 65 69 67 68 74 29 29 0a 20 20 20 20  | ...................height))..... | 
| 2bfa0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 72 6f 75    6e 64 20 28 2a 20 28 69 66 20 28 6d 65 6d 71 20  | ............(round.(*.(if.(memq. | 
| 2bfc0 |  64 69 72 20 27 28 76 65 72 74 20 66 72 65 65 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | dir.'(vert.free))............... | 
| 2bfe0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    78 32 20 28 6d 61 78 20 78 31 20 78 32 29 29 0a  | ................x2.(max.x1.x2)). | 
| 2c000 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 29  | ..........................width) | 
| 2c020 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 72 6f 75 6e 64 20 28 2a 20 28 2d 20 28  | ).................(round.(*.(-.( | 
| 2c040 |  63 64 72 20 73 69 7a 65 29 20 28 69 66 20 20 28    6d 65 6d 71 20 64 69 72 20 27 28 68 6f 72 69 7a  | cdr.size).(if..(memq.dir.'(horiz | 
| 2c060 |  20 66 72 65 65 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .free))......................... | 
| 2c080 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 79 32 20 28 6d 69 6e 20 79 31 20 79  | ....................y2.(min.y1.y | 
| 2c0a0 |  32 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68  | 2)))...........................h | 
| 2c0c0 |  65 69 67 68 74 29 29 29 29 29 0a 20 20 20 20 28    64 6a 76 75 2d 73 65 74 20 72 65 61 64 2d 70 6f  | eight))))).....(djvu-set.read-po | 
| 2c0e0 |  73 20 28 64 6a 76 75 2d 6d 65 61 6e 2d 64 70 6f    73 20 61 72 65 61 29 29 0a 20 20 20 20 61 72 65  | s.(djvu-mean-dpos.area)).....are | 
| 2c100 |  61 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75    2d 6d 6f 75 73 65 2d 72 65 63 74 2d 61 72 65 61  | a))..(defun.djvu-mouse-rect-area | 
| 2c120 |  20 28 65 76 65 6e 74 29 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 20 22 65 22 29 0a 20 20 3b  | .(event)...(interactive."e")...; | 
| 2c140 |  3b 20 4d 6f 75 73 65 20 65 76 65 6e 74 73 20 69    67 6e 6f 72 65 20 70 72 65 66 69 78 20 61 72 67  | ;.Mouse.events.ignore.prefix.arg | 
| 2c160 |  73 3f 0a 20 20 28 64 6a 76 75 2d 77 69 74 68 2d    65 76 65 6e 74 2d 62 75 66 66 65 72 20 65 76 65  | s?...(djvu-with-event-buffer.eve | 
| 2c180 |  6e 74 0a 20 20 20 20 28 75 6e 77 69 6e 64 2d 70    72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 28  | nt.....(unwind-protect.........( | 
| 2c1a0 |  6c 65 74 20 28 28 63 6f 6c 6f 72 20 28 64 6a 76    75 2d 69 6e 74 65 72 61 63 74 69 76 65 2d 63 6f  | let.((color.(djvu-interactive-co | 
| 2c1c0 |  6c 6f 72 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 68    69 67 68 6c 69 67 68 74 29 29 0a 20 20 20 20 20  | lor.djvu-color-highlight))...... | 
| 2c1e0 |  20 20 20 20 20 20 20 20 20 3b 3b 20 44 6f 20 52    45 43 54 53 20 66 69 72 73 74 20 61 73 20 74 68  | .........;;.Do.RECTS.first.as.th | 
| 2c200 |  69 73 20 6d 61 79 20 74 68 72 6f 77 20 61 20 75    73 65 72 20 65 72 72 6f 72 2e 0a 20 20 20 20 20  | is.may.throw.a.user.error....... | 
| 2c220 |  20 20 20 20 20 20 20 20 20 28 72 65 63 74 73 20    28 6c 69 73 74 20 28 64 6a 76 75 2d 65 76 65 6e  | .........(rects.(list.(djvu-even | 
| 2c240 |  74 2d 74 6f 2d 61 72 65 61 20 65 76 65 6e 74 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 64  | t-to-area.event))))...........(d | 
| 2c260 |  6a 76 75 2d 72 65 63 74 2d 61 72 65 61 20 6e 69    6c 20 28 72 65 61 64 2d 73 74 72 69 6e 67 20 28  | jvu-rect-area.nil.(read-string.( | 
| 2c280 |  66 6f 72 6d 61 74 20 22 28 25 73 29 20 48 69 67    68 6c 69 67 68 74 3a 20 22 0a 20 20 20 20 20 20  | format."(%s).Highlight:."....... | 
| 2c2a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2c2c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72    20 63 6f 6c 6f 72 20 22 6e 6f 20 63 6f 6c 6f 72  | .............(or.color."no.color | 
| 2c2e0 |  22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | "))............................. | 
| 2c300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e    69 6c 20 6e 69 6c 20 6e 69 6c 20 64 6a 76 75 2d  | ...............nil.nil.nil.djvu- | 
| 2c320 |  69 6e 68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65    74 68 6f 64 29 0a 20 20 20 20 20 20 20 20 20 20  | inherit-input-method)........... | 
| 2c340 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    72 65 63 74 73 20 63 6f 6c 6f 72 20 64 6a 76 75  | ................rects.color.djvu | 
| 2c360 |  2d 6f 70 61 63 69 74 79 20 27 6e 6f 6e 65 29 29    0a 20 20 20 20 20 20 28 64 6a 76 75 2d 69 6d 61  | -opacity.'none)).......(djvu-ima | 
| 2c380 |  67 65 2d 72 65 63 74 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d 74  | ge-rect))))..(defun.djvu-mouse-t | 
| 2c3a0 |  65 78 74 2d 61 72 65 61 20 28 65 76 65 6e 74 29    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20  | ext-area.(event)...(interactive. | 
| 2c3c0 |  22 65 22 29 0a 20 20 28 64 6a 76 75 2d 6d 6f 75    73 65 2d 74 65 78 74 2d 61 72 65 61 2d 69 6e 74  | "e")...(djvu-mouse-text-area-int | 
| 2c3e0 |  65 72 6e 61 6c 20 65 76 65 6e 74 20 22 54 65 78    74 22 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76  | ernal.event."Text"))..(defun.djv | 
| 2c400 |  75 2d 6d 6f 75 73 65 2d 74 65 78 74 2d 61 72 65    61 2d 70 75 73 68 70 69 6e 20 28 65 76 65 6e 74  | u-mouse-text-area-pushpin.(event | 
| 2c420 |  29 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    20 22 65 22 29 0a 20 20 28 64 6a 76 75 2d 6d 6f  | )...(interactive."e")...(djvu-mo | 
| 2c440 |  75 73 65 2d 74 65 78 74 2d 61 72 65 61 2d 69 6e    74 65 72 6e 61 6c 20 65 76 65 6e 74 20 22 54 65  | use-text-area-internal.event."Te | 
| 2c460 |  78 74 20 77 2f 50 75 73 68 70 69 6e 22 20 74 29    29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 6d  | xt.w/Pushpin".t))..(defun.djvu-m | 
| 2c480 |  6f 75 73 65 2d 74 65 78 74 2d 61 72 65 61 2d 69    6e 74 65 72 6e 61 6c 20 28 65 76 65 6e 74 20 70  | ouse-text-area-internal.(event.p | 
| 2c4a0 |  72 6f 6d 70 74 20 26 6f 70 74 69 6f 6e 61 6c 20    70 75 73 68 70 69 6e 29 0a 20 20 3b 3b 20 4d 6f  | rompt.&optional.pushpin)...;;.Mo | 
| 2c4c0 |  75 73 65 20 65 76 65 6e 74 73 20 69 67 6e 6f 72    65 20 70 72 65 66 69 78 20 61 72 67 73 3f 0a 20  | use.events.ignore.prefix.args?.. | 
| 2c4e0 |  20 28 64 6a 76 75 2d 77 69 74 68 2d 65 76 65 6e    74 2d 62 75 66 66 65 72 20 65 76 65 6e 74 0a 20  | .(djvu-with-event-buffer.event.. | 
| 2c500 |  20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65    63 74 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20  | ...(unwind-protect.........(let. | 
| 2c520 |  28 28 63 6f 6c 6f 72 20 28 64 6a 76 75 2d 69 6e    74 65 72 61 63 74 69 76 65 2d 63 6f 6c 6f 72 20  | ((color.(djvu-interactive-color. | 
| 2c540 |  64 6a 76 75 2d 63 6f 6c 6f 72 2d 68 69 67 68 6c    69 67 68 74 29 29 0a 20 20 20 20 20 20 20 20 20  | djvu-color-highlight)).......... | 
| 2c560 |  20 20 20 20 20 3b 3b 20 44 6f 20 41 52 45 41 20    66 69 72 73 74 20 61 73 20 74 68 69 73 20 6d 61  | .....;;.Do.AREA.first.as.this.ma | 
| 2c580 |  79 20 74 68 72 6f 77 20 61 20 75 73 65 72 20 65    72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20  | y.throw.a.user.error............ | 
| 2c5a0 |  20 20 20 20 28 61 72 65 61 20 28 64 6a 76 75 2d    65 76 65 6e 74 2d 74 6f 2d 61 72 65 61 20 65 76  | ....(area.(djvu-event-to-area.ev | 
| 2c5c0 |  65 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 74 65 78 74 2d 61 72 65 61  | ent)))...........(djvu-text-area | 
| 2c5e0 |  20 6e 69 6c 20 28 72 65 61 64 2d 73 74 72 69 6e    67 20 28 66 6f 72 6d 61 74 20 22 28 25 73 29 20  | .nil.(read-string.(format."(%s). | 
| 2c600 |  25 73 3a 20 22 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | %s:."........................... | 
| 2c620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6f 72 20 63 6f 6c  | .........................(or.col | 
| 2c640 |  6f 72 20 22 6e 6f 20 63 6f 6c 6f 72 22 29 20 70    72 6f 6d 70 74 29 0a 20 20 20 20 20 20 20 20 20  | or."no.color").prompt).......... | 
| 2c660 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2c680 |  20 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 64 6a    76 75 2d 69 6e 68 65 72 69 74 2d 69 6e 70 75 74  | ..nil.nil.nil.djvu-inherit-input | 
| 2c6a0 |  2d 6d 65 74 68 6f 64 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -method)........................ | 
| 2c6c0 |  20 20 20 61 72 65 61 20 6e 69 6c 20 28 64 6a 76    75 2d 63 6f 6c 6f 72 2d 62 61 63 6b 67 72 6f 75  | ...area.nil.(djvu-color-backgrou | 
| 2c6e0 |  6e 64 20 63 6f 6c 6f 72 29 20 6e 69 6c 20 70 75    73 68 70 69 6e 29 29 0a 20 20 20 20 20 20 28 64  | nd.color).nil.pushpin)).......(d | 
| 2c700 |  6a 76 75 2d 69 6d 61 67 65 2d 72 65 63 74 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | jvu-image-rect))))..(defun.djvu- | 
| 2c720 |  6d 6f 75 73 65 2d 6c 69 6e 65 2d 61 72 65 61 20    28 65 76 65 6e 74 29 0a 20 20 28 69 6e 74 65 72  | mouse-line-area.(event)...(inter | 
| 2c740 |  61 63 74 69 76 65 20 22 65 22 29 0a 20 20 28 64    6a 76 75 2d 6d 6f 75 73 65 2d 6c 69 6e 65 2d 61  | active."e")...(djvu-mouse-line-a | 
| 2c760 |  72 65 61 2d 69 6e 74 65 72 6e 61 6c 20 65 76 65    6e 74 20 27 66 72 65 65 29 29 0a 0a 28 64 65 66  | rea-internal.event.'free))..(def | 
| 2c780 |  75 6e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d 6c 69    6e 65 2d 61 72 65 61 2d 68 6f 72 69 7a 20 28 65  | un.djvu-mouse-line-area-horiz.(e | 
| 2c7a0 |  76 65 6e 74 29 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 20 22 65 22 29 0a 20 20 28 64 6a 76  | vent)...(interactive."e")...(djv | 
| 2c7c0 |  75 2d 6d 6f 75 73 65 2d 6c 69 6e 65 2d 61 72 65    61 2d 69 6e 74 65 72 6e 61 6c 20 65 76 65 6e 74  | u-mouse-line-area-internal.event | 
| 2c7e0 |  20 27 68 6f 72 69 7a 29 29 0a 0a 28 64 65 66 75    6e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d 6c 69 6e  | .'horiz))..(defun.djvu-mouse-lin | 
| 2c800 |  65 2d 61 72 65 61 2d 76 65 72 74 20 28 65 76 65    6e 74 29 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | e-area-vert.(event)...(interacti | 
| 2c820 |  76 65 20 22 65 22 29 0a 20 20 28 64 6a 76 75 2d    6d 6f 75 73 65 2d 6c 69 6e 65 2d 61 72 65 61 2d  | ve."e")...(djvu-mouse-line-area- | 
| 2c840 |  69 6e 74 65 72 6e 61 6c 20 65 76 65 6e 74 20 27    76 65 72 74 29 29 0a 0a 28 64 65 66 75 6e 20 64  | internal.event.'vert))..(defun.d | 
| 2c860 |  6a 76 75 2d 6d 6f 75 73 65 2d 6c 69 6e 65 2d 61    72 65 61 2d 69 6e 74 65 72 6e 61 6c 20 28 65 76  | jvu-mouse-line-area-internal.(ev | 
| 2c880 |  65 6e 74 20 26 6f 70 74 69 6f 6e 61 6c 20 64 69    72 29 0a 20 20 28 64 6a 76 75 2d 77 69 74 68 2d  | ent.&optional.dir)...(djvu-with- | 
| 2c8a0 |  65 76 65 6e 74 2d 62 75 66 66 65 72 20 65 76 65    6e 74 0a 20 20 20 20 28 75 6e 77 69 6e 64 2d 70  | event-buffer.event.....(unwind-p | 
| 2c8c0 |  72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 3b    3b 20 44 6f 20 4c 49 4e 45 20 66 69 72 73 74 20  | rotect.........;;.Do.LINE.first. | 
| 2c8e0 |  61 73 20 74 68 69 73 20 6d 61 79 20 74 68 72 6f    77 20 61 20 75 73 65 72 20 65 72 72 6f 72 2e 0a  | as.this.may.throw.a.user.error.. | 
| 2c900 |  20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28    6c 69 6e 65 20 28 64 6a 76 75 2d 65 76 65 6e 74  | ........(let*.((line.(djvu-event | 
| 2c920 |  2d 74 6f 2d 61 72 65 61 20 65 76 65 6e 74 20 64    69 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | -to-area.event.dir))............ | 
| 2c940 |  20 20 20 20 28 63 6f 6c 6f 72 20 28 64 6a 76 75    2d 69 6e 74 65 72 61 63 74 69 76 65 2d 63 6f 6c  | ....(color.(djvu-interactive-col | 
| 2c960 |  6f 72 20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 6c 69    6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | or.djvu-color-line))............ | 
| 2c980 |  20 20 20 20 28 74 65 78 74 20 28 72 65 61 64 2d    73 74 72 69 6e 67 20 28 66 6f 72 6d 61 74 20 22  | ....(text.(read-string.(format." | 
| 2c9a0 |  28 25 73 29 20 4c 69 6e 65 3a 20 22 20 28 6f 72    20 63 6f 6c 6f 72 20 22 6e 6f 20 63 6f 6c 6f 72  | (%s).Line:.".(or.color."no.color | 
| 2c9c0 |  22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | "))............................. | 
| 2c9e0 |  20 20 20 20 20 20 6e 69 6c 20 6e 69 6c 20 6e 69    6c 20 64 6a 76 75 2d 69 6e 68 65 72 69 74 2d 69  | ......nil.nil.nil.djvu-inherit-i | 
| 2ca00 |  6e 70 75 74 2d 6d 65 74 68 6f 64 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28  | nput-method)))...........(cond.( | 
| 2ca20 |  28 65 71 20 64 69 72 20 27 68 6f 72 69 7a 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (eq.dir.'horiz)................. | 
| 2ca40 |  20 28 73 65 74 71 20 6c 69 6e 65 20 28 6c 69 73    74 20 28 6e 74 68 20 30 20 6c 69 6e 65 29 20 28  | .(setq.line.(list.(nth.0.line).( | 
| 2ca60 |  6e 74 68 20 31 20 6c 69 6e 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nth.1.line)..................... | 
| 2ca80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e    74 68 20 32 20 6c 69 6e 65 29 20 28 6e 74 68 20  | ..............(nth.2.line).(nth. | 
| 2caa0 |  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 20 28 28 65 71 20  | 1.line)))).................((eq. | 
| 2cac0 |  64 69 72 20 27 76 65 72 74 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74  | dir.'vert)..................(set | 
| 2cae0 |  71 20 6c 69 6e 65 20 28 6c 69 73 74 20 28 6e 74    68 20 30 20 6c 69 6e 65 29 20 28 6e 74 68 20 31  | q.line.(list.(nth.0.line).(nth.1 | 
| 2cb00 |  20 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .line).......................... | 
| 2cb20 |  20 20 20 20 20 20 20 20 20 28 6e 74 68 20 30 20    6c 69 6e 65 29 20 28 6e 74 68 20 33 20 6c 69 6e  | .........(nth.0.line).(nth.3.lin | 
| 2cb40 |  65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 28 64 6a 76 75 2d 6c 69 6e 65 2d 61 72 65 61  | e)))))...........(djvu-line-area | 
| 2cb60 |  20 6e 69 6c 20 74 65 78 74 20 6c 69 6e 65 20 6e    69 6c 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20  | .nil.text.line.nil.nil.......... | 
| 2cb80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 64 6a 76 75 2d 6c 69 6e 65 2d 77 69 64 74 68  | .................djvu-line-width | 
| 2cba0 |  20 64 6a 76 75 2d 63 6f 6c 6f 72 2d 6c 69 6e 65    29 29 0a 20 20 20 20 20 20 28 64 6a 76 75 2d 69  | .djvu-color-line)).......(djvu-i | 
| 2cbc0 |  6d 61 67 65 2d 72 65 63 74 29 29 29 29 0a 0a 28    64 65 66 75 6e 20 64 6a 76 75 2d 6c 69 6e 65 2d  | mage-rect))))..(defun.djvu-line- | 
| 2cbe0 |  61 72 65 61 20 28 75 72 6c 20 74 65 78 74 20 6c    69 6e 65 20 26 6f 70 74 69 6f 6e 61 6c 20 62 6f  | area.(url.text.line.&optional.bo | 
| 2cc00 |  72 64 65 72 20 61 72 72 6f 77 20 77 69 64 74 68    20 6c 69 6e 65 63 6c 72 29 0a 20 20 3b 3b 20 52  | rder.arrow.width.lineclr)...;;.R | 
| 2cc20 |  65 63 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 77    68 65 72 65 20 61 6e 6e 6f 74 61 74 69 6f 6e 20  | ecord.position.where.annotation. | 
| 2cc40 |  77 61 73 20 6d 61 64 65 2e 0a 20 20 28 77 69 74    68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72  | was.made....(with-current-buffer | 
| 2cc60 |  20 28 64 6a 76 75 2d 72 65 66 20 61 6e 6e 6f 74    2d 62 75 66 29 0a 20 20 20 20 28 67 6f 74 6f 2d  | .(djvu-ref.annot-buf).....(goto- | 
| 2cc80 |  63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29    29 0a 20 20 20 20 3b 3b 20 49 74 20 73 65 65 6d  | char.(point-max)).....;;.It.seem | 
| 2cca0 |  73 20 74 68 61 74 20 54 45 58 54 20 69 73 20 69    67 6e 6f 72 65 64 20 62 79 20 64 6a 76 69 65 77  | s.that.TEXT.is.ignored.by.djview | 
| 2ccc0 |  2e 0a 20 20 20 20 28 69 6e 73 65 72 74 20 28 66    6f 72 6d 61 74 20 22 28 6d 61 70 61 72 65 61 20  | ......(insert.(format."(maparea. | 
| 2cce0 |  25 53 5c 6e 20 25 53 5c 6e 20 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | %S\n.%S\n."..................... | 
| 2cd00 |  28 6f 72 20 75 72 6c 20 22 22 29 20 28 69 66 20    74 65 78 74 20 28 64 6a 76 75 2d 66 69 6c 6c 20  | (or.url."").(if.text.(djvu-fill. | 
| 2cd20 |  74 65 78 74 29 20 22 22 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 61 70 70 6c 79 20 27 66  | text)."")).............(apply.'f | 
| 2cd40 |  6f 72 6d 61 74 20 22 28 6c 69 6e 65 20 25 64 20    25 64 20 25 64 20 25 64 29 22 20 28 64 6a 76 75  | ormat."(line.%d.%d.%d.%d)".(djvu | 
| 2cd60 |  2d 62 6f 75 6e 64 2d 61 72 65 61 20 6c 69 6e 65    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b  | -bound-area.line)).............; | 
| 2cd80 |  3b 20 41 63 63 6f 72 64 69 6e 67 20 74 6f 20 53    65 63 2e 20 38 2e 33 2e 34 2e 32 2e 33 2e 31 20  | ;.According.to.Sec..8.3.4.2.3.1. | 
| 2cda0 |  6f 66 20 64 6a 76 75 33 73 70 65 63 2e 64 6a 76    75 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b  | of.djvu3spec.djvu.............;; | 
| 2cdc0 |  20 6c 69 6e 65 73 20 6d 61 79 20 68 61 76 65 20    62 6f 72 64 65 72 20 6f 70 74 69 6f 6e 73 2e 0a  | .lines.may.have.border.options.. | 
| 2cde0 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4d    61 6e 20 64 6a 76 75 73 65 64 3a 20 42 6f 72 64  | ............;;.Man.djvused:.Bord | 
| 2ce00 |  65 72 20 6f 70 74 69 6f 6e 73 20 64 6f 20 6e 6f    74 20 61 70 70 6c 79 20 74 6f 20 6c 69 6e 65 20  | er.options.do.not.apply.to.line. | 
| 2ce20 |  61 72 65 61 73 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 66 6f 72 6d 61 74 20 22 20 28 25 73  | areas..............(format.".(%s | 
| 2ce40 |  29 22 20 28 6f 72 20 62 6f 72 64 65 72 20 27 6e    6f 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20  | )".(or.border.'none))........... | 
| 2ce60 |  20 20 28 69 66 20 61 72 72 6f 77 20 22 20 28 61    72 72 6f 77 29 22 20 22 22 29 0a 20 20 20 20 20  | ..(if.arrow.".(arrow)"."")...... | 
| 2ce80 |  20 20 20 20 20 20 20 28 69 66 20 77 69 64 74 68    20 28 66 6f 72 6d 61 74 20 22 20 28 77 69 64 74  | .......(if.width.(format.".(widt | 
| 2cea0 |  68 20 25 64 29 22 20 77 69 64 74 68 29 20 22 22    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64  | h.%d)".width)."").............(d | 
| 2cec0 |  6a 76 75 2d 69 6e 73 65 72 74 2d 63 6f 6c 6f 72    20 22 6c 69 6e 65 63 6c 72 22 20 6c 69 6e 65 63  | jvu-insert-color."lineclr".linec | 
| 2cee0 |  6c 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    22 29 5c 6e 5c 6e 22 29 0a 20 20 20 20 28 75 6e  | lr).............")\n\n").....(un | 
| 2cf00 |  64 6f 2d 62 6f 75 6e 64 61 72 79 29 29 29 0a 0a    28 64 65 66 75 6e 20 64 6a 76 75 2d 74 65 78 74  | do-boundary)))..(defun.djvu-text | 
| 2cf20 |  2d 6c 69 6e 65 2d 61 72 65 61 20 28 73 74 72 69    6e 67 20 61 72 65 61 20 26 6f 70 74 69 6f 6e 61  | -line-area.(string.area.&optiona | 
| 2cf40 |  6c 20 64 6f 63 29 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 64  | l.doc)...(with-current-buffer.(d | 
| 2cf60 |  6a 76 75 2d 72 65 66 20 74 65 78 74 2d 62 75 66    20 64 6f 63 29 0a 20 20 20 20 28 67 6f 74 6f 2d  | jvu-ref.text-buf.doc).....(goto- | 
| 2cf80 |  63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29    29 0a 20 20 20 20 28 73 6b 69 70 2d 63 68 61 72  | char.(point-max)).....(skip-char | 
| 2cfa0 |  73 2d 62 61 63 6b 77 61 72 64 20 22 20 5c 74 5c    6e 22 29 0a 20 20 20 20 28 62 61 63 6b 77 61 72  | s-backward.".\t\n").....(backwar | 
| 2cfc0 |  64 2d 63 68 61 72 29 20 3b 20 22 29 22 0a 20 20    20 20 28 69 6e 73 65 72 74 20 28 61 70 70 6c 79  | d-char).;.")".....(insert.(apply | 
| 2cfe0 |  20 27 66 6f 72 6d 61 74 20 22 5c 6e 20 28 6c 69    6e 65 20 25 64 20 25 64 20 25 64 20 25 64 22 20  | .'format."\n.(line.%d.%d.%d.%d". | 
| 2d000 |  61 72 65 61 29 29 0a 20 20 20 20 28 6c 65 74 2a    20 28 28 77 6f 72 64 2d 6c 69 73 74 20 28 73 70  | area)).....(let*.((word-list.(sp | 
| 2d020 |  6c 69 74 2d 73 74 72 69 6e 67 20 73 74 72 69 6e    67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28  | lit-string.string))............( | 
| 2d040 |  6e 20 28 2b 20 28 6c 65 6e 67 74 68 20 28 61 70    70 6c 79 20 27 63 6f 6e 63 61 74 20 77 6f 72 64  | n.(+.(length.(apply.'concat.word | 
| 2d060 |  2d 6c 69 73 74 29 29 20 3b 20 23 20 77 6f 72 64    20 63 68 61 72 61 63 74 65 72 73 0a 20 20 20 20  | -list)).;.#.word.characters..... | 
| 2d080 |  20 20 20 20 20 20 20 20 20 20 20 20 20 2d 31 20    28 6c 65 6e 67 74 68 20 77 6f 72 64 2d 6c 69 73  | .............-1.(length.word-lis | 
| 2d0a0 |  74 29 29 29 20 20 20 20 20 20 20 20 20 20 20 20    3b 20 23 20 73 70 61 63 65 73 0a 20 20 20 20 20  | t)))............;.#.spaces...... | 
| 2d0c0 |  20 20 20 20 20 20 28 6d 31 20 30 29 20 28 6d 32    20 28 31 2b 20 6e 29 29 0a 20 20 20 20 20 20 20  | ......(m1.0).(m2.(1+.n))........ | 
| 2d0e0 |  20 20 20 20 28 78 31 20 28 6e 74 68 20 30 20 61    72 65 61 29 29 20 28 78 32 20 28 6e 74 68 20 32  | ....(x1.(nth.0.area)).(x2.(nth.2 | 
| 2d100 |  20 61 72 65 61 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 77 69 64 74 68 20 28 2f 20 28 2d 20  | .area))............(width.(/.(-. | 
| 2d120 |  78 32 20 78 31 29 20 28 66 6c 6f 61 74 20 6e 29    29 29 20 20 20 20 20 20 20 20 20 20 3b 20 70 69  | x2.x1).(float.n)))..........;.pi | 
| 2d140 |  78 65 6c 73 20 70 65 72 20 63 68 61 72 61 63 74    65 72 0a 20 20 20 20 20 20 20 20 20 20 20 77 6f  | xels.per.character............wo | 
| 2d160 |  72 64 29 0a 20 20 20 20 20 20 28 64 6f 74 69 6d    65 73 20 28 69 20 28 6c 65 6e 67 74 68 20 77 6f  | rd).......(dotimes.(i.(length.wo | 
| 2d180 |  72 64 2d 6c 69 73 74 29 29 0a 20 20 20 20 20 20    20 20 28 73 65 74 71 20 77 6f 72 64 20 28 6e 74  | rd-list)).........(setq.word.(nt | 
| 2d1a0 |  68 20 69 20 77 6f 72 64 2d 6c 69 73 74 29 29 0a    20 20 20 20 20 20 20 20 28 73 65 74 71 20 6d 32  | h.i.word-list)).........(setq.m2 | 
| 2d1c0 |  20 28 2d 20 6d 32 20 31 20 28 6c 65 6e 67 74 68    20 77 6f 72 64 29 29 29 0a 20 20 20 20 20 20 20  | .(-.m2.1.(length.word)))........ | 
| 2d1e0 |  20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74    20 22 5c 6e 20 20 28 77 6f 72 64 20 25 64 20 25  | .(insert.(format."\n..(word.%d.% | 
| 2d200 |  64 20 25 64 20 25 64 20 25 53 29 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d.%d.%d.%S)".................... | 
| 2d220 |  20 20 20 20 20 28 2b 20 78 31 20 28 72 6f 75 6e    64 20 28 2a 20 6d 31 20 77 69 64 74 68 29 29 29  | .....(+.x1.(round.(*.m1.width))) | 
| 2d240 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6e 74 68 20 31 20  | .........................(nth.1. | 
| 2d260 |  61 72 65 61 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2d  | area).........................(- | 
| 2d280 |  20 78 32 20 28 72 6f 75 6e 64 20 28 2a 20 6d 32    20 77 69 64 74 68 29 29 29 0a 20 20 20 20 20 20  | .x2.(round.(*.m2.width)))....... | 
| 2d2a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6e 74 68 20 33 20 61 72 65 61 29 0a 20  | ..................(nth.3.area).. | 
| 2d2c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 77 6f 72 64 29 29 0a 20 20  | .......................word))... | 
| 2d2e0 |  20 20 20 20 20 20 28 73 65 74 71 20 6d 31 20 28    2b 20 6d 31 20 31 20 28 6c 65 6e 67 74 68 20 77  | ......(setq.m1.(+.m1.1.(length.w | 
| 2d300 |  6f 72 64 29 29 29 29 29 0a 20 20 20 20 28 69 6e    73 65 72 74 20 22 29 22 29 29 29 0a 0a 28 64 65  | ord))))).....(insert.")")))..(de | 
| 2d320 |  66 75 6e 20 64 6a 76 75 2d 6d 6f 75 73 65 2d 77    6f 72 64 2d 61 72 65 61 20 28 65 76 65 6e 74 29  | fun.djvu-mouse-word-area.(event) | 
| 2d340 |  0a 20 20 22 49 6e 73 65 72 74 20 77 6f 72 64 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | ..."Insert.word."...(interactive | 
| 2d360 |  20 22 65 22 29 0a 20 20 28 64 6a 76 75 2d 77 69    74 68 2d 65 76 65 6e 74 2d 62 75 66 66 65 72 20  | ."e")...(djvu-with-event-buffer. | 
| 2d380 |  65 76 65 6e 74 0a 20 20 20 20 28 75 6e 77 69 6e    64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20  | event.....(unwind-protect....... | 
| 2d3a0 |  20 20 3b 3b 20 44 6f 20 41 52 45 41 20 66 69 72    73 74 20 61 73 20 74 68 69 73 20 6d 61 79 20 74  | ..;;.Do.AREA.first.as.this.may.t | 
| 2d3c0 |  68 72 6f 77 20 61 20 75 73 65 72 20 65 72 72 6f    72 2e 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20  | hrow.a.user.error..........(let. | 
| 2d3e0 |  28 28 61 72 65 61 20 28 64 6a 76 75 2d 65 76 65    6e 74 2d 74 6f 2d 61 72 65 61 20 65 76 65 6e 74  | ((area.(djvu-event-to-area.event | 
| 2d400 |  29 29 29 0a 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  | )))...........(with-current-buff | 
| 2d420 |  65 72 20 28 64 6a 76 75 2d 72 65 66 20 74 65 78    74 2d 62 75 66 29 0a 20 20 20 20 20 20 20 20 20  | er.(djvu-ref.text-buf).......... | 
| 2d440 |  20 20 20 28 64 6a 76 75 2d 74 65 78 74 2d 6c 69    6e 65 2d 61 72 65 61 20 28 72 65 61 64 2d 73 74  | ...(djvu-text-line-area.(read-st | 
| 2d460 |  72 69 6e 67 20 22 54 65 78 74 3a 20 22 20 6e 69    6c 20 6e 69 6c 20 6e 69 6c 0a 20 20 20 20 20 20  | ring."Text:.".nil.nil.nil....... | 
| 2d480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2d4a0 |  20 20 20 20 20 20 20 20 64 6a 76 75 2d 69 6e 68    65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f  | ........djvu-inherit-input-metho | 
| 2d4c0 |  64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d).............................. | 
| 2d4e0 |  20 20 20 20 61 72 65 61 29 29 29 0a 20 20 20 20    20 20 28 64 6a 76 75 2d 69 6d 61 67 65 2d 72 65  | ....area))).......(djvu-image-re | 
| 2d500 |  63 74 29 29 29 29 0a 0a 3b 3b 3b 20 4d 69 73 63    65 6c 6c 61 6e 65 6f 75 73 20 63 6f 6d 6d 61 6e  | ct))))..;;;.Miscellaneous.comman | 
| 2d520 |  64 73 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d    69 6e 74 65 72 61 63 74 69 76 65 2d 70 61 67 65  | ds..(defun.djvu-interactive-page | 
| 2d540 |  73 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63    29 0a 20 20 22 53 70 65 63 69 66 79 20 70 61 67  | s.(&optional.doc)..."Specify.pag | 
| 2d560 |  65 20 72 61 6e 67 65 20 74 6f 20 6f 70 65 72 61    74 65 20 6f 6e 20 69 6e 20 69 6e 74 65 72 61 63  | e.range.to.operate.on.in.interac | 
| 2d580 |  74 69 76 65 20 63 61 6c 6c 73 2e 0a 57 69 74 68    6f 75 74 20 61 20 70 72 65 66 69 78 2c 20 72 65  | tive.calls..Without.a.prefix,.re | 
| 2d5a0 |  74 75 72 6e 20 6e 69 6c 20 6d 65 61 6e 69 6e 67    20 5c 22 61 6c 6c 20 70 61 67 65 73 5c 22 2e 0a  | turn.nil.meaning.\"all.pages\".. | 
| 2d5c0 |  4f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e    20 61 20 63 6f 6e 73 20 70 61 69 72 20 28 50 41  | Otherwise.return.a.cons.pair.(PA | 
| 2d5e0 |  47 45 31 20 2e 20 50 41 47 45 32 29 2e 0a 57 69    74 68 20 70 72 65 66 69 78 20 43 2d 75 2c 20 74  | GE1...PAGE2)..With.prefix.C-u,.t | 
| 2d600 |  68 69 73 20 62 65 63 6f 6d 65 73 20 74 68 65 20    63 75 72 72 65 6e 74 20 70 61 67 65 2e 0a 57 69  | his.becomes.the.current.page..Wi | 
| 2d620 |  74 68 20 70 72 65 66 69 78 20 43 2d 75 20 43 2d    75 2c 20 72 65 61 64 20 70 61 67 65 20 72 61 6e  | th.prefix.C-u.C-u,.read.page.ran | 
| 2d640 |  67 65 20 66 72 6f 6d 20 6d 69 6e 69 62 75 66 66    65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 70 61  | ge.from.minibuffer."...(let.((pa | 
| 2d660 |  67 65 73 20 28 63 6f 6e 64 20 28 28 65 71 75 61    6c 20 27 28 31 36 29 20 63 75 72 72 65 6e 74 2d  | ges.(cond.((equal.'(16).current- | 
| 2d680 |  70 72 65 66 69 78 2d 61 72 67 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | prefix-arg)..................... | 
| 2d6a0 |  20 20 28 63 6f 6e 73 20 28 72 65 61 64 2d 6e 75    6d 62 65 72 20 22 46 69 72 73 74 20 70 61 67 65  | ..(cons.(read-number."First.page | 
| 2d6c0 |  3a 20 22 20 31 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  | :.".1).......................... | 
| 2d6e0 |  20 20 20 28 72 65 61 64 2d 6e 75 6d 62 65 72 20    22 4c 61 73 74 20 70 61 67 65 3a 20 22 0a 20 20  | ...(read-number."Last.page:."... | 
| 2d700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2d720 |  20 20 20 20 20 20 20 28 64 6a 76 75 2d 72 65 66    20 70 61 67 65 6d 61 78 20 64 6f 63 29 29 29 29  | .......(djvu-ref.pagemax.doc)))) | 
| 2d740 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 63 75 72 72 65 6e 74 2d 70  | ......................(current-p | 
| 2d760 |  72 65 66 69 78 2d 61 72 67 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | refix-arg....................... | 
| 2d780 |  28 63 6f 6e 73 20 28 64 6a 76 75 2d 72 65 66 20    70 61 67 65 20 64 6f 63 29 20 28 64 6a 76 75 2d  | (cons.(djvu-ref.page.doc).(djvu- | 
| 2d7a0 |  72 65 66 20 70 61 67 65 20 64 6f 63 29 29 29 29    29 29 0a 20 20 20 20 3b 3b 20 52 65 74 75 72 6e  | ref.page.doc)))))).....;;.Return | 
| 2d7c0 |  20 63 6f 6e 73 20 28 53 54 52 49 4e 47 20 2e 20    50 41 47 45 53 29 2e 0a 20 20 20 20 28 63 6f 6e  | .cons.(STRING...PAGES)......(con | 
| 2d7e0 |  73 20 28 69 66 20 70 61 67 65 73 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65  | s.(if.pages...............(if.(e | 
| 2d800 |  71 20 28 63 61 72 20 70 61 67 65 73 29 20 28 63    64 72 20 70 61 67 65 73 29 29 0a 20 20 20 20 20  | q.(car.pages).(cdr.pages))...... | 
| 2d820 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66    20 28 65 71 20 28 63 61 72 20 70 61 67 65 73 29  | .............(if.(eq.(car.pages) | 
| 2d840 |  20 28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 20    64 6f 63 29 29 20 22 63 75 72 72 65 6e 74 20 70  | .(djvu-ref.page.doc))."current.p | 
| 2d860 |  61 67 65 22 0a 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  | age".....................(format | 
| 2d880 |  20 22 70 61 67 65 20 25 64 22 20 28 63 61 72 20    70 61 67 65 73 29 29 29 0a 20 20 20 20 20 20 20  | ."page.%d".(car.pages)))........ | 
| 2d8a0 |  20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74    20 22 70 61 67 65 73 20 25 64 2d 25 64 22 20 28  | .........(format."pages.%d-%d".( | 
| 2d8c0 |  63 61 72 20 70 61 67 65 73 29 20 28 63 64 72 20    70 61 67 65 73 29 29 29 0a 20 20 20 20 20 20 20  | car.pages).(cdr.pages)))........ | 
| 2d8e0 |  20 20 20 20 20 22 61 6c 6c 20 70 61 67 65 73 22    29 0a 20 20 20 20 20 20 20 20 20 20 70 61 67 65  | ....."all.pages")...........page | 
| 2d900 |  73 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76    75 2d 70 61 67 65 73 2d 61 63 74 69 6f 6e 20 28  | s)))..(defun.djvu-pages-action.( | 
| 2d920 |  70 61 67 65 73 20 61 63 74 69 6f 6e 20 64 6f 63    29 0a 20 20 22 41 70 70 6c 79 20 41 43 54 49 4f  | pages.action.doc)..."Apply.ACTIO | 
| 2d940 |  4e 20 74 6f 20 50 41 47 45 53 20 6f 66 20 44 6a    76 75 20 64 6f 63 75 6d 65 6e 74 20 44 4f 43 2e  | N.to.PAGES.of.Djvu.document.DOC. | 
| 2d960 |  0a 49 66 20 50 41 47 45 53 20 69 73 20 6e 69 6c    2c 20 6f 70 65 72 61 74 65 20 6f 6e 20 61 6c 6c  | .If.PAGES.is.nil,.operate.on.all | 
| 2d980 |  20 70 61 67 65 73 2e 0a 4f 74 68 65 72 77 69 73    65 20 50 41 47 45 53 20 69 73 20 61 20 63 6f 6e  | .pages..Otherwise.PAGES.is.a.con | 
| 2d9a0 |  73 20 70 61 69 72 20 28 50 41 47 45 31 20 2e 20    50 41 47 45 32 29 2e 22 0a 20 20 28 75 6e 6c 65  | s.pair.(PAGE1...PAGE2)."...(unle | 
| 2d9c0 |  73 73 20 64 6f 63 20 28 73 65 74 71 20 64 6f 63    20 64 6a 76 75 2d 64 6f 63 29 29 0a 20 20 28 64  | ss.doc.(setq.doc.djvu-doc))...(d | 
| 2d9e0 |  6a 76 75 2d 73 61 76 65 20 64 6f 63 20 74 29 0a    20 20 28 69 66 20 70 61 67 65 73 0a 20 20 20 20  | jvu-save.doc.t)...(if.pages..... | 
| 2da00 |  20 20 28 64 6a 76 75 2d 64 6a 76 75 73 65 64 20    64 6f 63 20 6e 69 6c 20 22 2d 65 22 0a 20 20 20  | ..(djvu-djvused.doc.nil."-e".... | 
| 2da20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6d 61 70 63 6f 6e 63 61 74 0a 20 20 20 20  | .................(mapconcat..... | 
| 2da40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 61 6d 62 64 61 20 28 70 61 67 65 29 0a  | .................(lambda.(page). | 
| 2da60 |  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 6f 72 6d 61 74 20 22  | .......................(format." | 
| 2da80 |  73 65 6c 65 63 74 20 25 73 3b 20 25 73 22 20 70    61 67 65 20 61 63 74 69 6f 6e 29 29 0a 20 20 20  | select.%s;.%s".page.action)).... | 
| 2daa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6e 75 6d 62 65 72 2d 73 65 71 75 65 6e  | ..................(number-sequen | 
| 2dac0 |  63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6d 61 78 20 31 20  | ce.......................(max.1. | 
| 2dae0 |  28 63 61 72 20 70 61 67 65 73 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (car.pages)).................... | 
| 2db00 |  20 20 20 28 6d 69 6e 20 28 64 6a 76 75 2d 72 65    66 20 70 61 67 65 6d 61 78 20 64 6f 63 29 20 28  | ...(min.(djvu-ref.pagemax.doc).( | 
| 2db20 |  63 64 72 20 70 61 67 65 73 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | cdr.pages))).................... | 
| 2db40 |  20 20 22 3b 20 22 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 22 2d 73 22  | ..";.")....................."-s" | 
| 2db60 |  29 0a 20 20 20 20 28 64 6a 76 75 2d 64 6a 76 75    73 65 64 20 64 6f 63 20 6e 69 6c 20 22 2d 65 22  | ).....(djvu-djvused.doc.nil."-e" | 
| 2db80 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 66 6f 72 6d 61 74 20 22 73 65 6c 65  | ...................(format."sele | 
| 2dba0 |  63 74 3b 20 25 73 22 20 61 63 74 69 6f 6e 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ct;.%s".action)................. | 
| 2dbc0 |  20 20 22 2d 73 22 29 29 29 0a 0a 28 64 65 66 75    6e 20 64 6a 76 75 2d 64 70 69 20 28 64 70 69 20  | .."-s")))..(defun.djvu-dpi.(dpi. | 
| 2dbe0 |  26 6f 70 74 69 6f 6e 61 6c 20 70 61 67 65 73 20    64 6f 63 29 0a 20 20 22 53 65 74 20 44 50 49 20  | &optional.pages.doc)..."Set.DPI. | 
| 2dc00 |  72 65 73 6f 6c 75 74 69 6f 6e 20 6f 66 20 64 6a    76 75 20 64 6f 63 75 6d 65 6e 74 20 44 4f 43 2e  | resolution.of.djvu.document.DOC. | 
| 2dc20 |  0a 49 66 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67    20 50 41 47 45 53 20 69 73 20 6e 69 6c 2c 20 6f  | .If.optional.arg.PAGES.is.nil,.o | 
| 2dc40 |  70 65 72 61 74 65 20 6f 6e 20 61 6c 6c 20 70 61    67 65 73 2e 0a 4f 74 68 65 72 77 69 73 65 20 50  | perate.on.all.pages..Otherwise.P | 
| 2dc60 |  41 47 45 53 20 69 73 20 61 20 63 6f 6e 73 20 70    61 69 72 20 28 50 41 47 45 31 20 2e 20 50 41 47  | AGES.is.a.cons.pair.(PAGE1...PAG | 
| 2dc80 |  45 32 29 2e 0a 57 69 74 68 20 70 72 65 66 69 78    20 43 2d 75 2c 20 50 41 47 45 53 20 62 65 63 6f  | E2)..With.prefix.C-u,.PAGES.beco | 
| 2dca0 |  6d 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20    70 61 67 65 2e 0a 57 69 74 68 20 70 72 65 66 69  | mes.the.current.page..With.prefi | 
| 2dcc0 |  78 20 43 2d 75 20 43 2d 75 2c 20 72 65 61 64 20    72 61 6e 67 65 20 50 41 47 45 53 20 66 72 6f 6d  | x.C-u.C-u,.read.range.PAGES.from | 
| 2dce0 |  20 6d 69 6e 69 62 75 66 66 65 72 2e 22 0a 20 20    3b 3b 20 50 41 47 45 53 20 63 6f 75 6c 64 20 61  | .minibuffer."...;;.PAGES.could.a | 
| 2dd00 |  6c 73 6f 20 62 65 20 61 20 70 72 6f 70 65 72 20    6c 69 73 74 2e 20 20 55 73 65 66 75 6c 3f 3f 0a  | lso.be.a.proper.list...Useful??. | 
| 2dd20 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20    20 20 28 6c 65 74 20 28 28 70 61 67 65 73 20 28  | ..(interactive....(let.((pages.( | 
| 2dd40 |  64 6a 76 75 2d 69 6e 74 65 72 61 63 74 69 76 65    2d 70 61 67 65 73 29 29 29 0a 20 20 20 20 20 28  | djvu-interactive-pages)))......( | 
| 2dd60 |  6c 69 73 74 20 28 72 65 61 64 2d 6e 75 6d 62 65    72 20 28 66 6f 72 6d 61 74 20 22 28 25 73 29 20  | list.(read-number.(format."(%s). | 
| 2dd80 |  44 70 69 3a 20 22 20 28 63 61 72 20 70 61 67 65    73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | Dpi:.".(car.pages)))............ | 
| 2dda0 |  28 63 64 72 20 70 61 67 65 73 29 29 29 29 0a 20    20 28 64 6a 76 75 2d 70 61 67 65 73 2d 61 63 74  | (cdr.pages))))...(djvu-pages-act | 
| 2ddc0 |  69 6f 6e 20 70 61 67 65 73 20 28 66 6f 72 6d 61    74 20 22 73 65 74 2d 64 70 69 20 25 64 22 20 64  | ion.pages.(format."set-dpi.%d".d | 
| 2dde0 |  70 69 29 20 64 6f 63 29 29 0a 0a 28 64 65 66 75    6e 20 64 6a 76 75 2d 64 70 69 2d 75 6e 69 66 79  | pi).doc))..(defun.djvu-dpi-unify | 
| 2de00 |  20 28 77 69 64 74 68 20 64 70 69 20 26 6f 70 74    69 6f 6e 61 6c 20 64 6f 63 29 0a 20 20 22 55 6e  | .(width.dpi.&optional.doc)..."Un | 
| 2de20 |  69 66 79 20 74 68 65 20 72 61 74 69 6f 20 57 49    44 54 48 20 2f 20 44 50 49 20 6f 66 20 61 6c 6c  | ify.the.ratio.WIDTH./.DPI.of.all | 
| 2de40 |  20 70 61 67 65 73 20 6f 66 20 61 20 44 6a 76 75    20 64 6f 63 75 6d 65 6e 74 2e 0a 49 66 20 74 68  | .pages.of.a.Djvu.document..If.th | 
| 2de60 |  65 20 77 69 64 74 68 20 6f 66 20 61 20 70 61 67    65 20 65 78 63 65 65 64 73 20 57 49 44 54 48 2c  | e.width.of.a.page.exceeds.WIDTH, | 
| 2de80 |  20 69 6e 63 72 65 61 73 65 20 74 68 65 20 70 61    67 65 20 72 65 73 6f 6c 75 74 69 6f 6e 20 44 50  | .increase.the.page.resolution.DP | 
| 2dea0 |  49 0a 61 63 63 6f 72 64 69 6e 67 6c 79 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 22  | I.accordingly."...(interactive." | 
| 2dec0 |  6e 57 69 64 74 68 3a 20 5c 6e 6e 57 69 64 74 68    3a 20 25 73 2c 20 64 70 69 3a 20 22 29 0a 20 20  | nWidth:.\nnWidth:.%s,.dpi:.")... | 
| 2dee0 |  28 75 6e 6c 65 73 73 20 64 6f 63 20 28 73 65 74    71 20 64 6f 63 20 64 6a 76 75 2d 64 6f 63 29 29  | (unless.doc.(setq.doc.djvu-doc)) | 
| 2df00 |  0a 20 20 28 6c 65 74 20 28 6a 6f 62 29 0a 20 20    20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66  | ...(let.(job).....(with-temp-buf | 
| 2df20 |  66 65 72 0a 20 20 20 20 20 20 28 64 6a 76 75 2d    64 6a 76 75 73 65 64 20 64 6f 63 20 74 20 22 2d  | fer.......(djvu-djvused.doc.t."- | 
| 2df40 |  65 22 20 22 73 69 7a 65 22 29 0a 20 20 20 20 20    20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69  | e"."size").......(goto-char.(poi | 
| 2df60 |  6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 28    6c 65 74 20 28 28 70 61 67 65 20 30 29 29 0a 20  | nt-min)).......(let.((page.0)).. | 
| 2df80 |  20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6c    6f 6f 6b 69 6e 67 2d 61 74 20 22 77 69 64 74 68  | .......(while.(looking-at."width | 
| 2dfa0 |  3d 5c 5c 28 5b 5b 3a 64 69 67 69 74 3a 5d 5d 2b    5c 5c 29 22 29 0a 20 20 20 20 20 20 20 20 20 20  | =\\([[:digit:]]+\\)")........... | 
| 2dfc0 |  28 73 65 74 71 20 70 61 67 65 20 28 31 2b 20 70    61 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20  | (setq.page.(1+.page))........... | 
| 2dfe0 |  28 6c 65 74 20 28 28 64 20 28 2f 20 28 2a 20 28    64 6a 76 75 2d 6d 61 74 63 68 2d 6e 75 6d 62 65  | (let.((d.(/.(*.(djvu-match-numbe | 
| 2e000 |  72 20 31 29 20 64 70 69 29 20 77 69 64 74 68 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | r.1).dpi).width))).............( | 
| 2e020 |  69 66 20 28 3c 20 64 70 69 20 64 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75  | if.(<.dpi.d).................(pu | 
| 2e040 |  73 68 20 28 63 6f 6e 73 20 70 61 67 65 20 64 29    20 6a 6f 62 29 29 29 0a 20 20 20 20 20 20 20 20  | sh.(cons.page.d).job)))......... | 
| 2e060 |  20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29    29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74  | ..(forward-line)))).....(if.(not | 
| 2e080 |  20 6a 6f 62 29 0a 20 20 20 20 20 20 20 20 28 6d    65 73 73 61 67 65 20 22 4e 6f 74 68 69 6e 67 20  | .job).........(message."Nothing. | 
| 2e0a0 |  74 6f 20 75 6e 69 66 79 22 29 0a 20 20 20 20 20    20 28 64 6a 76 75 2d 64 6a 76 75 73 65 64 20 64  | to.unify").......(djvu-djvused.d | 
| 2e0c0 |  6f 63 20 6e 69 6c 20 22 2d 65 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | oc.nil."-e"..................... | 
| 2e0e0 |  28 6d 61 70 63 6f 6e 63 61 74 20 28 6c 61 6d 62    64 61 20 28 65 6c 74 29 0a 20 20 20 20 20 20 20  | (mapconcat.(lambda.(elt)........ | 
| 2e100 |  20 20 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 6f 72 6d 61  | ..........................(forma | 
| 2e120 |  74 20 22 73 65 6c 65 63 74 20 25 73 3b 20 73 65    74 2d 64 70 69 20 25 64 22 0a 20 20 20 20 20 20  | t."select.%s;.set-dpi.%d"....... | 
| 2e140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2e160 |  20 20 20 28 63 61 72 20 65 6c 74 29 20 28 63 64    72 20 65 6c 74 29 29 29 0a 20 20 20 20 20 20 20  | ...(car.elt).(cdr.elt)))........ | 
| 2e180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 6a 6f 62 20 22 3b 20 22  | ........................job.";." | 
| 2e1a0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 22 2d 73 22 29 0a 20 20 20 20  | )....................."-s")..... | 
| 2e1c0 |  20 20 28 6d 65 73 73 61 67 65 20 22 25 73 20 70    61 67 65 73 20 75 70 64 61 74 65 64 3a 20 25 73  | ..(message."%s.pages.updated:.%s | 
| 2e1e0 |  22 20 28 6c 65 6e 67 74 68 20 6a 6f 62 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d  | ".(length.job)................(m | 
| 2e200 |  61 70 63 6f 6e 63 61 74 20 28 6c 61 6d 62 64 61    20 28 65 6c 74 29 20 28 66 6f 72 6d 61 74 20 22  | apconcat.(lambda.(elt).(format." | 
| 2e220 |  25 64 22 20 28 63 61 72 20 65 6c 74 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | %d".(car.elt)))................. | 
| 2e240 |  20 20 20 20 20 20 20 20 20 20 28 6e 72 65 76 65    72 73 65 20 6a 6f 62 29 20 22 2c 20 22 29 29 29  | ..........(nreverse.job).",."))) | 
| 2e260 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d    72 6f 74 61 74 65 20 28 26 6f 70 74 69 6f 6e 61  | ))..(defun.djvu-rotate.(&optiona | 
| 2e280 |  6c 20 72 6f 74 20 70 61 67 65 73 20 64 6f 63 29    0a 20 20 22 53 65 74 20 72 6f 74 61 74 69 6f 6e  | l.rot.pages.doc)..."Set.rotation | 
| 2e2a0 |  20 6f 66 20 44 6a 76 75 20 64 6f 63 75 6d 65 6e    74 20 44 4f 43 2e 0a 54 68 65 20 72 6f 74 61 74  | .of.Djvu.document.DOC..The.rotat | 
| 2e2c0 |  69 6f 6e 20 61 6e 67 6c 65 20 52 4f 54 20 69 73    20 69 6e 20 6d 75 6c 74 69 70 6c 65 73 20 6f 66  | ion.angle.ROT.is.in.multiples.of | 
| 2e2e0 |  20 39 30 20 64 65 67 72 65 65 73 20 63 6f 75 6e    74 65 72 63 6c 6f 63 6b 77 69 73 65 2e 0a 49 66  | .90.degrees.counterclockwise..If | 
| 2e300 |  20 73 74 72 69 6e 67 20 52 4f 54 20 68 61 73 20    70 72 65 66 69 78 20 5b 2b 2d 5d 20 61 70 70 6c  | .string.ROT.has.prefix.[+-].appl | 
| 2e320 |  79 20 72 65 6c 61 74 69 76 65 20 72 6f 74 61 74    69 6f 6e 2e 0a 49 66 20 6f 70 74 69 6f 6e 61 6c  | y.relative.rotation..If.optional | 
| 2e340 |  20 61 72 67 20 50 41 47 45 53 20 69 73 20 6e 69    6c 2c 20 6f 70 65 72 61 74 65 20 6f 6e 20 61 6c  | .arg.PAGES.is.nil,.operate.on.al | 
| 2e360 |  6c 20 70 61 67 65 73 2e 0a 4f 74 68 65 72 77 69    73 65 20 50 41 47 45 53 20 69 73 20 61 20 63 6f  | l.pages..Otherwise.PAGES.is.a.co | 
| 2e380 |  6e 73 20 70 61 69 72 20 28 50 41 47 45 31 20 2e    20 50 41 47 45 32 29 2e 0a 57 69 74 68 20 70 72  | ns.pair.(PAGE1...PAGE2)..With.pr | 
| 2e3a0 |  65 66 69 78 20 43 2d 75 2c 20 50 41 47 45 53 20    62 65 63 6f 6d 65 73 20 74 68 65 20 63 75 72 72  | efix.C-u,.PAGES.becomes.the.curr | 
| 2e3c0 |  65 6e 74 20 70 61 67 65 2e 0a 57 69 74 68 20 70    72 65 66 69 78 20 43 2d 75 20 43 2d 75 2c 20 72  | ent.page..With.prefix.C-u.C-u,.r | 
| 2e3e0 |  65 61 64 20 72 61 6e 67 65 20 50 41 47 45 53 20    66 72 6f 6d 20 6d 69 6e 69 62 75 66 66 65 72 2e  | ead.range.PAGES.from.minibuffer. | 
| 2e400 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    0a 20 20 20 28 6c 65 74 20 28 28 70 61 67 65 73  | "...(interactive....(let.((pages | 
| 2e420 |  20 28 64 6a 76 75 2d 69 6e 74 65 72 61 63 74 69    76 65 2d 70 61 67 65 73 29 29 29 0a 20 20 20 20  | .(djvu-interactive-pages)))..... | 
| 2e440 |  20 28 6c 69 73 74 20 28 72 65 61 64 2d 73 74 72    69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(list.(read-string............. | 
| 2e460 |  28 66 6f 72 6d 61 74 20 22 28 25 73 29 20 52 6f    74 61 74 65 20 28 5b 2b 2d 5d 30 2e 2e 2e 33 2c  | (format."(%s).Rotate.([+-]0...3, | 
| 2e480 |  20 64 65 66 61 75 6c 74 20 2b 31 29 3a 20 22 20    28 63 61 72 20 70 61 67 65 73 29 29 0a 20 20 20  | .default.+1):.".(car.pages)).... | 
| 2e4a0 |  20 20 20 20 20 20 20 20 20 6e 69 6c 20 6e 69 6c    20 22 2b 31 22 29 0a 20 20 20 20 20 20 20 20 20  | .........nil.nil."+1").......... | 
| 2e4c0 |  20 20 28 63 64 72 20 70 61 67 65 73 29 29 29 29    0a 20 20 28 63 6f 6e 64 20 28 28 6f 72 20 28 6e  | ..(cdr.pages))))...(cond.((or.(n | 
| 2e4e0 |  6f 74 20 72 6f 74 29 20 28 65 71 75 61 6c 20 72    6f 74 20 22 22 29 29 0a 20 20 20 20 20 20 20 20  | ot.rot).(equal.rot.""))......... | 
| 2e500 |  20 28 73 65 74 71 20 72 6f 74 20 22 2b 31 22 29    29 0a 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20  | .(setq.rot."+1")).........((not. | 
| 2e520 |  28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c    5c 60 5b 2d 2b 5d 3f 5b 30 31 32 33 5d 5c 5c 27  | (string-match."\\`[-+]?[0123]\\' | 
| 2e540 |  22 20 72 6f 74 29 29 0a 20 20 20 20 20 20 20 20    20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 44 6a  | ".rot))..........(user-error."Dj | 
| 2e560 |  76 75 20 72 6f 74 61 74 69 6f 6e 20 60 25 73 27    20 69 6e 76 61 6c 69 64 22 20 72 6f 74 29 29 29  | vu.rotation.`%s'.invalid".rot))) | 
| 2e580 |  0a 20 20 28 64 6a 76 75 2d 70 61 67 65 73 2d 61    63 74 69 6f 6e 20 70 61 67 65 73 20 28 66 6f 72  | ...(djvu-pages-action.pages.(for | 
| 2e5a0 |  6d 61 74 20 22 73 65 74 2d 72 6f 74 61 74 69 6f    6e 20 25 73 22 20 72 6f 74 29 20 64 6f 63 29 29  | mat."set-rotation.%s".rot).doc)) | 
| 2e5c0 |  0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d 70 61    67 65 2d 74 69 74 6c 65 20 28 74 69 74 6c 65 20  | ..(defun.djvu-page-title.(title. | 
| 2e5e0 |  26 6f 70 74 69 6f 6e 61 6c 20 70 61 67 65 73 20    64 6f 63 29 0a 20 20 22 53 65 74 20 70 61 67 65  | &optional.pages.doc)..."Set.page | 
| 2e600 |  20 54 49 54 4c 45 20 6f 66 20 44 6a 76 75 20 64    6f 63 75 6d 65 6e 74 20 44 4f 43 2e 0a 49 66 20  | .TITLE.of.Djvu.document.DOC..If. | 
| 2e620 |  54 49 54 4c 45 20 69 73 20 65 6d 70 74 79 20 73    74 72 69 6e 67 20 6f 72 20 6e 69 6c 20 72 65 6d  | TITLE.is.empty.string.or.nil.rem | 
| 2e640 |  6f 76 65 20 70 61 67 65 20 74 69 74 6c 65 2e 0a    49 66 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 20  | ove.page.title..If.optional.arg. | 
| 2e660 |  50 41 47 45 53 20 69 73 20 6e 69 6c 2c 20 6f 70    65 72 61 74 65 20 6f 6e 20 61 6c 6c 20 70 61 67  | PAGES.is.nil,.operate.on.all.pag | 
| 2e680 |  65 73 2e 0a 4f 74 68 65 72 77 69 73 65 20 50 41    47 45 53 20 69 73 20 61 20 63 6f 6e 73 20 70 61  | es..Otherwise.PAGES.is.a.cons.pa | 
| 2e6a0 |  69 72 20 28 50 41 47 45 31 20 2e 20 50 41 47 45    32 29 2e 0a 57 69 74 68 20 70 72 65 66 69 78 20  | ir.(PAGE1...PAGE2)..With.prefix. | 
| 2e6c0 |  43 2d 75 2c 20 50 41 47 45 53 20 62 65 63 6f 6d    65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 70  | C-u,.PAGES.becomes.the.current.p | 
| 2e6e0 |  61 67 65 2e 0a 57 69 74 68 20 70 72 65 66 69 78    20 43 2d 75 20 43 2d 75 2c 20 72 65 61 64 20 72  | age..With.prefix.C-u.C-u,.read.r | 
| 2e700 |  61 6e 67 65 20 50 41 47 45 53 20 66 72 6f 6d 20    6d 69 6e 69 62 75 66 66 65 72 2e 22 0a 20 20 3b  | ange.PAGES.from.minibuffer."...; | 
| 2e720 |  3b 20 46 69 78 6d 65 3a 20 77 65 20 63 6f 75 6c    64 20 61 6c 73 6f 20 67 65 6e 65 72 61 74 65 20  | ;.Fixme:.we.could.also.generate. | 
| 2e740 |  73 6f 6d 65 20 67 65 6e 65 72 69 63 20 64 69 73    74 69 6e 63 74 20 74 69 74 6c 65 0a 20 20 3b 3b  | some.generic.distinct.title...;; | 
| 2e760 |  20 66 6f 72 20 65 61 63 68 20 70 61 67 65 2e 20    20 49 73 20 74 68 69 73 20 75 73 65 66 75 6c 3f  | .for.each.page...Is.this.useful? | 
| 2e780 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a    20 20 20 28 6c 65 74 20 28 28 70 61 67 65 73 20  | ...(interactive....(let.((pages. | 
| 2e7a0 |  28 64 6a 76 75 2d 69 6e 74 65 72 61 63 74 69 76    65 2d 70 61 67 65 73 29 29 29 0a 20 20 20 20 20  | (djvu-interactive-pages)))...... | 
| 2e7c0 |  28 6c 69 73 74 20 28 72 65 61 64 2d 73 74 72 69    6e 67 20 28 66 6f 72 6d 61 74 20 22 28 25 73 29  | (list.(read-string.(format."(%s) | 
| 2e7e0 |  20 50 61 67 65 20 74 69 74 6c 65 3a 20 22 20 28    63 61 72 20 70 61 67 65 73 29 29 29 0a 20 20 20  | .Page.title:.".(car.pages))).... | 
| 2e800 |  20 20 20 20 20 20 20 20 28 63 64 72 20 70 61 67    65 73 29 29 29 29 0a 20 20 28 75 6e 6c 65 73 73  | ........(cdr.pages))))...(unless | 
| 2e820 |  20 64 6f 63 20 28 73 65 74 71 20 64 6f 63 20 64    6a 76 75 2d 64 6f 63 29 29 0a 20 20 28 69 66 20  | .doc.(setq.doc.djvu-doc))...(if. | 
| 2e840 |  28 61 6e 64 20 28 73 74 72 69 6e 67 70 20 74 69    74 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20  | (and.(stringp.title)............ | 
| 2e860 |  28 6e 6f 74 20 28 65 71 75 61 6c 20 22 22 20 74    69 74 6c 65 29 29 29 0a 20 20 20 20 20 20 3b 3b  | (not.(equal."".title))).......;; | 
| 2e880 |  20 73 65 74 2d 70 61 67 65 2d 74 69 74 6c 65 20    6f 6e 6c 79 20 6f 70 65 72 61 74 65 73 20 6f 6e  | .set-page-title.only.operates.on | 
| 2e8a0 |  20 69 6e 64 69 76 69 64 75 61 6c 20 70 61 67 65    73 2c 0a 20 20 20 20 20 20 3b 3b 20 74 68 6f 75  | .individual.pages,.......;;.thou | 
| 2e8c0 |  67 68 20 70 61 67 65 20 74 69 74 6c 65 73 20 6e    65 65 64 20 6e 6f 74 20 62 65 20 64 69 73 74 69  | gh.page.titles.need.not.be.disti | 
| 2e8e0 |  6e 63 74 2e 0a 20 20 20 20 20 20 28 64 6a 76 75    2d 70 61 67 65 73 2d 61 63 74 69 6f 6e 20 28 6f  | nct........(djvu-pages-action.(o | 
| 2e900 |  72 20 70 61 67 65 73 20 28 63 6f 6e 73 20 31 20    28 64 6a 76 75 2d 72 65 66 20 70 61 67 65 6d 61  | r.pages.(cons.1.(djvu-ref.pagema | 
| 2e920 |  78 20 64 6f 63 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | x.doc)))........................ | 
| 2e940 |  20 20 28 66 6f 72 6d 61 74 20 22 73 65 74 2d 70    61 67 65 2d 74 69 74 6c 65 20 25 73 22 20 74 69  | ..(format."set-page-title.%s".ti | 
| 2e960 |  74 6c 65 29 20 64 6f 63 29 0a 20 20 20 20 3b 3b    20 52 65 6d 6f 76 65 20 70 61 67 65 20 74 69 74  | tle).doc).....;;.Remove.page.tit | 
| 2e980 |  6c 65 73 3a 0a 20 20 20 20 3b 3b 20 64 6a 76 75    73 65 64 20 64 6f 65 73 20 6e 6f 74 20 68 61 76  | les:.....;;.djvused.does.not.hav | 
| 2e9a0 |  65 20 61 20 63 6f 6d 6d 61 6e 64 20 72 65 6d 6f    76 65 2d 70 61 67 65 2d 74 69 74 6c 65 2e 0a 20  | e.a.command.remove-page-title... | 
| 2e9c0 |  20 20 20 3b 3b 20 49 6e 73 74 65 61 64 20 66 6f    72 20 65 61 63 68 20 70 61 67 65 20 77 65 20 6d  | ...;;.Instead.for.each.page.we.m | 
| 2e9e0 |  75 73 74 20 73 65 74 20 74 68 65 20 70 61 67 65    20 74 69 74 6c 65 20 74 6f 20 74 68 65 20 70 61  | ust.set.the.page.title.to.the.pa | 
| 2ea00 |  67 65 2d 69 64 2e 0a 20 20 20 20 28 64 6a 76 75    2d 73 61 76 65 20 64 6f 63 20 74 29 0a 20 20 20  | ge-id......(djvu-save.doc.t).... | 
| 2ea20 |  20 28 64 6a 76 75 2d 64 6a 76 75 73 65 64 20 64    6f 63 20 6e 69 6c 20 22 2d 65 22 0a 20 20 20 20  | .(djvu-djvused.doc.nil."-e"..... | 
| 2ea40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d    61 70 63 6f 6e 63 61 74 20 28 6c 61 6d 62 64 61  | ..............(mapconcat.(lambda | 
| 2ea60 |  20 28 70 61 67 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  | .(page)......................... | 
| 2ea80 |  20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22    73 65 6c 65 63 74 20 25 64 3b 20 73 65 74 2d 70  | .......(format."select.%d;.set-p | 
| 2eaa0 |  61 67 65 2d 74 69 74 6c 65 20 25 73 22 20 70 61    67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | age-title.%s".page.............. | 
| 2eac0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 28  | ..........................(cdr.( | 
| 2eae0 |  61 73 73 71 20 70 61 67 65 20 28 64 6a 76 75 2d    72 65 66 20 70 61 67 65 2d 69 64 20 64 6f 63 29  | assq.page.(djvu-ref.page-id.doc) | 
| 2eb00 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ))))............................ | 
| 2eb20 |  20 20 28 6e 75 6d 62 65 72 2d 73 65 71 75 65 6e    63 65 20 28 6f 72 20 28 63 61 72 20 70 61 67 65  | ..(number-sequence.(or.(car.page | 
| 2eb40 |  73 29 20 31 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | s).1)........................... | 
| 2eb60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6f 72 20 28 63 64 72 20 70 61 67  | ....................(or.(cdr.pag | 
| 2eb80 |  65 73 29 20 28 64 6a 76 75 2d 72 65 66 20 70 61    67 65 6d 61 78 20 64 6f 63 29 29 29 0a 20 20 20  | es).(djvu-ref.pagemax.doc))).... | 
| 2eba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 22 3b 20 22 29 0a  | ..........................";."). | 
| 2ebc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 22 2d 73 22 29 29 29 0a 0a 28 64 65 66 75  | .................."-s")))..(defu | 
| 2ebe0 |  6e 20 64 6a 76 75 2d 6c 73 20 28 26 6f 70 74 69    6f 6e 61 6c 20 64 6f 63 29 0a 20 20 22 4c 69 73  | n.djvu-ls.(&optional.doc)..."Lis | 
| 2ec00 |  74 20 63 6f 6d 70 6f 6e 65 6e 74 20 66 69 6c 65    73 20 69 6e 20 74 68 65 20 44 6a 76 75 20 64 6f  | t.component.files.in.the.Djvu.do | 
| 2ec20 |  63 75 6d 65 6e 74 2e 0a 54 68 69 73 20 75 73 65    73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 5c 22  | cument..This.uses.the.command.\" | 
| 2ec40 |  64 6a 76 75 73 65 64 20 64 6f 63 2e 64 6a 76 75    20 2d 65 20 6c 73 5c 22 2e 22 0a 20 20 28 69 6e  | djvused.doc.djvu.-e.ls\"."...(in | 
| 2ec60 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65    74 20 28 28 62 75 66 66 65 72 20 28 67 65 74 2d  | teractive)...(let.((buffer.(get- | 
| 2ec80 |  62 75 66 66 65 72 2d 63 72 65 61 74 65 20 22 2a    64 6a 76 75 2d 6c 73 2a 22 29 29 0a 20 20 20 20  | buffer-create."*djvu-ls*"))..... | 
| 2eca0 |  20 20 20 20 28 64 6f 63 20 28 6f 72 20 64 6f 63    20 64 6a 76 75 2d 64 6f 63 29 29 29 0a 20 20 20  | ....(doc.(or.doc.djvu-doc))).... | 
| 2ecc0 |  20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62    75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20  | .(with-current-buffer.buffer.... | 
| 2ece0 |  20 20 20 28 6c 65 74 20 28 28 62 75 66 66 65 72    2d 75 6e 64 6f 2d 6c 69 73 74 20 74 29 0a 20 20  | ...(let.((buffer-undo-list.t)... | 
| 2ed00 |  20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72    2d 72 65 61 64 2d 6f 6e 6c 79 29 0a 20 20 20 20  | ..........buffer-read-only)..... | 
| 2ed20 |  20 20 20 20 28 65 72 61 73 65 2d 62 75 66 66 65    72 29 0a 20 20 20 20 20 20 20 20 28 64 6a 76 75  | ....(erase-buffer).........(djvu | 
| 2ed40 |  2d 64 6a 76 75 73 65 64 20 64 6f 63 20 74 20 22    2d 65 22 20 22 6c 73 22 29 29 0a 20 20 20 20 20  | -djvused.doc.t."-e"."ls"))...... | 
| 2ed60 |  20 28 73 65 74 2d 62 75 66 66 65 72 2d 6d 6f 64    69 66 69 65 64 2d 70 20 6e 69 6c 29 0a 20 20 20  | .(set-buffer-modified-p.nil).... | 
| 2ed80 |  20 20 20 28 73 65 74 71 20 62 75 66 66 65 72 2d    72 65 61 64 2d 6f 6e 6c 79 20 74 29 0a 20 20 20  | ...(setq.buffer-read-only.t).... | 
| 2eda0 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 29 0a 20 20 20 20  | ...(goto-char.(point-min)))..... | 
| 2edc0 |  28 70 6f 70 2d 74 6f 2d 62 75 66 66 65 72 20 62    75 66 66 65 72 29 29 29 0a 0a 3b 3b 3b 23 23 23  | (pop-to-buffer.buffer)))..;;;### | 
| 2ede0 |  61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 69 6e 73 70 65 63 74 2d 66 69 6c  | autoload.(defun.djvu-inspect-fil | 
| 2ee00 |  65 20 28 66 69 6c 65 20 26 6f 70 74 69 6f 6e 61    6c 20 70 61 67 65 29 0a 20 20 22 49 6e 73 70 65  | e.(file.&optional.page)..."Inspe | 
| 2ee20 |  63 74 20 44 6a 76 75 20 46 49 4c 45 20 6f 6e 20    50 41 47 45 2e 0a 43 61 6c 6c 20 64 6a 76 75 73  | ct.Djvu.FILE.on.PAGE..Call.djvus | 
| 2ee40 |  65 64 20 77 69 74 68 20 74 68 65 20 73 61 6d 65    20 73 65 71 75 65 6e 63 65 20 6f 66 20 61 72 67  | ed.with.the.same.sequence.of.arg | 
| 2ee60 |  75 6d 65 6e 74 73 20 74 68 61 74 20 69 73 20 75    73 65 64 0a 62 79 20 60 64 6a 76 75 2d 69 6e 69  | uments.that.is.used.by.`djvu-ini | 
| 2ee80 |  74 2d 70 61 67 65 27 2e 20 20 44 69 73 70 6c 61    79 20 74 68 65 20 6f 75 74 70 75 74 20 69 6e 20  | t-page'...Display.the.output.in. | 
| 2eea0 |  60 64 6a 76 75 2d 73 63 72 69 70 74 2d 62 75 66    66 65 72 27 2e 0a 54 68 69 73 20 6d 61 79 20 63  | `djvu-script-buffer'..This.may.c | 
| 2eec0 |  6f 6d 65 20 68 61 6e 64 79 20 69 66 20 60 64 6a    76 75 2d 66 69 6e 64 2d 66 69 6c 65 27 20 63 68  | ome.handy.if.`djvu-find-file'.ch | 
| 2eee0 |  6f 6b 65 73 20 6f 6e 20 61 20 44 6a 76 75 20 66    69 6c 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | okes.on.a.Djvu.file."...(interac | 
| 2ef00 |  74 69 76 65 20 28 64 6a 76 75 2d 72 65 61 64 2d    66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20 20 28 77  | tive.(djvu-read-file-name))...(w | 
| 2ef20 |  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 72 2d 63  | ith-current-buffer.(get-buffer-c | 
| 2ef40 |  72 65 61 74 65 20 64 6a 76 75 2d 73 63 72 69 70    74 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 65  | reate.djvu-script-buffer).....(e | 
| 2ef60 |  72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20    20 28 6c 65 74 2a 20 28 28 63 6f 64 69 6e 67 2d  | rase-buffer).....(let*.((coding- | 
| 2ef80 |  73 79 73 74 65 6d 2d 66 6f 72 2d 72 65 61 64 20    27 75 74 66 2d 38 29 0a 20 20 20 20 20 20 20 20  | system-for-read.'utf-8)......... | 
| 2efa0 |  20 20 20 28 66 6d 74 20 28 63 6f 6e 63 61 74 20    22 63 72 65 61 74 65 2d 73 68 61 72 65 64 2d 61  | ...(fmt.(concat."create-shared-a | 
| 2efc0 |  6e 74 3b 20 70 72 69 6e 74 2d 61 6e 74 3b 20 6e    3b 20 6c 73 3b 20 70 72 69 6e 74 2d 6f 75 74 6c  | nt;.print-ant;.n;.ls;.print-outl | 
| 2efe0 |  69 6e 65 3b 20 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | ine;."........................." | 
| 2f000 |  73 65 6c 65 63 74 20 25 64 3b 20 73 69 7a 65 3b    20 70 72 69 6e 74 2d 74 78 74 3b 20 70 72 69 6e  | select.%d;.size;.print-txt;.prin | 
| 2f020 |  74 2d 61 6e 74 3b 22 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 28 73 74 61 74 75 73 20 28 61 70  | t-ant;"))............(status.(ap | 
| 2f040 |  70 6c 79 20 27 63 61 6c 6c 2d 70 72 6f 63 65 73    73 20 22 64 6a 76 75 73 65 64 22 20 6e 69 6c 20  | ply.'call-process."djvused".nil. | 
| 2f060 |  74 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t.nil........................... | 
| 2f080 |  28 6c 69 73 74 20 22 2d 75 22 20 66 69 6c 65 20    22 2d 65 22 20 28 66 6f 72 6d 61 74 20 66 6d 74  | (list."-u".file."-e".(format.fmt | 
| 2f0a0 |  20 28 6f 72 20 70 61 67 65 20 31 29 29 29 29 29    29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20  | .(or.page.1)))))).......(unless. | 
| 2f0c0 |  28 7a 65 72 6f 70 20 73 74 61 74 75 73 29 0a 20    20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 44  | (zerop.status).........(error."D | 
| 2f0e0 |  6a 76 75 73 65 64 20 65 72 72 6f 72 20 25 73 22    20 73 74 61 74 75 73 29 29 29 0a 20 20 20 20 28  | jvused.error.%s".status))).....( | 
| 2f100 |  73 65 74 2d 62 75 66 66 65 72 2d 6d 6f 64 69 66    69 65 64 2d 70 20 6e 69 6c 29 0a 20 20 20 20 28  | set-buffer-modified-p.nil).....( | 
| 2f120 |  67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74    2d 6d 69 6e 29 29 29 0a 20 20 28 70 6f 70 2d 74  | goto-char.(point-min)))...(pop-t | 
| 2f140 |  6f 2d 62 75 66 66 65 72 20 64 6a 76 75 2d 73 63    72 69 70 74 2d 62 75 66 66 65 72 29 29 0a 0a 3b  | o-buffer.djvu-script-buffer))..; | 
| 2f160 |  3b 3b 20 44 65 73 74 72 75 63 74 69 76 65 20 63    6f 6d 6d 61 6e 64 73 3a 20 75 73 65 20 77 69 74  | ;;.Destructive.commands:.use.wit | 
| 2f180 |  68 20 63 61 72 65 21 0a 0a 28 64 65 66 75 6e 20    64 6a 76 75 2d 64 65 6c 65 74 65 2d 70 61 67 65  | h.care!..(defun.djvu-delete-page | 
| 2f1a0 |  20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f 63 29    0a 20 20 22 44 65 6c 65 74 65 20 63 75 72 72 65  | .(&optional.doc)..."Delete.curre | 
| 2f1c0 |  6e 74 20 70 61 67 65 20 66 72 6f 6d 20 74 68 65    20 44 6a 76 75 20 64 6f 63 75 6d 65 6e 74 2e 20  | nt.page.from.the.Djvu.document.. | 
| 2f1e0 |  20 55 73 65 20 77 69 74 68 20 63 61 72 65 21 22    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29  | .Use.with.care!"...(interactive) | 
| 2f200 |  0a 20 20 28 75 6e 6c 65 73 73 20 64 6f 63 20 28    73 65 74 71 20 64 6f 63 20 64 6a 76 75 2d 64 6f  | ...(unless.doc.(setq.doc.djvu-do | 
| 2f220 |  63 29 29 0a 20 20 28 64 6a 76 75 2d 73 61 76 65    20 64 6f 63 20 74 29 0a 20 20 28 77 68 65 6e 20  | c))...(djvu-save.doc.t)...(when. | 
| 2f240 |  28 61 6e 64 20 28 3c 20 31 20 28 64 6a 76 75 2d    72 65 66 20 70 61 67 65 6d 61 78 20 64 6f 63 29  | (and.(<.1.(djvu-ref.pagemax.doc) | 
| 2f260 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28    79 65 73 2d 6f 72 2d 6e 6f 2d 70 20 22 44 65 6c  | )..............(yes-or-no-p."Del | 
| 2f280 |  65 74 65 20 63 75 72 72 65 6e 74 20 70 61 67 65    20 22 29 29 0a 20 20 20 20 3b 3b 20 57 65 20 72  | ete.current.page.")).....;;.We.r | 
| 2f2a0 |  65 73 6f 6c 76 65 20 61 6c 6c 20 69 6e 74 65 72    6e 61 6c 20 55 52 4c 73 20 74 6f 20 60 6c 6f 6e  | esolve.all.internal.URLs.to.`lon | 
| 2f2c0 |  67 27 2e 0a 20 20 20 20 3b 3b 20 53 6f 20 74 68    6f 73 65 20 55 52 4c 73 20 70 6f 69 6e 74 69 6e  | g'......;;.So.those.URLs.pointin | 
| 2f2e0 |  67 20 74 6f 20 70 61 67 65 73 20 74 68 61 74 20    61 72 65 20 6e 6f 74 20 64 65 6c 65 74 65 64 20  | g.to.pages.that.are.not.deleted. | 
| 2f300 |  72 65 6d 61 69 6e 20 76 61 6c 69 64 2e 0a 20 20    20 20 3b 3b 20 49 6e 74 65 72 6e 61 6c 20 55 52  | remain.valid......;;.Internal.UR | 
| 2f320 |  4c 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74    68 65 20 64 65 6c 65 74 65 64 20 70 61 67 65 20  | Ls.pointing.to.the.deleted.page. | 
| 2f340 |  62 65 63 6f 6d 65 20 6d 65 61 6e 69 6e 67 6c 65    73 73 2e 0a 20 20 20 20 3b 3b 20 57 65 20 64 6f  | become.meaningless......;;.We.do | 
| 2f360 |  20 6e 6f 74 20 77 6f 72 72 79 20 61 62 6f 75 74    20 74 68 69 73 20 68 65 72 65 20 61 6e 64 20 6e  | .not.worry.about.this.here.and.n | 
| 2f380 |  6f 77 20 61 73 20 69 74 20 69 73 20 68 61 72 6d    6c 65 73 73 2e 0a 20 20 20 20 3b 3b 20 59 65 74  | ow.as.it.is.harmless......;;.Yet | 
| 2f3a0 |  20 60 64 6a 76 75 2d 75 6e 72 65 73 6f 6c 76 65    2d 75 72 6c 27 20 77 69 6c 6c 20 69 73 73 75 65  | .`djvu-unresolve-url'.will.issue | 
| 2f3c0 |  20 61 20 77 61 72 6e 69 6e 67 20 6d 65 73 73 61    67 65 20 6e 65 78 74 20 74 69 6d 65 0a 20 20 20  | .a.warning.message.next.time.... | 
| 2f3e0 |  20 3b 3b 20 73 75 63 68 20 61 20 6d 65 61 6e 69    6e 67 6c 65 73 73 20 69 6e 74 65 72 6e 61 6c 20  | .;;.such.a.meaningless.internal. | 
| 2f400 |  55 52 4c 20 69 73 20 72 65 61 64 20 6f 72 20 73    74 6f 72 65 64 20 61 67 61 69 6e 2e 0a 20 20 20  | URL.is.read.or.stored.again..... | 
| 2f420 |  20 28 64 6a 76 75 2d 72 65 73 6f 6c 76 65 2d 61    6c 6c 2d 75 72 6c 73 20 27 6c 6f 6e 67 20 64 6f  | .(djvu-resolve-all-urls.'long.do | 
| 2f440 |  63 29 0a 20 20 20 20 28 64 6a 76 75 2d 62 61 63    6b 75 70 20 64 6f 63 29 0a 20 20 20 20 28 6c 65  | c).....(djvu-backup.doc).....(le | 
| 2f460 |  74 2a 20 28 28 69 6e 68 69 62 69 74 2d 71 75 69    74 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20  | t*.((inhibit-quit.t)............ | 
| 2f480 |  28 70 61 67 65 20 28 64 6a 76 75 2d 72 65 66 20    70 61 67 65 20 64 6f 63 29 29 0a 20 20 20 20 20  | (page.(djvu-ref.page.doc))...... | 
| 2f4a0 |  20 20 20 20 20 20 28 73 74 61 74 75 73 20 28 63    61 6c 6c 2d 70 72 6f 63 65 73 73 20 22 64 6a 76  | ......(status.(call-process."djv | 
| 2f4c0 |  6d 22 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 22    2d 64 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | m".nil.nil.nil."-d"............. | 
| 2f4e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 64 6a 76 75 2d 72 65 66 20 66  | .....................(djvu-ref.f | 
| 2f500 |  69 6c 65 20 64 6f 63 29 20 28 6e 75 6d 62 65 72    2d 74 6f 2d 73 74 72 69 6e 67 20 70 61 67 65 29  | ile.doc).(number-to-string.page) | 
| 2f520 |  29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73    73 20 28 7a 65 72 6f 70 20 73 74 61 74 75 73 29  | ))).......(unless.(zerop.status) | 
| 2f540 |  20 28 65 72 72 6f 72 20 22 44 6a 76 6d 20 65 72    72 6f 72 20 25 73 22 20 73 74 61 74 75 73 29 29  | .(error."Djvm.error.%s".status)) | 
| 2f560 |  0a 20 20 20 20 20 20 28 64 6a 76 75 2d 61 6c 6c    2d 62 75 66 66 65 72 73 20 64 6f 63 0a 20 20 20  | .......(djvu-all-buffers.doc.... | 
| 2f580 |  20 20 20 20 20 28 73 65 74 2d 76 69 73 69 74 65    64 2d 66 69 6c 65 2d 6d 6f 64 74 69 6d 65 29 29  | .....(set-visited-file-modtime)) | 
| 2f5a0 |  0a 20 20 20 20 20 20 3b 3b 20 55 70 64 61 74 65    20 69 6e 74 65 72 6e 61 6c 20 76 61 72 69 61 62  | .......;;.Update.internal.variab | 
| 2f5c0 |  6c 65 73 0a 20 20 20 20 20 20 28 64 6a 76 75 2d    73 65 74 20 69 6d 61 67 65 20 6e 69 6c 20 64 6f  | les.......(djvu-set.image.nil.do | 
| 2f5e0 |  63 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28    70 61 67 65 2d 69 64 20 28 64 65 6c 71 20 28 61  | c).......(let.((page-id.(delq.(a | 
| 2f600 |  73 73 71 20 70 61 67 65 20 28 64 6a 76 75 2d 72    65 66 20 70 61 67 65 2d 69 64 20 64 6f 63 29 29  | ssq.page.(djvu-ref.page-id.doc)) | 
| 2f620 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 64 6a 76  | ............................(djv | 
| 2f640 |  75 2d 72 65 66 20 70 61 67 65 2d 69 64 20 64 6f    63 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | u-ref.page-id.doc)))............ | 
| 2f660 |  20 28 70 20 28 31 2b 20 70 61 67 65 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 70 2d 69 29 0a  | .(p.(1+.page)).............p-i). | 
| 2f680 |  20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28    3c 3d 20 70 20 28 64 6a 76 75 2d 72 65 66 20 70  | ........(while.(<=.p.(djvu-ref.p | 
| 2f6a0 |  61 67 65 6d 61 78 20 64 6f 63 29 29 0a 20 20 20    20 20 20 20 20 20 20 28 73 65 74 71 20 70 2d 69  | agemax.doc))...........(setq.p-i | 
| 2f6c0 |  20 28 61 73 73 71 20 70 20 70 61 67 65 2d 69 64    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(assq.p.page-id)............... | 
| 2f6e0 |  20 20 70 61 67 65 2d 69 64 20 28 63 6f 6e 73 20    28 63 6f 6e 73 20 28 31 2d 20 70 29 20 28 63 64  | ..page-id.(cons.(cons.(1-.p).(cd | 
| 2f700 |  72 20 70 2d 69 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r.p-i))......................... | 
| 2f720 |  20 20 20 20 20 20 28 64 65 6c 71 20 70 2d 69 20    70 61 67 65 2d 69 64 29 29 0a 20 20 20 20 20 20  | ......(delq.p-i.page-id))....... | 
| 2f740 |  20 20 20 20 20 20 20 20 20 20 70 20 28 31 2b 20    70 29 29 29 0a 20 20 20 20 20 20 20 20 28 64 6a  | ..........p.(1+.p))).........(dj | 
| 2f760 |  76 75 2d 73 65 74 20 70 61 67 65 2d 69 64 20 70    61 67 65 2d 69 64 20 64 6f 63 29 29 0a 20 20 20  | vu-set.page-id.page-id.doc)).... | 
| 2f780 |  20 20 20 28 64 6a 76 75 2d 73 65 74 20 70 61 67    65 6d 61 78 20 28 31 2d 20 28 64 6a 76 75 2d 72  | ...(djvu-set.pagemax.(1-.(djvu-r | 
| 2f7a0 |  65 66 20 70 61 67 65 6d 61 78 20 64 6f 63 29 29    20 64 6f 63 29 0a 20 20 20 20 20 20 3b 3b 20 52  | ef.pagemax.doc)).doc).......;;.R | 
| 2f7c0 |  65 64 69 73 70 6c 61 79 0a 20 20 20 20 20 20 28    64 6a 76 75 2d 69 6e 69 74 2d 70 61 67 65 20 28  | edisplay.......(djvu-init-page.( | 
| 2f7e0 |  6d 69 6e 20 70 61 67 65 20 28 64 6a 76 75 2d 72    65 66 20 70 61 67 65 6d 61 78 20 64 6f 63 29 29  | min.page.(djvu-ref.pagemax.doc)) | 
| 2f800 |  20 64 6f 63 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 64 6a 76 75 2d 72 65 6d 6f 76 65 2d 61 6e 6e  | .doc))))..(defun.djvu-remove-ann | 
| 2f820 |  6f 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 6f    63 20 6f 75 74 6c 69 6e 65 29 0a 20 20 22 52 65  | ot.(&optional.doc.outline)..."Re | 
| 2f840 |  6d 6f 76 65 20 41 6e 6e 6f 74 61 74 69 6f 6e 73    2e 20 20 55 73 65 20 77 69 74 68 20 63 61 72 65  | move.Annotations...Use.with.care | 
| 2f860 |  21 0a 57 69 74 68 20 70 72 65 66 69 78 20 4f 55    54 4c 49 4e 45 20 6e 6f 6e 2d 6e 69 6c 20 72 65  | !.With.prefix.OUTLINE.non-nil.re | 
| 2f880 |  6d 6f 76 65 20 4f 75 74 6c 69 6e 65 2c 20 74 6f    6f 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | move.Outline,.too."...(interacti | 
| 2f8a0 |  76 65 20 28 6c 69 73 74 20 6e 69 6c 20 63 75 72    72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 29  | ve.(list.nil.current-prefix-arg) | 
| 2f8c0 |  29 0a 20 20 28 75 6e 6c 65 73 73 20 64 6f 63 20    28 73 65 74 71 20 64 6f 63 20 64 6a 76 75 2d 64  | )...(unless.doc.(setq.doc.djvu-d | 
| 2f8e0 |  6f 63 29 29 0a 20 20 28 64 6a 76 75 2d 73 61 76    65 20 64 6f 63 20 74 29 0a 20 20 28 77 68 65 6e  | oc))...(djvu-save.doc.t)...(when | 
| 2f900 |  20 28 79 65 73 2d 6f 72 2d 6e 6f 2d 70 20 28 66    6f 72 6d 61 74 20 22 52 65 6d 6f 76 65 20 41 6e  | .(yes-or-no-p.(format."Remove.An | 
| 2f920 |  6e 6f 74 61 74 69 6f 6e 73 25 73 3a 20 22 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | notations%s:.".................. | 
| 2f940 |  20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20    6f 75 74 6c 69 6e 65 20 22 20 61 6e 64 20 4f 75  | ............(if.outline.".and.Ou | 
| 2f960 |  74 6c 69 6e 65 22 20 22 22 29 29 29 0a 20 20 20    20 28 64 6a 76 75 2d 64 6a 76 75 73 65 64 20 64  | tline".""))).....(djvu-djvused.d | 
| 2f980 |  6f 63 20 6e 69 6c 20 22 2d 65 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66  | oc.nil."-e"...................(f | 
| 2f9a0 |  6f 72 6d 61 74 20 22 73 65 6c 65 63 74 3b 20 72    65 6d 6f 76 65 2d 61 6e 74 3b 25 73 22 0a 20 20  | ormat."select;.remove-ant;%s"... | 
| 2f9c0 |  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 6f 75 74 6c  | ........................(if.outl | 
| 2f9e0 |  69 6e 65 20 22 20 73 65 74 2d 6f 75 74 6c 69 6e    65 3b 5c 6e 2e 22 20 22 22 29 29 0a 20 20 20 20  | ine.".set-outline;\n.".""))..... | 
| 2fa00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d    73 22 29 0a 20 20 20 20 28 64 6a 76 75 2d 69 6e  | .............."-s").....(djvu-in | 
| 2fa20 |  69 74 2d 70 61 67 65 20 6e 69 6c 20 64 6f 63 29    29 29 0a 0a 3b 3b 3b 3b 20 45 6d 61 63 73 20 62  | it-page.nil.doc)))..;;;;.Emacs.b | 
| 2fa40 |  6f 6f 6b 6d 61 72 6b 20 69 6e 74 65 67 72 61 74    69 6f 6e 20 28 69 6e 73 70 69 72 65 64 20 62 79  | ookmark.integration.(inspired.by | 
| 2fa60 |  20 64 6f 63 2d 76 69 65 77 2e 65 6c 29 0a 0a 28    64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e  | .doc-view.el)..(declare-function | 
| 2fa80 |  20 62 6f 6f 6b 6d 61 72 6b 2d 6d 61 6b 65 2d 72    65 63 6f 72 64 2d 64 65 66 61 75 6c 74 20 22 62  | .bookmark-make-record-default."b | 
| 2faa0 |  6f 6f 6b 6d 61 72 6b 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 26 6f 70 74  | ookmark"...................(&opt | 
| 2fac0 |  69 6f 6e 61 6c 20 6e 6f 2d 66 69 6c 65 20 6e 6f    2d 63 6f 6e 74 65 78 74 20 70 6f 73 6e 29 29 0a  | ional.no-file.no-context.posn)). | 
| 2fae0 |  28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f    6e 20 62 6f 6f 6b 6d 61 72 6b 2d 70 72 6f 70 2d  | (declare-function.bookmark-prop- | 
| 2fb00 |  67 65 74 20 22 62 6f 6f 6b 6d 61 72 6b 22 20 28    62 6f 6f 6b 6d 61 72 6b 20 70 72 6f 70 29 29 0a  | get."bookmark".(bookmark.prop)). | 
| 2fb20 |  28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f    6e 20 62 6f 6f 6b 6d 61 72 6b 2d 67 65 74 2d 66  | (declare-function.bookmark-get-f | 
| 2fb40 |  69 6c 65 6e 61 6d 65 20 22 62 6f 6f 6b 6d 61 72    6b 22 20 28 62 6f 6f 6b 6d 61 72 6b 29 29 0a 28  | ilename."bookmark".(bookmark)).( | 
| 2fb60 |  64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e    20 62 6f 6f 6b 6d 61 72 6b 2d 67 65 74 2d 66 72  | declare-function.bookmark-get-fr | 
| 2fb80 |  6f 6e 74 2d 63 6f 6e 74 65 78 74 2d 73 74 72 69    6e 67 20 22 62 6f 6f 6b 6d 61 72 6b 22 20 28 62  | ont-context-string."bookmark".(b | 
| 2fba0 |  6f 6f 6b 6d 61 72 6b 29 29 0a 28 64 65 63 6c 61    72 65 2d 66 75 6e 63 74 69 6f 6e 20 62 6f 6f 6b  | ookmark)).(declare-function.book | 
| 2fbc0 |  6d 61 72 6b 2d 67 65 74 2d 72 65 61 72 2d 63 6f    6e 74 65 78 74 2d 73 74 72 69 6e 67 20 22 62 6f  | mark-get-rear-context-string."bo | 
| 2fbe0 |  6f 6b 6d 61 72 6b 22 20 28 62 6f 6f 6b 6d 61 72    6b 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e  | okmark".(bookmark)).(declare-fun | 
| 2fc00 |  63 74 69 6f 6e 20 62 6f 6f 6b 6d 61 72 6b 2d 67    65 74 2d 70 6f 73 69 74 69 6f 6e 20 22 62 6f 6f  | ction.bookmark-get-position."boo | 
| 2fc20 |  6b 6d 61 72 6b 22 20 28 62 6f 6f 6b 6d 61 72 6b    29 29 0a 0a 28 64 65 66 75 6e 20 64 6a 76 75 2d  | kmark".(bookmark))..(defun.djvu- | 
| 2fc40 |  62 6f 6f 6b 6d 61 72 6b 2d 6d 61 6b 65 2d 72 65    63 6f 72 64 20 28 29 0a 20 20 28 6e 63 6f 6e 63  | bookmark-make-record.()...(nconc | 
| 2fc60 |  20 28 62 6f 6f 6b 6d 61 72 6b 2d 6d 61 6b 65 2d    72 65 63 6f 72 64 2d 64 65 66 61 75 6c 74 29 0a  | .(bookmark-make-record-default). | 
| 2fc80 |  20 20 20 20 20 20 20 20 20 60 28 28 70 61 67 65    20 2e 20 2c 28 64 6a 76 75 2d 72 65 66 20 70 61  | .........`((page...,(djvu-ref.pa | 
| 2fca0 |  67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    28 64 2d 62 75 66 66 65 72 20 2e 20 2c 64 6a 76  | ge))............(d-buffer...,djv | 
| 2fcc0 |  75 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20    20 20 20 20 20 28 68 61 6e 64 6c 65 72 20 2e 20  | u-buffer)............(handler... | 
| 2fce0 |  64 6a 76 75 2d 62 6f 6f 6b 6d 61 72 6b 2d 68 61    6e 64 6c 65 72 29 29 29 29 0a 0a 3b 3b 20 41 64  | djvu-bookmark-handler))))..;;.Ad | 
| 2fd00 |  61 70 74 65 64 20 66 72 6f 6d 20 60 62 6f 6f 6b    6d 61 72 6b 2d 64 65 66 61 75 6c 74 2d 68 61 6e  | apted.from.`bookmark-default-han | 
| 2fd20 |  64 6c 65 72 27 2e 0a 3b 3b 3b 23 23 23 61 75 74    6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 6a 76  | dler'..;;;###autoload.(defun.djv | 
| 2fd40 |  75 2d 62 6f 6f 6b 6d 61 72 6b 2d 68 61 6e 64 6c    65 72 20 28 62 6d 6b 29 0a 20 20 22 48 61 6e 64  | u-bookmark-handler.(bmk)..."Hand | 
| 2fd60 |  6c 65 72 20 74 6f 20 6a 75 6d 70 20 74 6f 20 61    20 70 61 72 74 69 63 75 6c 61 72 20 62 6f 6f 6b  | ler.to.jump.to.a.particular.book | 
| 2fd80 |  6d 61 72 6b 20 6c 6f 63 61 74 69 6f 6e 20 69 6e    20 61 20 64 6a 76 75 20 64 6f 63 75 6d 65 6e 74  | mark.location.in.a.djvu.document | 
| 2fda0 |  2e 0a 42 4d 4b 20 69 73 20 61 20 62 6f 6f 6b 6d    61 72 6b 20 72 65 63 6f 72 64 2c 20 6e 6f 74 20  | ..BMK.is.a.bookmark.record,.not. | 
| 2fdc0 |  61 20 62 6f 6f 6b 6d 61 72 6b 20 6e 61 6d 65 20    28 69 2e 65 2e 2c 20 6e 6f 74 20 61 20 73 74 72  | a.bookmark.name.(i.e.,.not.a.str | 
| 2fde0 |  69 6e 67 29 2e 0a 43 68 61 6e 67 65 73 20 63 75    72 72 65 6e 74 20 62 75 66 66 65 72 20 61 6e 64  | ing)..Changes.current.buffer.and | 
| 2fe00 |  20 70 6f 69 6e 74 20 61 6e 64 20 72 65 74 75 72    6e 73 20 6e 69 6c 2c 20 6f 72 20 73 69 67 6e 61  | .point.and.returns.nil,.or.signa | 
| 2fe20 |  6c 73 20 61 20 60 66 69 6c 65 2d 65 72 72 6f 72    27 2e 22 0a 20 20 28 6c 65 74 20 28 28 66 69 6c  | ls.a.`file-error'."...(let.((fil | 
| 2fe40 |  65 20 20 20 20 20 20 20 20 20 20 28 62 6f 6f 6b    6d 61 72 6b 2d 67 65 74 2d 66 69 6c 65 6e 61 6d  | e..........(bookmark-get-filenam | 
| 2fe60 |  65 20 62 6d 6b 29 29 0a 09 28 62 75 66 20 20 20    20 20 20 20 20 20 20 20 28 62 6f 6f 6b 6d 61 72  | e.bmk))..(buf...........(bookmar | 
| 2fe80 |  6b 2d 70 72 6f 70 2d 67 65 74 20 62 6d 6b 20 27    62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20  | k-prop-get.bmk.'buffer))........ | 
| 2fea0 |  20 28 64 2d 62 75 66 66 65 72 20 20 20 20 20 20    28 62 6f 6f 6b 6d 61 72 6b 2d 70 72 6f 70 2d 67  | .(d-buffer......(bookmark-prop-g | 
| 2fec0 |  65 74 20 62 6d 6b 20 27 64 2d 62 75 66 66 65 72    29 29 0a 20 20 20 20 20 20 20 20 28 70 61 67 65  | et.bmk.'d-buffer)).........(page | 
| 2fee0 |  20 20 20 20 20 20 20 20 20 20 28 62 6f 6f 6b 6d    61 72 6b 2d 70 72 6f 70 2d 67 65 74 20 62 6d 6b  | ..........(bookmark-prop-get.bmk | 
| 2ff00 |  20 27 70 61 67 65 29 29 0a 20 20 20 20 20 20 20    20 28 66 6f 72 77 61 72 64 2d 73 74 72 20 20 20  | .'page)).........(forward-str... | 
| 2ff20 |  28 62 6f 6f 6b 6d 61 72 6b 2d 67 65 74 2d 66 72    6f 6e 74 2d 63 6f 6e 74 65 78 74 2d 73 74 72 69  | (bookmark-get-front-context-stri | 
| 2ff40 |  6e 67 20 62 6d 6b 29 29 0a 20 20 20 20 20 20 20    20 28 62 65 68 69 6e 64 2d 73 74 72 20 20 20 20  | ng.bmk)).........(behind-str.... | 
| 2ff60 |  28 62 6f 6f 6b 6d 61 72 6b 2d 67 65 74 2d 72 65    61 72 2d 63 6f 6e 74 65 78 74 2d 73 74 72 69 6e  | (bookmark-get-rear-context-strin | 
| 2ff80 |  67 20 62 6d 6b 29 29 0a 20 20 20 20 20 20 20 20    28 70 6f 73 20 20 20 20 20 20 20 20 20 20 20 28  | g.bmk)).........(pos...........( | 
| 2ffa0 |  62 6f 6f 6b 6d 61 72 6b 2d 67 65 74 2d 70 6f 73    69 74 69 6f 6e 20 62 6d 6b 29 29 29 0a 20 20 20  | bookmark-get-position.bmk))).... | 
| 2ffc0 |  20 28 73 65 74 2d 62 75 66 66 65 72 0a 20 20 20    20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 28 28  | .(set-buffer......(cond.......(( | 
| 2ffe0 |  61 6e 64 20 66 69 6c 65 20 28 66 69 6c 65 2d 72    65 61 64 61 62 6c 65 2d 70 20 66 69 6c 65 29 20  | and.file.(file-readable-p.file). | 
| 30000 |  28 6e 6f 74 20 28 62 75 66 66 65 72 2d 6c 69 76    65 2d 70 20 62 75 66 29 29 29 0a 20 20 20 20 20  | (not.(buffer-live-p.buf)))...... | 
| 30020 |  20 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73    65 6c 65 63 74 20 66 69 6c 65 29 29 0a 20 20 20  | ..(find-file-noselect.file)).... | 
| 30040 |  20 20 20 3b 3b 20 4e 6f 20 66 69 6c 65 20 66 6f    75 6e 64 2e 20 20 53 65 65 20 69 66 20 62 75 66  | ...;;.No.file.found...See.if.buf | 
| 30060 |  66 65 72 20 42 55 46 20 68 61 73 20 62 65 65 6e    20 63 72 65 61 74 65 64 2e 0a 20 20 20 20 20 20  | fer.BUF.has.been.created........ | 
| 30080 |  28 28 61 6e 64 20 62 75 66 20 28 67 65 74 2d 62    75 66 66 65 72 20 62 75 66 29 29 29 0a 20 20 20  | ((and.buf.(get-buffer.buf))).... | 
| 300a0 |  20 20 20 28 74 20 3b 3b 20 49 66 20 6e 6f 74 2c    20 72 61 69 73 65 20 65 72 72 6f 72 2e 0a 20 20  | ...(t.;;.If.not,.raise.error.... | 
| 300c0 |  20 20 20 20 20 28 73 69 67 6e 61 6c 20 27 62 6f    6f 6b 6d 61 72 6b 2d 65 72 72 6f 72 2d 6e 6f 2d  | .....(signal.'bookmark-error-no- | 
| 300e0 |  66 69 6c 65 6e 61 6d 65 20 28 6c 69 73 74 20 27    73 74 72 69 6e 67 70 20 66 69 6c 65 29 29 29 29  | filename.(list.'stringp.file)))) | 
| 30100 |  29 0a 20 20 20 20 28 69 66 20 70 61 67 65 20 28    64 6a 76 75 2d 67 6f 74 6f 2d 70 61 67 65 20 70  | ).....(if.page.(djvu-goto-page.p | 
| 30120 |  61 67 65 29 29 0a 20 20 20 20 28 69 66 20 64 2d    62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 28  | age)).....(if.d-buffer.........( | 
| 30140 |  73 65 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20    20 20 20 20 28 70 63 61 73 65 20 64 2d 62 75 66  | set-buffer..........(pcase.d-buf | 
| 30160 |  66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 28    60 72 65 61 64 20 28 64 6a 76 75 2d 72 65 66 20  | fer............(`read.(djvu-ref. | 
| 30180 |  72 65 61 64 2d 62 75 66 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 28 60 74 65 78 74 20 28 64 6a  | read-buf))............(`text.(dj | 
| 301a0 |  76 75 2d 72 65 66 20 74 65 78 74 2d 62 75 66 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 28 60 61  | vu-ref.text-buf))............(`a | 
| 301c0 |  6e 6e 6f 74 20 28 64 6a 76 75 2d 72 65 66 20 61    6e 6e 6f 74 2d 62 75 66 29 29 0a 20 20 20 20 20  | nnot.(djvu-ref.annot-buf))...... | 
| 301e0 |  20 20 20 20 20 20 28 60 73 68 61 72 65 64 20 28    64 6a 76 75 2d 72 65 66 20 73 68 61 72 65 64 2d  | ......(`shared.(djvu-ref.shared- | 
| 30200 |  62 75 66 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 28 60 62 6f 6f 6b 6d 61 72 6b 73 20 28 64 6a  | buf))............(`bookmarks.(dj | 
| 30220 |  76 75 2d 72 65 66 20 62 6f 6f 6b 6d 61 72 6b 73    2d 62 75 66 29 29 0a 20 20 20 20 20 20 20 20 20  | vu-ref.bookmarks-buf)).......... | 
| 30240 |  20 20 28 60 6f 75 74 6c 69 6e 65 20 28 64 6a 76    75 2d 72 65 66 20 6f 75 74 6c 69 6e 65 2d 62 75  | ..(`outline.(djvu-ref.outline-bu | 
| 30260 |  66 29 29 29 29 29 0a 20 20 20 20 28 69 66 20 70    6f 73 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6f  | f))))).....(if.pos.(goto-char.po | 
| 30280 |  73 29 29 0a 20 20 20 20 3b 3b 20 47 6f 20 73 65    61 72 63 68 69 6e 67 20 66 6f 72 77 61 72 64 20  | s)).....;;.Go.searching.forward. | 
| 302a0 |  66 69 72 73 74 2e 20 20 54 68 65 6e 2c 20 69 66    20 66 6f 72 77 61 72 64 2d 73 74 72 20 65 78 69  | first...Then,.if.forward-str.exi | 
| 302c0 |  73 74 73 20 61 6e 64 0a 20 20 20 20 3b 3b 20 77    61 73 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20  | sts.and.....;;.was.found.in.the. | 
| 302e0 |  66 69 6c 65 2c 20 77 65 20 63 61 6e 20 73 65 61    72 63 68 20 62 61 63 6b 77 61 72 64 20 66 6f 72  | file,.we.can.search.backward.for | 
| 30300 |  20 62 65 68 69 6e 64 2d 73 74 72 2e 0a 20 20 20    20 3b 3b 20 52 61 74 69 6f 6e 61 6c 65 20 69 73  | .behind-str......;;.Rationale.is | 
| 30320 |  20 74 68 61 74 20 69 66 20 74 65 78 74 20 77 61    73 20 69 6e 73 65 72 74 65 64 20 62 65 74 77 65  | .that.if.text.was.inserted.betwe | 
| 30340 |  65 6e 20 74 68 65 20 74 77 6f 20 69 6e 20 74 68    65 0a 20 20 20 20 3b 3b 20 66 69 6c 65 2c 20 69  | en.the.two.in.the.....;;.file,.i | 
| 30360 |  74 27 73 20 62 65 74 74 65 72 20 74 6f 20 62 65    20 70 75 74 20 62 65 66 6f 72 65 20 69 74 20 73  | t's.better.to.be.put.before.it.s | 
| 30380 |  6f 20 79 6f 75 20 63 61 6e 20 72 65 61 64 20 69    74 2c 0a 20 20 20 20 3b 3b 20 72 61 74 68 65 72  | o.you.can.read.it,.....;;.rather | 
| 303a0 |  20 74 68 61 6e 20 61 66 74 65 72 20 61 6e 64 20    72 65 6d 61 69 6e 20 70 65 72 68 61 70 73 20 75  | .than.after.and.remain.perhaps.u | 
| 303c0 |  6e 61 77 61 72 65 20 6f 66 20 74 68 65 20 63 68    61 6e 67 65 73 2e 0a 20 20 20 20 28 77 68 65 6e  | naware.of.the.changes......(when | 
| 303e0 |  20 28 61 6e 64 20 66 6f 72 77 61 72 64 2d 73 74    72 20 28 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | .(and.forward-str.(search-forwar | 
| 30400 |  64 20 66 6f 72 77 61 72 64 2d 73 74 72 20 28 70    6f 69 6e 74 2d 6d 61 78 29 20 74 29 29 0a 20 20  | d.forward-str.(point-max).t))... | 
| 30420 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20  | ....(goto-char.(match-beginning. | 
| 30440 |  30 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28    61 6e 64 20 62 65 68 69 6e 64 2d 73 74 72 20 28  | 0))).....(when.(and.behind-str.( | 
| 30460 |  73 65 61 72 63 68 2d 62 61 63 6b 77 61 72 64 20    62 65 68 69 6e 64 2d 73 74 72 20 28 70 6f 69 6e  | search-backward.behind-str.(poin | 
| 30480 |  74 2d 6d 69 6e 29 20 74 29 29 0a 20 20 20 20 20    20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 74  | t-min).t)).......(goto-char.(mat | 
| 304a0 |  63 68 2d 65 6e 64 20 30 29 29 29 0a 20 20 20 20    6e 69 6c 29 29 0a 0a 0c 0a 28 70 72 6f 76 69 64  | ch-end.0))).....nil))....(provid | 
| 304c0 |  65 20 27 64 6a 76 75 29 0a 3b 3b 3b 20 64 6a 76    75 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00  | e.'djvu).;;;.djvu.el.ends.here.. | 
| 304e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 305a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 305c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 305e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30600 |  64 6a 76 75 2d 31 2e 31 2e 32 2f 64 6a 76 75 2d    70 6b 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00  | djvu-1.1.2/djvu-pkg.el.......... | 
| 30620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30660 |  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 | 
| 30680 |  30 30 30 30 35 37 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 31 37 36 00 20 30 00 00 00  | 0000571.00000000000.013176..0... | 
| 306a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 306c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 306e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30700 |  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................... | 
| 30720 |  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................... | 
| 30740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 307a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 307c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 307e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30800 |  3b 3b 20 47 65 6e 65 72 61 74 65 64 20 70 61 63    6b 61 67 65 20 64 65 73 63 72 69 70 74 69 6f 6e  | ;;.Generated.package.description | 
| 30820 |  20 66 72 6f 6d 20 64 6a 76 75 2e 65 6c 20 20 2d    2a 2d 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69  | .from.djvu.el..-*-.no-byte-compi | 
| 30840 |  6c 65 3a 20 74 20 2d 2a 2d 0a 28 64 65 66 69 6e    65 2d 70 61 63 6b 61 67 65 20 22 64 6a 76 75 22  | le:.t.-*-.(define-package."djvu" | 
| 30860 |  20 22 31 2e 31 2e 32 22 20 22 45 64 69 74 20 61    6e 64 20 76 69 65 77 20 44 6a 76 75 20 66 69 6c  | ."1.1.2"."Edit.and.view.Djvu.fil | 
| 30880 |  65 73 20 76 69 61 20 64 6a 76 75 73 65 64 22 20    27 6e 69 6c 20 3a 63 6f 6d 6d 69 74 20 22 30 37  | es.via.djvused".'nil.:commit."07 | 
| 308a0 |  31 63 38 61 62 31 36 38 35 38 38 38 39 37 34 37    35 38 39 39 63 34 36 65 61 61 31 36 65 37 30 31  | 1c8ab168588897475899c46eaa16e701 | 
| 308c0 |  34 31 64 62 38 63 22 20 3a 75 72 6c 20 22 68 74    74 70 73 3a 2f 2f 65 6c 70 61 2e 67 6e 75 2e 6f  | 41db8c".:url."https://elpa.gnu.o | 
| 308e0 |  72 67 2f 70 61 63 6b 61 67 65 73 2f 64 6a 76 75    2e 68 74 6d 6c 22 20 3a 61 75 74 68 6f 72 73 20  | rg/packages/djvu.html".:authors. | 
| 30900 |  27 28 28 22 52 6f 6c 61 6e 64 20 57 69 6e 6b 6c    65 72 22 20 2e 20 22 77 69 6e 6b 6c 65 72 40 67  | '(("Roland.Winkler"..."winkler@g | 
| 30920 |  6e 75 2e 6f 72 67 22 29 29 20 3a 6d 61 69 6e 74    61 69 6e 65 72 20 27 28 22 52 6f 6c 61 6e 64 20  | nu.org")).:maintainer.'("Roland. | 
| 30940 |  57 69 6e 6b 6c 65 72 22 20 2e 20 22 77 69 6e 6b    6c 65 72 40 67 6e 75 2e 6f 72 67 22 29 20 3a 6b  | Winkler"..."winkler@gnu.org").:k | 
| 30960 |  65 79 77 6f 72 64 73 20 27 28 22 66 69 6c 65 73    22 20 22 77 70 22 29 29 0a 00 00 00 00 00 00 00  | eywords.'("files"."wp"))........ | 
| 30980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 309a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 309c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 309e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30a00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30a20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30a40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30a60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30a80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30aa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30b00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30b20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30b40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30b60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30b80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30bc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30be0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30c00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30c20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30c40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30c60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30c80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30cc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30d00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30d20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30d40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30d60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30d80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30da0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30dc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30de0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30e00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30e20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30e40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30e60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30e80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30f00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30f20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 30fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31000 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31020 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31060 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31080 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 310a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 310c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 310e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31100 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31120 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 311a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 311c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 311e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31200 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31220 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31260 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31280 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 312a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 312c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 312e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31300 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31320 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 313a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 313c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 313e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31400 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 314a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 314c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 314e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 315a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 315c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 315e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31600 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31660 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 316a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 316c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 316e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 317a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 317c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 317e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31800 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31820 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31840 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31860 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31880 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 318a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 318c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 318e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31900 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31920 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 319a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 319c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 319e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31a00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31a20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31a40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31a60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31a80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31aa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31b00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31b20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31b40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31b60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31b80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31bc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31be0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31c00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31c20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31c40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31c60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31c80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31cc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31d00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31d20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31d40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31d60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31d80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31da0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31dc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31de0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31e00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31e20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31e40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31e60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31e80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31f00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31f20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 31fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ |